A dark and earthy colorscheme for Neovim. (mirror)
github.com/ptdewey/darkearth-nvim
neovim
neovim-colorscheme
fennel
1(import-macros {: common-groups} :earth.macros)
2
3(comment "This file was generated by Fennel. Do not modify.")
4(local theme {})
5
6(macro defcolor [name hex]
7 `(macro ,name [] ,hex))
8
9(defcolor fg "#252F1E")
10(defcolor bg "#F0EBE1")
11(defcolor green "#77824A")
12(defcolor teal "#5F865F")
13(defcolor orange "#BB7844")
14(defcolor red "#B3664D")
15(defcolor op "#669977")
16(defcolor str "#B3854D")
17(defcolor cmt "#A09890")
18(defcolor delim "#80744D")
19(defcolor altBg "#F5F0E6")
20(defcolor darkOrange "#B36B42")
21
22(defcolor darkGreen "#E2E6D8")
23(defcolor darkGreenAlt "#B8BE96")
24(defcolor lightBrown "#D4CAB8")
25(defcolor diffChange "#675642")
26(defcolor nonText "#C2BAA8")
27(defcolor indent "#E2E6D8")
28(defcolor tablineBg "#E6E0D6")
29(defcolor altLineNr "#736659")
30(defcolor ignore "#C8C0B6")
31(defcolor scroll "#6B6461")
32(defcolor visual "#DCD4C6")
33
34(defcolor diagnosticOk "#77824A")
35(defcolor diagnosticHint "#A09890")
36(defcolor diagnosticInfo "#9A8030")
37(defcolor diagnosticWarn "#BB7844")
38(defcolor diagnosticError "#B3664D")
39
40;; Light-theme specific diff background colors
41(defcolor diffAddBg "#CCD8C4")
42(defcolor diffChangeBg "#D8CEBA")
43(defcolor diffDeleteBg "#D8C6BE")
44
45(macro hl [name & attrs]
46 (let [attr-table {}]
47 (for [i 1 (length attrs) 2]
48 (tset attr-table (. attrs i) (. attrs (+ i 1))))
49 `(tset theme ,(tostring name) ,attr-table)))
50
51(macro ln [name target]
52 `(tset theme ,(tostring name) {:link ,(tostring target)}))
53
54;; Apply all shared highlight groups
55(common-groups)
56
57;; Theme-specific overrides
58(hl Error :fg (altBg) :bg (red))
59(hl DiffAdd :fg (fg) :bg (diffAddBg))
60(hl DiffChange :fg (fg) :bg (diffChangeBg))
61(hl DiffDelete :fg (fg) :bg (diffDeleteBg))
62(hl FzfLuaBackdrop :fg (nonText))
63(hl FzfLuaCursor :fg (altBg) :bg (green))
64(hl TodoBgTODO :fg (fg) :bg (darkGreenAlt) :bold true)
65(hl TodoFgTODO :fg (green))
66
67; Colorscheme setup
68(vim.cmd "highlight clear")
69(vim.cmd "set t_Co=256")
70(set vim.g.colors_name :lightearth)
71(set vim.o.background :light)
72(each [group attr (pairs theme)] (vim.api.nvim_set_hl 0 group attr))