A dark and earthy colorscheme for Neovim. (mirror) github.com/ptdewey/darkearth-nvim
neovim neovim-colorscheme fennel
at main 72 lines 2.0 kB view raw
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))