jokull.vim (9079B)
1 set background=light 2 if version > 580 3 highlight clear 4 if exists("syntax_on") 5 syntax reset 6 endif 7 endif 8 let g:colors_name = "jokull" 9 "ANSI colors for :terminal 10 let g:terminal_ansi_colors = ["#eff0f3", "#125394", "#145a9c", "#1562c0", "#2182e1", "#2377e1", "#3c68e6", "#0a0c0f", "#525963", "#125394", "#145a9c", "#1562c0", "#2182e1", "#2377e1", "#3c68e6", "#0a0c0f"] 11 " Highlight group definitions 12 hi Normal guifg=#2c2625 guibg=#e4e4e4 ctermfg=0 ctermbg=254 cterm=NONE gui=NONE 13 hi Keyword guifg=#6e032e guibg=NONE ctermfg=52 ctermbg=NONE cterm=NONE gui=NONE 14 hi Cursorline guifg=NONE guibg=#d0d0d0 ctermfg=NONE ctermbg=252 cterm=NONE gui=NONE 15 hi String guifg=#009051 guibg=NONE ctermfg=29 ctermbg=NONE cterm=italic gui=italic 16 hi Identifier guifg=#112d4e guibg=NONE ctermfg=17 ctermbg=NONE cterm=NONE gui=NONE 17 hi Function guifg=#0096ff guibg=NONE ctermfg=33 ctermbg=NONE cterm=bold gui=bold 18 hi Statement guifg=#0050a0 guibg=NONE ctermfg=25 ctermbg=NONE cterm=NONE gui=NONE 19 hi Include guifg=#005f87 guibg=NONE ctermfg=24 ctermbg=NONE cterm=bold gui=bold 20 hi Type guifg=#005f87 guibg=NONE ctermfg=24 ctermbg=NONE cterm=NONE gui=NONE 21 hi Search guifg=NONE guibg=#d7f1e0 ctermfg=NONE ctermbg=194 cterm=NONE gui=NONE 22 hi Incsearch guifg=NONE guibg=#a7c1a0 ctermfg=NONE ctermbg=145 cterm=bold,underline gui=bold,underline 23 hi Folded guifg=#0076ff guibg=#d0d0d0 ctermfg=33 ctermbg=252 cterm=NONE gui=NONE 24 hi Tablinefill guifg=NONE guibg=#d0d0d0 ctermfg=NONE ctermbg=252 cterm=NONE gui=NONE 25 hi Tablinesel guifg=NONE guibg=#e5e5e5 ctermfg=NONE ctermbg=7 cterm=NONE gui=NONE 26 hi Wildmenu guifg=#005f87 guibg=#e5e5e5 ctermfg=24 ctermbg=7 cterm=bold gui=bold 27 hi Linenr guifg=#9b9b4c guibg=NONE ctermfg=101 ctermbg=NONE cterm=NONE gui=NONE 28 hi Vertsplit guifg=NONE guibg=NONE ctermfg=NONE ctermbg=NONE cterm=NONE gui=NONE 29 hi Todo guifg=#0000FF guibg=#FFFF00 ctermfg=21 ctermbg=11 cterm=NONE gui=NONE 30 hi Nontext guifg=#81A1C1 guibg=NONE ctermfg=109 ctermbg=NONE cterm=NONE gui=NONE 31 hi StatusLine guifg=#e5e5e5 guibg=#005f87 ctermfg=7 ctermbg=24 cterm=NONE gui=NONE 32 hi Statuslinenc guifg=#e5e5e5 guibg=#0087af ctermfg=7 ctermbg=31 cterm=NONE gui=NONE 33 hi StatusLineTermNC guifg=NONE guibg=#99FF77 ctermfg=NONE ctermbg=120 cterm=NONE gui=NONE 34 hi StatusLineTerm guifg=NONE guibg=#009051 ctermfg=NONE ctermbg=29 cterm=NONE gui=NONE 35 hi StatusLineFile guifg=#e5e5e5 guibg=#0087af ctermfg=7 ctermbg=31 cterm=NONE gui=NONE 36 hi StatusLineNormMode guifg=#0087af guibg=#d0d0d0 ctermfg=31 ctermbg=252 cterm=NONE gui=NONE 37 hi Visual guifg=NONE guibg=#a8caff ctermfg=NONE ctermbg=153 cterm=NONE gui=NONE 38 hi Title guifg=#225555 guibg=NONE ctermfg=23 ctermbg=NONE cterm=bold gui=bold 39 hi Matchparen guifg=#007822 guibg=#a8dbfd ctermfg=28 ctermbg=153 cterm=NONE gui=NONE 40 hi QfFileName guifg=#0076ff guibg=NONE ctermfg=33 ctermbg=NONE cterm=NONE gui=NONE 41 hi Delimiter guifg=#5f5f00 guibg=NONE ctermfg=58 ctermbg=NONE cterm=NONE gui=NONE 42 hi Comment guifg=#5f5f5f guibg=NONE ctermfg=59 ctermbg=NONE cterm=italic gui=italic 43 hi ErrorMsg guifg=#2c2625 guibg=#ffa5a5 ctermfg=0 ctermbg=217 cterm=bold gui=bold 44 hi Cursorlinenr guifg=#cc6d05 guibg=NONE ctermfg=166 ctermbg=NONE cterm=bold gui=bold 45 hi SpecialKey guifg=#0000FF guibg=NONE ctermfg=21 ctermbg=NONE cterm=bold gui=bold 46 hi Constant guifg=#cc6d05 guibg=NONE ctermfg=166 ctermbg=NONE cterm=NONE gui=NONE 47 hi Diffadd guifg=NONE guibg=#a5ffa5 ctermfg=NONE ctermbg=157 cterm=NONE gui=NONE 48 hi Diffdelete guifg=NONE guibg=#ffa5a5 ctermfg=NONE ctermbg=217 cterm=NONE gui=NONE 49 hi Diffchange guifg=#2c2625 guibg=#c0beff ctermfg=0 ctermbg=147 cterm=NONE gui=NONE 50 hi Difftext guifg=NONE guibg=#a0aeff ctermfg=NONE ctermbg=147 cterm=bold gui=bold 51 hi GitGutterAdd guifg=#007822 guibg=#e4e4e4 ctermfg=28 ctermbg=254 cterm=NONE gui=NONE 52 hi GitGutterChange guifg=#8e830e guibg=#e4e4e4 ctermfg=100 ctermbg=254 cterm=NONE gui=NONE 53 hi GitGutterDelete guifg=#6e032e guibg=#e4e4e4 ctermfg=52 ctermbg=254 cterm=NONE gui=NONE 54 hi GitGutterChangeDelete guifg=#80537e guibg=#e4e4e4 ctermfg=96 ctermbg=254 cterm=NONE gui=NONE 55 hi NormalFloat guifg=NONE guibg=#d0d0d0 ctermfg=NONE ctermbg=252 cterm=NONE gui=NONE 56 hi DapUIDecoration guifg=#a8caff guibg=NONE ctermfg=153 ctermbg=NONE cterm=NONE gui=NONE 57 hi DapUIScope guifg=#005f87 guibg=NONE ctermfg=24 ctermbg=NONE cterm=NONE gui=NONE 58 hi DapUIStoppedThread guifg=#005f87 guibg=NONE ctermfg=24 ctermbg=NONE cterm=NONE gui=NONE 59 hi DapUIBreakpointsPath guifg=#005f87 guibg=NONE ctermfg=24 ctermbg=NONE cterm=NONE gui=NONE 60 hi DapUIBreakpointsCurrentLine guifg=#009051 guibg=NONE ctermfg=29 ctermbg=NONE cterm=NONE gui=NONE 61 hi DapUIWatchesEmpty guifg=#6e032e guibg=NONE ctermfg=52 ctermbg=NONE cterm=NONE gui=NONE 62 hi DapUIModifiedValue guifg=#80537e guibg=NONE ctermfg=96 ctermbg=NONE cterm=NONE gui=NONE 63 " Link definitions 64 hi! link tag delimiter 65 hi! link gh_files_dir function 66 hi! link conditional statement 67 hi! link QuickFixLine Cursorline 68 hi! link netrwexe title 69 hi! link ALEWarningLine difftext 70 hi! link signcolumn linenr 71 hi! link netrwMarkFile incsearch 72 hi! link pmenusel statusline 73 hi! link DapUIWatchesValue darkgreen 74 hi! link ALEError errormsg 75 hi! link specialcomment delimiter 76 hi! link DapUIStepOut DapUIScope 77 hi! link precondit include 78 hi! link markdowncode type 79 hi! link DapUIWatchesError DapUIWatchesEmpty 80 hi! link tabline tablinefill 81 hi! link DapUIStepBack DapUIScope 82 hi! link mkdlink type 83 hi! link netrwdir function 84 hi! link DapUIStepInto DapUIScope 85 hi! link DapUIRestart darkgreen 86 hi! link number delimiter 87 hi! link typedef structure 88 hi! link ALEWarning diffchange 89 hi! link macro include 90 hi! link modemsg string 91 hi! link repeat statement 92 hi! link special delimiter 93 hi! link operator statement 94 hi! link specialchar delimiter 95 hi! link label structure 96 hi! link ALEErrorLine diffdelete 97 hi! link DapUIStop DapUIWatchesEmpty 98 hi! link DapUIPlayPause darkgreen 99 hi! link spellrare string 100 hi! link define include 101 hi! link LspInlayHint Comment 102 hi! link gitcommitOverflow errormsg 103 hi! link gitcommitSummary include 104 hi! link debug delimiter 105 hi! link MarkviewCode NormalFloat 106 hi! link structure type 107 hi! link pmenu statuslinenc 108 hi! link vimwikilink type 109 hi! link spelllocal string 110 hi! link spellcap string 111 hi! link markdownUrl string 112 hi! link error errormsg 113 hi! link preproc include 114 hi! link MarkviewInlineCode NormalFloat 115 hi! link storageclass structure 116 hi! link DapUIStepOver DapUIScope 117 hi! link spellbad todo 118 hi! link character constant 119 " Code to clear any groups that are not defined 120 let s:DefinedColors=['tag', 'gh_files_dir', 'conditional', 'quickfixline', 'netrwexe', 'alewarningline', 'signcolumn', 'netrwmarkfile', 'pmenusel', 'dapuiwatchesvalue', 'aleerror', 'specialcomment', 'dapuistepout', 'precondit', 'markdowncode', 'dapuiwatcheserror', 'tabline', 'dapuistepback', 'mkdlink', 'netrwdir', 'dapuistepinto', 'dapuirestart', 'number', 'typedef', 'alewarning', 'macro', 'modemsg', 'repeat', 'special', 'operator', 'specialchar', 'label', 'aleerrorline', 'dapuistop', 'dapuiplaypause', 'spellrare', 'define', 'lspinlayhint', 'gitcommitoverflow', 'gitcommitsummary', 'debug', 'markviewcode', 'structure', 'pmenu', 'vimwikilink', 'spelllocal', 'spellcap', 'markdownurl', 'error', 'preproc', 'markviewinlinecode', 'storageclass', 'dapuistepover', 'spellbad', 'character', 'normal', 'keyword', 'cursorline', 'string', 'identifier', 'function', 'statement', 'include', 'type', 'search', 'incsearch', 'folded', 'tablinefill', 'tablinesel', 'wildmenu', 'linenr', 'vertsplit', 'todo', 'nontext', 'statusline', 'statuslinenc', 'statuslinetermnc', 'statuslineterm', 'statuslinefile', 'statuslinenormmode', 'visual', 'title', 'matchparen', 'qffilename', 'delimiter', 'comment', 'errormsg', 'cursorlinenr', 'specialkey', 'constant', 'diffadd', 'diffdelete', 'diffchange', 'difftext', 'gitgutteradd', 'gitgutterchange', 'gitgutterdelete', 'gitgutterchangedelete', 'normalfloat', 'dapuidecoration', 'dapuiscope', 'dapuistoppedthread', 'dapuibreakpointspath', 'dapuibreakpointscurrentline', 'dapuiwatchesempty', 'dapuimodifiedvalue'] 121 function! s:ClearUndefinedColors(colors) 122 let undefined_groups = filter(a:colors->keys()->map('tolower(v:val)'), 'index(s:DefinedColors, tolower(v:val)) < 0') 123 call map(undefined_groups, "execute('highlight' . ' ' . v:val . ' ' . 'NONE')") 124 endfunction 125 function! s:GetHighlights() 126 let highlights = execute('highlight') 127 let highlights = substitute(highlights, '\n\s\+', ' ', 'g') 128 let highlights = split(highlights, '\n') 129 call map(highlights, "split(v:val, '\\s\\+xxx\\s\\+')") 130 call map(highlights, "[copy(v:val)[0], split(copy(v:val)[1])]") 131 return highlights 132 endfunction 133 function! s:GetColors() 134 let colors = {} 135 for [group, values] in <SID>GetHighlights() 136 let attributes = {} 137 if values[0] ==# 'links' 138 let attributes['links'] = values[-1] 139 elseif values[0] !=# 'cleared' 140 call map(values, "split(v:val, '=')") 141 call map(values, "len(v:val) == 2 ? {v:val[0]: v:val[1]} : {v:val[0] : v:val[0]}") 142 call map(values, "extend(attributes, v:val)") 143 endif 144 let colors[group] = attributes 145 endfor 146 return colors 147 endfunction 148 call <SID>ClearUndefinedColors(<SID>GetColors())