diff options
-rw-r--r-- | colors/base16-bespin.vim | 285 | ||||
-rw-r--r-- | colors/base16-isotope.vim | 285 | ||||
-rw-r--r-- | colors/base16-londontube.vim | 285 | ||||
-rw-r--r-- | colors/base16-paraiso.vim | 285 |
4 files changed, 1140 insertions, 0 deletions
diff --git a/colors/base16-bespin.vim b/colors/base16-bespin.vim new file mode 100644 index 0000000..f681394 --- /dev/null +++ b/colors/base16-bespin.vim @@ -0,0 +1,285 @@ +" Base16 Bespin (https://github.com/chriskempson/base16) +" Scheme: Jan T. Sott + +" GUI color definitions +let s:gui00 = "28211c" +let s:gui01 = "36312e" +let s:gui02 = "5e5d5c" +let s:gui03 = "666666" +let s:gui04 = "797977" +let s:gui05 = "8a8986" +let s:gui06 = "9d9b97" +let s:gui07 = "baae9e" +let s:gui08 = "cf6a4c" +let s:gui09 = "cf7d34" +let s:gui0A = "f9ee98" +let s:gui0B = "54be0d" +let s:gui0C = "afc4db" +let s:gui0D = "5ea6ea" +let s:gui0E = "9b859d" +let s:gui0F = "937121" + +" Terminal color definitions +let s:cterm00 = "00" +let s:cterm03 = "08" +let s:cterm05 = "07" +let s:cterm07 = "15" +let s:cterm08 = "01" +let s:cterm0A = "03" +let s:cterm0B = "02" +let s:cterm0C = "06" +let s:cterm0D = "04" +let s:cterm0E = "05" +if exists('base16colorspace') && base16colorspace == "256" + let s:cterm01 = "18" + let s:cterm02 = "19" + let s:cterm04 = "20" + let s:cterm06 = "21" + let s:cterm09 = "16" + let s:cterm0F = "17" +else + let s:cterm01 = "10" + let s:cterm02 = "11" + let s:cterm04 = "12" + let s:cterm06 = "13" + let s:cterm09 = "09" + let s:cterm0F = "14" +endif + +" Theme setup +hi clear +syntax reset +let g:colors_name = "base16-bespin" + +" Highlighting function +fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr) + if a:guifg != "" + exec "hi " . a:group . " guifg=#" . s:gui(a:guifg) + endif + if a:guibg != "" + exec "hi " . a:group . " guibg=#" . s:gui(a:guibg) + endif + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . s:cterm(a:ctermfg) + endif + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . s:cterm(a:ctermbg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif +endfun + +" Return GUI color for light/dark variants +fun s:gui(color) + if &background == "dark" + return a:color + endif + + if a:color == s:gui00 + return s:gui07 + elseif a:color == s:gui01 + return s:gui06 + elseif a:color == s:gui02 + return s:gui05 + elseif a:color == s:gui03 + return s:gui04 + elseif a:color == s:gui04 + return s:gui03 + elseif a:color == s:gui05 + return s:gui02 + elseif a:color == s:gui06 + return s:gui01 + elseif a:color == s:gui07 + return s:gui00 + endif + + return a:color +endfun + +" Return terminal color for light/dark variants +fun s:cterm(color) + if &background == "dark" + return a:color + endif + + if a:color == s:cterm00 + return s:cterm07 + elseif a:color == s:cterm01 + return s:cterm06 + elseif a:color == s:cterm02 + return s:cterm05 + elseif a:color == s:cterm03 + return s:cterm04 + elseif a:color == s:cterm04 + return s:cterm03 + elseif a:color == s:cterm05 + return s:cterm02 + elseif a:color == s:cterm06 + return s:cterm01 + elseif a:color == s:cterm07 + return s:cterm00 + endif + + return a:color +endfun + +" Vim editor colors +call <sid>hi("Bold", "", "", "", "", "bold") +call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("ErrorMsg", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "") +call <sid>hi("FoldColumn", "", s:gui01, "", s:cterm01, "") +call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("IncSearch", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none") +call <sid>hi("Italic", "", "", "", "", "none") +call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "") +call <sid>hi("MatchParen", s:gui00, s:gui03, s:cterm00, s:cterm03, "") +call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("Question", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "") +call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "") +call <sid>hi("TooLong", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Underlined", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Visual", "", s:gui02, "", s:cterm02, "") +call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "") +call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "") +call <sid>hi("WildMenu", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none") +call <sid>hi("Conceal", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("Cursor", s:gui00, s:gui05, s:cterm00, s:cterm05, "") +call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "") +call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "") +call <sid>hi("LineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("SignColumn", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "") +call <sid>hi("StatusLine", s:gui04, s:gui02, s:cterm04, s:cterm02, "none") +call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("VertSplit", s:gui02, s:gui02, s:cterm02, s:cterm02, "none") +call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorLineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("PMenu", s:gui04, s:gui01, s:cterm04, s:cterm01, "none") +call <sid>hi("PMenuSel", s:gui01, s:gui04, s:cterm01, s:cterm04, "") +call <sid>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none") + +" Standard syntax highlighting +call <sid>hi("Boolean", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Character", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "") +call <sid>hi("Conditional", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Constant", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none") +call <sid>hi("Delimiter", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("Float", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Function", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("Identifier", s:gui08, "", s:cterm08, "", "none") +call <sid>hi("Include", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Label", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Number", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Operator", s:gui05, "", s:cterm05, "", "none") +call <sid>hi("PreProc", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Repeat", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Special", s:gui0C, "", s:cterm0C, "", "") +call <sid>hi("SpecialChar", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("Statement", s:gui08, "", s:cterm08, "", "") +call <sid>hi("StorageClass", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("String", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("Structure", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Tag", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Todo", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "") +call <sid>hi("Type", s:gui09, "", s:cterm09, "", "none") +call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "") + +" Spelling highlighting +call <sid>hi("SpellBad", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellLocal", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellCap", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellRare", "", s:gui00, "", s:cterm00, "undercurl") + +" Additional diff highlighting +call <sid>hi("DiffAdd", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffChange", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffDelete", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("DiffText", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffAdded", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffFile", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("DiffNewFile", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffLine", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffRemoved", s:gui08, s:gui00, s:cterm08, s:cterm00, "") + +" Ruby highlighting +call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("rubyInterpolation", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "") +call <sid>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "") + +" PHP highlighting +call <sid>hi("phpMemberSelector", s:gui05, "", s:cterm05, "", "") +call <sid>hi("phpComparison", s:gui05, "", s:cterm05, "", "") +call <sid>hi("phpParent", s:gui05, "", s:cterm05, "", "") + +" HTML highlighting +call <sid>hi("htmlBold", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("htmlItalic", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "") +call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "") + +" CSS highlighting +call <sid>hi("cssBraces", s:gui05, "", s:cterm05, "", "") +call <sid>hi("cssClassName", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("cssColor", s:gui0C, "", s:cterm0C, "", "") + +" SASS highlighting +call <sid>hi("sassidChar", s:gui08, "", s:cterm08, "", "") +call <sid>hi("sassClassChar", s:gui09, "", s:cterm09, "", "") +call <sid>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "") + +" JavaScript highlighting +call <sid>hi("javaScript", s:gui05, "", s:cterm05, "", "") +call <sid>hi("javaScriptBraces", s:gui05, "", s:cterm05, "", "") +call <sid>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "") + +" Markdown highlighting +call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "") + +" Git highlighting +call <sid>hi("gitCommitOverflow", s:gui08, "", s:cterm08, "", "") +call <sid>hi("gitCommitSummary", s:gui0B, "", s:cterm0B, "", "") + +" GitGutter highlighting +call <sid>hi("GitGutterAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "") +call <sid>hi("GitGutterChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "") +call <sid>hi("GitGutterDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "") +call <sid>hi("GitGutterChangeDelete", s:gui0E, s:gui01, s:cterm0E, s:cterm01, "") + +" Signify highlighting +call <sid>hi("SignifySignAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "") +call <sid>hi("SignifySignChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "") +call <sid>hi("SignifySignDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "") + +" NERDTree highlighting +call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "") + +" Remove functions +delf <sid>hi +delf <sid>gui +delf <sid>cterm + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F diff --git a/colors/base16-isotope.vim b/colors/base16-isotope.vim new file mode 100644 index 0000000..889ee02 --- /dev/null +++ b/colors/base16-isotope.vim @@ -0,0 +1,285 @@ +" Base16 Isotope (https://github.com/chriskempson/base16) +" Scheme: Jan T. Sott + +" GUI color definitions +let s:gui00 = "000000" +let s:gui01 = "404040" +let s:gui02 = "606060" +let s:gui03 = "808080" +let s:gui04 = "c0c0c0" +let s:gui05 = "d0d0d0" +let s:gui06 = "e0e0e0" +let s:gui07 = "ffffff" +let s:gui08 = "ff0000" +let s:gui09 = "ff9900" +let s:gui0A = "ff0099" +let s:gui0B = "33ff00" +let s:gui0C = "00ffff" +let s:gui0D = "0066ff" +let s:gui0E = "cc00ff" +let s:gui0F = "3300ff" + +" Terminal color definitions +let s:cterm00 = "00" +let s:cterm03 = "08" +let s:cterm05 = "07" +let s:cterm07 = "15" +let s:cterm08 = "01" +let s:cterm0A = "03" +let s:cterm0B = "02" +let s:cterm0C = "06" +let s:cterm0D = "04" +let s:cterm0E = "05" +if exists('base16colorspace') && base16colorspace == "256" + let s:cterm01 = "18" + let s:cterm02 = "19" + let s:cterm04 = "20" + let s:cterm06 = "21" + let s:cterm09 = "16" + let s:cterm0F = "17" +else + let s:cterm01 = "10" + let s:cterm02 = "11" + let s:cterm04 = "12" + let s:cterm06 = "13" + let s:cterm09 = "09" + let s:cterm0F = "14" +endif + +" Theme setup +hi clear +syntax reset +let g:colors_name = "base16-isotope" + +" Highlighting function +fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr) + if a:guifg != "" + exec "hi " . a:group . " guifg=#" . s:gui(a:guifg) + endif + if a:guibg != "" + exec "hi " . a:group . " guibg=#" . s:gui(a:guibg) + endif + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . s:cterm(a:ctermfg) + endif + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . s:cterm(a:ctermbg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif +endfun + +" Return GUI color for light/dark variants +fun s:gui(color) + if &background == "dark" + return a:color + endif + + if a:color == s:gui00 + return s:gui07 + elseif a:color == s:gui01 + return s:gui06 + elseif a:color == s:gui02 + return s:gui05 + elseif a:color == s:gui03 + return s:gui04 + elseif a:color == s:gui04 + return s:gui03 + elseif a:color == s:gui05 + return s:gui02 + elseif a:color == s:gui06 + return s:gui01 + elseif a:color == s:gui07 + return s:gui00 + endif + + return a:color +endfun + +" Return terminal color for light/dark variants +fun s:cterm(color) + if &background == "dark" + return a:color + endif + + if a:color == s:cterm00 + return s:cterm07 + elseif a:color == s:cterm01 + return s:cterm06 + elseif a:color == s:cterm02 + return s:cterm05 + elseif a:color == s:cterm03 + return s:cterm04 + elseif a:color == s:cterm04 + return s:cterm03 + elseif a:color == s:cterm05 + return s:cterm02 + elseif a:color == s:cterm06 + return s:cterm01 + elseif a:color == s:cterm07 + return s:cterm00 + endif + + return a:color +endfun + +" Vim editor colors +call <sid>hi("Bold", "", "", "", "", "bold") +call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("ErrorMsg", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "") +call <sid>hi("FoldColumn", "", s:gui01, "", s:cterm01, "") +call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("IncSearch", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none") +call <sid>hi("Italic", "", "", "", "", "none") +call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "") +call <sid>hi("MatchParen", s:gui00, s:gui03, s:cterm00, s:cterm03, "") +call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("Question", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "") +call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "") +call <sid>hi("TooLong", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Underlined", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Visual", "", s:gui02, "", s:cterm02, "") +call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "") +call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "") +call <sid>hi("WildMenu", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none") +call <sid>hi("Conceal", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("Cursor", s:gui00, s:gui05, s:cterm00, s:cterm05, "") +call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "") +call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "") +call <sid>hi("LineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("SignColumn", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "") +call <sid>hi("StatusLine", s:gui04, s:gui02, s:cterm04, s:cterm02, "none") +call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("VertSplit", s:gui02, s:gui02, s:cterm02, s:cterm02, "none") +call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorLineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("PMenu", s:gui04, s:gui01, s:cterm04, s:cterm01, "none") +call <sid>hi("PMenuSel", s:gui01, s:gui04, s:cterm01, s:cterm04, "") +call <sid>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none") + +" Standard syntax highlighting +call <sid>hi("Boolean", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Character", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "") +call <sid>hi("Conditional", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Constant", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none") +call <sid>hi("Delimiter", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("Float", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Function", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("Identifier", s:gui08, "", s:cterm08, "", "none") +call <sid>hi("Include", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Label", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Number", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Operator", s:gui05, "", s:cterm05, "", "none") +call <sid>hi("PreProc", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Repeat", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Special", s:gui0C, "", s:cterm0C, "", "") +call <sid>hi("SpecialChar", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("Statement", s:gui08, "", s:cterm08, "", "") +call <sid>hi("StorageClass", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("String", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("Structure", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Tag", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Todo", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "") +call <sid>hi("Type", s:gui09, "", s:cterm09, "", "none") +call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "") + +" Spelling highlighting +call <sid>hi("SpellBad", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellLocal", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellCap", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellRare", "", s:gui00, "", s:cterm00, "undercurl") + +" Additional diff highlighting +call <sid>hi("DiffAdd", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffChange", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffDelete", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("DiffText", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffAdded", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffFile", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("DiffNewFile", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffLine", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffRemoved", s:gui08, s:gui00, s:cterm08, s:cterm00, "") + +" Ruby highlighting +call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("rubyInterpolation", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "") +call <sid>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "") + +" PHP highlighting +call <sid>hi("phpMemberSelector", s:gui05, "", s:cterm05, "", "") +call <sid>hi("phpComparison", s:gui05, "", s:cterm05, "", "") +call <sid>hi("phpParent", s:gui05, "", s:cterm05, "", "") + +" HTML highlighting +call <sid>hi("htmlBold", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("htmlItalic", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "") +call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "") + +" CSS highlighting +call <sid>hi("cssBraces", s:gui05, "", s:cterm05, "", "") +call <sid>hi("cssClassName", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("cssColor", s:gui0C, "", s:cterm0C, "", "") + +" SASS highlighting +call <sid>hi("sassidChar", s:gui08, "", s:cterm08, "", "") +call <sid>hi("sassClassChar", s:gui09, "", s:cterm09, "", "") +call <sid>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "") + +" JavaScript highlighting +call <sid>hi("javaScript", s:gui05, "", s:cterm05, "", "") +call <sid>hi("javaScriptBraces", s:gui05, "", s:cterm05, "", "") +call <sid>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "") + +" Markdown highlighting +call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "") + +" Git highlighting +call <sid>hi("gitCommitOverflow", s:gui08, "", s:cterm08, "", "") +call <sid>hi("gitCommitSummary", s:gui0B, "", s:cterm0B, "", "") + +" GitGutter highlighting +call <sid>hi("GitGutterAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "") +call <sid>hi("GitGutterChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "") +call <sid>hi("GitGutterDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "") +call <sid>hi("GitGutterChangeDelete", s:gui0E, s:gui01, s:cterm0E, s:cterm01, "") + +" Signify highlighting +call <sid>hi("SignifySignAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "") +call <sid>hi("SignifySignChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "") +call <sid>hi("SignifySignDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "") + +" NERDTree highlighting +call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "") + +" Remove functions +delf <sid>hi +delf <sid>gui +delf <sid>cterm + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F diff --git a/colors/base16-londontube.vim b/colors/base16-londontube.vim new file mode 100644 index 0000000..694cd5d --- /dev/null +++ b/colors/base16-londontube.vim @@ -0,0 +1,285 @@ +" Base16 London Tube (https://github.com/chriskempson/base16) +" Scheme: Jan T. Sott + +" GUI color definitions +let s:gui00 = "231f20" +let s:gui01 = "1c3f95" +let s:gui02 = "5a5758" +let s:gui03 = "737171" +let s:gui04 = "959ca1" +let s:gui05 = "d9d8d8" +let s:gui06 = "e7e7e8" +let s:gui07 = "ffffff" +let s:gui08 = "ee2e24" +let s:gui09 = "f386a1" +let s:gui0A = "ffd204" +let s:gui0B = "00853e" +let s:gui0C = "85cebc" +let s:gui0D = "009ddc" +let s:gui0E = "98005d" +let s:gui0F = "b06110" + +" Terminal color definitions +let s:cterm00 = "00" +let s:cterm03 = "08" +let s:cterm05 = "07" +let s:cterm07 = "15" +let s:cterm08 = "01" +let s:cterm0A = "03" +let s:cterm0B = "02" +let s:cterm0C = "06" +let s:cterm0D = "04" +let s:cterm0E = "05" +if exists('base16colorspace') && base16colorspace == "256" + let s:cterm01 = "18" + let s:cterm02 = "19" + let s:cterm04 = "20" + let s:cterm06 = "21" + let s:cterm09 = "16" + let s:cterm0F = "17" +else + let s:cterm01 = "10" + let s:cterm02 = "11" + let s:cterm04 = "12" + let s:cterm06 = "13" + let s:cterm09 = "09" + let s:cterm0F = "14" +endif + +" Theme setup +hi clear +syntax reset +let g:colors_name = "base16-londontube" + +" Highlighting function +fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr) + if a:guifg != "" + exec "hi " . a:group . " guifg=#" . s:gui(a:guifg) + endif + if a:guibg != "" + exec "hi " . a:group . " guibg=#" . s:gui(a:guibg) + endif + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . s:cterm(a:ctermfg) + endif + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . s:cterm(a:ctermbg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif +endfun + +" Return GUI color for light/dark variants +fun s:gui(color) + if &background == "dark" + return a:color + endif + + if a:color == s:gui00 + return s:gui07 + elseif a:color == s:gui01 + return s:gui06 + elseif a:color == s:gui02 + return s:gui05 + elseif a:color == s:gui03 + return s:gui04 + elseif a:color == s:gui04 + return s:gui03 + elseif a:color == s:gui05 + return s:gui02 + elseif a:color == s:gui06 + return s:gui01 + elseif a:color == s:gui07 + return s:gui00 + endif + + return a:color +endfun + +" Return terminal color for light/dark variants +fun s:cterm(color) + if &background == "dark" + return a:color + endif + + if a:color == s:cterm00 + return s:cterm07 + elseif a:color == s:cterm01 + return s:cterm06 + elseif a:color == s:cterm02 + return s:cterm05 + elseif a:color == s:cterm03 + return s:cterm04 + elseif a:color == s:cterm04 + return s:cterm03 + elseif a:color == s:cterm05 + return s:cterm02 + elseif a:color == s:cterm06 + return s:cterm01 + elseif a:color == s:cterm07 + return s:cterm00 + endif + + return a:color +endfun + +" Vim editor colors +call <sid>hi("Bold", "", "", "", "", "bold") +call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("ErrorMsg", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "") +call <sid>hi("FoldColumn", "", s:gui01, "", s:cterm01, "") +call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("IncSearch", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none") +call <sid>hi("Italic", "", "", "", "", "none") +call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "") +call <sid>hi("MatchParen", s:gui00, s:gui03, s:cterm00, s:cterm03, "") +call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("Question", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "") +call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "") +call <sid>hi("TooLong", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Underlined", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Visual", "", s:gui02, "", s:cterm02, "") +call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "") +call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "") +call <sid>hi("WildMenu", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none") +call <sid>hi("Conceal", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("Cursor", s:gui00, s:gui05, s:cterm00, s:cterm05, "") +call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "") +call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "") +call <sid>hi("LineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("SignColumn", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "") +call <sid>hi("StatusLine", s:gui04, s:gui02, s:cterm04, s:cterm02, "none") +call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("VertSplit", s:gui02, s:gui02, s:cterm02, s:cterm02, "none") +call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorLineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("PMenu", s:gui04, s:gui01, s:cterm04, s:cterm01, "none") +call <sid>hi("PMenuSel", s:gui01, s:gui04, s:cterm01, s:cterm04, "") +call <sid>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none") + +" Standard syntax highlighting +call <sid>hi("Boolean", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Character", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "") +call <sid>hi("Conditional", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Constant", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none") +call <sid>hi("Delimiter", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("Float", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Function", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("Identifier", s:gui08, "", s:cterm08, "", "none") +call <sid>hi("Include", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Label", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Number", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Operator", s:gui05, "", s:cterm05, "", "none") +call <sid>hi("PreProc", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Repeat", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Special", s:gui0C, "", s:cterm0C, "", "") +call <sid>hi("SpecialChar", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("Statement", s:gui08, "", s:cterm08, "", "") +call <sid>hi("StorageClass", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("String", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("Structure", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Tag", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Todo", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "") +call <sid>hi("Type", s:gui09, "", s:cterm09, "", "none") +call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "") + +" Spelling highlighting +call <sid>hi("SpellBad", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellLocal", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellCap", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellRare", "", s:gui00, "", s:cterm00, "undercurl") + +" Additional diff highlighting +call <sid>hi("DiffAdd", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffChange", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffDelete", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("DiffText", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffAdded", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffFile", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("DiffNewFile", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffLine", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffRemoved", s:gui08, s:gui00, s:cterm08, s:cterm00, "") + +" Ruby highlighting +call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("rubyInterpolation", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "") +call <sid>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "") + +" PHP highlighting +call <sid>hi("phpMemberSelector", s:gui05, "", s:cterm05, "", "") +call <sid>hi("phpComparison", s:gui05, "", s:cterm05, "", "") +call <sid>hi("phpParent", s:gui05, "", s:cterm05, "", "") + +" HTML highlighting +call <sid>hi("htmlBold", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("htmlItalic", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "") +call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "") + +" CSS highlighting +call <sid>hi("cssBraces", s:gui05, "", s:cterm05, "", "") +call <sid>hi("cssClassName", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("cssColor", s:gui0C, "", s:cterm0C, "", "") + +" SASS highlighting +call <sid>hi("sassidChar", s:gui08, "", s:cterm08, "", "") +call <sid>hi("sassClassChar", s:gui09, "", s:cterm09, "", "") +call <sid>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "") + +" JavaScript highlighting +call <sid>hi("javaScript", s:gui05, "", s:cterm05, "", "") +call <sid>hi("javaScriptBraces", s:gui05, "", s:cterm05, "", "") +call <sid>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "") + +" Markdown highlighting +call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "") + +" Git highlighting +call <sid>hi("gitCommitOverflow", s:gui08, "", s:cterm08, "", "") +call <sid>hi("gitCommitSummary", s:gui0B, "", s:cterm0B, "", "") + +" GitGutter highlighting +call <sid>hi("GitGutterAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "") +call <sid>hi("GitGutterChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "") +call <sid>hi("GitGutterDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "") +call <sid>hi("GitGutterChangeDelete", s:gui0E, s:gui01, s:cterm0E, s:cterm01, "") + +" Signify highlighting +call <sid>hi("SignifySignAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "") +call <sid>hi("SignifySignChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "") +call <sid>hi("SignifySignDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "") + +" NERDTree highlighting +call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "") + +" Remove functions +delf <sid>hi +delf <sid>gui +delf <sid>cterm + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F diff --git a/colors/base16-paraiso.vim b/colors/base16-paraiso.vim new file mode 100644 index 0000000..7674f62 --- /dev/null +++ b/colors/base16-paraiso.vim @@ -0,0 +1,285 @@ +" Base16 Paraiso (https://github.com/chriskempson/base16) +" Scheme: Jan T. Sott + +" GUI color definitions +let s:gui00 = "2f1e2e" +let s:gui01 = "41323f" +let s:gui02 = "4f424c" +let s:gui03 = "776e71" +let s:gui04 = "8d8687" +let s:gui05 = "a39e9b" +let s:gui06 = "b9b6b0" +let s:gui07 = "e7e9db" +let s:gui08 = "ef6155" +let s:gui09 = "f99b15" +let s:gui0A = "fec418" +let s:gui0B = "48b685" +let s:gui0C = "5bc4bf" +let s:gui0D = "06b6ef" +let s:gui0E = "815ba4" +let s:gui0F = "e96ba8" + +" Terminal color definitions +let s:cterm00 = "00" +let s:cterm03 = "08" +let s:cterm05 = "07" +let s:cterm07 = "15" +let s:cterm08 = "01" +let s:cterm0A = "03" +let s:cterm0B = "02" +let s:cterm0C = "06" +let s:cterm0D = "04" +let s:cterm0E = "05" +if exists('base16colorspace') && base16colorspace == "256" + let s:cterm01 = "18" + let s:cterm02 = "19" + let s:cterm04 = "20" + let s:cterm06 = "21" + let s:cterm09 = "16" + let s:cterm0F = "17" +else + let s:cterm01 = "10" + let s:cterm02 = "11" + let s:cterm04 = "12" + let s:cterm06 = "13" + let s:cterm09 = "09" + let s:cterm0F = "14" +endif + +" Theme setup +hi clear +syntax reset +let g:colors_name = "base16-paraiso" + +" Highlighting function +fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr) + if a:guifg != "" + exec "hi " . a:group . " guifg=#" . s:gui(a:guifg) + endif + if a:guibg != "" + exec "hi " . a:group . " guibg=#" . s:gui(a:guibg) + endif + if a:ctermfg != "" + exec "hi " . a:group . " ctermfg=" . s:cterm(a:ctermfg) + endif + if a:ctermbg != "" + exec "hi " . a:group . " ctermbg=" . s:cterm(a:ctermbg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif +endfun + +" Return GUI color for light/dark variants +fun s:gui(color) + if &background == "dark" + return a:color + endif + + if a:color == s:gui00 + return s:gui07 + elseif a:color == s:gui01 + return s:gui06 + elseif a:color == s:gui02 + return s:gui05 + elseif a:color == s:gui03 + return s:gui04 + elseif a:color == s:gui04 + return s:gui03 + elseif a:color == s:gui05 + return s:gui02 + elseif a:color == s:gui06 + return s:gui01 + elseif a:color == s:gui07 + return s:gui00 + endif + + return a:color +endfun + +" Return terminal color for light/dark variants +fun s:cterm(color) + if &background == "dark" + return a:color + endif + + if a:color == s:cterm00 + return s:cterm07 + elseif a:color == s:cterm01 + return s:cterm06 + elseif a:color == s:cterm02 + return s:cterm05 + elseif a:color == s:cterm03 + return s:cterm04 + elseif a:color == s:cterm04 + return s:cterm03 + elseif a:color == s:cterm05 + return s:cterm02 + elseif a:color == s:cterm06 + return s:cterm01 + elseif a:color == s:cterm07 + return s:cterm00 + endif + + return a:color +endfun + +" Vim editor colors +call <sid>hi("Bold", "", "", "", "", "bold") +call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("ErrorMsg", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("Exception", s:gui08, "", s:cterm08, "", "") +call <sid>hi("FoldColumn", "", s:gui01, "", s:cterm01, "") +call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("IncSearch", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none") +call <sid>hi("Italic", "", "", "", "", "none") +call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "") +call <sid>hi("MatchParen", s:gui00, s:gui03, s:cterm00, s:cterm03, "") +call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("Question", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "") +call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "") +call <sid>hi("TooLong", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Underlined", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Visual", "", s:gui02, "", s:cterm02, "") +call <sid>hi("VisualNOS", s:gui08, "", s:cterm08, "", "") +call <sid>hi("WarningMsg", s:gui08, "", s:cterm08, "", "") +call <sid>hi("WildMenu", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Title", s:gui0D, "", s:cterm0D, "", "none") +call <sid>hi("Conceal", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("Cursor", s:gui00, s:gui05, s:cterm00, s:cterm05, "") +call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "") +call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "") +call <sid>hi("LineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("SignColumn", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("SpecialKey", s:gui03, "", s:cterm03, "", "") +call <sid>hi("StatusLine", s:gui04, s:gui02, s:cterm04, s:cterm02, "none") +call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("VertSplit", s:gui02, s:gui02, s:cterm02, s:cterm02, "none") +call <sid>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorLine", "", s:gui01, "", s:cterm01, "none") +call <sid>hi("CursorLineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "") +call <sid>hi("PMenu", s:gui04, s:gui01, s:cterm04, s:cterm01, "none") +call <sid>hi("PMenuSel", s:gui01, s:gui04, s:cterm01, s:cterm04, "") +call <sid>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none") +call <sid>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none") + +" Standard syntax highlighting +call <sid>hi("Boolean", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Character", s:gui08, "", s:cterm08, "", "") +call <sid>hi("Comment", s:gui03, "", s:cterm03, "", "") +call <sid>hi("Conditional", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Constant", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Define", s:gui0E, "", s:cterm0E, "", "none") +call <sid>hi("Delimiter", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("Float", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Function", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("Identifier", s:gui08, "", s:cterm08, "", "none") +call <sid>hi("Include", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("Keyword", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Label", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Number", s:gui09, "", s:cterm09, "", "") +call <sid>hi("Operator", s:gui05, "", s:cterm05, "", "none") +call <sid>hi("PreProc", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Repeat", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Special", s:gui0C, "", s:cterm0C, "", "") +call <sid>hi("SpecialChar", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("Statement", s:gui08, "", s:cterm08, "", "") +call <sid>hi("StorageClass", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("String", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("Structure", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("Tag", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("Todo", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "") +call <sid>hi("Type", s:gui09, "", s:cterm09, "", "none") +call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "") + +" Spelling highlighting +call <sid>hi("SpellBad", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellLocal", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellCap", "", s:gui00, "", s:cterm00, "undercurl") +call <sid>hi("SpellRare", "", s:gui00, "", s:cterm00, "undercurl") + +" Additional diff highlighting +call <sid>hi("DiffAdd", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffChange", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffDelete", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("DiffText", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffAdded", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffFile", s:gui08, s:gui00, s:cterm08, s:cterm00, "") +call <sid>hi("DiffNewFile", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "") +call <sid>hi("DiffLine", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "") +call <sid>hi("DiffRemoved", s:gui08, s:gui00, s:cterm08, s:cterm00, "") + +" Ruby highlighting +call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("rubyInterpolation", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "") +call <sid>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "") +call <sid>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "") + +" PHP highlighting +call <sid>hi("phpMemberSelector", s:gui05, "", s:cterm05, "", "") +call <sid>hi("phpComparison", s:gui05, "", s:cterm05, "", "") +call <sid>hi("phpParent", s:gui05, "", s:cterm05, "", "") + +" HTML highlighting +call <sid>hi("htmlBold", s:gui0A, "", s:cterm0A, "", "") +call <sid>hi("htmlItalic", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "") +call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "") + +" CSS highlighting +call <sid>hi("cssBraces", s:gui05, "", s:cterm05, "", "") +call <sid>hi("cssClassName", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("cssColor", s:gui0C, "", s:cterm0C, "", "") + +" SASS highlighting +call <sid>hi("sassidChar", s:gui08, "", s:cterm08, "", "") +call <sid>hi("sassClassChar", s:gui09, "", s:cterm09, "", "") +call <sid>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "") +call <sid>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "") + +" JavaScript highlighting +call <sid>hi("javaScript", s:gui05, "", s:cterm05, "", "") +call <sid>hi("javaScriptBraces", s:gui05, "", s:cterm05, "", "") +call <sid>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "") + +" Markdown highlighting +call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "") +call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "") + +" Git highlighting +call <sid>hi("gitCommitOverflow", s:gui08, "", s:cterm08, "", "") +call <sid>hi("gitCommitSummary", s:gui0B, "", s:cterm0B, "", "") + +" GitGutter highlighting +call <sid>hi("GitGutterAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "") +call <sid>hi("GitGutterChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "") +call <sid>hi("GitGutterDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "") +call <sid>hi("GitGutterChangeDelete", s:gui0E, s:gui01, s:cterm0E, s:cterm01, "") + +" Signify highlighting +call <sid>hi("SignifySignAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "") +call <sid>hi("SignifySignChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "") +call <sid>hi("SignifySignDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "") + +" NERDTree highlighting +call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "") +call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "") + +" Remove functions +delf <sid>hi +delf <sid>gui +delf <sid>cterm + +" Remove color variables +unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F +unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F |