aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--colors/base16-apprentice.vim501
-rw-r--r--colors/base16-danqing.vim501
-rw-r--r--colors/base16-darcula.vim501
-rw-r--r--colors/base16-rose-pine-dawn.vim501
-rw-r--r--colors/base16-rose-pine-moon.vim501
-rw-r--r--colors/base16-rose-pine.vim501
-rw-r--r--colors/base16-tender.vim501
-rw-r--r--colors/base16-windows-10-light.vim501
-rw-r--r--colors/base16-windows-10.vim501
-rw-r--r--colors/base16-windows-95-light.vim501
-rw-r--r--colors/base16-windows-95.vim501
-rw-r--r--colors/base16-windows-highcontrast-light.vim501
-rw-r--r--colors/base16-windows-highcontrast.vim501
-rw-r--r--colors/base16-windows-nt-light.vim501
-rw-r--r--colors/base16-windows-nt.vim501
15 files changed, 7515 insertions, 0 deletions
diff --git a/colors/base16-apprentice.vim b/colors/base16-apprentice.vim
new file mode 100644
index 0000000..6038eb1
--- /dev/null
+++ b/colors/base16-apprentice.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Apprentice scheme by romainl
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-apprentice.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "262626"
+let g:base16_gui00 = "262626"
+let s:gui01 = "303030"
+let g:base16_gui01 = "303030"
+let s:gui02 = "333333"
+let g:base16_gui02 = "333333"
+let s:gui03 = "6C6C6C"
+let g:base16_gui03 = "6C6C6C"
+let s:gui04 = "787878"
+let g:base16_gui04 = "787878"
+let s:gui05 = "BCBCBC"
+let g:base16_gui05 = "BCBCBC"
+let s:gui06 = "C9C9C9"
+let g:base16_gui06 = "C9C9C9"
+let s:gui07 = "FFFFFF"
+let g:base16_gui07 = "FFFFFF"
+let s:gui08 = "5F8787"
+let g:base16_gui08 = "5F8787"
+let s:gui09 = "FF8700"
+let g:base16_gui09 = "FF8700"
+let s:gui0A = "5F8787"
+let g:base16_gui0A = "5F8787"
+let s:gui0B = "87AF87"
+let g:base16_gui0B = "87AF87"
+let s:gui0C = "5F875F"
+let g:base16_gui0C = "5F875F"
+let s:gui0D = "FFFFAF"
+let g:base16_gui0D = "FFFFAF"
+let s:gui0E = "87AFD7"
+let g:base16_gui0E = "87AFD7"
+let s:gui0F = "5F87AF"
+let g:base16_gui0F = "5F87AF"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#262626"
+ let g:terminal_color_1 = "#5F8787"
+ let g:terminal_color_2 = "#87AF87"
+ let g:terminal_color_3 = "#5F8787"
+ let g:terminal_color_4 = "#FFFFAF"
+ let g:terminal_color_5 = "#87AFD7"
+ let g:terminal_color_6 = "#5F875F"
+ let g:terminal_color_7 = "#BCBCBC"
+ let g:terminal_color_8 = "#6C6C6C"
+ let g:terminal_color_9 = "#5F8787"
+ let g:terminal_color_10 = "#87AF87"
+ let g:terminal_color_11 = "#5F8787"
+ let g:terminal_color_12 = "#FFFFAF"
+ let g:terminal_color_13 = "#87AFD7"
+ let g:terminal_color_14 = "#5F875F"
+ let g:terminal_color_15 = "#FFFFFF"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#262626",
+ \ "#5F8787",
+ \ "#87AF87",
+ \ "#5F8787",
+ \ "#FFFFAF",
+ \ "#87AFD7",
+ \ "#5F875F",
+ \ "#BCBCBC",
+ \ "#6C6C6C",
+ \ "#5F8787",
+ \ "#87AF87",
+ \ "#5F8787",
+ \ "#FFFFAF",
+ \ "#87AFD7",
+ \ "#5F875F",
+ \ "#FFFFFF",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-apprentice"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-danqing.vim b/colors/base16-danqing.vim
new file mode 100644
index 0000000..93bd724
--- /dev/null
+++ b/colors/base16-danqing.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" DanQing scheme by Wenhan Zhu (Cosmos) (zhuwenhan950913@gmail.com)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-danqing.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "2d302f"
+let g:base16_gui00 = "2d302f"
+let s:gui01 = "434846"
+let g:base16_gui01 = "434846"
+let s:gui02 = "5a605d"
+let g:base16_gui02 = "5a605d"
+let s:gui03 = "9da8a3"
+let g:base16_gui03 = "9da8a3"
+let s:gui04 = "cad8d2"
+let g:base16_gui04 = "cad8d2"
+let s:gui05 = "e0f0eF"
+let g:base16_gui05 = "e0f0eF"
+let s:gui06 = "ecf6f2"
+let g:base16_gui06 = "ecf6f2"
+let s:gui07 = "fcfefd"
+let g:base16_gui07 = "fcfefd"
+let s:gui08 = "F9906F"
+let g:base16_gui08 = "F9906F"
+let s:gui09 = "B38A61"
+let g:base16_gui09 = "B38A61"
+let s:gui0A = "F0C239"
+let g:base16_gui0A = "F0C239"
+let s:gui0B = "8AB361"
+let g:base16_gui0B = "8AB361"
+let s:gui0C = "30DFF3"
+let g:base16_gui0C = "30DFF3"
+let s:gui0D = "B0A4E3"
+let g:base16_gui0D = "B0A4E3"
+let s:gui0E = "CCA4E3"
+let g:base16_gui0E = "CCA4E3"
+let s:gui0F = "CA6924"
+let g:base16_gui0F = "CA6924"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#2d302f"
+ let g:terminal_color_1 = "#F9906F"
+ let g:terminal_color_2 = "#8AB361"
+ let g:terminal_color_3 = "#F0C239"
+ let g:terminal_color_4 = "#B0A4E3"
+ let g:terminal_color_5 = "#CCA4E3"
+ let g:terminal_color_6 = "#30DFF3"
+ let g:terminal_color_7 = "#e0f0eF"
+ let g:terminal_color_8 = "#9da8a3"
+ let g:terminal_color_9 = "#F9906F"
+ let g:terminal_color_10 = "#8AB361"
+ let g:terminal_color_11 = "#F0C239"
+ let g:terminal_color_12 = "#B0A4E3"
+ let g:terminal_color_13 = "#CCA4E3"
+ let g:terminal_color_14 = "#30DFF3"
+ let g:terminal_color_15 = "#fcfefd"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#2d302f",
+ \ "#F9906F",
+ \ "#8AB361",
+ \ "#F0C239",
+ \ "#B0A4E3",
+ \ "#CCA4E3",
+ \ "#30DFF3",
+ \ "#e0f0eF",
+ \ "#9da8a3",
+ \ "#F9906F",
+ \ "#8AB361",
+ \ "#F0C239",
+ \ "#B0A4E3",
+ \ "#CCA4E3",
+ \ "#30DFF3",
+ \ "#fcfefd",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-danqing"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-darcula.vim b/colors/base16-darcula.vim
new file mode 100644
index 0000000..3192d9d
--- /dev/null
+++ b/colors/base16-darcula.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Darcula scheme by jetbrains
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-darcula.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "2b2b2b"
+let g:base16_gui00 = "2b2b2b"
+let s:gui01 = "323232"
+let g:base16_gui01 = "323232"
+let s:gui02 = "323232"
+let g:base16_gui02 = "323232"
+let s:gui03 = "606366"
+let g:base16_gui03 = "606366"
+let s:gui04 = "a4a3a3"
+let g:base16_gui04 = "a4a3a3"
+let s:gui05 = "a9b7c6"
+let g:base16_gui05 = "a9b7c6"
+let s:gui06 = "ffc66d"
+let g:base16_gui06 = "ffc66d"
+let s:gui07 = "ffffff"
+let g:base16_gui07 = "ffffff"
+let s:gui08 = "4eade5"
+let g:base16_gui08 = "4eade5"
+let s:gui09 = "689757"
+let g:base16_gui09 = "689757"
+let s:gui0A = "bbb529"
+let g:base16_gui0A = "bbb529"
+let s:gui0B = "6a8759"
+let g:base16_gui0B = "6a8759"
+let s:gui0C = "629755"
+let g:base16_gui0C = "629755"
+let s:gui0D = "9876aa"
+let g:base16_gui0D = "9876aa"
+let s:gui0E = "cc7832"
+let g:base16_gui0E = "cc7832"
+let s:gui0F = "808080"
+let g:base16_gui0F = "808080"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#2b2b2b"
+ let g:terminal_color_1 = "#4eade5"
+ let g:terminal_color_2 = "#6a8759"
+ let g:terminal_color_3 = "#bbb529"
+ let g:terminal_color_4 = "#9876aa"
+ let g:terminal_color_5 = "#cc7832"
+ let g:terminal_color_6 = "#629755"
+ let g:terminal_color_7 = "#a9b7c6"
+ let g:terminal_color_8 = "#606366"
+ let g:terminal_color_9 = "#4eade5"
+ let g:terminal_color_10 = "#6a8759"
+ let g:terminal_color_11 = "#bbb529"
+ let g:terminal_color_12 = "#9876aa"
+ let g:terminal_color_13 = "#cc7832"
+ let g:terminal_color_14 = "#629755"
+ let g:terminal_color_15 = "#ffffff"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#2b2b2b",
+ \ "#4eade5",
+ \ "#6a8759",
+ \ "#bbb529",
+ \ "#9876aa",
+ \ "#cc7832",
+ \ "#629755",
+ \ "#a9b7c6",
+ \ "#606366",
+ \ "#4eade5",
+ \ "#6a8759",
+ \ "#bbb529",
+ \ "#9876aa",
+ \ "#cc7832",
+ \ "#629755",
+ \ "#ffffff",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-darcula"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-rose-pine-dawn.vim b/colors/base16-rose-pine-dawn.vim
new file mode 100644
index 0000000..3c3e013
--- /dev/null
+++ b/colors/base16-rose-pine-dawn.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" RosƩ Pine Dawn scheme by Emilia Dunfelt &lt;sayhi@dunfelt.se&gt;
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-rose-pine-dawn.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "faf4ed"
+let g:base16_gui00 = "faf4ed"
+let s:gui01 = "fffaf3"
+let g:base16_gui01 = "fffaf3"
+let s:gui02 = "f2e9de"
+let g:base16_gui02 = "f2e9de"
+let s:gui03 = "9893a5"
+let g:base16_gui03 = "9893a5"
+let s:gui04 = "6e6a86"
+let g:base16_gui04 = "6e6a86"
+let s:gui05 = "575279"
+let g:base16_gui05 = "575279"
+let s:gui06 = "555169"
+let g:base16_gui06 = "555169"
+let s:gui07 = "26233a"
+let g:base16_gui07 = "26233a"
+let s:gui08 = "1f1d2e"
+let g:base16_gui08 = "1f1d2e"
+let s:gui09 = "b4637a"
+let g:base16_gui09 = "b4637a"
+let s:gui0A = "ea9d34"
+let g:base16_gui0A = "ea9d34"
+let s:gui0B = "d7827e"
+let g:base16_gui0B = "d7827e"
+let s:gui0C = "286983"
+let g:base16_gui0C = "286983"
+let s:gui0D = "56949f"
+let g:base16_gui0D = "56949f"
+let s:gui0E = "907aa9"
+let g:base16_gui0E = "907aa9"
+let s:gui0F = "c5c3ce"
+let g:base16_gui0F = "c5c3ce"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#faf4ed"
+ let g:terminal_color_1 = "#1f1d2e"
+ let g:terminal_color_2 = "#d7827e"
+ let g:terminal_color_3 = "#ea9d34"
+ let g:terminal_color_4 = "#56949f"
+ let g:terminal_color_5 = "#907aa9"
+ let g:terminal_color_6 = "#286983"
+ let g:terminal_color_7 = "#575279"
+ let g:terminal_color_8 = "#9893a5"
+ let g:terminal_color_9 = "#1f1d2e"
+ let g:terminal_color_10 = "#d7827e"
+ let g:terminal_color_11 = "#ea9d34"
+ let g:terminal_color_12 = "#56949f"
+ let g:terminal_color_13 = "#907aa9"
+ let g:terminal_color_14 = "#286983"
+ let g:terminal_color_15 = "#26233a"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#faf4ed",
+ \ "#1f1d2e",
+ \ "#d7827e",
+ \ "#ea9d34",
+ \ "#56949f",
+ \ "#907aa9",
+ \ "#286983",
+ \ "#575279",
+ \ "#9893a5",
+ \ "#1f1d2e",
+ \ "#d7827e",
+ \ "#ea9d34",
+ \ "#56949f",
+ \ "#907aa9",
+ \ "#286983",
+ \ "#26233a",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-rose-pine-dawn"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-rose-pine-moon.vim b/colors/base16-rose-pine-moon.vim
new file mode 100644
index 0000000..c45469c
--- /dev/null
+++ b/colors/base16-rose-pine-moon.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" RosƩ Pine Moon scheme by Emilia Dunfelt &lt;sayhi@dunfelt.se&gt;
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-rose-pine-moon.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "232136"
+let g:base16_gui00 = "232136"
+let s:gui01 = "2a273f"
+let g:base16_gui01 = "2a273f"
+let s:gui02 = "393552"
+let g:base16_gui02 = "393552"
+let s:gui03 = "59546d"
+let g:base16_gui03 = "59546d"
+let s:gui04 = "817c9c"
+let g:base16_gui04 = "817c9c"
+let s:gui05 = "e0def4"
+let g:base16_gui05 = "e0def4"
+let s:gui06 = "f5f5f7"
+let g:base16_gui06 = "f5f5f7"
+let s:gui07 = "d9d7e1"
+let g:base16_gui07 = "d9d7e1"
+let s:gui08 = "ecebf0"
+let g:base16_gui08 = "ecebf0"
+let s:gui09 = "eb6f92"
+let g:base16_gui09 = "eb6f92"
+let s:gui0A = "f6c177"
+let g:base16_gui0A = "f6c177"
+let s:gui0B = "ea9a97"
+let g:base16_gui0B = "ea9a97"
+let s:gui0C = "3e8fb0"
+let g:base16_gui0C = "3e8fb0"
+let s:gui0D = "9ccfd8"
+let g:base16_gui0D = "9ccfd8"
+let s:gui0E = "c4a7e7"
+let g:base16_gui0E = "c4a7e7"
+let s:gui0F = "b9b9bc"
+let g:base16_gui0F = "b9b9bc"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#232136"
+ let g:terminal_color_1 = "#ecebf0"
+ let g:terminal_color_2 = "#ea9a97"
+ let g:terminal_color_3 = "#f6c177"
+ let g:terminal_color_4 = "#9ccfd8"
+ let g:terminal_color_5 = "#c4a7e7"
+ let g:terminal_color_6 = "#3e8fb0"
+ let g:terminal_color_7 = "#e0def4"
+ let g:terminal_color_8 = "#59546d"
+ let g:terminal_color_9 = "#ecebf0"
+ let g:terminal_color_10 = "#ea9a97"
+ let g:terminal_color_11 = "#f6c177"
+ let g:terminal_color_12 = "#9ccfd8"
+ let g:terminal_color_13 = "#c4a7e7"
+ let g:terminal_color_14 = "#3e8fb0"
+ let g:terminal_color_15 = "#d9d7e1"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#232136",
+ \ "#ecebf0",
+ \ "#ea9a97",
+ \ "#f6c177",
+ \ "#9ccfd8",
+ \ "#c4a7e7",
+ \ "#3e8fb0",
+ \ "#e0def4",
+ \ "#59546d",
+ \ "#ecebf0",
+ \ "#ea9a97",
+ \ "#f6c177",
+ \ "#9ccfd8",
+ \ "#c4a7e7",
+ \ "#3e8fb0",
+ \ "#d9d7e1",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-rose-pine-moon"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-rose-pine.vim b/colors/base16-rose-pine.vim
new file mode 100644
index 0000000..8b88737
--- /dev/null
+++ b/colors/base16-rose-pine.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" RosƩ Pine scheme by Emilia Dunfelt &lt;sayhi@dunfelt.se&gt;
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-rose-pine.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "191724"
+let g:base16_gui00 = "191724"
+let s:gui01 = "1f1d2e"
+let g:base16_gui01 = "1f1d2e"
+let s:gui02 = "26233a"
+let g:base16_gui02 = "26233a"
+let s:gui03 = "555169"
+let g:base16_gui03 = "555169"
+let s:gui04 = "6e6a86"
+let g:base16_gui04 = "6e6a86"
+let s:gui05 = "e0def4"
+let g:base16_gui05 = "e0def4"
+let s:gui06 = "f0f0f3"
+let g:base16_gui06 = "f0f0f3"
+let s:gui07 = "c5c3ce"
+let g:base16_gui07 = "c5c3ce"
+let s:gui08 = "e2e1e7"
+let g:base16_gui08 = "e2e1e7"
+let s:gui09 = "eb6f92"
+let g:base16_gui09 = "eb6f92"
+let s:gui0A = "f6c177"
+let g:base16_gui0A = "f6c177"
+let s:gui0B = "ebbcba"
+let g:base16_gui0B = "ebbcba"
+let s:gui0C = "31748f"
+let g:base16_gui0C = "31748f"
+let s:gui0D = "9ccfd8"
+let g:base16_gui0D = "9ccfd8"
+let s:gui0E = "c4a7e7"
+let g:base16_gui0E = "c4a7e7"
+let s:gui0F = "e5e5e5"
+let g:base16_gui0F = "e5e5e5"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#191724"
+ let g:terminal_color_1 = "#e2e1e7"
+ let g:terminal_color_2 = "#ebbcba"
+ let g:terminal_color_3 = "#f6c177"
+ let g:terminal_color_4 = "#9ccfd8"
+ let g:terminal_color_5 = "#c4a7e7"
+ let g:terminal_color_6 = "#31748f"
+ let g:terminal_color_7 = "#e0def4"
+ let g:terminal_color_8 = "#555169"
+ let g:terminal_color_9 = "#e2e1e7"
+ let g:terminal_color_10 = "#ebbcba"
+ let g:terminal_color_11 = "#f6c177"
+ let g:terminal_color_12 = "#9ccfd8"
+ let g:terminal_color_13 = "#c4a7e7"
+ let g:terminal_color_14 = "#31748f"
+ let g:terminal_color_15 = "#c5c3ce"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#191724",
+ \ "#e2e1e7",
+ \ "#ebbcba",
+ \ "#f6c177",
+ \ "#9ccfd8",
+ \ "#c4a7e7",
+ \ "#31748f",
+ \ "#e0def4",
+ \ "#555169",
+ \ "#e2e1e7",
+ \ "#ebbcba",
+ \ "#f6c177",
+ \ "#9ccfd8",
+ \ "#c4a7e7",
+ \ "#31748f",
+ \ "#c5c3ce",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-rose-pine"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-tender.vim b/colors/base16-tender.vim
new file mode 100644
index 0000000..905c078
--- /dev/null
+++ b/colors/base16-tender.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" tender scheme by Jacobo Tabernero (https://github/com/jacoborus/tender.vim)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-tender.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "282828"
+let g:base16_gui00 = "282828"
+let s:gui01 = "383838"
+let g:base16_gui01 = "383838"
+let s:gui02 = "484848"
+let g:base16_gui02 = "484848"
+let s:gui03 = "1d1d1d"
+let g:base16_gui03 = "1d1d1d"
+let s:gui04 = "b8b8b8"
+let g:base16_gui04 = "b8b8b8"
+let s:gui05 = "eeeeee"
+let g:base16_gui05 = "eeeeee"
+let s:gui06 = "e8e8e8"
+let g:base16_gui06 = "e8e8e8"
+let s:gui07 = "ffffff"
+let g:base16_gui07 = "ffffff"
+let s:gui08 = "f43753"
+let g:base16_gui08 = "f43753"
+let s:gui09 = "dc9656"
+let g:base16_gui09 = "dc9656"
+let s:gui0A = "ffc24b"
+let g:base16_gui0A = "ffc24b"
+let s:gui0B = "c9d05c"
+let g:base16_gui0B = "c9d05c"
+let s:gui0C = "73cef4"
+let g:base16_gui0C = "73cef4"
+let s:gui0D = "b3deef"
+let g:base16_gui0D = "b3deef"
+let s:gui0E = "d3b987"
+let g:base16_gui0E = "d3b987"
+let s:gui0F = "a16946"
+let g:base16_gui0F = "a16946"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#282828"
+ let g:terminal_color_1 = "#f43753"
+ let g:terminal_color_2 = "#c9d05c"
+ let g:terminal_color_3 = "#ffc24b"
+ let g:terminal_color_4 = "#b3deef"
+ let g:terminal_color_5 = "#d3b987"
+ let g:terminal_color_6 = "#73cef4"
+ let g:terminal_color_7 = "#eeeeee"
+ let g:terminal_color_8 = "#1d1d1d"
+ let g:terminal_color_9 = "#f43753"
+ let g:terminal_color_10 = "#c9d05c"
+ let g:terminal_color_11 = "#ffc24b"
+ let g:terminal_color_12 = "#b3deef"
+ let g:terminal_color_13 = "#d3b987"
+ let g:terminal_color_14 = "#73cef4"
+ let g:terminal_color_15 = "#ffffff"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#282828",
+ \ "#f43753",
+ \ "#c9d05c",
+ \ "#ffc24b",
+ \ "#b3deef",
+ \ "#d3b987",
+ \ "#73cef4",
+ \ "#eeeeee",
+ \ "#1d1d1d",
+ \ "#f43753",
+ \ "#c9d05c",
+ \ "#ffc24b",
+ \ "#b3deef",
+ \ "#d3b987",
+ \ "#73cef4",
+ \ "#ffffff",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-tender"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-windows-10-light.vim b/colors/base16-windows-10-light.vim
new file mode 100644
index 0000000..f9b7878
--- /dev/null
+++ b/colors/base16-windows-10-light.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Windows 10 Light scheme by Fergus Collins (https://github.com/C-Fergus)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-windows-10-light.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "f2f2f2"
+let g:base16_gui00 = "f2f2f2"
+let s:gui01 = "e5e5e5"
+let g:base16_gui01 = "e5e5e5"
+let s:gui02 = "d9d9d9"
+let g:base16_gui02 = "d9d9d9"
+let s:gui03 = "cccccc"
+let g:base16_gui03 = "cccccc"
+let s:gui04 = "ababab"
+let g:base16_gui04 = "ababab"
+let s:gui05 = "767676"
+let g:base16_gui05 = "767676"
+let s:gui06 = "414141"
+let g:base16_gui06 = "414141"
+let s:gui07 = "0c0c0c"
+let g:base16_gui07 = "0c0c0c"
+let s:gui08 = "c50f1f"
+let g:base16_gui08 = "c50f1f"
+let s:gui09 = "f9f1a5"
+let g:base16_gui09 = "f9f1a5"
+let s:gui0A = "c19c00"
+let g:base16_gui0A = "c19c00"
+let s:gui0B = "13a10e"
+let g:base16_gui0B = "13a10e"
+let s:gui0C = "3a96dd"
+let g:base16_gui0C = "3a96dd"
+let s:gui0D = "0037da"
+let g:base16_gui0D = "0037da"
+let s:gui0E = "881798"
+let g:base16_gui0E = "881798"
+let s:gui0F = "16c60c"
+let g:base16_gui0F = "16c60c"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#f2f2f2"
+ let g:terminal_color_1 = "#c50f1f"
+ let g:terminal_color_2 = "#13a10e"
+ let g:terminal_color_3 = "#c19c00"
+ let g:terminal_color_4 = "#0037da"
+ let g:terminal_color_5 = "#881798"
+ let g:terminal_color_6 = "#3a96dd"
+ let g:terminal_color_7 = "#767676"
+ let g:terminal_color_8 = "#cccccc"
+ let g:terminal_color_9 = "#c50f1f"
+ let g:terminal_color_10 = "#13a10e"
+ let g:terminal_color_11 = "#c19c00"
+ let g:terminal_color_12 = "#0037da"
+ let g:terminal_color_13 = "#881798"
+ let g:terminal_color_14 = "#3a96dd"
+ let g:terminal_color_15 = "#0c0c0c"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#f2f2f2",
+ \ "#c50f1f",
+ \ "#13a10e",
+ \ "#c19c00",
+ \ "#0037da",
+ \ "#881798",
+ \ "#3a96dd",
+ \ "#767676",
+ \ "#cccccc",
+ \ "#c50f1f",
+ \ "#13a10e",
+ \ "#c19c00",
+ \ "#0037da",
+ \ "#881798",
+ \ "#3a96dd",
+ \ "#0c0c0c",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-windows-10-light"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-windows-10.vim b/colors/base16-windows-10.vim
new file mode 100644
index 0000000..2998b81
--- /dev/null
+++ b/colors/base16-windows-10.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Windows 10 scheme by Fergus Collins (https://github.com/C-Fergus)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-windows-10.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "0c0c0c"
+let g:base16_gui00 = "0c0c0c"
+let s:gui01 = "2f2f2f"
+let g:base16_gui01 = "2f2f2f"
+let s:gui02 = "535353"
+let g:base16_gui02 = "535353"
+let s:gui03 = "767676"
+let g:base16_gui03 = "767676"
+let s:gui04 = "b9b9b9"
+let g:base16_gui04 = "b9b9b9"
+let s:gui05 = "cccccc"
+let g:base16_gui05 = "cccccc"
+let s:gui06 = "dfdfdf"
+let g:base16_gui06 = "dfdfdf"
+let s:gui07 = "f2f2f2"
+let g:base16_gui07 = "f2f2f2"
+let s:gui08 = "e74856"
+let g:base16_gui08 = "e74856"
+let s:gui09 = "c19c00"
+let g:base16_gui09 = "c19c00"
+let s:gui0A = "f9f1a5"
+let g:base16_gui0A = "f9f1a5"
+let s:gui0B = "16c60c"
+let g:base16_gui0B = "16c60c"
+let s:gui0C = "61d6d6"
+let g:base16_gui0C = "61d6d6"
+let s:gui0D = "3b78ff"
+let g:base16_gui0D = "3b78ff"
+let s:gui0E = "b4009e"
+let g:base16_gui0E = "b4009e"
+let s:gui0F = "13a10e"
+let g:base16_gui0F = "13a10e"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#0c0c0c"
+ let g:terminal_color_1 = "#e74856"
+ let g:terminal_color_2 = "#16c60c"
+ let g:terminal_color_3 = "#f9f1a5"
+ let g:terminal_color_4 = "#3b78ff"
+ let g:terminal_color_5 = "#b4009e"
+ let g:terminal_color_6 = "#61d6d6"
+ let g:terminal_color_7 = "#cccccc"
+ let g:terminal_color_8 = "#767676"
+ let g:terminal_color_9 = "#e74856"
+ let g:terminal_color_10 = "#16c60c"
+ let g:terminal_color_11 = "#f9f1a5"
+ let g:terminal_color_12 = "#3b78ff"
+ let g:terminal_color_13 = "#b4009e"
+ let g:terminal_color_14 = "#61d6d6"
+ let g:terminal_color_15 = "#f2f2f2"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#0c0c0c",
+ \ "#e74856",
+ \ "#16c60c",
+ \ "#f9f1a5",
+ \ "#3b78ff",
+ \ "#b4009e",
+ \ "#61d6d6",
+ \ "#cccccc",
+ \ "#767676",
+ \ "#e74856",
+ \ "#16c60c",
+ \ "#f9f1a5",
+ \ "#3b78ff",
+ \ "#b4009e",
+ \ "#61d6d6",
+ \ "#f2f2f2",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-windows-10"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-windows-95-light.vim b/colors/base16-windows-95-light.vim
new file mode 100644
index 0000000..6993901
--- /dev/null
+++ b/colors/base16-windows-95-light.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Windows 95 Light scheme by Fergus Collins (https://github.com/C-Fergus)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-windows-95-light.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "fcfcfc"
+let g:base16_gui00 = "fcfcfc"
+let s:gui01 = "e0e0e0"
+let g:base16_gui01 = "e0e0e0"
+let s:gui02 = "c4c4c4"
+let g:base16_gui02 = "c4c4c4"
+let s:gui03 = "a8a8a8"
+let g:base16_gui03 = "a8a8a8"
+let s:gui04 = "7e7e7e"
+let g:base16_gui04 = "7e7e7e"
+let s:gui05 = "545454"
+let g:base16_gui05 = "545454"
+let s:gui06 = "2a2a2a"
+let g:base16_gui06 = "2a2a2a"
+let s:gui07 = "000000"
+let g:base16_gui07 = "000000"
+let s:gui08 = "a80000"
+let g:base16_gui08 = "a80000"
+let s:gui09 = "fcfc54"
+let g:base16_gui09 = "fcfc54"
+let s:gui0A = "a85400"
+let g:base16_gui0A = "a85400"
+let s:gui0B = "00a800"
+let g:base16_gui0B = "00a800"
+let s:gui0C = "00a8a8"
+let g:base16_gui0C = "00a8a8"
+let s:gui0D = "0000a8"
+let g:base16_gui0D = "0000a8"
+let s:gui0E = "a800a8"
+let g:base16_gui0E = "a800a8"
+let s:gui0F = "54fc54"
+let g:base16_gui0F = "54fc54"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#fcfcfc"
+ let g:terminal_color_1 = "#a80000"
+ let g:terminal_color_2 = "#00a800"
+ let g:terminal_color_3 = "#a85400"
+ let g:terminal_color_4 = "#0000a8"
+ let g:terminal_color_5 = "#a800a8"
+ let g:terminal_color_6 = "#00a8a8"
+ let g:terminal_color_7 = "#545454"
+ let g:terminal_color_8 = "#a8a8a8"
+ let g:terminal_color_9 = "#a80000"
+ let g:terminal_color_10 = "#00a800"
+ let g:terminal_color_11 = "#a85400"
+ let g:terminal_color_12 = "#0000a8"
+ let g:terminal_color_13 = "#a800a8"
+ let g:terminal_color_14 = "#00a8a8"
+ let g:terminal_color_15 = "#000000"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#fcfcfc",
+ \ "#a80000",
+ \ "#00a800",
+ \ "#a85400",
+ \ "#0000a8",
+ \ "#a800a8",
+ \ "#00a8a8",
+ \ "#545454",
+ \ "#a8a8a8",
+ \ "#a80000",
+ \ "#00a800",
+ \ "#a85400",
+ \ "#0000a8",
+ \ "#a800a8",
+ \ "#00a8a8",
+ \ "#000000",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-windows-95-light"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-windows-95.vim b/colors/base16-windows-95.vim
new file mode 100644
index 0000000..3f1a347
--- /dev/null
+++ b/colors/base16-windows-95.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Windows 95 scheme by Fergus Collins (https://github.com/C-Fergus)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-windows-95.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "000000"
+let g:base16_gui00 = "000000"
+let s:gui01 = "1C1C1C"
+let g:base16_gui01 = "1C1C1C"
+let s:gui02 = "383838"
+let g:base16_gui02 = "383838"
+let s:gui03 = "545454"
+let g:base16_gui03 = "545454"
+let s:gui04 = "7e7e7e"
+let g:base16_gui04 = "7e7e7e"
+let s:gui05 = "a8a8a8"
+let g:base16_gui05 = "a8a8a8"
+let s:gui06 = "d2d2d2"
+let g:base16_gui06 = "d2d2d2"
+let s:gui07 = "fcfcfc"
+let g:base16_gui07 = "fcfcfc"
+let s:gui08 = "fc5454"
+let g:base16_gui08 = "fc5454"
+let s:gui09 = "a85400"
+let g:base16_gui09 = "a85400"
+let s:gui0A = "fcfc54"
+let g:base16_gui0A = "fcfc54"
+let s:gui0B = "54fc54"
+let g:base16_gui0B = "54fc54"
+let s:gui0C = "54fcfc"
+let g:base16_gui0C = "54fcfc"
+let s:gui0D = "5454fc"
+let g:base16_gui0D = "5454fc"
+let s:gui0E = "fc54fc"
+let g:base16_gui0E = "fc54fc"
+let s:gui0F = "00a800"
+let g:base16_gui0F = "00a800"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#000000"
+ let g:terminal_color_1 = "#fc5454"
+ let g:terminal_color_2 = "#54fc54"
+ let g:terminal_color_3 = "#fcfc54"
+ let g:terminal_color_4 = "#5454fc"
+ let g:terminal_color_5 = "#fc54fc"
+ let g:terminal_color_6 = "#54fcfc"
+ let g:terminal_color_7 = "#a8a8a8"
+ let g:terminal_color_8 = "#545454"
+ let g:terminal_color_9 = "#fc5454"
+ let g:terminal_color_10 = "#54fc54"
+ let g:terminal_color_11 = "#fcfc54"
+ let g:terminal_color_12 = "#5454fc"
+ let g:terminal_color_13 = "#fc54fc"
+ let g:terminal_color_14 = "#54fcfc"
+ let g:terminal_color_15 = "#fcfcfc"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#000000",
+ \ "#fc5454",
+ \ "#54fc54",
+ \ "#fcfc54",
+ \ "#5454fc",
+ \ "#fc54fc",
+ \ "#54fcfc",
+ \ "#a8a8a8",
+ \ "#545454",
+ \ "#fc5454",
+ \ "#54fc54",
+ \ "#fcfc54",
+ \ "#5454fc",
+ \ "#fc54fc",
+ \ "#54fcfc",
+ \ "#fcfcfc",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-windows-95"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-windows-highcontrast-light.vim b/colors/base16-windows-highcontrast-light.vim
new file mode 100644
index 0000000..2dbeb44
--- /dev/null
+++ b/colors/base16-windows-highcontrast-light.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Windows High Contrast Light scheme by Fergus Collins (https://github.com/C-Fergus)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-windows-highcontrast-light.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "fcfcfc"
+let g:base16_gui00 = "fcfcfc"
+let s:gui01 = "e8e8e8"
+let g:base16_gui01 = "e8e8e8"
+let s:gui02 = "d4d4d4"
+let g:base16_gui02 = "d4d4d4"
+let s:gui03 = "c0c0c0"
+let g:base16_gui03 = "c0c0c0"
+let s:gui04 = "7e7e7e"
+let g:base16_gui04 = "7e7e7e"
+let s:gui05 = "545454"
+let g:base16_gui05 = "545454"
+let s:gui06 = "2a2a2a"
+let g:base16_gui06 = "2a2a2a"
+let s:gui07 = "000000"
+let g:base16_gui07 = "000000"
+let s:gui08 = "800000"
+let g:base16_gui08 = "800000"
+let s:gui09 = "fcfc54"
+let g:base16_gui09 = "fcfc54"
+let s:gui0A = "808000"
+let g:base16_gui0A = "808000"
+let s:gui0B = "008000"
+let g:base16_gui0B = "008000"
+let s:gui0C = "008080"
+let g:base16_gui0C = "008080"
+let s:gui0D = "000080"
+let g:base16_gui0D = "000080"
+let s:gui0E = "800080"
+let g:base16_gui0E = "800080"
+let s:gui0F = "54fc54"
+let g:base16_gui0F = "54fc54"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#fcfcfc"
+ let g:terminal_color_1 = "#800000"
+ let g:terminal_color_2 = "#008000"
+ let g:terminal_color_3 = "#808000"
+ let g:terminal_color_4 = "#000080"
+ let g:terminal_color_5 = "#800080"
+ let g:terminal_color_6 = "#008080"
+ let g:terminal_color_7 = "#545454"
+ let g:terminal_color_8 = "#c0c0c0"
+ let g:terminal_color_9 = "#800000"
+ let g:terminal_color_10 = "#008000"
+ let g:terminal_color_11 = "#808000"
+ let g:terminal_color_12 = "#000080"
+ let g:terminal_color_13 = "#800080"
+ let g:terminal_color_14 = "#008080"
+ let g:terminal_color_15 = "#000000"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#fcfcfc",
+ \ "#800000",
+ \ "#008000",
+ \ "#808000",
+ \ "#000080",
+ \ "#800080",
+ \ "#008080",
+ \ "#545454",
+ \ "#c0c0c0",
+ \ "#800000",
+ \ "#008000",
+ \ "#808000",
+ \ "#000080",
+ \ "#800080",
+ \ "#008080",
+ \ "#000000",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-windows-highcontrast-light"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-windows-highcontrast.vim b/colors/base16-windows-highcontrast.vim
new file mode 100644
index 0000000..791bb45
--- /dev/null
+++ b/colors/base16-windows-highcontrast.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Windows High Contrast scheme by Fergus Collins (https://github.com/C-Fergus)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-windows-highcontrast.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "000000"
+let g:base16_gui00 = "000000"
+let s:gui01 = "1C1C1C"
+let g:base16_gui01 = "1C1C1C"
+let s:gui02 = "383838"
+let g:base16_gui02 = "383838"
+let s:gui03 = "545454"
+let g:base16_gui03 = "545454"
+let s:gui04 = "a2a2a2"
+let g:base16_gui04 = "a2a2a2"
+let s:gui05 = "c0c0c0"
+let g:base16_gui05 = "c0c0c0"
+let s:gui06 = "dedede"
+let g:base16_gui06 = "dedede"
+let s:gui07 = "fcfcfc"
+let g:base16_gui07 = "fcfcfc"
+let s:gui08 = "fc5454"
+let g:base16_gui08 = "fc5454"
+let s:gui09 = "808000"
+let g:base16_gui09 = "808000"
+let s:gui0A = "fcfc54"
+let g:base16_gui0A = "fcfc54"
+let s:gui0B = "54fc54"
+let g:base16_gui0B = "54fc54"
+let s:gui0C = "54fcfc"
+let g:base16_gui0C = "54fcfc"
+let s:gui0D = "5454fc"
+let g:base16_gui0D = "5454fc"
+let s:gui0E = "fc54fc"
+let g:base16_gui0E = "fc54fc"
+let s:gui0F = "008000"
+let g:base16_gui0F = "008000"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#000000"
+ let g:terminal_color_1 = "#fc5454"
+ let g:terminal_color_2 = "#54fc54"
+ let g:terminal_color_3 = "#fcfc54"
+ let g:terminal_color_4 = "#5454fc"
+ let g:terminal_color_5 = "#fc54fc"
+ let g:terminal_color_6 = "#54fcfc"
+ let g:terminal_color_7 = "#c0c0c0"
+ let g:terminal_color_8 = "#545454"
+ let g:terminal_color_9 = "#fc5454"
+ let g:terminal_color_10 = "#54fc54"
+ let g:terminal_color_11 = "#fcfc54"
+ let g:terminal_color_12 = "#5454fc"
+ let g:terminal_color_13 = "#fc54fc"
+ let g:terminal_color_14 = "#54fcfc"
+ let g:terminal_color_15 = "#fcfcfc"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#000000",
+ \ "#fc5454",
+ \ "#54fc54",
+ \ "#fcfc54",
+ \ "#5454fc",
+ \ "#fc54fc",
+ \ "#54fcfc",
+ \ "#c0c0c0",
+ \ "#545454",
+ \ "#fc5454",
+ \ "#54fc54",
+ \ "#fcfc54",
+ \ "#5454fc",
+ \ "#fc54fc",
+ \ "#54fcfc",
+ \ "#fcfcfc",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-windows-highcontrast"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-windows-nt-light.vim b/colors/base16-windows-nt-light.vim
new file mode 100644
index 0000000..4b8c4b0
--- /dev/null
+++ b/colors/base16-windows-nt-light.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Windows NT Light scheme by Fergus Collins (https://github.com/C-Fergus)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-windows-nt-light.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "ffffff"
+let g:base16_gui00 = "ffffff"
+let s:gui01 = "eaeaea"
+let g:base16_gui01 = "eaeaea"
+let s:gui02 = "d5d5d5"
+let g:base16_gui02 = "d5d5d5"
+let s:gui03 = "c0c0c0"
+let g:base16_gui03 = "c0c0c0"
+let s:gui04 = "a0a0a0"
+let g:base16_gui04 = "a0a0a0"
+let s:gui05 = "808080"
+let g:base16_gui05 = "808080"
+let s:gui06 = "404040"
+let g:base16_gui06 = "404040"
+let s:gui07 = "000000"
+let g:base16_gui07 = "000000"
+let s:gui08 = "800000"
+let g:base16_gui08 = "800000"
+let s:gui09 = "ffff00"
+let g:base16_gui09 = "ffff00"
+let s:gui0A = "808000"
+let g:base16_gui0A = "808000"
+let s:gui0B = "008000"
+let g:base16_gui0B = "008000"
+let s:gui0C = "008080"
+let g:base16_gui0C = "008080"
+let s:gui0D = "000080"
+let g:base16_gui0D = "000080"
+let s:gui0E = "800080"
+let g:base16_gui0E = "800080"
+let s:gui0F = "00ff00"
+let g:base16_gui0F = "00ff00"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#ffffff"
+ let g:terminal_color_1 = "#800000"
+ let g:terminal_color_2 = "#008000"
+ let g:terminal_color_3 = "#808000"
+ let g:terminal_color_4 = "#000080"
+ let g:terminal_color_5 = "#800080"
+ let g:terminal_color_6 = "#008080"
+ let g:terminal_color_7 = "#808080"
+ let g:terminal_color_8 = "#c0c0c0"
+ let g:terminal_color_9 = "#800000"
+ let g:terminal_color_10 = "#008000"
+ let g:terminal_color_11 = "#808000"
+ let g:terminal_color_12 = "#000080"
+ let g:terminal_color_13 = "#800080"
+ let g:terminal_color_14 = "#008080"
+ let g:terminal_color_15 = "#000000"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#ffffff",
+ \ "#800000",
+ \ "#008000",
+ \ "#808000",
+ \ "#000080",
+ \ "#800080",
+ \ "#008080",
+ \ "#808080",
+ \ "#c0c0c0",
+ \ "#800000",
+ \ "#008000",
+ \ "#808000",
+ \ "#000080",
+ \ "#800080",
+ \ "#008080",
+ \ "#000000",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-windows-nt-light"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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-windows-nt.vim b/colors/base16-windows-nt.vim
new file mode 100644
index 0000000..f0d265d
--- /dev/null
+++ b/colors/base16-windows-nt.vim
@@ -0,0 +1,501 @@
+" vi:syntax=vim
+
+" base16-vim (https://github.com/chriskempson/base16-vim)
+" by Chris Kempson (http://chriskempson.com)
+" Windows NT scheme by Fergus Collins (https://github.com/C-Fergus)
+
+" This enables the coresponding base16-shell script to run so that
+" :colorscheme works in terminals supported by base16-shell scripts
+" User must set this variable in .vimrc
+" let g:base16_shell_path=base16-builder/output/shell/
+if !has("gui_running")
+ if exists("g:base16_shell_path")
+ execute "silent !/bin/sh ".g:base16_shell_path."/base16-windows-nt.sh"
+ endif
+endif
+
+" GUI color definitions
+let s:gui00 = "000000"
+let g:base16_gui00 = "000000"
+let s:gui01 = "2a2a2a"
+let g:base16_gui01 = "2a2a2a"
+let s:gui02 = "555555"
+let g:base16_gui02 = "555555"
+let s:gui03 = "808080"
+let g:base16_gui03 = "808080"
+let s:gui04 = "a1a1a1"
+let g:base16_gui04 = "a1a1a1"
+let s:gui05 = "c0c0c0"
+let g:base16_gui05 = "c0c0c0"
+let s:gui06 = "e0e0e0"
+let g:base16_gui06 = "e0e0e0"
+let s:gui07 = "ffffff"
+let g:base16_gui07 = "ffffff"
+let s:gui08 = "ff0000"
+let g:base16_gui08 = "ff0000"
+let s:gui09 = "808000"
+let g:base16_gui09 = "808000"
+let s:gui0A = "ffff00"
+let g:base16_gui0A = "ffff00"
+let s:gui0B = "00ff00"
+let g:base16_gui0B = "00ff00"
+let s:gui0C = "00ffff"
+let g:base16_gui0C = "00ffff"
+let s:gui0D = "0000ff"
+let g:base16_gui0D = "0000ff"
+let s:gui0E = "ff00ff"
+let g:base16_gui0E = "ff00ff"
+let s:gui0F = "008000"
+let g:base16_gui0F = "008000"
+
+" Terminal color definitions
+let s:cterm00 = "00"
+let g:base16_cterm00 = "00"
+let s:cterm03 = "08"
+let g:base16_cterm03 = "08"
+let s:cterm05 = "07"
+let g:base16_cterm05 = "07"
+let s:cterm07 = "15"
+let g:base16_cterm07 = "15"
+let s:cterm08 = "01"
+let g:base16_cterm08 = "01"
+let s:cterm0A = "03"
+let g:base16_cterm0A = "03"
+let s:cterm0B = "02"
+let g:base16_cterm0B = "02"
+let s:cterm0C = "06"
+let g:base16_cterm0C = "06"
+let s:cterm0D = "04"
+let g:base16_cterm0D = "04"
+let s:cterm0E = "05"
+let g:base16_cterm0E = "05"
+if exists("base16colorspace") && base16colorspace == "256"
+ let s:cterm01 = "18"
+ let g:base16_cterm01 = "18"
+ let s:cterm02 = "19"
+ let g:base16_cterm02 = "19"
+ let s:cterm04 = "20"
+ let g:base16_cterm04 = "20"
+ let s:cterm06 = "21"
+ let g:base16_cterm06 = "21"
+ let s:cterm09 = "16"
+ let g:base16_cterm09 = "16"
+ let s:cterm0F = "17"
+ let g:base16_cterm0F = "17"
+else
+ let s:cterm01 = "10"
+ let g:base16_cterm01 = "10"
+ let s:cterm02 = "11"
+ let g:base16_cterm02 = "11"
+ let s:cterm04 = "12"
+ let g:base16_cterm04 = "12"
+ let s:cterm06 = "13"
+ let g:base16_cterm06 = "13"
+ let s:cterm09 = "09"
+ let g:base16_cterm09 = "09"
+ let s:cterm0F = "14"
+ let g:base16_cterm0F = "14"
+endif
+
+" Neovim terminal colours
+if has("nvim")
+ let g:terminal_color_0 = "#000000"
+ let g:terminal_color_1 = "#ff0000"
+ let g:terminal_color_2 = "#00ff00"
+ let g:terminal_color_3 = "#ffff00"
+ let g:terminal_color_4 = "#0000ff"
+ let g:terminal_color_5 = "#ff00ff"
+ let g:terminal_color_6 = "#00ffff"
+ let g:terminal_color_7 = "#c0c0c0"
+ let g:terminal_color_8 = "#808080"
+ let g:terminal_color_9 = "#ff0000"
+ let g:terminal_color_10 = "#00ff00"
+ let g:terminal_color_11 = "#ffff00"
+ let g:terminal_color_12 = "#0000ff"
+ let g:terminal_color_13 = "#ff00ff"
+ let g:terminal_color_14 = "#00ffff"
+ let g:terminal_color_15 = "#ffffff"
+ let g:terminal_color_background = g:terminal_color_0
+ let g:terminal_color_foreground = g:terminal_color_5
+ if &background == "light"
+ let g:terminal_color_background = g:terminal_color_7
+ let g:terminal_color_foreground = g:terminal_color_2
+ endif
+elseif has("terminal")
+ let g:terminal_ansi_colors = [
+ \ "#000000",
+ \ "#ff0000",
+ \ "#00ff00",
+ \ "#ffff00",
+ \ "#0000ff",
+ \ "#ff00ff",
+ \ "#00ffff",
+ \ "#c0c0c0",
+ \ "#808080",
+ \ "#ff0000",
+ \ "#00ff00",
+ \ "#ffff00",
+ \ "#0000ff",
+ \ "#ff00ff",
+ \ "#00ffff",
+ \ "#ffffff",
+ \ ]
+endif
+
+" Theme setup
+hi clear
+syntax reset
+let g:colors_name = "base16-windows-nt"
+
+" Highlighting function
+" Optional variables are attributes and guisp
+function! g:Base16hi(group, guifg, guibg, ctermfg, ctermbg, ...)
+ let l:attr = get(a:, 1, "")
+ let l:guisp = get(a:, 2, "")
+
+ " See :help highlight-guifg
+ let l:gui_special_names = ["NONE", "bg", "background", "fg", "foreground"]
+
+ if a:guifg != ""
+ if index(l:gui_special_names, a:guifg) >= 0
+ exec "hi " . a:group . " guifg=" . a:guifg
+ else
+ exec "hi " . a:group . " guifg=#" . a:guifg
+ endif
+ endif
+ if a:guibg != ""
+ if index(l:gui_special_names, a:guibg) >= 0
+ exec "hi " . a:group . " guibg=" . a:guibg
+ else
+ exec "hi " . a:group . " guibg=#" . a:guibg
+ endif
+ endif
+ if a:ctermfg != ""
+ exec "hi " . a:group . " ctermfg=" . a:ctermfg
+ endif
+ if a:ctermbg != ""
+ exec "hi " . a:group . " ctermbg=" . a:ctermbg
+ endif
+ if l:attr != ""
+ exec "hi " . a:group . " gui=" . l:attr . " cterm=" . l:attr
+ endif
+ if l:guisp != ""
+ if index(l:gui_special_names, l:guisp) >= 0
+ exec "hi " . a:group . " guisp=" . l:guisp
+ else
+ exec "hi " . a:group . " guisp=#" . l:guisp
+ endif
+ endif
+endfunction
+
+
+fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr, guisp)
+ call g:Base16hi(a:group, a:guifg, a:guibg, a:ctermfg, a:ctermbg, a:attr, a:guisp)
+endfun
+
+" Vim editor colors
+call <sid>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("Bold", "", "", "", "", "bold", "")
+call <sid>hi("Debug", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("Directory", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Error", s:gui00, s:gui08, s:cterm00, s:cterm08, "", "")
+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:gui0C, s:gui01, s:cterm0C, s:cterm01, "", "")
+call <sid>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "", "")
+call <sid>hi("IncSearch", s:gui01, s:gui09, s:cterm01, s:cterm09, "none", "")
+call <sid>hi("Italic", "", "", "", "", "italic", "")
+call <sid>hi("Macro", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("MatchParen", "", s:gui03, "", s:cterm03, "", "")
+call <sid>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("Question", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("Search", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "", "")
+call <sid>hi("Substitute", s:gui01, s:gui0A, s:cterm01, s:cterm0A, "none", "")
+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:gui00, s:gui05, s:cterm00, s:cterm05, "", "")
+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, "inverse", "")
+call <sid>hi("NonText", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("Whitespace", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("LineNr", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("SignColumn", s:gui03, s:gui00, s:cterm03, s:cterm00, "", "")
+call <sid>hi("StatusLine", s:gui04, s:gui01, s:cterm04, s:cterm01, "none", "")
+call <sid>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none", "")
+call <sid>hi("VertSplit", s:gui01, s:gui00, s:cterm01, s:cterm00, "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:gui04, s:gui01, s:cterm04, s:cterm01, "bold", "")
+call <sid>hi("QuickFixLine", "", s:gui01, "", s:cterm01, "none", "")
+call <sid>hi("PMenu", s:gui05, s:gui02, s:cterm05, s:cterm02, "none", "")
+call <sid>hi("PMenuSel", s:gui01, s:gui05, s:cterm01, s:cterm05, "", "")
+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:gui0F, "", s:cterm0F, "", "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:gui0A, "", s:cterm0A, "", "none", "")
+call <sid>hi("Typedef", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Standard highlights to be used by plugins
+call <sid>hi("GitAddSign", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("GitChangeSign", s:gui04, "", s:cterm04, "", "", "")
+call <sid>hi("GitDeleteSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("GitChangeDeleteSign", s:gui04, "", s:cterm04, "", "", "")
+
+call <sid>hi("ErrorSign", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("WarningSign", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("InfoSign", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("HintSign", s:gui0C, "", s:cterm0C, "", "", "")
+
+call <sid>hi("ErrorFloat", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("WarningFloat", s:gui09, s:gui02, s:cterm09, s:cterm02, "", "")
+call <sid>hi("InfoFloat", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+call <sid>hi("HintFloat", s:gui0C, s:gui02, s:cterm0C, s:cterm02, "", "")
+
+call <sid>hi("ErrorHighlight", "", "", s:cterm00, s:cterm08, "underline", s:gui08)
+call <sid>hi("WarningHighlight", "", "", s:cterm00, s:cterm09, "underline", s:gui09)
+call <sid>hi("InfoHighlight", "", "", s:cterm00, s:cterm0D, "underline", s:gui0D)
+call <sid>hi("HintHighlight", "", "", s:cterm00, s:cterm0C, "underline", s:gui0C)
+
+call <sid>hi("SpellBad", "", "", s:cterm00, s:cterm08, "undercurl", s:gui08)
+call <sid>hi("SpellLocal", "", "", s:cterm00, s:cterm0C, "undercurl", s:gui0C)
+call <sid>hi("SpellCap", "", "", s:cterm00, s:cterm0D, "undercurl", s:gui0D)
+call <sid>hi("SpellRare", "", "", s:cterm00, s:cterm0E, "undercurl", s:gui0E)
+
+" C highlighting
+call <sid>hi("cOperator", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("cPreCondit", s:gui0E, "", s:cterm0E, "", "", "")
+
+" C# highlighting
+call <sid>hi("csClass", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csAttribute", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("csModifier", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csType", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("csUnspecifiedStatement", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("csContextualStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("csNewDecleration", s:gui08, "", s:cterm08, "", "", "")
+
+" Clap highlighting
+hi default link ClapInput ColorColumn
+hi default link ClapSpinner ColorColumn
+hi default link ClapDisplay Default
+hi default link ClapPreview ColorColumn
+hi default link ClapCurrentSelection CursorLine
+hi default link ClapNoMatchesFound ErrorFloat
+
+" Coc highlighting
+hi default link CocErrorSign ErrorSign
+hi default link CocWarningSign WarningSign
+hi default link CocInfoSign InfoSign
+hi default link CocHintSign HintSign
+
+hi default link CocErrorFloat ErrorFloat
+hi default link CocWarningFloat WarningFloat
+hi default link CocInfoFloat InfoFloat
+hi default link CocHintFloat HintFloat
+
+hi default link CocErrorHighlight ErrorHighlight
+hi default link CocWarningHighlight WarningHighlight
+hi default link CocInfoHighlight InfoHighlight
+hi default link CocHintHighlight HintHighlight
+call <sid>hi("CocHighlightRead", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "", "")
+call <sid>hi("CocHighlightText", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "", "")
+call <sid>hi("CocHighlightWrite", s:gui08, s:gui01, s:cterm08, s:cterm01, "", "")
+call <sid>hi("CocListMode", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "bold", "")
+call <sid>hi("CocListPath", s:gui01, s:gui0B, s:cterm01, s:cterm0B, "", "")
+call <sid>hi("CocSessionsName", 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, "", "", "")
+
+" Diff highlighting
+call <sid>hi("DiffAdd", s:gui0B, s:gui02, s:cterm0B, s:cterm02, "", "")
+call <sid>hi("DiffChange", s:gui05, s:gui02, s:cterm05, s:cterm02, "", "")
+call <sid>hi("DiffDelete", s:gui08, s:gui02, s:cterm08, s:cterm02, "", "")
+call <sid>hi("DiffText", s:gui0D, s:gui02, s:cterm0D, s:cterm02, "", "")
+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, "", "")
+
+" Git highlighting
+call <sid>hi("gitcommitOverflow", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("gitcommitSummary", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("gitcommitComment", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitUntracked", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitDiscarded", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitSelected", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("gitcommitHeader", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("gitcommitSelectedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitUnmergedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitDiscardedType", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("gitcommitBranch", s:gui09, "", s:cterm09, "", "bold", "")
+call <sid>hi("gitcommitUntrackedFile", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("gitcommitUnmergedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitDiscardedFile", s:gui08, "", s:cterm08, "", "bold", "")
+call <sid>hi("gitcommitSelectedFile", s:gui0B, "", s:cterm0B, "", "bold", "")
+
+" GitGutter highlighting
+hi default link GitGutterAdd GitAddSign
+hi default link GitGutterChange GitChangeSign
+hi default link GitGutterDelete GitDeleteSign
+hi default link GitGutterChangeDelete GitChangeDeleteSign
+
+" HTML highlighting
+call <sid>hi("htmlBold", s:gui05, "", s:cterm0A, "", "bold", "")
+call <sid>hi("htmlItalic", s:gui05, "", s:cterm0E, "", "italic", "")
+call <sid>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "", "")
+call <sid>hi("htmlTag", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+" pangloss/vim-javascript highlighting
+call <sid>hi("jsOperator", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsStatement", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsReturn", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsThis", s:gui08, "", s:cterm08, "", "", "")
+call <sid>hi("jsClassDefinition", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsFunction", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsFuncCall", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassFuncName", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("jsClassMethodType", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("jsRegexpString", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("jsGlobalObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsGlobalNodeObjects", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsExceptions", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("jsBuiltins", s:gui0A, "", s:cterm0A, "", "", "")
+
+" Mail highlighting
+call <sid>hi("mailQuoted1", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailQuoted2", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("mailQuoted3", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("mailQuoted4", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("mailQuoted5", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailQuoted6", s:gui0A, "", s:cterm0A, "", "", "")
+call <sid>hi("mailURL", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("mailEmail", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Markdown highlighting
+call <sid>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownError", s:gui05, s:gui00, s:cterm05, s:cterm00, "", "")
+call <sid>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "", "")
+
+" NERDTree highlighting
+call <sid>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "", "")
+
+" 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, "", "", "")
+call <sid>hi("phpMethodsVar", s:gui0C, "", s:cterm0C, "", "", "")
+
+" Python highlighting
+call <sid>hi("pythonOperator", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonRepeat", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonInclude", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("pythonStatement", s:gui0E, "", s:cterm0E, "", "", "")
+
+" Ruby highlighting
+call <sid>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "", "")
+call <sid>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "", "")
+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, "", "", "")
+
+" 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, "", "", "")
+
+" Signify highlighting
+hi default link SignifySignAdd GitAddSign
+hi default link SignifySignChange GitChangeSign
+hi default link SignifySignDelete GitDeleteSign
+
+" Startify highlighting
+call <sid>hi("StartifyBracket", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyFile", s:gui07, "", s:cterm07, "", "", "")
+call <sid>hi("StartifyFooter", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifyHeader", s:gui0B, "", s:cterm0B, "", "", "")
+call <sid>hi("StartifyNumber", s:gui09, "", s:cterm09, "", "", "")
+call <sid>hi("StartifyPath", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySection", s:gui0E, "", s:cterm0E, "", "", "")
+call <sid>hi("StartifySelect", s:gui0C, "", s:cterm0C, "", "", "")
+call <sid>hi("StartifySlash", s:gui03, "", s:cterm03, "", "", "")
+call <sid>hi("StartifySpecial", s:gui03, "", s:cterm03, "", "", "")
+
+" Neovim Treesitter highlighting
+if has("nvim")
+ call <sid>hi("TSFunction", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSKeywordFunction", s:gui0E, "", s:cterm0E, "", "", "")
+ call <sid>hi("TSMethod", s:gui0D, "", s:cterm0D, "", "", "")
+ call <sid>hi("TSProperty", s:gui0A, "", s:cterm0A, "", "", "")
+ call <sid>hi("TSPunctBracket", s:gui0C, "", s:cterm0C, "", "", "")
+ call <sid>hi("TSType", s:gui08, "", s:cterm08, "", "none", "")
+
+ " Treesitter-refactor highlighting
+ call <sid>hi("TSDefinition", "", s:gui03, "", s:cterm03, "", "")
+ call <sid>hi("TSDefinitionUsage", "", s:gui02, "", s:cterm02, "none", "")
+endif
+
+" LSP highlighting
+if has("nvim")
+ call <sid>hi("LspDiagnosticsDefaultError", s:gui08, "", s:cterm08, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultWarning", s:gui09, "", s:cterm09, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultInformation", s:gui05, "", s:cterm05, "", "", "")
+ call <sid>hi("LspDiagnosticsDefaultHint", s:gui03, "", s:cterm03, "", "", "")
+endif
+
+" Java highlighting
+call <sid>hi("javaOperator", s:gui0D, "", s:cterm0D, "", "", "")
+
+" Remove functions
+delf <sid>hi
+
+" 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