highlight clear syntax reset set background=dark let g:colors_name = expand(':t:r') let s:g = { \"black": "#000000", \"red": "#ed5f74", \"green": "#1ea672", \"yellow": "#d97917", \"blue": "#688ef1", \"magenta": "#c96ed0", \"cyan": "#3a97d4", \"white": "#e3e8ee", \"brightblack": "#697386", \"brightred": "#fbb5b2", \"brightgreen": "#85d996", \"brightyellow": "#efc078", \"brightblue": "#9fcdff", \"brightmagenta": "#f0b4e4", \"brightcyan": "#7fd3ed", \"brightwhite": "#ffffff", \"darkblack": "#000000", \"darkred": "#742833", \"darkgreen": "#00643c", \"darkyellow": "#6e3500", \"darkblue": "#2c4074", \"darkmagenta": "#602864", \"darkcyan": "#144c71", \"darkwhite": "#3e4043", \"darkerwhite": "#090e14", \} let s:c = { \"black": "0", \"red": "1", \"green": "2", \"yellow": "3", \"blue": "4", \"magenta": "5", \"cyan": "6", \"white": "7", \"brightblack": "8", \"brightred": "9", \"brightgreen": "10", \"brightyellow": "11", \"brightblue": "12", \"brightmagenta": "13", \"brightcyan": "14", \"brightwhite": "15", \} function s:hi(name, fg, bg) if a:fg == "" let ctermfg = "" let guifg = "" elseif a:fg =~ "^#" let ctermfg = "" let guifg = "guifg=" . a:fg else let ctermfg = "ctermfg=" . s:c[a:fg] let guifg = "guifg=" . s:g[a:fg] endif if a:bg == "" let ctermbg = "" let guibg = "" elseif a:bg =~ "^#" let ctermbg = "" let guibg = "guibg=" . a:bg else let ctermbg = "ctermbg=" . s:c[a:bg] let guibg = "guibg=" . s:g[a:bg] endif silent exe "highlight clear " . a:name if a:fg != "" || a:bg != "" silent exe "highlight " . a:name . " " . ctermfg . " " . ctermbg . " " . guifg . " " . guibg endif endfunction " text call hi("Comment", "brightblack", "") call hi("Constant", "red", "") call hi("Delimiter", "blue", "") call hi("Error", "black", "brightmagenta") call hi("Function", "brightcyan", "") call hi("Identifier", "", "") call hi("Include", "blue", "") call hi("Operator", "", "") call hi("PreProc", "magenta", "") call hi("Special", "magenta", "") call hi("SpecialKey", "magenta", "") call hi("Statement", "yellow", "") call hi("Title", "magenta", "") call hi("Todo", "black", "brightyellow") call hi("Type", "green", "") autocmd FileType go call hi("goBuiltins", "yellow", "") autocmd FileType go call hi("goFunctionCall", "brightcyan", "") autocmd FileType markdown call hi("mkdListItem", "yellow", "") autocmd FileType perl call hi("Identifier", "brightcyan", "") autocmd FileType puppet call hi("puppetStringDelimiter", "red", "") autocmd FileType ruby call hi("rubyInterpolationDelimiter", "magenta", "") autocmd FileType ruby call hi("rubyPercentStringDelimiter", "yellow", "") autocmd FileType ruby call hi("rubyStringDelimiter", "red", "") autocmd FileType ruby call hi("rubyRegexDelimiter", "red", "") autocmd FileType sh call hi("shQuote", "red", "") autocmd FileType vim call hi("vimBracket", "magenta", "") autocmd FileType vim call hi("vimMapMod", "magenta", "") " ui call hi("DiffAdd", "", s:g["darkgreen"]) call hi("DiffChange", "", s:g["darkblue"]) call hi("DiffDelete", "", s:g["darkred"]) call hi("DiffText", "", s:g["darkmagenta"]) call hi("Folded", "brightgreen", s:g["darkgreen"]) call hi("MatchParen", "brightcyan", s:g["darkcyan"]) call hi("MoreMsg", "green", s:g["darkgreen"]) call hi("NonText", "brightblue", s:g["darkerwhite"]) call hi("Search", "", s:g["darkmagenta"]) call hi("SpellBad", "", s:g["darkred"]) call hi("SpellCap", "", s:g["darkblue"]) call hi("SpellRare", "", s:g["darkgreen"]) call hi("SpellLocal", "", s:g["darkmagenta"]) call hi("Visual", "", s:g["darkwhite"])