diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/SlateDark.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/SlateDark.vim new file mode 100644 index 0000000..3ecaba4 --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/SlateDark.vim @@ -0,0 +1,56 @@ +"%% SiSU Vim color file +" SlateDark Maintainer: Rudra Banerjee +" Originally inspired from Slate by Ralph Amissah +:set background=dark +highlight clear +if version > 580 + hi clear + if exists("syntax_on") + syntax reset + endif +endif +let colors_name = "SlateDark" +hi Normal guifg=#ffffff guibg=#262626 +hi Cursor guibg=#ffffff guifg=#000000 +hi VertSplit guibg=#c2bfa5 guifg=grey40 gui=none cterm=reverse +hi Folded guibg=black guifg=grey40 ctermfg=grey ctermbg=darkgrey +hi FoldColumn guibg=black guifg=grey20 ctermfg=4 ctermbg=7 +hi IncSearch guifg=green guibg=black cterm=none ctermfg=yellow ctermbg=green +hi ModeMsg guifg=goldenrod cterm=none ctermfg=brown +hi MoreMsg guifg=SeaGreen ctermfg=darkgreen +hi NonText guifg=RoyalBlue guibg=grey15 cterm=bold ctermfg=blue +hi Question guifg=springgreen ctermfg=green +hi Search guibg=peru guifg=wheat cterm=none ctermfg=grey ctermbg=blue +hi SpecialKey guifg=yellowgreen ctermfg=darkgreen +hi StatusLine guibg=#c2bfa5 guifg=black gui=none cterm=bold,reverse +hi StatusLineNC guibg=#c2bfa5 guifg=grey40 gui=none cterm=reverse +hi Title guifg=gold gui=bold cterm=bold ctermfg=yellow +hi Statement guifg=CornflowerBlue ctermfg=lightblue +hi Visual gui=none guifg=khaki guibg=olivedrab cterm=reverse +hi WarningMsg guifg=salmon ctermfg=1 +:hi String guifg=SkyBlue ctermfg=darkcyan +hi Comment term=bold ctermfg=11 guifg=grey40 +hi Constant guifg=#ffa0a0 ctermfg=brown +hi Special guifg=darkkhaki ctermfg=brown +hi Identifier guifg=salmon ctermfg=red +hi Include guifg=red ctermfg=red +":hi PreProc guifg=red guibg=white ctermfg=red +"hi Operator guifg=Red ctermfg=Red +hi Define guifg=gold gui=bold ctermfg=yellow +hi Type guifg=CornflowerBlue ctermfg=2 +hi Function guifg=navajowhite ctermfg=brown +hi Structure guifg=green ctermfg=green +hi LineNr guifg=grey50 ctermfg=3 +hi Ignore guifg=grey40 cterm=bold ctermfg=7 +hi Todo guifg=orangered guibg=yellow2 +hi Directory ctermfg=darkcyan +hi ErrorMsg cterm=bold guifg=White guibg=Red cterm=bold ctermfg=7 ctermbg=1 +hi VisualNOS cterm=bold,underline +hi WildMenu ctermfg=0 ctermbg=3 +hi DiffAdd ctermbg=4 +hi DiffChange ctermbg=5 +hi DiffDelete cterm=bold ctermfg=4 ctermbg=6 +hi DiffText cterm=bold ctermbg=1 +hi Underlined cterm=underline ctermfg=5 +hi Error guifg=White guibg=Red cterm=bold ctermfg=7 ctermbg=1 +hi SpellErrors cterm=bold ctermfg=7 ctermbg=1 gui=undercurl,bold diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night-Blue.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night-Blue.vim new file mode 100644 index 0000000..e053090 --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night-Blue.vim @@ -0,0 +1,489 @@ +" Tomorrow Night Blue - Full Colour and 256 Colour +" http://chriskempson.com +" +" Hex colour conversion functions borrowed from the theme "Desert256"" + +" Default GUI Colours +let s:foreground = "ffffff" +let s:background = "002451" +let s:selection = "003f8e" +let s:line = "00346e" +let s:comment = "7285b7" +let s:red = "ff9da4" +let s:orange = "ffc58f" +let s:yellow = "ffeead" +let s:green = "d1f1a9" +let s:aqua = "99ffff" +let s:blue = "bbdaff" +let s:purple = "ebbbff" +let s:window = "4d5057" + +hi clear +syntax reset + +let g:colors_name = "Tomorrow-Night-Blue" + +if has("gui_running") || &t_Co == 88 || &t_Co == 256 + " Returns an approximate grey index for the given grey level + fun grey_number(x) + if &t_Co == 88 + if a:x < 23 + return 0 + elseif a:x < 69 + return 1 + elseif a:x < 103 + return 2 + elseif a:x < 127 + return 3 + elseif a:x < 150 + return 4 + elseif a:x < 173 + return 5 + elseif a:x < 196 + return 6 + elseif a:x < 219 + return 7 + elseif a:x < 243 + return 8 + else + return 9 + endif + else + if a:x < 14 + return 0 + else + let l:n = (a:x - 8) / 10 + let l:m = (a:x - 8) % 10 + if l:m < 5 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual grey level represented by the grey index + fun grey_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 46 + elseif a:n == 2 + return 92 + elseif a:n == 3 + return 115 + elseif a:n == 4 + return 139 + elseif a:n == 5 + return 162 + elseif a:n == 6 + return 185 + elseif a:n == 7 + return 208 + elseif a:n == 8 + return 231 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 8 + (a:n * 10) + endif + endif + endfun + + " Returns the palette index for the given grey index + fun grey_colour(n) + if &t_Co == 88 + if a:n == 0 + return 16 + elseif a:n == 9 + return 79 + else + return 79 + a:n + endif + else + if a:n == 0 + return 16 + elseif a:n == 25 + return 231 + else + return 231 + a:n + endif + endif + endfun + + " Returns an approximate colour index for the given colour level + fun rgb_number(x) + if &t_Co == 88 + if a:x < 69 + return 0 + elseif a:x < 172 + return 1 + elseif a:x < 230 + return 2 + else + return 3 + endif + else + if a:x < 75 + return 0 + else + let l:n = (a:x - 55) / 40 + let l:m = (a:x - 55) % 40 + if l:m < 20 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual colour level for the given colour index + fun rgb_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 139 + elseif a:n == 2 + return 205 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 55 + (a:n * 40) + endif + endif + endfun + + " Returns the palette index for the given R/G/B colour indices + fun rgb_colour(x, y, z) + if &t_Co == 88 + return 16 + (a:x * 16) + (a:y * 4) + a:z + else + return 16 + (a:x * 36) + (a:y * 6) + a:z + endif + endfun + + " Returns the palette index to approximate the given R/G/B colour levels + fun colour(r, g, b) + " Get the closest grey + let l:gx = grey_number(a:r) + let l:gy = grey_number(a:g) + let l:gz = grey_number(a:b) + + " Get the closest colour + let l:x = rgb_number(a:r) + let l:y = rgb_number(a:g) + let l:z = rgb_number(a:b) + + if l:gx == l:gy && l:gy == l:gz + " There are two possibilities + let l:dgr = grey_level(l:gx) - a:r + let l:dgg = grey_level(l:gy) - a:g + let l:dgb = grey_level(l:gz) - a:b + let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb) + let l:dr = rgb_level(l:gx) - a:r + let l:dg = rgb_level(l:gy) - a:g + let l:db = rgb_level(l:gz) - a:b + let l:drgb = (l:dr * l:dr) + (l:dg * l:dg) + (l:db * l:db) + if l:dgrey < l:drgb + " Use the grey + return grey_colour(l:gx) + else + " Use the colour + return rgb_colour(l:x, l:y, l:z) + endif + else + " Only one possibility + return rgb_colour(l:x, l:y, l:z) + endif + endfun + + " Returns the palette index to approximate the 'rrggbb' hex string + fun rgb(rgb) + let l:r = ("0x" . strpart(a:rgb, 0, 2)) + 0 + let l:g = ("0x" . strpart(a:rgb, 2, 2)) + 0 + let l:b = ("0x" . strpart(a:rgb, 4, 2)) + 0 + + return colour(l:r, l:g, l:b) + endfun + + " Sets the highlighting for the given group + fun X(group, fg, bg, attr) + if a:fg != "" + exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . rgb(a:fg) + endif + if a:bg != "" + exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . rgb(a:bg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif + endfun + + " Vim Highlighting + call X("Normal", s:foreground, s:background, "") + call X("LineNr", s:selection, "", "") + call X("NonText", s:selection, "", "") + call X("SpecialKey", s:selection, "", "") + call X("Search", s:background, s:yellow, "") + call X("TabLine", s:window, s:foreground, "reverse") + call X("TabLineFill", s:window, s:foreground, "reverse") + call X("StatusLine", s:window, s:yellow, "reverse") + call X("StatusLineNC", s:window, s:foreground, "reverse") + call X("VertSplit", s:window, s:window, "none") + call X("Visual", "", s:selection, "") + call X("Directory", s:blue, "", "") + call X("ModeMsg", s:green, "", "") + call X("MoreMsg", s:green, "", "") + call X("Question", s:green, "", "") + call X("WarningMsg", s:red, "", "") + call X("MatchParen", "", s:selection, "") + call X("Folded", s:comment, s:background, "") + call X("FoldColumn", "", s:background, "") + if version >= 700 + call X("CursorLine", "", s:line, "none") + call X("CursorColumn", "", s:line, "none") + call X("PMenu", s:foreground, s:selection, "none") + call X("PMenuSel", s:foreground, s:selection, "reverse") + call X("SignColumn", "", s:background, "none") + end + if version >= 703 + call X("ColorColumn", "", s:line, "none") + end + + " Standard Highlighting + call X("Comment", s:comment, "", "") + call X("Todo", s:comment, s:background, "") + call X("Title", s:comment, "", "") + call X("Identifier", s:red, "", "none") + call X("Statement", s:foreground, "", "") + call X("Conditional", s:foreground, "", "") + call X("Repeat", s:foreground, "", "") + call X("Structure", s:purple, "", "") + call X("Function", s:blue, "", "") + call X("Constant", s:orange, "", "") + call X("Keyword", s:orange, "", "") + call X("String", s:green, "", "") + call X("Special", s:foreground, "", "") + call X("PreProc", s:purple, "", "") + call X("Operator", s:aqua, "", "none") + call X("Type", s:blue, "", "none") + call X("Define", s:purple, "", "none") + call X("Include", s:blue, "", "") + "call X("Ignore", "666666", "", "") + + " Vim Highlighting + call X("vimCommand", s:red, "", "none") + + " C Highlighting + call X("cType", s:yellow, "", "") + call X("cStorageClass", s:purple, "", "") + call X("cConditional", s:purple, "", "") + call X("cRepeat", s:purple, "", "") + + " PHP Highlighting + call X("phpVarSelector", s:red, "", "") + call X("phpKeyword", s:purple, "", "") + call X("phpRepeat", s:purple, "", "") + call X("phpConditional", s:purple, "", "") + call X("phpStatement", s:purple, "", "") + call X("phpMemberSelector", s:foreground, "", "") + + " Ruby Highlighting + call X("rubySymbol", s:green, "", "") + call X("rubyConstant", s:yellow, "", "") + call X("rubyAccess", s:yellow, "", "") + call X("rubyAttribute", s:blue, "", "") + call X("rubyInclude", s:blue, "", "") + call X("rubyLocalVariableOrMethod", s:orange, "", "") + call X("rubyCurlyBlock", s:orange, "", "") + call X("rubyStringDelimiter", s:green, "", "") + call X("rubyInterpolationDelimiter", s:orange, "", "") + call X("rubyConditional", s:purple, "", "") + call X("rubyRepeat", s:purple, "", "") + call X("rubyControl", s:purple, "", "") + call X("rubyException", s:purple, "", "") + + " Crystal Highlighting + call X("crystalSymbol", s:green, "", "") + call X("crystalConstant", s:yellow, "", "") + call X("crystalAccess", s:yellow, "", "") + call X("crystalAttribute", s:blue, "", "") + call X("crystalInclude", s:blue, "", "") + call X("crystalLocalVariableOrMethod", s:orange, "", "") + call X("crystalCurlyBlock", s:orange, "", "") + call X("crystalStringDelimiter", s:green, "", "") + call X("crystalInterpolationDelimiter", s:orange, "", "") + call X("crystalConditional", s:purple, "", "") + call X("crystalRepeat", s:purple, "", "") + call X("crystalControl", s:purple, "", "") + call X("crystalException", s:purple, "", "") + + " Python Highlighting + call X("pythonInclude", s:purple, "", "") + call X("pythonStatement", s:purple, "", "") + call X("pythonConditional", s:purple, "", "") + call X("pythonRepeat", s:purple, "", "") + call X("pythonException", s:purple, "", "") + call X("pythonFunction", s:blue, "", "") + call X("pythonPreCondit", s:purple, "", "") + call X("pythonRepeat", s:aqua, "", "") + call X("pythonExClass", s:orange, "", "") + + " JavaScript Highlighting + call X("javaScriptBraces", s:foreground, "", "") + call X("javaScriptFunction", s:purple, "", "") + call X("javaScriptConditional", s:purple, "", "") + call X("javaScriptRepeat", s:purple, "", "") + call X("javaScriptNumber", s:orange, "", "") + call X("javaScriptMember", s:orange, "", "") + call X("javascriptNull", s:orange, "", "") + call X("javascriptGlobal", s:blue, "", "") + call X("javascriptStatement", s:red, "", "") + + " CoffeeScript Highlighting + call X("coffeeRepeat", s:purple, "", "") + call X("coffeeConditional", s:purple, "", "") + call X("coffeeKeyword", s:purple, "", "") + call X("coffeeObject", s:yellow, "", "") + + " HTML Highlighting + call X("htmlTag", s:red, "", "") + call X("htmlTagName", s:red, "", "") + call X("htmlArg", s:red, "", "") + call X("htmlScriptTag", s:red, "", "") + + " Diff Highlighting + call X("diffAdd", "", "4c4e39", "") + call X("diffDelete", s:background, s:red, "") + call X("diffChange", "", "2b5b77", "") + call X("diffText", s:line, s:blue, "") + + " ShowMarks Highlighting + call X("ShowMarksHLl", s:orange, s:background, "none") + call X("ShowMarksHLo", s:purple, s:background, "none") + call X("ShowMarksHLu", s:yellow, s:background, "none") + call X("ShowMarksHLm", s:aqua, s:background, "none") + + " Lua Highlighting + call X("luaStatement", s:purple, "", "") + call X("luaRepeat", s:purple, "", "") + call X("luaCondStart", s:purple, "", "") + call X("luaCondElseif", s:purple, "", "") + call X("luaCond", s:purple, "", "") + call X("luaCondEnd", s:purple, "", "") + + " Cucumber Highlighting + call X("cucumberGiven", s:blue, "", "") + call X("cucumberGivenAnd", s:blue, "", "") + + " Go Highlighting + call X("goDirective", s:purple, "", "") + call X("goDeclaration", s:purple, "", "") + call X("goStatement", s:purple, "", "") + call X("goConditional", s:purple, "", "") + call X("goConstants", s:orange, "", "") + call X("goTodo", s:yellow, "", "") + call X("goDeclType", s:blue, "", "") + call X("goBuiltins", s:purple, "", "") + call X("goRepeat", s:purple, "", "") + call X("goLabel", s:purple, "", "") + + " Clojure Highlighting + call X("clojureConstant", s:orange, "", "") + call X("clojureBoolean", s:orange, "", "") + call X("clojureCharacter", s:orange, "", "") + call X("clojureKeyword", s:green, "", "") + call X("clojureNumber", s:orange, "", "") + call X("clojureString", s:green, "", "") + call X("clojureRegexp", s:green, "", "") + call X("clojureParen", s:aqua, "", "") + call X("clojureVariable", s:yellow, "", "") + call X("clojureCond", s:blue, "", "") + call X("clojureDefine", s:purple, "", "") + call X("clojureException", s:red, "", "") + call X("clojureFunc", s:blue, "", "") + call X("clojureMacro", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureSpecial", s:purple, "", "") + call X("clojureQuote", s:blue, "", "") + call X("clojureUnquote", s:blue, "", "") + call X("clojureMeta", s:blue, "", "") + call X("clojureDeref", s:blue, "", "") + call X("clojureAnonArg", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureDispatch", s:blue, "", "") + + " Scala Highlighting + call X("scalaKeyword", s:purple, "", "") + call X("scalaKeywordModifier", s:purple, "", "") + call X("scalaOperator", s:blue, "", "") + call X("scalaPackage", s:red, "", "") + call X("scalaFqn", s:foreground, "", "") + call X("scalaFqnSet", s:foreground, "", "") + call X("scalaImport", s:purple, "", "") + call X("scalaBoolean", s:orange, "", "") + call X("scalaDef", s:purple, "", "") + call X("scalaVal", s:purple, "", "") + call X("scalaVar", s:aqua, "", "") + call X("scalaClass", s:purple, "", "") + call X("scalaObject", s:purple, "", "") + call X("scalaTrait", s:purple, "", "") + call X("scalaDefName", s:blue, "", "") + call X("scalaValName", s:foreground, "", "") + call X("scalaVarName", s:foreground, "", "") + call X("scalaClassName", s:foreground, "", "") + call X("scalaType", s:yellow, "", "") + call X("scalaTypeSpecializer", s:yellow, "", "") + call X("scalaAnnotation", s:orange, "", "") + call X("scalaNumber", s:orange, "", "") + call X("scalaDefSpecializer", s:yellow, "", "") + call X("scalaClassSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:green, "", "") + call X("scalaRoot", s:foreground, "", "") + call X("scalaMethodCall", s:blue, "", "") + call X("scalaCaseType", s:yellow, "", "") + call X("scalaLineComment", s:comment, "", "") + call X("scalaComment", s:comment, "", "") + call X("scalaDocComment", s:comment, "", "") + call X("scalaDocTags", s:comment, "", "") + call X("scalaEmptyString", s:green, "", "") + call X("scalaMultiLineString", s:green, "", "") + call X("scalaUnicode", s:orange, "", "") + call X("scalaString", s:green, "", "") + call X("scalaStringEscape", s:green, "", "") + call X("scalaSymbol", s:orange, "", "") + call X("scalaChar", s:orange, "", "") + call X("scalaXml", s:green, "", "") + call X("scalaConstructorSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:blue, "", "") + + " Git + call X("diffAdded", s:green, "", "") + call X("diffRemoved", s:red, "", "") + call X("gitcommitSummary", "", "", "bold") + + " Delete Functions + delf X + delf rgb + delf colour + delf rgb_colour + delf rgb_level + delf rgb_number + delf grey_colour + delf grey_level + delf grey_number +endif + +set background=dark diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night-Bright.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night-Bright.vim new file mode 100644 index 0000000..8a89dbe --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night-Bright.vim @@ -0,0 +1,489 @@ +" Tomorrow Night Bright - Full Colour and 256 Colour +" http://chriskempson.com +" +" Hex colour conversion functions borrowed from the theme "Desert256"" + +" Default GUI Colours +let s:foreground = "eaeaea" +let s:background = "000000" +let s:selection = "424242" +let s:line = "2a2a2a" +let s:comment = "969896" +let s:red = "d54e53" +let s:orange = "e78c45" +let s:yellow = "e7c547" +let s:green = "b9ca4a" +let s:aqua = "70c0b1" +let s:blue = "7aa6da" +let s:purple = "c397d8" +let s:window = "4d5057" + +hi clear +syntax reset + +let g:colors_name = "Tomorrow-Night-Bright" + +if has("gui_running") || &t_Co == 88 || &t_Co == 256 + " Returns an approximate grey index for the given grey level + fun grey_number(x) + if &t_Co == 88 + if a:x < 23 + return 0 + elseif a:x < 69 + return 1 + elseif a:x < 103 + return 2 + elseif a:x < 127 + return 3 + elseif a:x < 150 + return 4 + elseif a:x < 173 + return 5 + elseif a:x < 196 + return 6 + elseif a:x < 219 + return 7 + elseif a:x < 243 + return 8 + else + return 9 + endif + else + if a:x < 14 + return 0 + else + let l:n = (a:x - 8) / 10 + let l:m = (a:x - 8) % 10 + if l:m < 5 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual grey level represented by the grey index + fun grey_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 46 + elseif a:n == 2 + return 92 + elseif a:n == 3 + return 115 + elseif a:n == 4 + return 139 + elseif a:n == 5 + return 162 + elseif a:n == 6 + return 185 + elseif a:n == 7 + return 208 + elseif a:n == 8 + return 231 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 8 + (a:n * 10) + endif + endif + endfun + + " Returns the palette index for the given grey index + fun grey_colour(n) + if &t_Co == 88 + if a:n == 0 + return 16 + elseif a:n == 9 + return 79 + else + return 79 + a:n + endif + else + if a:n == 0 + return 16 + elseif a:n == 25 + return 231 + else + return 231 + a:n + endif + endif + endfun + + " Returns an approximate colour index for the given colour level + fun rgb_number(x) + if &t_Co == 88 + if a:x < 69 + return 0 + elseif a:x < 172 + return 1 + elseif a:x < 230 + return 2 + else + return 3 + endif + else + if a:x < 75 + return 0 + else + let l:n = (a:x - 55) / 40 + let l:m = (a:x - 55) % 40 + if l:m < 20 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual colour level for the given colour index + fun rgb_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 139 + elseif a:n == 2 + return 205 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 55 + (a:n * 40) + endif + endif + endfun + + " Returns the palette index for the given R/G/B colour indices + fun rgb_colour(x, y, z) + if &t_Co == 88 + return 16 + (a:x * 16) + (a:y * 4) + a:z + else + return 16 + (a:x * 36) + (a:y * 6) + a:z + endif + endfun + + " Returns the palette index to approximate the given R/G/B colour levels + fun colour(r, g, b) + " Get the closest grey + let l:gx = grey_number(a:r) + let l:gy = grey_number(a:g) + let l:gz = grey_number(a:b) + + " Get the closest colour + let l:x = rgb_number(a:r) + let l:y = rgb_number(a:g) + let l:z = rgb_number(a:b) + + if l:gx == l:gy && l:gy == l:gz + " There are two possibilities + let l:dgr = grey_level(l:gx) - a:r + let l:dgg = grey_level(l:gy) - a:g + let l:dgb = grey_level(l:gz) - a:b + let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb) + let l:dr = rgb_level(l:gx) - a:r + let l:dg = rgb_level(l:gy) - a:g + let l:db = rgb_level(l:gz) - a:b + let l:drgb = (l:dr * l:dr) + (l:dg * l:dg) + (l:db * l:db) + if l:dgrey < l:drgb + " Use the grey + return grey_colour(l:gx) + else + " Use the colour + return rgb_colour(l:x, l:y, l:z) + endif + else + " Only one possibility + return rgb_colour(l:x, l:y, l:z) + endif + endfun + + " Returns the palette index to approximate the 'rrggbb' hex string + fun rgb(rgb) + let l:r = ("0x" . strpart(a:rgb, 0, 2)) + 0 + let l:g = ("0x" . strpart(a:rgb, 2, 2)) + 0 + let l:b = ("0x" . strpart(a:rgb, 4, 2)) + 0 + + return colour(l:r, l:g, l:b) + endfun + + " Sets the highlighting for the given group + fun X(group, fg, bg, attr) + if a:fg != "" + exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . rgb(a:fg) + endif + if a:bg != "" + exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . rgb(a:bg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif + endfun + + " Vim Highlighting + call X("Normal", s:foreground, s:background, "") + call X("LineNr", s:selection, "", "") + call X("NonText", s:selection, "", "") + call X("SpecialKey", s:selection, "", "") + call X("Search", s:background, s:yellow, "") + call X("TabLine", s:window, s:foreground, "reverse") + call X("TabLineFill", s:window, s:foreground, "reverse") + call X("StatusLine", s:window, s:yellow, "reverse") + call X("StatusLineNC", s:window, s:foreground, "reverse") + call X("VertSplit", s:window, s:window, "none") + call X("Visual", "", s:selection, "") + call X("Directory", s:blue, "", "") + call X("ModeMsg", s:green, "", "") + call X("MoreMsg", s:green, "", "") + call X("Question", s:green, "", "") + call X("WarningMsg", s:red, "", "") + call X("MatchParen", "", s:selection, "") + call X("Folded", s:comment, s:background, "") + call X("FoldColumn", "", s:background, "") + if version >= 700 + call X("CursorLine", "", s:line, "none") + call X("CursorColumn", "", s:line, "none") + call X("PMenu", s:foreground, s:selection, "none") + call X("PMenuSel", s:foreground, s:selection, "reverse") + call X("SignColumn", "", s:background, "none") + end + if version >= 703 + call X("ColorColumn", "", s:line, "none") + end + + " Standard Highlighting + call X("Comment", s:comment, "", "") + call X("Todo", s:comment, s:background, "") + call X("Title", s:comment, "", "") + call X("Identifier", s:red, "", "none") + call X("Statement", s:foreground, "", "") + call X("Conditional", s:foreground, "", "") + call X("Repeat", s:foreground, "", "") + call X("Structure", s:purple, "", "") + call X("Function", s:blue, "", "") + call X("Constant", s:orange, "", "") + call X("Keyword", s:orange, "", "") + call X("String", s:green, "", "") + call X("Special", s:foreground, "", "") + call X("PreProc", s:purple, "", "") + call X("Operator", s:aqua, "", "none") + call X("Type", s:blue, "", "none") + call X("Define", s:purple, "", "none") + call X("Include", s:blue, "", "") + "call X("Ignore", "666666", "", "") + + " Vim Highlighting + call X("vimCommand", s:red, "", "none") + + " C Highlighting + call X("cType", s:yellow, "", "") + call X("cStorageClass", s:purple, "", "") + call X("cConditional", s:purple, "", "") + call X("cRepeat", s:purple, "", "") + + " PHP Highlighting + call X("phpVarSelector", s:red, "", "") + call X("phpKeyword", s:purple, "", "") + call X("phpRepeat", s:purple, "", "") + call X("phpConditional", s:purple, "", "") + call X("phpStatement", s:purple, "", "") + call X("phpMemberSelector", s:foreground, "", "") + + " Ruby Highlighting + call X("rubySymbol", s:green, "", "") + call X("rubyConstant", s:yellow, "", "") + call X("rubyAccess", s:yellow, "", "") + call X("rubyAttribute", s:blue, "", "") + call X("rubyInclude", s:blue, "", "") + call X("rubyLocalVariableOrMethod", s:orange, "", "") + call X("rubyCurlyBlock", s:orange, "", "") + call X("rubyStringDelimiter", s:green, "", "") + call X("rubyInterpolationDelimiter", s:orange, "", "") + call X("rubyConditional", s:purple, "", "") + call X("rubyRepeat", s:purple, "", "") + call X("rubyControl", s:purple, "", "") + call X("rubyException", s:purple, "", "") + + " Crystal Highlighting + call X("crystalSymbol", s:green, "", "") + call X("crystalConstant", s:yellow, "", "") + call X("crystalAccess", s:yellow, "", "") + call X("crystalAttribute", s:blue, "", "") + call X("crystalInclude", s:blue, "", "") + call X("crystalLocalVariableOrMethod", s:orange, "", "") + call X("crystalCurlyBlock", s:orange, "", "") + call X("crystalStringDelimiter", s:green, "", "") + call X("crystalInterpolationDelimiter", s:orange, "", "") + call X("crystalConditional", s:purple, "", "") + call X("crystalRepeat", s:purple, "", "") + call X("crystalControl", s:purple, "", "") + call X("crystalException", s:purple, "", "") + + " Python Highlighting + call X("pythonInclude", s:purple, "", "") + call X("pythonStatement", s:purple, "", "") + call X("pythonConditional", s:purple, "", "") + call X("pythonRepeat", s:purple, "", "") + call X("pythonException", s:purple, "", "") + call X("pythonFunction", s:blue, "", "") + call X("pythonPreCondit", s:purple, "", "") + call X("pythonRepeat", s:aqua, "", "") + call X("pythonExClass", s:orange, "", "") + + " JavaScript Highlighting + call X("javaScriptBraces", s:foreground, "", "") + call X("javaScriptFunction", s:purple, "", "") + call X("javaScriptConditional", s:purple, "", "") + call X("javaScriptRepeat", s:purple, "", "") + call X("javaScriptNumber", s:orange, "", "") + call X("javaScriptMember", s:orange, "", "") + call X("javascriptNull", s:orange, "", "") + call X("javascriptGlobal", s:blue, "", "") + call X("javascriptStatement", s:red, "", "") + + " CoffeeScript Highlighting + call X("coffeeRepeat", s:purple, "", "") + call X("coffeeConditional", s:purple, "", "") + call X("coffeeKeyword", s:purple, "", "") + call X("coffeeObject", s:yellow, "", "") + + " HTML Highlighting + call X("htmlTag", s:red, "", "") + call X("htmlTagName", s:red, "", "") + call X("htmlArg", s:red, "", "") + call X("htmlScriptTag", s:red, "", "") + + " Diff Highlighting + call X("diffAdd", "", "4c4e39", "") + call X("diffDelete", s:background, s:red, "") + call X("diffChange", "", "2B5B77", "") + call X("diffText", s:line, s:blue, "") + + " ShowMarks Highlighting + call X("ShowMarksHLl", s:orange, s:background, "none") + call X("ShowMarksHLo", s:purple, s:background, "none") + call X("ShowMarksHLu", s:yellow, s:background, "none") + call X("ShowMarksHLm", s:aqua, s:background, "none") + + " Lua Highlighting + call X("luaStatement", s:purple, "", "") + call X("luaRepeat", s:purple, "", "") + call X("luaCondStart", s:purple, "", "") + call X("luaCondElseif", s:purple, "", "") + call X("luaCond", s:purple, "", "") + call X("luaCondEnd", s:purple, "", "") + + " Cucumber Highlighting + call X("cucumberGiven", s:blue, "", "") + call X("cucumberGivenAnd", s:blue, "", "") + + " Go Highlighting + call X("goDirective", s:purple, "", "") + call X("goDeclaration", s:purple, "", "") + call X("goStatement", s:purple, "", "") + call X("goConditional", s:purple, "", "") + call X("goConstants", s:orange, "", "") + call X("goTodo", s:yellow, "", "") + call X("goDeclType", s:blue, "", "") + call X("goBuiltins", s:purple, "", "") + call X("goRepeat", s:purple, "", "") + call X("goLabel", s:purple, "", "") + + " Clojure Highlighting + call X("clojureConstant", s:orange, "", "") + call X("clojureBoolean", s:orange, "", "") + call X("clojureCharacter", s:orange, "", "") + call X("clojureKeyword", s:green, "", "") + call X("clojureNumber", s:orange, "", "") + call X("clojureString", s:green, "", "") + call X("clojureRegexp", s:green, "", "") + call X("clojureParen", s:aqua, "", "") + call X("clojureVariable", s:yellow, "", "") + call X("clojureCond", s:blue, "", "") + call X("clojureDefine", s:purple, "", "") + call X("clojureException", s:red, "", "") + call X("clojureFunc", s:blue, "", "") + call X("clojureMacro", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureSpecial", s:purple, "", "") + call X("clojureQuote", s:blue, "", "") + call X("clojureUnquote", s:blue, "", "") + call X("clojureMeta", s:blue, "", "") + call X("clojureDeref", s:blue, "", "") + call X("clojureAnonArg", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureDispatch", s:blue, "", "") + + " Scala Highlighting + call X("scalaKeyword", s:purple, "", "") + call X("scalaKeywordModifier", s:purple, "", "") + call X("scalaOperator", s:blue, "", "") + call X("scalaPackage", s:red, "", "") + call X("scalaFqn", s:foreground, "", "") + call X("scalaFqnSet", s:foreground, "", "") + call X("scalaImport", s:purple, "", "") + call X("scalaBoolean", s:orange, "", "") + call X("scalaDef", s:purple, "", "") + call X("scalaVal", s:purple, "", "") + call X("scalaVar", s:aqua, "", "") + call X("scalaClass", s:purple, "", "") + call X("scalaObject", s:purple, "", "") + call X("scalaTrait", s:purple, "", "") + call X("scalaDefName", s:blue, "", "") + call X("scalaValName", s:foreground, "", "") + call X("scalaVarName", s:foreground, "", "") + call X("scalaClassName", s:foreground, "", "") + call X("scalaType", s:yellow, "", "") + call X("scalaTypeSpecializer", s:yellow, "", "") + call X("scalaAnnotation", s:orange, "", "") + call X("scalaNumber", s:orange, "", "") + call X("scalaDefSpecializer", s:yellow, "", "") + call X("scalaClassSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:green, "", "") + call X("scalaRoot", s:foreground, "", "") + call X("scalaMethodCall", s:blue, "", "") + call X("scalaCaseType", s:yellow, "", "") + call X("scalaLineComment", s:comment, "", "") + call X("scalaComment", s:comment, "", "") + call X("scalaDocComment", s:comment, "", "") + call X("scalaDocTags", s:comment, "", "") + call X("scalaEmptyString", s:green, "", "") + call X("scalaMultiLineString", s:green, "", "") + call X("scalaUnicode", s:orange, "", "") + call X("scalaString", s:green, "", "") + call X("scalaStringEscape", s:green, "", "") + call X("scalaSymbol", s:orange, "", "") + call X("scalaChar", s:orange, "", "") + call X("scalaXml", s:green, "", "") + call X("scalaConstructorSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:blue, "", "") + + " Git + call X("diffAdded", s:green, "", "") + call X("diffRemoved", s:red, "", "") + call X("gitcommitSummary", "", "", "bold") + + " Delete Functions + delf X + delf rgb + delf colour + delf rgb_colour + delf rgb_level + delf rgb_number + delf grey_colour + delf grey_level + delf grey_number +endif + +set background=dark diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night-Eighties.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night-Eighties.vim new file mode 100644 index 0000000..8fa3c8c --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night-Eighties.vim @@ -0,0 +1,489 @@ +" Tomorrow Night Eighties - Full Colour and 256 Colour +" http://chriskempson.com +" +" Hex colour conversion functions borrowed from the theme "Desert256"" + +" Default GUI Colours +let s:foreground = "cccccc" +let s:background = "2d2d2d" +let s:selection = "515151" +let s:line = "393939" +let s:comment = "999999" +let s:red = "f2777a" +let s:orange = "f99157" +let s:yellow = "ffcc66" +let s:green = "99cc99" +let s:aqua = "66cccc" +let s:blue = "6699cc" +let s:purple = "cc99cc" +let s:window = "4d5057" + +hi clear +syntax reset + +let g:colors_name = "Tomorrow-Night-Eighties" + +if has("gui_running") || &t_Co == 88 || &t_Co == 256 + " Returns an approximate grey index for the given grey level + fun grey_number(x) + if &t_Co == 88 + if a:x < 23 + return 0 + elseif a:x < 69 + return 1 + elseif a:x < 103 + return 2 + elseif a:x < 127 + return 3 + elseif a:x < 150 + return 4 + elseif a:x < 173 + return 5 + elseif a:x < 196 + return 6 + elseif a:x < 219 + return 7 + elseif a:x < 243 + return 8 + else + return 9 + endif + else + if a:x < 14 + return 0 + else + let l:n = (a:x - 8) / 10 + let l:m = (a:x - 8) % 10 + if l:m < 5 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual grey level represented by the grey index + fun grey_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 46 + elseif a:n == 2 + return 92 + elseif a:n == 3 + return 115 + elseif a:n == 4 + return 139 + elseif a:n == 5 + return 162 + elseif a:n == 6 + return 185 + elseif a:n == 7 + return 208 + elseif a:n == 8 + return 231 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 8 + (a:n * 10) + endif + endif + endfun + + " Returns the palette index for the given grey index + fun grey_colour(n) + if &t_Co == 88 + if a:n == 0 + return 16 + elseif a:n == 9 + return 79 + else + return 79 + a:n + endif + else + if a:n == 0 + return 16 + elseif a:n == 25 + return 231 + else + return 231 + a:n + endif + endif + endfun + + " Returns an approximate colour index for the given colour level + fun rgb_number(x) + if &t_Co == 88 + if a:x < 69 + return 0 + elseif a:x < 172 + return 1 + elseif a:x < 230 + return 2 + else + return 3 + endif + else + if a:x < 75 + return 0 + else + let l:n = (a:x - 55) / 40 + let l:m = (a:x - 55) % 40 + if l:m < 20 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual colour level for the given colour index + fun rgb_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 139 + elseif a:n == 2 + return 205 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 55 + (a:n * 40) + endif + endif + endfun + + " Returns the palette index for the given R/G/B colour indices + fun rgb_colour(x, y, z) + if &t_Co == 88 + return 16 + (a:x * 16) + (a:y * 4) + a:z + else + return 16 + (a:x * 36) + (a:y * 6) + a:z + endif + endfun + + " Returns the palette index to approximate the given R/G/B colour levels + fun colour(r, g, b) + " Get the closest grey + let l:gx = grey_number(a:r) + let l:gy = grey_number(a:g) + let l:gz = grey_number(a:b) + + " Get the closest colour + let l:x = rgb_number(a:r) + let l:y = rgb_number(a:g) + let l:z = rgb_number(a:b) + + if l:gx == l:gy && l:gy == l:gz + " There are two possibilities + let l:dgr = grey_level(l:gx) - a:r + let l:dgg = grey_level(l:gy) - a:g + let l:dgb = grey_level(l:gz) - a:b + let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb) + let l:dr = rgb_level(l:gx) - a:r + let l:dg = rgb_level(l:gy) - a:g + let l:db = rgb_level(l:gz) - a:b + let l:drgb = (l:dr * l:dr) + (l:dg * l:dg) + (l:db * l:db) + if l:dgrey < l:drgb + " Use the grey + return grey_colour(l:gx) + else + " Use the colour + return rgb_colour(l:x, l:y, l:z) + endif + else + " Only one possibility + return rgb_colour(l:x, l:y, l:z) + endif + endfun + + " Returns the palette index to approximate the 'rrggbb' hex string + fun rgb(rgb) + let l:r = ("0x" . strpart(a:rgb, 0, 2)) + 0 + let l:g = ("0x" . strpart(a:rgb, 2, 2)) + 0 + let l:b = ("0x" . strpart(a:rgb, 4, 2)) + 0 + + return colour(l:r, l:g, l:b) + endfun + + " Sets the highlighting for the given group + fun X(group, fg, bg, attr) + if a:fg != "" + exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . rgb(a:fg) + endif + if a:bg != "" + exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . rgb(a:bg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif + endfun + + " Vim Highlighting + call X("Normal", s:foreground, s:background, "") + call X("LineNr", s:selection, "", "") + call X("NonText", s:selection, "", "") + call X("SpecialKey", s:selection, "", "") + call X("Search", s:background, s:yellow, "") + call X("TabLine", s:window, s:foreground, "reverse") + call X("TabLineFill", s:window, s:foreground, "reverse") + call X("StatusLine", s:window, s:yellow, "reverse") + call X("StatusLineNC", s:window, s:foreground, "reverse") + call X("VertSplit", s:window, s:window, "none") + call X("Visual", "", s:selection, "") + call X("Directory", s:blue, "", "") + call X("ModeMsg", s:green, "", "") + call X("MoreMsg", s:green, "", "") + call X("Question", s:green, "", "") + call X("WarningMsg", s:red, "", "") + call X("MatchParen", "", s:selection, "") + call X("Folded", s:comment, s:background, "") + call X("FoldColumn", "", s:background, "") + if version >= 700 + call X("CursorLine", "", s:line, "none") + call X("CursorColumn", "", s:line, "none") + call X("PMenu", s:foreground, s:selection, "none") + call X("PMenuSel", s:foreground, s:selection, "reverse") + call X("SignColumn", "", s:background, "none") + end + if version >= 703 + call X("ColorColumn", "", s:line, "none") + end + + " Standard Highlighting + call X("Comment", s:comment, "", "") + call X("Todo", s:comment, s:background, "") + call X("Title", s:comment, "", "") + call X("Identifier", s:red, "", "none") + call X("Statement", s:foreground, "", "") + call X("Conditional", s:foreground, "", "") + call X("Repeat", s:foreground, "", "") + call X("Structure", s:purple, "", "") + call X("Function", s:blue, "", "") + call X("Constant", s:orange, "", "") + call X("Keyword", s:orange, "", "") + call X("String", s:green, "", "") + call X("Special", s:foreground, "", "") + call X("PreProc", s:purple, "", "") + call X("Operator", s:aqua, "", "none") + call X("Type", s:blue, "", "none") + call X("Define", s:purple, "", "none") + call X("Include", s:blue, "", "") + "call X("Ignore", "666666", "", "") + + " Vim Highlighting + call X("vimCommand", s:red, "", "none") + + " C Highlighting + call X("cType", s:yellow, "", "") + call X("cStorageClass", s:purple, "", "") + call X("cConditional", s:purple, "", "") + call X("cRepeat", s:purple, "", "") + + " PHP Highlighting + call X("phpVarSelector", s:red, "", "") + call X("phpKeyword", s:purple, "", "") + call X("phpRepeat", s:purple, "", "") + call X("phpConditional", s:purple, "", "") + call X("phpStatement", s:purple, "", "") + call X("phpMemberSelector", s:foreground, "", "") + + " Ruby Highlighting + call X("rubySymbol", s:green, "", "") + call X("rubyConstant", s:yellow, "", "") + call X("rubyAccess", s:yellow, "", "") + call X("rubyAttribute", s:blue, "", "") + call X("rubyInclude", s:blue, "", "") + call X("rubyLocalVariableOrMethod", s:orange, "", "") + call X("rubyCurlyBlock", s:orange, "", "") + call X("rubyStringDelimiter", s:green, "", "") + call X("rubyInterpolationDelimiter", s:orange, "", "") + call X("rubyConditional", s:purple, "", "") + call X("rubyRepeat", s:purple, "", "") + call X("rubyControl", s:purple, "", "") + call X("rubyException", s:purple, "", "") + + " Crystal Highlighting + call X("crystalSymbol", s:green, "", "") + call X("crystalConstant", s:yellow, "", "") + call X("crystalAccess", s:yellow, "", "") + call X("crystalAttribute", s:blue, "", "") + call X("crystalInclude", s:blue, "", "") + call X("crystalLocalVariableOrMethod", s:orange, "", "") + call X("crystalCurlyBlock", s:orange, "", "") + call X("crystalStringDelimiter", s:green, "", "") + call X("crystalInterpolationDelimiter", s:orange, "", "") + call X("crystalConditional", s:purple, "", "") + call X("crystalRepeat", s:purple, "", "") + call X("crystalControl", s:purple, "", "") + call X("crystalException", s:purple, "", "") + + " Python Highlighting + call X("pythonInclude", s:purple, "", "") + call X("pythonStatement", s:purple, "", "") + call X("pythonConditional", s:purple, "", "") + call X("pythonRepeat", s:purple, "", "") + call X("pythonException", s:purple, "", "") + call X("pythonFunction", s:blue, "", "") + call X("pythonPreCondit", s:purple, "", "") + call X("pythonRepeat", s:aqua, "", "") + call X("pythonExClass", s:orange, "", "") + + " JavaScript Highlighting + call X("javaScriptBraces", s:foreground, "", "") + call X("javaScriptFunction", s:purple, "", "") + call X("javaScriptConditional", s:purple, "", "") + call X("javaScriptRepeat", s:purple, "", "") + call X("javaScriptNumber", s:orange, "", "") + call X("javaScriptMember", s:orange, "", "") + call X("javascriptNull", s:orange, "", "") + call X("javascriptGlobal", s:blue, "", "") + call X("javascriptStatement", s:red, "", "") + + " CoffeeScript Highlighting + call X("coffeeRepeat", s:purple, "", "") + call X("coffeeConditional", s:purple, "", "") + call X("coffeeKeyword", s:purple, "", "") + call X("coffeeObject", s:yellow, "", "") + + " HTML Highlighting + call X("htmlTag", s:red, "", "") + call X("htmlTagName", s:red, "", "") + call X("htmlArg", s:red, "", "") + call X("htmlScriptTag", s:red, "", "") + + " Diff Highlighting + call X("diffAdd", "", "4c4e39", "") + call X("diffDelete", s:background, s:red, "") + call X("diffChange", "", "2B5B77", "") + call X("diffText", s:line, s:blue, "") + + " ShowMarks Highlighting + call X("ShowMarksHLl", s:orange, s:background, "none") + call X("ShowMarksHLo", s:purple, s:background, "none") + call X("ShowMarksHLu", s:yellow, s:background, "none") + call X("ShowMarksHLm", s:aqua, s:background, "none") + + " Lua Highlighting + call X("luaStatement", s:purple, "", "") + call X("luaRepeat", s:purple, "", "") + call X("luaCondStart", s:purple, "", "") + call X("luaCondElseif", s:purple, "", "") + call X("luaCond", s:purple, "", "") + call X("luaCondEnd", s:purple, "", "") + + " Cucumber Highlighting + call X("cucumberGiven", s:blue, "", "") + call X("cucumberGivenAnd", s:blue, "", "") + + " Go Highlighting + call X("goDirective", s:purple, "", "") + call X("goDeclaration", s:purple, "", "") + call X("goStatement", s:purple, "", "") + call X("goConditional", s:purple, "", "") + call X("goConstants", s:orange, "", "") + call X("goTodo", s:yellow, "", "") + call X("goDeclType", s:blue, "", "") + call X("goBuiltins", s:purple, "", "") + call X("goRepeat", s:purple, "", "") + call X("goLabel", s:purple, "", "") + + " Clojure Highlighting + call X("clojureConstant", s:orange, "", "") + call X("clojureBoolean", s:orange, "", "") + call X("clojureCharacter", s:orange, "", "") + call X("clojureKeyword", s:green, "", "") + call X("clojureNumber", s:orange, "", "") + call X("clojureString", s:green, "", "") + call X("clojureRegexp", s:green, "", "") + call X("clojureParen", s:aqua, "", "") + call X("clojureVariable", s:yellow, "", "") + call X("clojureCond", s:blue, "", "") + call X("clojureDefine", s:purple, "", "") + call X("clojureException", s:red, "", "") + call X("clojureFunc", s:blue, "", "") + call X("clojureMacro", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureSpecial", s:purple, "", "") + call X("clojureQuote", s:blue, "", "") + call X("clojureUnquote", s:blue, "", "") + call X("clojureMeta", s:blue, "", "") + call X("clojureDeref", s:blue, "", "") + call X("clojureAnonArg", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureDispatch", s:blue, "", "") + + " Scala Highlighting + call X("scalaKeyword", s:purple, "", "") + call X("scalaKeywordModifier", s:purple, "", "") + call X("scalaOperator", s:blue, "", "") + call X("scalaPackage", s:red, "", "") + call X("scalaFqn", s:foreground, "", "") + call X("scalaFqnSet", s:foreground, "", "") + call X("scalaImport", s:purple, "", "") + call X("scalaBoolean", s:orange, "", "") + call X("scalaDef", s:purple, "", "") + call X("scalaVal", s:purple, "", "") + call X("scalaVar", s:aqua, "", "") + call X("scalaClass", s:purple, "", "") + call X("scalaObject", s:purple, "", "") + call X("scalaTrait", s:purple, "", "") + call X("scalaDefName", s:blue, "", "") + call X("scalaValName", s:foreground, "", "") + call X("scalaVarName", s:foreground, "", "") + call X("scalaClassName", s:foreground, "", "") + call X("scalaType", s:yellow, "", "") + call X("scalaTypeSpecializer", s:yellow, "", "") + call X("scalaAnnotation", s:orange, "", "") + call X("scalaNumber", s:orange, "", "") + call X("scalaDefSpecializer", s:yellow, "", "") + call X("scalaClassSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:green, "", "") + call X("scalaRoot", s:foreground, "", "") + call X("scalaMethodCall", s:blue, "", "") + call X("scalaCaseType", s:yellow, "", "") + call X("scalaLineComment", s:comment, "", "") + call X("scalaComment", s:comment, "", "") + call X("scalaDocComment", s:comment, "", "") + call X("scalaDocTags", s:comment, "", "") + call X("scalaEmptyString", s:green, "", "") + call X("scalaMultiLineString", s:green, "", "") + call X("scalaUnicode", s:orange, "", "") + call X("scalaString", s:green, "", "") + call X("scalaStringEscape", s:green, "", "") + call X("scalaSymbol", s:orange, "", "") + call X("scalaChar", s:orange, "", "") + call X("scalaXml", s:green, "", "") + call X("scalaConstructorSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:blue, "", "") + + " Git + call X("diffAdded", s:green, "", "") + call X("diffRemoved", s:red, "", "") + call X("gitcommitSummary", "", "", "bold") + + " Delete Functions + delf X + delf rgb + delf colour + delf rgb_colour + delf rgb_level + delf rgb_number + delf grey_colour + delf grey_level + delf grey_number +endif + +set background=dark diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night.vim new file mode 100644 index 0000000..f8e5833 --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow-Night.vim @@ -0,0 +1,497 @@ +" Tomorrow Night - Full Colour and 256 Colour +" http://chriskempson.com +" +" Hex colour conversion functions borrowed from the theme "Desert256"" + +" Default GUI Colours +let s:foreground = "c5c8c6" +let s:background = "1d1f21" +let s:selection = "373b41" +let s:line = "282a2e" +let s:comment = "969896" +let s:red = "cc6666" +let s:orange = "de935f" +let s:yellow = "f0c674" +let s:green = "b5bd68" +let s:aqua = "8abeb7" +let s:blue = "81a2be" +let s:purple = "b294bb" +let s:window = "4d5057" + +" Console 256 Colours +if !has("gui_running") + let s:background = "303030" + let s:window = "5e5e5e" + let s:line = "3a3a3a" + let s:selection = "585858" +end + +hi clear +syntax reset + +let g:colors_name = "Tomorrow-Night" + +if has("gui_running") || &t_Co == 88 || &t_Co == 256 + " Returns an approximate grey index for the given grey level + fun grey_number(x) + if &t_Co == 88 + if a:x < 23 + return 0 + elseif a:x < 69 + return 1 + elseif a:x < 103 + return 2 + elseif a:x < 127 + return 3 + elseif a:x < 150 + return 4 + elseif a:x < 173 + return 5 + elseif a:x < 196 + return 6 + elseif a:x < 219 + return 7 + elseif a:x < 243 + return 8 + else + return 9 + endif + else + if a:x < 14 + return 0 + else + let l:n = (a:x - 8) / 10 + let l:m = (a:x - 8) % 10 + if l:m < 5 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual grey level represented by the grey index + fun grey_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 46 + elseif a:n == 2 + return 92 + elseif a:n == 3 + return 115 + elseif a:n == 4 + return 139 + elseif a:n == 5 + return 162 + elseif a:n == 6 + return 185 + elseif a:n == 7 + return 208 + elseif a:n == 8 + return 231 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 8 + (a:n * 10) + endif + endif + endfun + + " Returns the palette index for the given grey index + fun grey_colour(n) + if &t_Co == 88 + if a:n == 0 + return 16 + elseif a:n == 9 + return 79 + else + return 79 + a:n + endif + else + if a:n == 0 + return 16 + elseif a:n == 25 + return 231 + else + return 231 + a:n + endif + endif + endfun + + " Returns an approximate colour index for the given colour level + fun rgb_number(x) + if &t_Co == 88 + if a:x < 69 + return 0 + elseif a:x < 172 + return 1 + elseif a:x < 230 + return 2 + else + return 3 + endif + else + if a:x < 75 + return 0 + else + let l:n = (a:x - 55) / 40 + let l:m = (a:x - 55) % 40 + if l:m < 20 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual colour level for the given colour index + fun rgb_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 139 + elseif a:n == 2 + return 205 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 55 + (a:n * 40) + endif + endif + endfun + + " Returns the palette index for the given R/G/B colour indices + fun rgb_colour(x, y, z) + if &t_Co == 88 + return 16 + (a:x * 16) + (a:y * 4) + a:z + else + return 16 + (a:x * 36) + (a:y * 6) + a:z + endif + endfun + + " Returns the palette index to approximate the given R/G/B colour levels + fun colour(r, g, b) + " Get the closest grey + let l:gx = grey_number(a:r) + let l:gy = grey_number(a:g) + let l:gz = grey_number(a:b) + + " Get the closest colour + let l:x = rgb_number(a:r) + let l:y = rgb_number(a:g) + let l:z = rgb_number(a:b) + + if l:gx == l:gy && l:gy == l:gz + " There are two possibilities + let l:dgr = grey_level(l:gx) - a:r + let l:dgg = grey_level(l:gy) - a:g + let l:dgb = grey_level(l:gz) - a:b + let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb) + let l:dr = rgb_level(l:gx) - a:r + let l:dg = rgb_level(l:gy) - a:g + let l:db = rgb_level(l:gz) - a:b + let l:drgb = (l:dr * l:dr) + (l:dg * l:dg) + (l:db * l:db) + if l:dgrey < l:drgb + " Use the grey + return grey_colour(l:gx) + else + " Use the colour + return rgb_colour(l:x, l:y, l:z) + endif + else + " Only one possibility + return rgb_colour(l:x, l:y, l:z) + endif + endfun + + " Returns the palette index to approximate the 'rrggbb' hex string + fun rgb(rgb) + let l:r = ("0x" . strpart(a:rgb, 0, 2)) + 0 + let l:g = ("0x" . strpart(a:rgb, 2, 2)) + 0 + let l:b = ("0x" . strpart(a:rgb, 4, 2)) + 0 + + return colour(l:r, l:g, l:b) + endfun + + " Sets the highlighting for the given group + fun X(group, fg, bg, attr) + if a:fg != "" + exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . rgb(a:fg) + endif + if a:bg != "" + exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . rgb(a:bg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif + endfun + + " Vim Highlighting + call X("Normal", s:foreground, s:background, "") + call X("LineNr", s:selection, "", "") + call X("NonText", s:selection, "", "") + call X("SpecialKey", s:selection, "", "") + call X("Search", s:background, s:yellow, "") + call X("TabLine", s:window, s:foreground, "reverse") + call X("TabLineFill", s:window, s:foreground, "reverse") + call X("StatusLine", s:window, s:yellow, "reverse") + call X("StatusLineNC", s:window, s:foreground, "reverse") + call X("VertSplit", s:window, s:window, "none") + call X("Visual", "", s:selection, "") + call X("Directory", s:blue, "", "") + call X("ModeMsg", s:green, "", "") + call X("MoreMsg", s:green, "", "") + call X("Question", s:green, "", "") + call X("WarningMsg", s:red, "", "") + call X("MatchParen", "", s:selection, "") + call X("Folded", s:comment, s:background, "") + call X("FoldColumn", "", s:background, "") + if version >= 700 + call X("CursorLine", "", s:line, "none") + call X("CursorColumn", "", s:line, "none") + call X("PMenu", s:foreground, s:selection, "none") + call X("PMenuSel", s:foreground, s:selection, "reverse") + call X("SignColumn", "", s:background, "none") + end + if version >= 703 + call X("ColorColumn", "", s:line, "none") + end + + " Standard Highlighting + call X("Comment", s:comment, "", "") + call X("Todo", s:comment, s:background, "") + call X("Title", s:comment, "", "") + call X("Identifier", s:red, "", "none") + call X("Statement", s:foreground, "", "") + call X("Conditional", s:foreground, "", "") + call X("Repeat", s:foreground, "", "") + call X("Structure", s:purple, "", "") + call X("Function", s:blue, "", "") + call X("Constant", s:orange, "", "") + call X("Keyword", s:orange, "", "") + call X("String", s:green, "", "") + call X("Special", s:foreground, "", "") + call X("PreProc", s:purple, "", "") + call X("Operator", s:aqua, "", "none") + call X("Type", s:blue, "", "none") + call X("Define", s:purple, "", "none") + call X("Include", s:blue, "", "") + "call X("Ignore", "666666", "", "") + + " Vim Highlighting + call X("vimCommand", s:red, "", "none") + + " C Highlighting + call X("cType", s:yellow, "", "") + call X("cStorageClass", s:purple, "", "") + call X("cConditional", s:purple, "", "") + call X("cRepeat", s:purple, "", "") + + " PHP Highlighting + call X("phpVarSelector", s:red, "", "") + call X("phpKeyword", s:purple, "", "") + call X("phpRepeat", s:purple, "", "") + call X("phpConditional", s:purple, "", "") + call X("phpStatement", s:purple, "", "") + call X("phpMemberSelector", s:foreground, "", "") + + " Ruby Highlighting + call X("rubySymbol", s:green, "", "") + call X("rubyConstant", s:yellow, "", "") + call X("rubyAccess", s:yellow, "", "") + call X("rubyAttribute", s:blue, "", "") + call X("rubyInclude", s:blue, "", "") + call X("rubyLocalVariableOrMethod", s:orange, "", "") + call X("rubyCurlyBlock", s:orange, "", "") + call X("rubyStringDelimiter", s:green, "", "") + call X("rubyInterpolationDelimiter", s:orange, "", "") + call X("rubyConditional", s:purple, "", "") + call X("rubyRepeat", s:purple, "", "") + call X("rubyControl", s:purple, "", "") + call X("rubyException", s:purple, "", "") + + " Crystal Highlighting + call X("crystalSymbol", s:green, "", "") + call X("crystalConstant", s:yellow, "", "") + call X("crystalAccess", s:yellow, "", "") + call X("crystalAttribute", s:blue, "", "") + call X("crystalInclude", s:blue, "", "") + call X("crystalLocalVariableOrMethod", s:orange, "", "") + call X("crystalCurlyBlock", s:orange, "", "") + call X("crystalStringDelimiter", s:green, "", "") + call X("crystalInterpolationDelimiter", s:orange, "", "") + call X("crystalConditional", s:purple, "", "") + call X("crystalRepeat", s:purple, "", "") + call X("crystalControl", s:purple, "", "") + call X("crystalException", s:purple, "", "") + + " Python Highlighting + call X("pythonInclude", s:purple, "", "") + call X("pythonStatement", s:purple, "", "") + call X("pythonConditional", s:purple, "", "") + call X("pythonRepeat", s:purple, "", "") + call X("pythonException", s:purple, "", "") + call X("pythonFunction", s:blue, "", "") + call X("pythonPreCondit", s:purple, "", "") + call X("pythonRepeat", s:aqua, "", "") + call X("pythonExClass", s:orange, "", "") + + " JavaScript Highlighting + call X("javaScriptBraces", s:foreground, "", "") + call X("javaScriptFunction", s:purple, "", "") + call X("javaScriptConditional", s:purple, "", "") + call X("javaScriptRepeat", s:purple, "", "") + call X("javaScriptNumber", s:orange, "", "") + call X("javaScriptMember", s:orange, "", "") + call X("javascriptNull", s:orange, "", "") + call X("javascriptGlobal", s:blue, "", "") + call X("javascriptStatement", s:red, "", "") + + " CoffeeScript Highlighting + call X("coffeeRepeat", s:purple, "", "") + call X("coffeeConditional", s:purple, "", "") + call X("coffeeKeyword", s:purple, "", "") + call X("coffeeObject", s:yellow, "", "") + + " HTML Highlighting + call X("htmlTag", s:red, "", "") + call X("htmlTagName", s:red, "", "") + call X("htmlArg", s:red, "", "") + call X("htmlScriptTag", s:red, "", "") + + " Diff Highlighting + call X("diffAdd", "", "4c4e39", "") + call X("diffDelete", s:background, s:red, "") + call X("diffChange", "", "2B5B77", "") + call X("diffText", s:line, s:blue, "") + + " ShowMarks Highlighting + call X("ShowMarksHLl", s:orange, s:background, "none") + call X("ShowMarksHLo", s:purple, s:background, "none") + call X("ShowMarksHLu", s:yellow, s:background, "none") + call X("ShowMarksHLm", s:aqua, s:background, "none") + + " Lua Highlighting + call X("luaStatement", s:purple, "", "") + call X("luaRepeat", s:purple, "", "") + call X("luaCondStart", s:purple, "", "") + call X("luaCondElseif", s:purple, "", "") + call X("luaCond", s:purple, "", "") + call X("luaCondEnd", s:purple, "", "") + + " Cucumber Highlighting + call X("cucumberGiven", s:blue, "", "") + call X("cucumberGivenAnd", s:blue, "", "") + + " Go Highlighting + call X("goDirective", s:purple, "", "") + call X("goDeclaration", s:purple, "", "") + call X("goStatement", s:purple, "", "") + call X("goConditional", s:purple, "", "") + call X("goConstants", s:orange, "", "") + call X("goTodo", s:yellow, "", "") + call X("goDeclType", s:blue, "", "") + call X("goBuiltins", s:purple, "", "") + call X("goRepeat", s:purple, "", "") + call X("goLabel", s:purple, "", "") + + " Clojure Highlighting + call X("clojureConstant", s:orange, "", "") + call X("clojureBoolean", s:orange, "", "") + call X("clojureCharacter", s:orange, "", "") + call X("clojureKeyword", s:green, "", "") + call X("clojureNumber", s:orange, "", "") + call X("clojureString", s:green, "", "") + call X("clojureRegexp", s:green, "", "") + call X("clojureParen", s:aqua, "", "") + call X("clojureVariable", s:yellow, "", "") + call X("clojureCond", s:blue, "", "") + call X("clojureDefine", s:purple, "", "") + call X("clojureException", s:red, "", "") + call X("clojureFunc", s:blue, "", "") + call X("clojureMacro", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureSpecial", s:purple, "", "") + call X("clojureQuote", s:blue, "", "") + call X("clojureUnquote", s:blue, "", "") + call X("clojureMeta", s:blue, "", "") + call X("clojureDeref", s:blue, "", "") + call X("clojureAnonArg", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureDispatch", s:blue, "", "") + + " Scala Highlighting + call X("scalaKeyword", s:purple, "", "") + call X("scalaKeywordModifier", s:purple, "", "") + call X("scalaOperator", s:blue, "", "") + call X("scalaPackage", s:red, "", "") + call X("scalaFqn", s:foreground, "", "") + call X("scalaFqnSet", s:foreground, "", "") + call X("scalaImport", s:purple, "", "") + call X("scalaBoolean", s:orange, "", "") + call X("scalaDef", s:purple, "", "") + call X("scalaVal", s:purple, "", "") + call X("scalaVar", s:aqua, "", "") + call X("scalaClass", s:purple, "", "") + call X("scalaObject", s:purple, "", "") + call X("scalaTrait", s:purple, "", "") + call X("scalaDefName", s:blue, "", "") + call X("scalaValName", s:foreground, "", "") + call X("scalaVarName", s:foreground, "", "") + call X("scalaClassName", s:foreground, "", "") + call X("scalaType", s:yellow, "", "") + call X("scalaTypeSpecializer", s:yellow, "", "") + call X("scalaAnnotation", s:orange, "", "") + call X("scalaNumber", s:orange, "", "") + call X("scalaDefSpecializer", s:yellow, "", "") + call X("scalaClassSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:green, "", "") + call X("scalaRoot", s:foreground, "", "") + call X("scalaMethodCall", s:blue, "", "") + call X("scalaCaseType", s:yellow, "", "") + call X("scalaLineComment", s:comment, "", "") + call X("scalaComment", s:comment, "", "") + call X("scalaDocComment", s:comment, "", "") + call X("scalaDocTags", s:comment, "", "") + call X("scalaEmptyString", s:green, "", "") + call X("scalaMultiLineString", s:green, "", "") + call X("scalaUnicode", s:orange, "", "") + call X("scalaString", s:green, "", "") + call X("scalaStringEscape", s:green, "", "") + call X("scalaSymbol", s:orange, "", "") + call X("scalaChar", s:orange, "", "") + call X("scalaXml", s:green, "", "") + call X("scalaConstructorSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:blue, "", "") + + " Git + call X("diffAdded", s:green, "", "") + call X("diffRemoved", s:red, "", "") + call X("gitcommitSummary", "", "", "bold") + + " Delete Functions + delf X + delf rgb + delf colour + delf rgb_colour + delf rgb_level + delf rgb_number + delf grey_colour + delf grey_level + delf grey_number +endif + +set background=dark diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow.vim new file mode 100644 index 0000000..78147b2 --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/Tomorrow.vim @@ -0,0 +1,482 @@ +" Tomorrow - Full Colour and 256 Colour +" http://chriskempson.com +" +" Hex colour conversion functions borrowed from the theme "Desert256"" + +" Default GUI Colours +let s:foreground = "4d4d4c" +let s:background = "ffffff" +let s:selection = "d6d6d6" +let s:line = "efefef" +let s:comment = "8e908c" +let s:red = "c82829" +let s:orange = "f5871f" +let s:yellow = "eab700" +let s:green = "718c00" +let s:aqua = "3e999f" +let s:blue = "4271ae" +let s:purple = "8959a8" +let s:window = "efefef" + +set background=light +hi clear +syntax reset + +let g:colors_name = "Tomorrow" + +if has("gui_running") || &t_Co == 88 || &t_Co == 256 + " Returns an approximate grey index for the given grey level + fun grey_number(x) + if &t_Co == 88 + if a:x < 23 + return 0 + elseif a:x < 69 + return 1 + elseif a:x < 103 + return 2 + elseif a:x < 127 + return 3 + elseif a:x < 150 + return 4 + elseif a:x < 173 + return 5 + elseif a:x < 196 + return 6 + elseif a:x < 219 + return 7 + elseif a:x < 243 + return 8 + else + return 9 + endif + else + if a:x < 14 + return 0 + else + let l:n = (a:x - 8) / 10 + let l:m = (a:x - 8) % 10 + if l:m < 5 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual grey level represented by the grey index + fun grey_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 46 + elseif a:n == 2 + return 92 + elseif a:n == 3 + return 115 + elseif a:n == 4 + return 139 + elseif a:n == 5 + return 162 + elseif a:n == 6 + return 185 + elseif a:n == 7 + return 208 + elseif a:n == 8 + return 231 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 8 + (a:n * 10) + endif + endif + endfun + + " Returns the palette index for the given grey index + fun grey_colour(n) + if &t_Co == 88 + if a:n == 0 + return 16 + elseif a:n == 9 + return 79 + else + return 79 + a:n + endif + else + if a:n == 0 + return 16 + elseif a:n == 25 + return 231 + else + return 231 + a:n + endif + endif + endfun + + " Returns an approximate colour index for the given colour level + fun rgb_number(x) + if &t_Co == 88 + if a:x < 69 + return 0 + elseif a:x < 172 + return 1 + elseif a:x < 230 + return 2 + else + return 3 + endif + else + if a:x < 75 + return 0 + else + let l:n = (a:x - 55) / 40 + let l:m = (a:x - 55) % 40 + if l:m < 20 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " Returns the actual colour level for the given colour index + fun rgb_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 139 + elseif a:n == 2 + return 205 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 55 + (a:n * 40) + endif + endif + endfun + + " Returns the palette index for the given R/G/B colour indices + fun rgb_colour(x, y, z) + if &t_Co == 88 + return 16 + (a:x * 16) + (a:y * 4) + a:z + else + return 16 + (a:x * 36) + (a:y * 6) + a:z + endif + endfun + + " Returns the palette index to approximate the given R/G/B colour levels + fun colour(r, g, b) + " Get the closest grey + let l:gx = grey_number(a:r) + let l:gy = grey_number(a:g) + let l:gz = grey_number(a:b) + + " Get the closest colour + let l:x = rgb_number(a:r) + let l:y = rgb_number(a:g) + let l:z = rgb_number(a:b) + + if l:gx == l:gy && l:gy == l:gz + " There are two possibilities + let l:dgr = grey_level(l:gx) - a:r + let l:dgg = grey_level(l:gy) - a:g + let l:dgb = grey_level(l:gz) - a:b + let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb) + let l:dr = rgb_level(l:gx) - a:r + let l:dg = rgb_level(l:gy) - a:g + let l:db = rgb_level(l:gz) - a:b + let l:drgb = (l:dr * l:dr) + (l:dg * l:dg) + (l:db * l:db) + if l:dgrey < l:drgb + " Use the grey + return grey_colour(l:gx) + else + " Use the colour + return rgb_colour(l:x, l:y, l:z) + endif + else + " Only one possibility + return rgb_colour(l:x, l:y, l:z) + endif + endfun + + " Returns the palette index to approximate the 'rrggbb' hex string + fun rgb(rgb) + let l:r = ("0x" . strpart(a:rgb, 0, 2)) + 0 + let l:g = ("0x" . strpart(a:rgb, 2, 2)) + 0 + let l:b = ("0x" . strpart(a:rgb, 4, 2)) + 0 + + return colour(l:r, l:g, l:b) + endfun + + " Sets the highlighting for the given group + fun X(group, fg, bg, attr) + if a:fg != "" + exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . rgb(a:fg) + endif + if a:bg != "" + exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . rgb(a:bg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif + endfun + + " Vim Highlighting + call X("Normal", s:foreground, s:background, "") + highlight LineNr term=bold cterm=NONE ctermfg=DarkGrey ctermbg=NONE gui=NONE guifg=DarkGrey guibg=NONE + call X("NonText", s:selection, "", "") + call X("SpecialKey", s:selection, "", "") + call X("Search", s:foreground, s:yellow, "") + call X("TabLine", s:window, s:foreground, "reverse") + call X("TabLineFill", s:window, s:foreground, "reverse") + call X("StatusLine", s:window, s:yellow, "reverse") + call X("StatusLineNC", s:window, s:foreground, "reverse") + call X("VertSplit", s:window, s:window, "none") + call X("Visual", "", s:selection, "") + call X("Directory", s:blue, "", "") + call X("ModeMsg", s:green, "", "") + call X("MoreMsg", s:green, "", "") + call X("Question", s:green, "", "") + call X("WarningMsg", s:red, "", "") + call X("MatchParen", "", s:selection, "") + call X("Folded", s:comment, s:background, "") + call X("FoldColumn", "", s:background, "") + if version >= 700 + call X("CursorLine", "", s:line, "none") + call X("CursorColumn", "", s:line, "none") + call X("PMenu", s:foreground, s:selection, "none") + call X("PMenuSel", s:foreground, s:selection, "reverse") + call X("SignColumn", "", s:background, "none") + end + if version >= 703 + call X("ColorColumn", "", s:line, "none") + end + + " Standard Highlighting + call X("Comment", s:comment, "", "") + call X("Todo", s:comment, s:background, "") + call X("Title", s:comment, "", "") + call X("Identifier", s:red, "", "none") + call X("Statement", s:foreground, "", "") + call X("Conditional", s:foreground, "", "") + call X("Repeat", s:foreground, "", "") + call X("Structure", s:purple, "", "") + call X("Function", s:blue, "", "") + call X("Constant", s:orange, "", "") + call X("Keyword", s:orange, "", "") + call X("String", s:green, "", "") + call X("Special", s:foreground, "", "") + call X("PreProc", s:purple, "", "") + call X("Operator", s:aqua, "", "none") + call X("Type", s:blue, "", "none") + call X("Define", s:purple, "", "none") + call X("Include", s:blue, "", "") + "call X("Ignore", "666666", "", "") + + " Vim Highlighting + call X("vimCommand", s:red, "", "none") + + " C Highlighting + call X("cType", s:yellow, "", "") + call X("cStorageClass", s:purple, "", "") + call X("cConditional", s:purple, "", "") + call X("cRepeat", s:purple, "", "") + + " PHP Highlighting + call X("phpVarSelector", s:red, "", "") + call X("phpKeyword", s:purple, "", "") + call X("phpRepeat", s:purple, "", "") + call X("phpConditional", s:purple, "", "") + call X("phpStatement", s:purple, "", "") + call X("phpMemberSelector", s:foreground, "", "") + + " Ruby Highlighting + call X("rubySymbol", s:green, "", "") + call X("rubyConstant", s:yellow, "", "") + call X("rubyAccess", s:yellow, "", "") + call X("rubyAttribute", s:blue, "", "") + call X("rubyInclude", s:blue, "", "") + call X("rubyLocalVariableOrMethod", s:orange, "", "") + call X("rubyCurlyBlock", s:orange, "", "") + call X("rubyStringDelimiter", s:green, "", "") + call X("rubyInterpolationDelimiter", s:orange, "", "") + call X("rubyConditional", s:purple, "", "") + call X("rubyRepeat", s:purple, "", "") + call X("rubyControl", s:purple, "", "") + call X("rubyException", s:purple, "", "") + + " Crystal Highlighting + call X("crystalSymbol", s:green, "", "") + call X("crystalConstant", s:yellow, "", "") + call X("crystalAccess", s:yellow, "", "") + call X("crystalAttribute", s:blue, "", "") + call X("crystalInclude", s:blue, "", "") + call X("crystalLocalVariableOrMethod", s:orange, "", "") + call X("crystalCurlyBlock", s:orange, "", "") + call X("crystalStringDelimiter", s:green, "", "") + call X("crystalInterpolationDelimiter", s:orange, "", "") + call X("crystalConditional", s:purple, "", "") + call X("crystalRepeat", s:purple, "", "") + call X("crystalControl", s:purple, "", "") + call X("crystalException", s:purple, "", "") + + " Python Highlighting + call X("pythonInclude", s:purple, "", "") + call X("pythonStatement", s:purple, "", "") + call X("pythonConditional", s:purple, "", "") + call X("pythonRepeat", s:purple, "", "") + call X("pythonException", s:purple, "", "") + call X("pythonFunction", s:blue, "", "") + call X("pythonPreCondit", s:purple, "", "") + call X("pythonRepeat", s:aqua, "", "") + call X("pythonExClass", s:orange, "", "") + + " JavaScript Highlighting + call X("javaScriptBraces", s:foreground, "", "") + call X("javaScriptFunction", s:purple, "", "") + call X("javaScriptConditional", s:purple, "", "") + call X("javaScriptRepeat", s:purple, "", "") + call X("javaScriptNumber", s:orange, "", "") + call X("javaScriptMember", s:orange, "", "") + call X("javascriptNull", s:orange, "", "") + call X("javascriptGlobal", s:blue, "", "") + call X("javascriptStatement", s:red, "", "") + + " CoffeeScript Highlighting + call X("coffeeRepeat", s:purple, "", "") + call X("coffeeConditional", s:purple, "", "") + call X("coffeeKeyword", s:purple, "", "") + call X("coffeeObject", s:yellow, "", "") + + " HTML Highlighting + call X("htmlTag", s:red, "", "") + call X("htmlTagName", s:red, "", "") + call X("htmlArg", s:red, "", "") + call X("htmlScriptTag", s:red, "", "") + + " ShowMarks Highlighting + call X("ShowMarksHLl", s:orange, s:background, "none") + call X("ShowMarksHLo", s:purple, s:background, "none") + call X("ShowMarksHLu", s:yellow, s:background, "none") + call X("ShowMarksHLm", s:aqua, s:background, "none") + + " Lua Highlighting + call X("luaStatement", s:purple, "", "") + call X("luaRepeat", s:purple, "", "") + call X("luaCondStart", s:purple, "", "") + call X("luaCondElseif", s:purple, "", "") + call X("luaCond", s:purple, "", "") + call X("luaCondEnd", s:purple, "", "") + + " Cucumber Highlighting + call X("cucumberGiven", s:blue, "", "") + call X("cucumberGivenAnd", s:blue, "", "") + + " Go Highlighting + call X("goDirective", s:purple, "", "") + call X("goDeclaration", s:purple, "", "") + call X("goStatement", s:purple, "", "") + call X("goConditional", s:purple, "", "") + call X("goConstants", s:orange, "", "") + call X("goTodo", s:yellow, "", "") + call X("goDeclType", s:blue, "", "") + call X("goBuiltins", s:purple, "", "") + call X("goRepeat", s:purple, "", "") + call X("goLabel", s:purple, "", "") + + " Clojure Highlighting + call X("clojureConstant", s:orange, "", "") + call X("clojureBoolean", s:orange, "", "") + call X("clojureCharacter", s:orange, "", "") + call X("clojureKeyword", s:green, "", "") + call X("clojureNumber", s:orange, "", "") + call X("clojureString", s:green, "", "") + call X("clojureRegexp", s:green, "", "") + call X("clojureParen", s:aqua, "", "") + call X("clojureVariable", s:yellow, "", "") + call X("clojureCond", s:blue, "", "") + call X("clojureDefine", s:purple, "", "") + call X("clojureException", s:red, "", "") + call X("clojureFunc", s:blue, "", "") + call X("clojureMacro", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureSpecial", s:purple, "", "") + call X("clojureQuote", s:blue, "", "") + call X("clojureUnquote", s:blue, "", "") + call X("clojureMeta", s:blue, "", "") + call X("clojureDeref", s:blue, "", "") + call X("clojureAnonArg", s:blue, "", "") + call X("clojureRepeat", s:blue, "", "") + call X("clojureDispatch", s:blue, "", "") + + " Scala Highlighting + call X("scalaKeyword", s:purple, "", "") + call X("scalaKeywordModifier", s:purple, "", "") + call X("scalaOperator", s:blue, "", "") + call X("scalaPackage", s:red, "", "") + call X("scalaFqn", s:foreground, "", "") + call X("scalaFqnSet", s:foreground, "", "") + call X("scalaImport", s:purple, "", "") + call X("scalaBoolean", s:orange, "", "") + call X("scalaDef", s:purple, "", "") + call X("scalaVal", s:purple, "", "") + call X("scalaVar", s:aqua, "", "") + call X("scalaClass", s:purple, "", "") + call X("scalaObject", s:purple, "", "") + call X("scalaTrait", s:purple, "", "") + call X("scalaDefName", s:blue, "", "") + call X("scalaValName", s:foreground, "", "") + call X("scalaVarName", s:foreground, "", "") + call X("scalaClassName", s:foreground, "", "") + call X("scalaType", s:yellow, "", "") + call X("scalaTypeSpecializer", s:yellow, "", "") + call X("scalaAnnotation", s:orange, "", "") + call X("scalaNumber", s:orange, "", "") + call X("scalaDefSpecializer", s:yellow, "", "") + call X("scalaClassSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:green, "", "") + call X("scalaRoot", s:foreground, "", "") + call X("scalaMethodCall", s:blue, "", "") + call X("scalaCaseType", s:yellow, "", "") + call X("scalaLineComment", s:comment, "", "") + call X("scalaComment", s:comment, "", "") + call X("scalaDocComment", s:comment, "", "") + call X("scalaDocTags", s:comment, "", "") + call X("scalaEmptyString", s:green, "", "") + call X("scalaMultiLineString", s:green, "", "") + call X("scalaUnicode", s:orange, "", "") + call X("scalaString", s:green, "", "") + call X("scalaStringEscape", s:green, "", "") + call X("scalaSymbol", s:orange, "", "") + call X("scalaChar", s:orange, "", "") + call X("scalaXml", s:green, "", "") + call X("scalaConstructorSpecializer", s:yellow, "", "") + call X("scalaBackTick", s:blue, "", "") + + " Git + call X("diffAdded", s:green, "", "") + call X("diffRemoved", s:red, "", "") + call X("gitcommitSummary", "", "", "bold") + + " Delete Functions + delf X + delf rgb + delf colour + delf rgb_colour + delf rgb_level + delf rgb_number + delf grey_colour + delf grey_level + delf grey_number +endif diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/desert.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/desert.vim new file mode 100644 index 0000000..e43c61b --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/desert.vim @@ -0,0 +1,105 @@ +" Vim color file +" Maintainer: Hans Fugal +" Last Change: $Date: 2003/06/02 19:28:15 $ +" URL: http://hans.fugal.net/vim/colors/desert.vim + +" cool help screens +" :he group-name +" :he highlight-groups +" :he cterm-colors + +set background=dark +if version > 580 + " no guarantees for version 5.8 and below, but this makes it stop + " complaining + hi clear + if exists("syntax_on") + syntax reset + endif +endif +let g:colors_name="desert" + +hi Normal guifg=White guibg=grey20 + +" highlight groups +hi Cursor guibg=khaki guifg=slategrey +"hi CursorIM +"hi Directory +"hi DiffAdd +"hi DiffChange +"hi DiffDelete +"hi DiffText +"hi ErrorMsg +hi VertSplit guibg=#c2bfa5 guifg=grey50 gui=none +hi Folded guibg=grey30 guifg=gold +hi FoldColumn guibg=grey30 guifg=tan +hi IncSearch guifg=slategrey guibg=khaki +"hi LineNr +hi ModeMsg guifg=goldenrod +hi MoreMsg guifg=SeaGreen +hi NonText guifg=LightBlue guibg=grey30 +hi Question guifg=springgreen +hi Search guibg=peru guifg=wheat +hi SpecialKey guifg=yellowgreen +hi StatusLine guibg=#c2bfa5 guifg=black gui=none +hi StatusLineNC guibg=#c2bfa5 guifg=grey50 gui=none +hi Title guifg=indianred +hi Visual gui=none guifg=khaki guibg=olivedrab +"hi VisualNOS +hi WarningMsg guifg=salmon +"hi WildMenu +"hi Menu +"hi Scrollbar +"hi Tooltip + +" syntax highlighting groups +hi Comment guifg=SkyBlue +hi Constant guifg=#ffa0a0 +hi Identifier guifg=palegreen +hi Statement guifg=khaki +hi PreProc guifg=indianred +hi Type guifg=darkkhaki +hi Special guifg=navajowhite +"hi Underlined +hi Ignore guifg=grey40 +"hi Error +hi Todo guifg=orangered guibg=yellow2 + +" color terminal definitions +hi SpecialKey ctermfg=darkgreen +hi NonText cterm=bold ctermfg=darkblue +hi Directory ctermfg=darkcyan +hi ErrorMsg cterm=bold ctermfg=7 ctermbg=1 +hi IncSearch cterm=NONE ctermfg=yellow ctermbg=green +hi Search cterm=NONE ctermfg=grey ctermbg=blue +hi MoreMsg ctermfg=darkgreen +hi ModeMsg cterm=NONE ctermfg=brown +hi LineNr ctermfg=3 +hi Question ctermfg=green +hi StatusLine cterm=bold,reverse +hi StatusLineNC cterm=reverse +hi VertSplit cterm=reverse +hi Title ctermfg=5 +hi Visual cterm=reverse +hi VisualNOS cterm=bold,underline +hi WarningMsg ctermfg=1 +hi WildMenu ctermfg=0 ctermbg=3 +hi Folded ctermfg=darkgrey ctermbg=NONE +hi FoldColumn ctermfg=darkgrey ctermbg=NONE +hi DiffAdd ctermbg=4 +hi DiffChange ctermbg=5 +hi DiffDelete cterm=bold ctermfg=4 ctermbg=6 +hi DiffText cterm=bold ctermbg=1 +hi Comment ctermfg=darkcyan +hi Constant ctermfg=brown +hi Special ctermfg=5 +hi Identifier ctermfg=6 +hi Statement ctermfg=3 +hi PreProc ctermfg=5 +hi Type ctermfg=2 +hi Underlined cterm=underline ctermfg=5 +hi Ignore ctermfg=darkgrey +hi Error cterm=bold ctermfg=7 ctermbg=1 + + +"vim: sw=4 diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/desert256.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/desert256.vim new file mode 100644 index 0000000..7a97742 --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/desert256.vim @@ -0,0 +1,338 @@ +" Vim color file +" Maintainer: Henry So, Jr. + +" These are the colors of the "desert" theme by Hans Fugal with a few small +" modifications (namely that I lowered the intensity of the normal white and +" made the normal and nontext backgrounds black), modified to work with 88- +" and 256-color xterms. +" +" The original "desert" theme is available as part of the vim distribution or +" at http://hans.fugal.net/vim/colors/. +" +" The real feature of this color scheme, with a wink to the "inkpot" theme, is +" the programmatic approximation of the gui colors to the palettes of 88- and +" 256- color xterms. The functions that do this (folded away, for +" readability) are calibrated to the colors used for Thomas E. Dickey's xterm +" (version 200), which is available at http://dickey.his.com/xterm/xterm.html. +" +" I struggled with trying to parse the rgb.txt file to avoid the necessity of +" converting color names to #rrggbb form, but decided it was just not worth +" the effort. Maybe someone seeing this may decide otherwise... + +set background=dark +if version > 580 + " no guarantees for version 5.8 and below, but this makes it stop + " complaining + hi clear + if exists("syntax_on") + syntax reset + endif +endif +let g:colors_name="desert256" + +if has("gui_running") || &t_Co == 88 || &t_Co == 256 + " functions {{{ + " returns an approximate grey index for the given grey level + fun grey_number(x) + if &t_Co == 88 + if a:x < 23 + return 0 + elseif a:x < 69 + return 1 + elseif a:x < 103 + return 2 + elseif a:x < 127 + return 3 + elseif a:x < 150 + return 4 + elseif a:x < 173 + return 5 + elseif a:x < 196 + return 6 + elseif a:x < 219 + return 7 + elseif a:x < 243 + return 8 + else + return 9 + endif + else + if a:x < 14 + return 0 + else + let l:n = (a:x - 8) / 10 + let l:m = (a:x - 8) % 10 + if l:m < 5 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " returns the actual grey level represented by the grey index + fun grey_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 46 + elseif a:n == 2 + return 92 + elseif a:n == 3 + return 115 + elseif a:n == 4 + return 139 + elseif a:n == 5 + return 162 + elseif a:n == 6 + return 185 + elseif a:n == 7 + return 208 + elseif a:n == 8 + return 231 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 8 + (a:n * 10) + endif + endif + endfun + + " returns the palette index for the given grey index + fun grey_color(n) + if &t_Co == 88 + if a:n == 0 + return 16 + elseif a:n == 9 + return 79 + else + return 79 + a:n + endif + else + if a:n == 0 + return 16 + elseif a:n == 25 + return 231 + else + return 231 + a:n + endif + endif + endfun + + " returns an approximate color index for the given color level + fun rgb_number(x) + if &t_Co == 88 + if a:x < 69 + return 0 + elseif a:x < 172 + return 1 + elseif a:x < 230 + return 2 + else + return 3 + endif + else + if a:x < 75 + return 0 + else + let l:n = (a:x - 55) / 40 + let l:m = (a:x - 55) % 40 + if l:m < 20 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " returns the actual color level for the given color index + fun rgb_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 139 + elseif a:n == 2 + return 205 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 55 + (a:n * 40) + endif + endif + endfun + + " returns the palette index for the given R/G/B color indices + fun rgb_color(x, y, z) + if &t_Co == 88 + return 16 + (a:x * 16) + (a:y * 4) + a:z + else + return 16 + (a:x * 36) + (a:y * 6) + a:z + endif + endfun + + " returns the palette index to approximate the given R/G/B color levels + fun color(r, g, b) + " get the closest grey + let l:gx = grey_number(a:r) + let l:gy = grey_number(a:g) + let l:gz = grey_number(a:b) + + " get the closest color + let l:x = rgb_number(a:r) + let l:y = rgb_number(a:g) + let l:z = rgb_number(a:b) + + if l:gx == l:gy && l:gy == l:gz + " there are two possibilities + let l:dgr = grey_level(l:gx) - a:r + let l:dgg = grey_level(l:gy) - a:g + let l:dgb = grey_level(l:gz) - a:b + let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb) + let l:dr = rgb_level(l:gx) - a:r + let l:dg = rgb_level(l:gy) - a:g + let l:db = rgb_level(l:gz) - a:b + let l:drgb = (l:dr * l:dr) + (l:dg * l:dg) + (l:db * l:db) + if l:dgrey < l:drgb + " use the grey + return grey_color(l:gx) + else + " use the color + return rgb_color(l:x, l:y, l:z) + endif + else + " only one possibility + return rgb_color(l:x, l:y, l:z) + endif + endfun + + " returns the palette index to approximate the 'rrggbb' hex string + fun rgb(rgb) + let l:r = ("0x" . strpart(a:rgb, 0, 2)) + 0 + let l:g = ("0x" . strpart(a:rgb, 2, 2)) + 0 + let l:b = ("0x" . strpart(a:rgb, 4, 2)) + 0 + + return color(l:r, l:g, l:b) + endfun + + " sets the highlighting for the given group + fun X(group, fg, bg, attr) + if a:fg != "" + exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . rgb(a:fg) + endif + if a:bg != "" + exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . rgb(a:bg) + endif + if a:attr != "" + exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr + endif + endfun + " }}} + + call X("Normal", "cccccc", "000000", "") + + " highlight groups + call X("Cursor", "708090", "f0e68c", "") + "CursorIM + "Directory + "DiffAdd + "DiffChange + "DiffDelete + "DiffText + "ErrorMsg + call X("VertSplit", "c2bfa5", "7f7f7f", "reverse") + call X("Folded", "ffd700", "4d4d4d", "") + call X("FoldColumn", "d2b48c", "4d4d4d", "") + call X("IncSearch", "708090", "f0e68c", "") + "LineNr + call X("ModeMsg", "daa520", "", "") + call X("MoreMsg", "2e8b57", "", "") + call X("NonText", "addbe7", "000000", "bold") + call X("Question", "00ff7f", "", "") + call X("Search", "f5deb3", "cd853f", "") + call X("SpecialKey", "9acd32", "", "") + call X("StatusLine", "c2bfa5", "000000", "reverse") + call X("StatusLineNC", "c2bfa5", "7f7f7f", "reverse") + call X("Title", "cd5c5c", "", "") + call X("Visual", "6b8e23", "f0e68c", "reverse") + "VisualNOS + call X("WarningMsg", "fa8072", "", "") + "WildMenu + "Menu + "Scrollbar + "Tooltip + + " syntax highlighting groups + call X("Comment", "87ceeb", "", "") + call X("Constant", "ffa0a0", "", "") + call X("Identifier", "98fb98", "", "none") + call X("Statement", "f0e68c", "", "bold") + call X("PreProc", "cd5c5c", "", "") + call X("Type", "bdb76b", "", "bold") + call X("Special", "ffdead", "", "") + "Underlined + call X("Ignore", "666666", "", "") + "Error + call X("Todo", "ff4500", "eeee00", "") + + " delete functions {{{ + delf X + delf rgb + delf color + delf rgb_color + delf rgb_level + delf rgb_number + delf grey_color + delf grey_level + delf grey_number + " }}} +else + " color terminal definitions + hi SpecialKey ctermfg=darkgreen + hi NonText cterm=bold ctermfg=darkblue + hi Directory ctermfg=darkcyan + hi ErrorMsg cterm=bold ctermfg=7 ctermbg=1 + hi IncSearch cterm=NONE ctermfg=yellow ctermbg=green + hi Search cterm=NONE ctermfg=grey ctermbg=blue + hi MoreMsg ctermfg=darkgreen + hi ModeMsg cterm=NONE ctermfg=brown + hi LineNr ctermfg=3 + hi Question ctermfg=green + hi StatusLine cterm=bold,reverse + hi StatusLineNC cterm=reverse + hi VertSplit cterm=reverse + hi Title ctermfg=5 + hi Visual cterm=reverse + hi VisualNOS cterm=bold,underline + hi WarningMsg ctermfg=1 + hi WildMenu ctermfg=0 ctermbg=3 + hi Folded ctermfg=darkgrey ctermbg=NONE + hi FoldColumn ctermfg=darkgrey ctermbg=NONE + hi DiffAdd ctermbg=4 + hi DiffChange ctermbg=5 + hi DiffDelete cterm=bold ctermfg=4 ctermbg=6 + hi DiffText cterm=bold ctermbg=1 + hi Comment ctermfg=darkcyan + hi Constant ctermfg=brown + hi Special ctermfg=5 + hi Identifier ctermfg=6 + hi Statement ctermfg=3 + hi PreProc ctermfg=5 + hi Type ctermfg=2 + hi Underlined cterm=underline ctermfg=5 + hi Ignore ctermfg=darkgrey + hi Error cterm=bold ctermfg=7 ctermbg=1 +endif + +" vim: set fdl=0 fdm=marker: diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/greenisgood.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/greenisgood.vim new file mode 100644 index 0000000..2f9347b --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/greenisgood.vim @@ -0,0 +1,252 @@ +" Vim color scheme +" +" Name: greenisgood.vim +" Maintainer: Rafael Francischini +" License: MIT + +set background=dark + +hi clear +if exists('syntax_on') + syntax reset +endif + +let g:colors_name = 'greenisgood' + +let s:white = ['White', 15] +let s:black = ['#0e1111', 16] +let s:bgray = ['#181818', 233] +let s:lgray = ['LightGray', 255] +let s:cgray = ['#737373', 243] +let s:dgray = ['DarkGray', 248] +let s:sgreen = ['#326739', 121] +let s:yellow = ['Yellow', 226] +let s:red = ['#b6403a', 160] +let s:green = ['#478226', 28] +let s:xgreen = ['#326739', 29] + +let s:default_fg = s:lgray +let s:default_bg = s:black + +let s:italic = 'italic' +let s:bold = 'bold' +let s:underline = 'underline' +let s:none = 'NONE' + +let s:default_lst = [] +let s:default_str = '' + +if !exists("g:monochrome_italic_comments") + let g:monochrome_italic_comments = 0 +endif +let s:comment_attr = g:monochrome_italic_comments ? s:italic : s:none + +function! s:hi(...) + let group = a:1 + let fg = get(a:, 2, s:default_fg) + let bg = get(a:, 3, s:default_bg) + let attr = get(a:, 4, s:default_str) + + let cmd = ['hi', group] + + if fg != s:default_lst + call add(cmd, 'guifg='.fg[0]) + call add(cmd, 'ctermfg='.fg[1]) + endif + + if bg != s:default_lst + call add(cmd, 'guibg='.bg[0]) + call add(cmd, 'ctermbg='.bg[1]) + endif + + if attr != s:default_str + call add(cmd, 'gui='.attr) + call add(cmd, 'cterm='.attr) + endif + + exec join(cmd, ' ') +endfunction + + +" +" --- Vim interface ------------------------------------------------------------ +" + +call s:hi('Normal') +call s:hi('Cursor', s:black, s:lgray) +call s:hi('CursorLine', s:default_lst, s:bgray, s:none) +call s:hi('CursorLineNr', s:white, s:default_bg, s:bold) +call s:hi('ColorColumn', s:default_fg, s:bgray) +call s:hi('Search', s:white, s:xgreen) +call s:hi('Visual', s:white, s:xgreen) +call s:hi('ErrorMsg', s:white, s:red) + +" Tildes at the bottom of a buffer, etc. +call s:hi('NonText', s:dgray) + +" Folding. +call s:hi('FoldColumn', s:dgray) +call s:hi('Folded') + +" Line numbers gutter. +call s:hi('LineNr', s:dgray) + +" Small arrow used for tabs. +call s:hi('SpecialKey', s:sgreen, s:default_bg, s:bold) + +" File browsers. +call s:hi('Directory', s:white, s:default_bg, s:bold) + +" Help. +call s:hi('helpSpecial') +call s:hi('helpHyperTextJump', s:xgreen, s:default_bg, s:underline) +call s:hi('helpNote') + +" Popup menu. +call s:hi('Pmenu', s:white, s:xgreen) +call s:hi('PmenuSel', s:xgreen, s:white) + +" Notes. +call s:hi('Todo', s:black, s:yellow, s:bold) + + +" +" --- Programming languages ---------------------------------------------------- +" + +call s:hi('Statement', s:white, s:default_bg, s:bold) +call s:hi('PreProc', s:white, s:default_bg, s:bold) +call s:hi('String', s:sgreen) +call s:hi('Comment', s:cgray, s:default_bg, s:comment_attr) +call s:hi('Constant') +call s:hi('Type', s:white, s:default_bg, s:bold) +call s:hi('Function', s:white) +call s:hi('Identifier') +call s:hi('Special') +call s:hi('MatchParen', s:black, s:lgray) + + +" +" --- VimL --------------------------------------------------------------------- +" + +call s:hi('vimOption') +call s:hi('vimGroup') +call s:hi('vimHiClear') +call s:hi('vimHiGroup') +call s:hi('vimHiAttrib') +call s:hi('vimHiGui') +call s:hi('vimHiGuiFgBg') +call s:hi('vimHiCTerm') +call s:hi('vimHiCTermFgBg') +call s:hi('vimSynType') +hi link vimCommentTitle Comment + + +" +" --- Ruby --------------------------------------------------------------------- +" + +call s:hi('rubyConstant') +call s:hi('rubySharpBang', s:cgray) +call s:hi('rubyStringDelimiter', s:sgreen) +call s:hi('rubyStringEscape', s:sgreen) +call s:hi('rubyRegexpEscape', s:sgreen) +call s:hi('rubyRegexpAnchor', s:sgreen) +call s:hi('rubyRegexpSpecial', s:sgreen) + + +" +" --- Elixir ------------------------------------------------------------------- +" + +call s:hi('elixirAlias', s:default_fg, s:default_bg, s:none) +call s:hi('elixirDelimiter', s:sgreen) +call s:hi('elixirSelf', s:default_fg, s:default_bg, s:none) + +" For ||, ->, etc. +call s:hi('elixirOperator') + +" Module attributes like @doc or @type. +hi link elixirVariable Statement + +" While rendered as comments in other languages, docstrings are strings, +" experimental. +hi link elixirDocString String +hi link elixirDocTest String +hi link elixirStringDelimiter String + + +" +" --- Perl --------------------------------------------------------------------- +" + +call s:hi('perlSharpBang', s:cgray) +call s:hi('perlStringStartEnd', s:sgreen) +call s:hi('perlStringEscape', s:sgreen) +call s:hi('perlMatchStartEnd', s:sgreen) + + +" +" --- Python ------------------------------------------------------------------- +" + +call s:hi('pythonEscape', s:sgreen) + + +" +" --- JavaScript --------------------------------------------------------------- +" + +call s:hi('javaScriptFunction', s:white, s:default_bg, s:bold) + + +" +" --- Diffs -------------------------------------------------------------------- +" + +call s:hi('diffFile', s:cgray) +call s:hi('diffNewFile', s:cgray) +call s:hi('diffIndexLine', s:cgray) +call s:hi('diffLine', s:cgray) +call s:hi('diffSubname', s:cgray) +call s:hi('diffAdded', s:white, s:green) +call s:hi('diffRemoved', s:white, s:red) + + +" +" --- Markdown ----------------------------------------------------------------- +" + +call s:hi('Title', s:white, s:default_bg, s:bold) +call s:hi('markdownHeadingDelimiter', s:white, s:default_bg, s:bold) +call s:hi('markdownHeadingRule', s:white, s:default_bg, s:bold) +call s:hi('markdownLinkText', s:sgreen, s:default_bg, s:underline) + + +" +" --- vim-fugitive ------------------------------------------------------------- +" + +call s:hi('gitcommitComment', s:default_fg, s:default_bg, s:none) +call s:hi('gitcommitOnBranch', s:default_fg, s:default_bg, s:none) +call s:hi('gitcommitBranch', s:sgreen, s:default_bg, s:none) +call s:hi('gitcommitHeader', s:white, s:default_bg, s:bold) +call s:hi('gitcommitSelected', s:default_fg, s:default_bg, s:none) +call s:hi('gitcommitDiscarded', s:default_fg, s:default_bg, s:none) +call s:hi('gitcommitSelectedType', s:default_fg, s:default_bg, s:none) +call s:hi('gitcommitDiscardedType', s:default_fg, s:default_bg, s:none) + + +" +" --- NeoMake ------------------------------------------------------------------ +" + +call s:hi('NeomakeMessageSign') +call s:hi('NeomakeWarningSign', s:sgreen) +call s:hi('NeomakeErrorSign', s:yellow) +call s:hi('NeomakeInfoSign') +call s:hi('NeomakeError', s:yellow) +call s:hi('NeomakeInfo', s:default_fg, s:default_bg, s:bold) +call s:hi('NeomakeMessage') +call s:hi('NeomakeWarning', s:yellow) diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/minimalist.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/minimalist.vim new file mode 100644 index 0000000..f7e25ee --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/minimalist.vim @@ -0,0 +1,227 @@ +" Minimalist - A Material Color Scheme Darker +" +" Author: Diki Ananta +" Repository: https://github.com/dikiaap/minimalist +" Version: 1.6 +" License: MIT + +set background=dark +if version > 580 + hi clear + if exists("syntax_on") + syntax reset + endif +endif +set t_Co=256 +let g:colors_name = "minimalist" + +""""""""""""""""""""""" +" General +""""""""""""""""""""""" +hi ColorColumn ctermfg=NONE ctermbg=233 cterm=NONE guifg=NONE guibg=#121212 gui=NONE +hi Cursor ctermfg=234 ctermbg=255 cterm=NONE guifg=#1C1C1C guibg=#EEEEEE gui=NONE +hi CursorColumn ctermfg=NONE ctermbg=233 cterm=NONE guifg=NONE guibg=#121212 gui=NONE +hi CursorLine ctermfg=NONE ctermbg=233 cterm=NONE guifg=NONE guibg=#121212 gui=NONE +hi CursorLineNr ctermfg=59 ctermbg=233 cterm=NONE guifg=#5F5F5F guibg=#121212 gui=NONE +hi DiffAdd ctermfg=255 ctermbg=64 cterm=bold guifg=#EEEEEE guibg=#5F8700 gui=bold +hi DiffChange ctermfg=NONE ctermbg=NONE cterm=NONE guifg=NONE guibg=NONE gui=NONE +hi DiffDelete ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi DiffText ctermfg=255 ctermbg=24 cterm=bold guifg=#EEEEEE guibg=#005F87 gui=bold +hi Directory ctermfg=179 ctermbg=NONE cterm=NONE guifg=#D7AF5F guibg=NONE gui=NONE +hi ErrorMsg ctermfg=255 ctermbg=167 cterm=NONE guifg=#EEEEEE guibg=#D75F5F gui=NONE +hi FoldColumn ctermfg=117 ctermbg=239 cterm=NONE guifg=#87D7FF guibg=#4E4E4E gui=NONE +hi Folded ctermfg=242 ctermbg=234 cterm=NONE guifg=#666666 guibg=#1C1C1C gui=NONE +hi IncSearch ctermfg=234 ctermbg=75 cterm=NONE guifg=#1C1C1C guibg=#5FAFFF gui=NONE +hi LineNr ctermfg=59 ctermbg=234 cterm=NONE guifg=#5F5F5F guibg=#1C1C1C gui=NONE +hi MatchParen ctermfg=NONE ctermbg=NONE cterm=underline guifg=NONE guibg=NONE gui=underline +hi MoreMsg ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=NONE +hi NonText ctermfg=234 ctermbg=234 cterm=NONE guifg=#1C1C1C guibg=#1C1C1C gui=NONE +hi Normal ctermfg=255 ctermbg=234 cterm=NONE guifg=#EEEEEE guibg=#1C1C1C gui=NONE +hi Pmenu ctermfg=NONE ctermbg=NONE cterm=NONE guifg=NONE guibg=NONE gui=NONE +hi PmenuSel ctermfg=NONE ctermbg=59 cterm=NONE guifg=NONE guibg=#5F5F5F gui=NONE +hi Question ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=bold +hi Search ctermfg=NONE ctermbg=NONE cterm=underline guifg=NONE guibg=NONE gui=underline +hi SignColumn ctermfg=NONE ctermbg=237 cterm=NONE guifg=NONE guibg=#3A3A3A gui=NONE +hi StatusLine ctermfg=255 ctermbg=239 cterm=bold guifg=#EEEEEE guibg=#4E4E4E gui=bold +hi StatusLineNC ctermfg=255 ctermbg=239 cterm=NONE guifg=#EEEEEE guibg=#4E4E4E gui=NONE +hi Title ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=NONE +hi Underlined ctermfg=NONE ctermbg=NONE cterm=NONE guifg=NONE guibg=NONE gui=NONE +hi VertSplit ctermfg=239 ctermbg=239 cterm=NONE guifg=#4E4E4E guibg=#4E4E4E gui=NONE +hi Visual ctermfg=NONE ctermbg=236 cterm=NONE guifg=NONE guibg=#303030 gui=NONE +hi WarningMsg ctermfg=255 ctermbg=167 cterm=NONE guifg=#EEEEEE guibg=#D75F5F gui=NONE +hi WildMenu ctermfg=234 ctermbg=215 cterm=NONE guifg=#1C1C1C guibg=#FFAF5F gui=NONE +hi NERDTreeUp ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi NERDTreeDir ctermfg=251 ctermbg=NONE cterm=bold guifg=#C6C6C6 guibg=NONE gui=bold +hi NERDTreeDirSlash ctermfg=251 ctermbg=NONE cterm=NONE guifg=#C6C6C6 guibg=NONE gui=NONE +hi NERDTreeFile ctermfg=241 ctermbg=NONE cterm=NONE guifg=#606060 guibg=NONE gui=NONE +hi NERDTreeCWD ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi NERDTreeOpenable ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi NERDTreeClosable ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE + +""""""""""""""""""""""" +" Syntax Highlighting +""""""""""""""""""""""" +hi Boolean ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi Character ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi Comment ctermfg=240 ctermbg=NONE cterm=NONE guifg=#585858 guibg=NONE gui=NONE +hi Conditional ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi Constant ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi Define ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi Error ctermfg=255 ctermbg=167 cterm=NONE guifg=#EEEEEE guibg=#D75F5F gui=NONE +hi Float ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi Function ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi Identifier ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=italic +hi Keyword ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi Label ctermfg=186 ctermbg=NONE cterm=NONE guifg=#D7D787 guibg=NONE gui=NONE +hi Number ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi Operator ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi PreCondit ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi PreProc ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi Repeat ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi Special ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi SpecialComment ctermfg=242 ctermbg=NONE cterm=NONE guifg=#666666 guibg=NONE gui=NONE +hi SpecialKey ctermfg=59 ctermbg=237 cterm=NONE guifg=#5F5F5F guibg=#3A3A3A gui=NONE +hi SpellBad ctermfg=255 ctermbg=167 cterm=NONE guifg=#EEEEEE guibg=#D75F5F gui=undercurl +hi SpellCap ctermfg=255 ctermbg=74 cterm=NONE guifg=#EEEEEE guibg=#5FAFD7 gui=undercurl +hi SpellRare ctermfg=255 ctermbg=140 cterm=NONE guifg=#EEEEEE guibg=#AF87D7 gui=undercurl +hi SpellLocal ctermfg=255 ctermbg=14 cterm=NONE guifg=#EEEEEE guibg=#5FB3B3 gui=undercurl +hi Statement ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi StorageClass ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=italic +hi String ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=NONE +hi Structure ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=NONE +hi Tag ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi Todo ctermfg=74 ctermbg=234 cterm=inverse guifg=#5FAFD7 guibg=#1C1C1C gui=inverse,bold +hi Type ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE + +""""""""""""""""""""""" +" Supports +""""""""""""""""""""""" +hi cInclude ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE " C++ +hi cOperator ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi cppStatement ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi cssAttr ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE " CSS/CSS3 +hi cssAttrComma ctermfg=231 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=NONE +hi cssBoxProp ctermfg=152 ctermbg=NONE cterm=NONE guifg=#AFD7D7 guibg=NONE gui=NONE +hi cssBraces ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi cssClassName ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=NONE +hi cssColor ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi cssCommonAttr ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi cssFontAttr ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=NONE +hi cssFunctionName ctermfg=75 ctermbg=NONE cterm=NONE guifg=#5FAFFF guibg=NONE gui=NONE +hi cssNoise ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi cssProp ctermfg=152 ctermbg=NONE cterm=NONE guifg=#AFD7D7 guibg=NONE gui=NONE +hi cssPseudoClass ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi cssPseudoClassId ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi cssTagName ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi cssUIAttr ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi cssUnitDecorators ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi cssURL ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=italic +hi cssValueLength ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi cssValueNumber ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi cssVendor ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi htmlArg ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=NONE " HTML/HTML5 +hi htmlEndTag ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi htmlScriptTag ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi htmlSpecialChar ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=NONE +hi htmlSpecialTagName ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi htmlTag ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi htmlTagName ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi javaScriptBoolean ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE " JavaScript +hi javaScriptBraces ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi javaScriptConditional ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi javaScriptException ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi javaScriptFunction ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=italic +hi javaScriptGlobal ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=NONE +hi javaScriptIdentifier ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi javaScriptLabel ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi javaScriptMessage ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=NONE +hi javaScriptNull ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi javaScriptNumber ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi javaScriptOperator ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi javaScriptParens ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi javaScriptRegexpString ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi javaScriptRepeat ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi javaScriptSpecial ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi javaScriptStatement ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi markdownCode ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE " Markdown +hi markdownCodeBlock ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi markdownCodeDelimiter ctermfg=247 ctermbg=NONE cterm=NONE guifg=#9E9E9E guibg=NONE gui=NONE +hi markdownError ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi markdownHeadingDelimiter ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=NONE +hi markdownUrl ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi phpBoolean ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE " PHP +hi phpClass ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=NONE +hi phpClassDelimiter ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi phpClassExtends ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=NONE +hi phpClassImplements ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=NONE +hi phpCommentStar ctermfg=240 ctermbg=NONE cterm=NONE guifg=#585858 guibg=NONE gui=NONE +hi phpCommentTitle ctermfg=240 ctermbg=NONE cterm=NONE guifg=#585858 guibg=NONE gui=NONE +hi phpDocComment ctermfg=240 ctermbg=NONE cterm=NONE guifg=#585858 guibg=NONE gui=NONE +hi phpDocIdentifier ctermfg=240 ctermbg=NONE cterm=NONE guifg=#585858 guibg=NONE gui=NONE +hi phpDocParam ctermfg=240 ctermbg=NONE cterm=NONE guifg=#585858 guibg=NONE gui=NONE +hi phpDocTags ctermfg=242 ctermbg=NONE cterm=NONE guifg=#666666 guibg=NONE gui=NONE +hi phpFunction ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi phpFunctions ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi phpIdentifier ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=NONE +hi phpInclude ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi phpKeyword ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi phpMethod ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi phpNumber ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi phpOperator ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi phpParent ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi phpMemberSelector ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi phpMethodsVar ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=NONE +hi phpStaticClasses ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=NONE +hi phpStringDouble ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=NONE +hi phpStringDelimiter ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi phpStringSingle ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=NONE +hi phpSuperglobals ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=NONE +hi phpType ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi phpUseClass ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=NONE +hi phpVarSelector ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi pythonConditional ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE " Python +hi pythonDecorator ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi pythonException ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi pythonFunction ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi pythonInclude ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi pythonNumber ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi pythonOperator ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi pythonRepeat ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi pythonStatement ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi pythonTodo ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi rubyBlockParameter ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE " Ruby +hi rubyClass ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi rubyClassVariable ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi rubyConstant ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=italic +hi rubyControl ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi rubyException ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi rubyFunction ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi rubyInclude ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi rubyInstanceVariable ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi rubyInterpolationDelimiter ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi rubyOperator ctermfg=140 ctermbg=NONE cterm=NONE guifg=#AF87D7 guibg=NONE gui=NONE +hi rubyPseudoVariable ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi rubyRegexp ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi rubyRegexpDelimiter ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi rubyStringDelimiter ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi rubySymbol ctermfg=150 ctermbg=NONE cterm=NONE guifg=#AFD787 guibg=NONE gui=NONE +hi sassClass ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=NONE " Sass +hi sassClassChar ctermfg=215 ctermbg=NONE cterm=NONE guifg=#FFAF5F guibg=NONE gui=NONE +hi sassFunction ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=NONE +hi sassInclude ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi sassVariable ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi shFunction ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE " Shell +hi shOperator ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi shStatement ctermfg=74 ctermbg=NONE cterm=NONE guifg=#5FAFD7 guibg=NONE gui=NONE +hi shTestOpr ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi shVariable ctermfg=255 ctermbg=NONE cterm=NONE guifg=#EEEEEE guibg=NONE gui=NONE +hi xmlAttrib ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE " XML +hi xmlCdataStart ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi xmlCdataCdata ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi xmlEndTag ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE +hi xmlEntity ctermfg=173 ctermbg=NONE cterm=NONE guifg=#D7875F guibg=NONE gui=NONE +hi xmlEntityPunct ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi xmlEqual ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi xmlProcessingDelim ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi xmlTag ctermfg=117 ctermbg=NONE cterm=NONE guifg=#87D7FF guibg=NONE gui=NONE +hi xmlTagName ctermfg=167 ctermbg=NONE cterm=NONE guifg=#D75F5F guibg=NONE gui=NONE diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/moonfly.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/moonfly.vim new file mode 100644 index 0000000..0e46e28 --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/moonfly.vim @@ -0,0 +1,827 @@ +" Dark Vim/Neovim color scheme. +" +" Note: Inspiration taken from: monokai, sunburst xoria256 and One Dark themes. +" +" URL: github.com/bluz71/vim-moonfly-colors +" License: MIT (https://opensource.org/licenses/MIT) + +highlight clear +set background=dark +if exists('syntax_on') + syntax reset +endif +let g:colors_name='moonfly' + +" By default do not color the cursor. +let g:moonflyCursorColor = get(g:, 'moonflyCursorColor', 0) + +" By default use the moonfly color palette in the `:terminal` +let g:moonflyTerminalColors = get(g:, 'moonflyTerminalColors', 1) + +" By default do not underline matching parentheses. +let g:moonflyUnderlineMatchParen = get(g:, 'moonflyUnderlineMatchParen', 0) + +" By default do use undercurls in GUI versions of Vim, including terminal Vim +" with termguicolors set. +let g:moonflyUndercurls = get(g:, 'moonflyUndercurls', 1) + +" By default do use italics in GUI versions of Vim. +let g:moonflyItalics = get(g:, 'moonflyItalics', 1) + +" Background and foreground +let s:black = '#080808' " black = 232 +let s:white = '#c6c6c6' " white = 251 +" Variations of charcoal-grey +let s:grey0 = '#373c40' " grey0 = 0 +let s:grey253 = '#dadada' " grey253 = 253 +let s:grey249 = '#b2b2b2' " grey249 = 249 +let s:grey247 = '#9e9e9e' " grey247 = 247 +let s:grey246 = '#949494' " grey246 = 246 +let s:grey244 = '#808080' " grey244 = 244 +let s:grey241 = '#626262' " grey241 = 241 +let s:grey237 = '#3a3a3a' " grey237 = 237 +let s:grey236 = '#303030' " grey236 = 236 +let s:grey235 = '#262626' " grey235 = 235 +let s:grey234 = '#1c1c1c' " grey234 = 234 +let s:grey233 = '#121212' " grey233 = 233 +" Core theme colors +let s:wheat = '#bfbf97' " wheat = 11 +let s:yellow = '#e3c78a' " yellow = 3 +let s:orange = '#de935f' " orange = 7 +let s:coral = '#f09479' " coral = 8 +let s:lime = '#85dc85' " lime = 14 +let s:green = '#8cc85f' " green = 2 +let s:emerald = '#36c692' " emerald = 10 +let s:blue = '#80a0ff' " blue = 4 +let s:sky = '#78c2ff' " sky = 12 +let s:turquoise = '#79dac8' " turquoise = 6 +let s:purple = '#ae81ff' " purple = 13 +let s:cranberry = '#e2637f' " cranberry = 15 +let s:violet = '#d183e8' " violet = 5 +let s:crimson = '#ff5189' " crimson = 9 +let s:red = '#ff5454' " red = 1 + +" Specify the colors used by the inbuilt terminal of Neovim and Vim +if g:moonflyTerminalColors + if has('nvim') + let g:terminal_color_0 = '#373c40' + let g:terminal_color_1 = '#ff5454' + let g:terminal_color_2 = '#8cc85f' + let g:terminal_color_3 = '#e3c78a' + let g:terminal_color_4 = '#80a0ff' + let g:terminal_color_5 = '#d183e8' + let g:terminal_color_6 = '#79dac8' + let g:terminal_color_7 = '#b2b2b2' + let g:terminal_color_8 = '#949494' + let g:terminal_color_9 = '#ff5189' + let g:terminal_color_10 = '#36c692' + let g:terminal_color_11 = '#bfbf97' + let g:terminal_color_12 = '#78c2ff' + let g:terminal_color_13 = '#ae81ff' + let g:terminal_color_14 = '#85dc85' + let g:terminal_color_15 = '#dadada' + else + let g:terminal_ansi_colors = [ + \ '#373c40', '#ff5454', '#8cc85f', '#e3c78a', + \ '#80a0ff', '#d183e8', '#79dac8', '#b2b2b2', + \ '#949494', '#ff5189', '#36c692', '#bfbf97', + \ '#78c2ff', '#ae81ff', '#85dc85', '#dadada' + \] + endif +endif + +" Background and text +exec 'highlight Normal ctermbg=232 ctermfg=251 guibg=' . s:black . ' guifg=' . s:white + +" Color of mode text, -- INSERT -- +exec 'highlight ModeMsg ctermfg=247 guifg=' . s:grey247 . ' gui=none' + +" Comments +if g:moonflyItalics + exec 'highlight Comment ctermfg=246 guifg=' . s:grey246 . ' gui=italic' +else + exec 'highlight Comment ctermfg=246 guifg=' . s:grey246 +endif + +" Functions +exec 'highlight Function ctermfg=12 guifg=' . s:sky + +" Strings +exec 'highlight String ctermfg=11 guifg=' . s:wheat + +" Booleans +exec 'highlight Boolean ctermfg=8 guifg=' . s:coral + +" Identifiers +exec 'highlight Identifier ctermfg=6 cterm=none guifg=' . s:turquoise + +" Color of titles +exec 'highlight Title ctermfg=7 guifg=' . s:orange . ' gui=none' + +" const, static +exec 'highlight StorageClass ctermfg=8 guifg=' . s:coral + +" void, intptr_t +exec 'highlight Type ctermfg=10 guifg=' . s:emerald . ' gui=none' + +" Numbers +exec 'highlight Constant ctermfg=13 guifg=' . s:purple + +" Character constants +exec 'highlight Character ctermfg=13 guifg=' . s:purple + +" Exceptions +exec 'highlight Exception ctermfg=9 guifg=' . s:crimson + +" ifdef/endif +exec 'highlight PreProc ctermfg=15 guifg=' . s:cranberry + +" Status, split and tab lines +exec 'highlight StatusLine ctermbg=236 ctermfg=251 cterm=none guibg=' . s:grey236 . ' guifg=' . s:white . ' gui=none' +exec 'highlight StatusLineNC ctermbg=236 ctermfg=247 cterm=none guibg=' . s:grey236 . ' guifg=' . s:grey247 . ' gui=none' +exec 'highlight VertSplit ctermbg=236 ctermfg=236 cterm=none guibg=' . s:grey236 . ' guifg=' . s:grey236 . ' gui=none' +exec 'highlight Tabline ctermbg=236 ctermfg=247 cterm=none guibg=' . s:grey236 . ' guifg=' . s:grey247 . ' gui=none' +exec 'highlight TablineSel ctermbg=236 ctermfg=4 cterm=none guibg=' . s:grey236 . ' guifg=' . s:blue . ' gui=none' +exec 'highlight TablineFill ctermbg=236 ctermfg=236 cterm=none guibg=' . s:grey236 . ' guifg=' . s:grey236 . ' gui=none' +exec 'highlight StatusLineTerm ctermbg=236 ctermfg=251 cterm=none guibg=' . s:grey236 . ' guifg=' . s:white . ' gui=none' +exec 'highlight StatusLineTermNC ctermbg=236 ctermfg=247 cterm=none guibg=' . s:grey236 . ' guifg=' . s:grey247 . ' gui=none' + +" case in switch statement +exec 'highlight Label ctermfg=6 guifg=' . s:turquoise + +" end-of-line '$', end-of-file '~' +exec 'highlight NonText ctermfg=7 guifg=' . s:orange . ' gui=none' + +" sizeof +exec 'highlight Operator ctermfg=15 guifg=' . s:cranberry + +" for, while +exec 'highlight Repeat ctermfg=5 guifg=' . s:violet + +" Search +exec 'highlight Search ctermbg=bg ctermfg=8 cterm=reverse guibg=bg guifg=' . s:coral . ' gui=reverse' +exec 'highlight IncSearch ctermbg=bg ctermfg=3 guibg=bg guifg=' . s:yellow + +" '\n' sequences +exec 'highlight Special ctermfg=15 guifg=' . s:cranberry + +" if, else +exec 'highlight Statement ctermfg=5 guifg=' . s:violet . ' gui=none' + +" Visual selection +exec 'highlight Visual ctermbg=0 guibg=' . s:grey0 +exec 'highlight VisualNOS ctermbg=0 ctermfg=fg cterm=none guibg=' . s:grey0 . ' guifg=fg gui=none' +exec 'highlight VisualInDiff ctermbg=0 ctermfg=251 guibg=' . s:grey0 . ' guifg=' . s:white + +" Errors, warnings and whitespace-eol +exec 'highlight Error ctermbg=bg ctermfg=1 guibg=bg guifg=' . s:red +exec 'highlight ErrorMsg ctermbg=bg ctermfg=1 guibg=bg guifg=' . s:red +exec 'highlight WarningMsg ctermbg=bg ctermfg=7 guibg=bg guifg=' . s:orange + +" struct, union, enum, typedef +exec 'highlight Structure ctermfg=4 guifg=' . s:blue + +" Auto-text-completion menu +exec 'highlight Pmenu ctermbg=235 ctermfg=fg guibg=' . s:grey235 . ' guifg=fg' +exec 'highlight PmenuSel ctermbg=2 ctermfg=236 guibg=' . s:green . ' guifg=' . s:grey236 +exec 'highlight PmenuSbar ctermbg=235 guibg=' . s:grey235 +exec 'highlight PmenuThumb ctermbg=244 guibg=' . s:grey244 +exec 'highlight WildMenu ctermbg=2 ctermfg=236 guibg=' . s:green . ' guifg=' . s:grey236 + +" Spelling errors +if g:moonflyUndercurls + exec 'highlight SpellBad ctermbg=bg ctermfg=1 cterm=underline guibg=bg gui=undercurl guisp=' . s:red + exec 'highlight SpellCap ctermbg=bg ctermfg=4 cterm=underline guibg=bg gui=undercurl guisp=' . s:blue + exec 'highlight SpellRare ctermbg=bg ctermfg=3 cterm=underline guibg=bg gui=undercurl guisp=' . s:yellow + exec 'highlight SpellLocal ctermbg=bg ctermfg=12 cterm=underline guibg=bg gui=undercurl guisp=' . s:sky +else + exec 'highlight SpellBad ctermbg=bg ctermfg=1 cterm=underline guibg=bg guifg=' . s:red . ' gui=underline guisp=' . s:red + exec 'highlight SpellCap ctermbg=bg ctermfg=4 cterm=underline guibg=bg guifg=' . s:blue . ' gui=underline guisp=' . s:blue + exec 'highlight SpellRare ctermbg=bg ctermfg=3 cterm=underline guibg=bg guifg=' . s:yellow . ' gui=underline guisp=' . s:yellow + exec 'highlight SpellLocal ctermbg=bg ctermfg=12 cterm=underline guibg=bg guifg=' . s:sky . ' gui=underline guisp=' . s:sky +endif + +" Misc +exec 'highlight Question ctermfg=14 guifg=' . s:lime . ' gui=none' +exec 'highlight MoreMsg ctermfg=1 guifg=' . s:red . ' gui=none' +exec 'highlight LineNr ctermbg=bg ctermfg=241 guibg=bg guifg=' . s:grey241 +if g:moonflyCursorColor + exec 'highlight Cursor ctermfg=bg ctermbg=4 guifg=bg guibg=' . s:blue +else + exec 'highlight Cursor ctermfg=bg ctermbg=247 guifg=bg guibg=' . s:grey247 +endif +exec 'highlight lCursor ctermfg=bg ctermbg=247 guifg=bg guibg=' . s:grey247 +exec 'highlight CursorLineNr ctermbg=234 ctermfg=4 cterm=none guibg=' . s:grey234 . ' guifg=' . s:blue . ' gui=none' +exec 'highlight CursorColumn ctermbg=234 cterm=none guibg=' . s:grey234 +exec 'highlight CursorLine ctermbg=234 cterm=none guibg=' . s:grey234 +exec 'highlight Folded ctermbg=234 ctermfg=14 guibg=' . s:grey234 . ' guifg='. s:lime +exec 'highlight FoldColumn ctermbg=236 ctermfg=14 guibg=' . s:grey236 . ' guifg=' . s:lime +exec 'highlight SignColumn ctermbg=bg ctermfg=14 guibg=bg guifg=' . s:lime +exec 'highlight Todo ctermbg=3 ctermfg=bg guibg=' . s:yellow . ' guifg=bg' +exec 'highlight SpecialKey ctermbg=bg ctermfg=12 guibg=bg guifg=' . s:sky +if g:moonflyUnderlineMatchParen + exec 'highlight MatchParen ctermbg=bg ctermfg=8 cterm=underline guibg=bg guifg=' . s:coral . ' gui=underline' +else + exec 'highlight MatchParen ctermbg=bg ctermfg=8 guibg=bg guifg=' . s:coral +endif +exec 'highlight Ignore ctermfg=12 guifg=' . s:sky +exec 'highlight Underlined ctermfg=10 cterm=none guifg=' . s:emerald . ' gui=none' +exec 'highlight QuickFixLine ctermbg=237 cterm=none guibg=' . s:grey237 +exec 'highlight Delimiter ctermfg=251 guifg=' . s:white + +" Neovim only highlight groups +exec 'highlight Whitespace ctermfg=235 guifg=' . s:grey235 +exec 'highlight TermCursor ctermbg=247 ctermfg=bg cterm=none guibg=' . s:grey247 . ' guifg=bg gui=none' + +" Color column (after line 80) +exec 'highlight ColorColumn ctermbg=233 guibg=' . s:grey233 + +" Conceal color, as used by indentLine plugin +exec 'highlight Conceal ctermbg=bg ctermfg=235 guibg=bg guifg=' . s:grey235 + +" Custom moonfly highlight groups +exec 'highlight MoonflyReset ctermfg=fg guifg=fg' +exec 'highlight MoonflyWhite ctermfg=251 guifg=' . s:white +exec 'highlight MoonflyGrey0 ctermfg=0 guifg=' . s:grey0 +exec 'highlight MoonflyGrey247 ctermfg=247 guifg=' . s:grey247 +exec 'highlight MoonflyGrey246 ctermfg=246 guifg=' . s:grey246 +exec 'highlight MoonflyGrey241 ctermfg=241 guifg=' . s:grey241 +exec 'highlight MoonflyWheat ctermfg=11 guifg=' . s:wheat +exec 'highlight MoonflyYellow ctermfg=3 guifg=' . s:yellow +exec 'highlight MoonflyOrange ctermfg=7 guifg=' . s:orange +exec 'highlight MoonflyCoral ctermfg=8 guifg=' . s:coral +exec 'highlight MoonflyLime ctermfg=14 guifg=' . s:lime +exec 'highlight MoonflyGreen ctermfg=2 guifg=' . s:green +exec 'highlight MoonflyEmerald ctermfg=10 guifg=' . s:emerald +exec 'highlight MoonflyBlue ctermfg=4 guifg=' . s:blue +exec 'highlight MoonflySky ctermfg=12 guifg=' . s:sky +exec 'highlight MoonflyTurquoise ctermfg=6 guifg=' . s:turquoise +exec 'highlight MoonflyPurple ctermfg=13 guifg=' . s:purple +exec 'highlight MoonflyCranberry ctermfg=15 guifg=' . s:cranberry +exec 'highlight MoonflyViolet ctermfg=5 guifg=' . s:violet +exec 'highlight MoonflyCrimson ctermfg=9 guifg=' . s:crimson +exec 'highlight MoonflyRed ctermfg=1 guifg=' . s:red +exec 'highlight MoonflyWhiteAlert ctermbg=bg ctermfg=251 guibg=bg guifg=' . s:white +exec 'highlight MoonflyYellowAlert ctermbg=bg ctermfg=3 guibg=bg guifg=' . s:yellow +exec 'highlight MoonflyCoralAlert ctermbg=bg ctermfg=8 guibg=bg guifg=' . s:coral +exec 'highlight MoonflyEmeraldAlert ctermbg=bg ctermfg=10 guibg=bg guifg=' . s:emerald +exec 'highlight MoonflyPurpleAlert ctermbg=bg ctermfg=13 guibg=bg guifg=' . s:purple +exec 'highlight MoonflySkyAlert ctermbg=bg ctermfg=12 guibg=bg guifg=' . s:sky +exec 'highlight MoonflyRedAlert ctermbg=bg ctermfg=1 guibg=bg guifg=' . s:red + +" Neovim Treesitter +highlight! link TSAnnotation MoonflyViolet +highlight! link TSAttribute MoonflySky +highlight! link TSConstant MoonflyPurple +highlight! link TSConstBuiltin MoonflyGreen +highlight! link TSConstMacro MoonflyViolet +highlight! link TSConstructor MoonflyEmerald +highlight! link TSError MoonflyRed +highlight! link TSFuncBuiltin MoonflySky +highlight! link TSFuncMacro MoonflySky +highlight! link TSInclude MoonflyCranberry +highlight! link TSKeywordOperator MoonflyViolet +highlight! link TSNamespace MoonflyBlue +highlight! link TSParameter MoonflyWhite +highlight! link TSPunctSpecial MoonflyCranberry +highlight! link TSTag MoonflyBlue +highlight! link TSTagDelimiter MoonflyLime +highlight! link TSVariableBuiltin MoonflyLime + +" C/C++ +highlight! link cDefine MoonflyViolet +highlight! link cPreCondit MoonflyViolet +highlight! link cStatement MoonflyViolet +highlight! link cStructure MoonflyCoral +highlight! link cppAccess MoonflyLime +highlight! link cppCast MoonflyTurquoise +highlight! link cppCustomClass MoonflyTurquoise +highlight! link cppExceptions MoonflyLime +highlight! link cppModifier MoonflyViolet +highlight! link cppOperator MoonflyGreen +highlight! link cppStatement MoonflyTurquoise +highlight! link cppSTLconstant MoonflyBlue +highlight! link cppSTLnamespace MoonflyBlue +highlight! link cppStructure MoonflyViolet + +" C# +highlight! link csModifier MoonflyLime +highlight! link csPrecondit MoonflyViolet +highlight! link csStorage MoonflyViolet +highlight! link csXmlTag MoonflyBlue + +" Clojure +highlight! link clojureDefine MoonflyViolet +highlight! link clojureKeyword MoonflyPurple +highlight! link clojureMacro MoonflyOrange +highlight! link clojureParen MoonflyBlue +highlight! link clojureSpecial MoonflySky + +" CoffeeScript +highlight! link coffeeConstant MoonflyEmerald +highlight! link coffeeGlobal MoonflyTurquoise +highlight! link coffeeKeyword MoonflyOrange +highlight! link coffeeObjAssign MoonflySky +highlight! link coffeeSpecialIdent MoonflyLime +highlight! link coffeeSpecialVar MoonflyBlue +highlight! link coffeeStatement MoonflyCoral + +" Crystal +highlight! link crystalAccess MoonflyYellow +highlight! link crystalAttribute MoonflySky +highlight! link crystalBlockParameter MoonflyGreen +highlight! link crystalClass MoonflyOrange +highlight! link crystalDefine MoonflyViolet +highlight! link crystalExceptional MoonflyCoral +highlight! link crystalInstanceVariable MoonflyLime +highlight! link crystalModule MoonflyBlue +highlight! link crystalPseudoVariable MoonflyGreen +highlight! link crystalSharpBang MoonflyGrey247 +highlight! link crystalStringDelimiter MoonflyWheat + +" CSS +highlight! link cssIdentifier MoonflyYellow + +" Dart +highlight! link dartMetadata MoonflyLime +highlight! link dartStorageClass MoonflyViolet +highlight! link dartTypedef MoonflyViolet +highlight! link dartUserType MoonflyBlue + +" Elixir +highlight! link eelixirDelimiter MoonflyCrimson +highlight! link elixirBlockDefinition MoonflyViolet +highlight! link elixirDefine MoonflyViolet +highlight! link elixirDocTest MoonflyGrey247 +highlight! link elixirExUnitAssert MoonflyLime +highlight! link elixirExUnitMacro MoonflySky +highlight! link elixirKernelFunction MoonflyGreen +highlight! link elixirKeyword MoonflyOrange +highlight! link elixirModuleDefine MoonflyBlue +highlight! link elixirPrivateDefine MoonflyViolet +highlight! link elixirStringDelimiter MoonflyWheat +highlight! link elixirVariable MoonflyTurquoise + +" Elm +highlight! link elmLetBlockDefinition MoonflyLime +highlight! link elmTopLevelDecl MoonflyCoral +highlight! link elmType MoonflySky + +" Go +highlight! link goBuiltins MoonflySky +highlight! link goConditional MoonflyViolet +highlight! link goDeclType MoonflyGreen +highlight! link goDirective MoonflyCranberry +highlight! link goFloats MoonflyPurple +highlight! link goFunction MoonflyBlue +highlight! link goFunctionCall MoonflySky +highlight! link goImport MoonflyCranberry +highlight! link goLabel MoonflyYellow +highlight! link goMethod MoonflySky +highlight! link goMethodCall MoonflySky +highlight! link goPackage MoonflyViolet +highlight! link goSignedInts MoonflyEmerald +highlight! link goStruct MoonflyCoral +highlight! link goStructDef MoonflyCoral +highlight! link goUnsignedInts MoonflyPurple + +" Haskell +highlight! link haskellDecl MoonflyOrange +highlight! link haskellDeclKeyword MoonflyOrange +highlight! link haskellIdentifier MoonflyTurquoise +highlight! link haskellLet MoonflySky +highlight! link haskellOperators MoonflyCranberry +highlight! link haskellType MoonflySky +highlight! link haskellWhere MoonflyViolet + +" HTML +highlight! link htmlArg MoonflySky +highlight! link htmlLink MoonflyGreen +highlight! link htmlH1 MoonflyCranberry +highlight! link htmlH2 MoonflyOrange +highlight! link htmlEndTag MoonflyPurple +highlight! link htmlTag MoonflyLime +highlight! link htmlTagN MoonflyBlue +highlight! link htmlTagName MoonflyBlue +highlight! link htmlUnderline MoonflyWhite +if g:moonflyItalics + exec 'highlight htmlBoldItalic ctermbg=232 ctermfg=8 guibg=' . s:black . ' guifg=' . s:coral . ' gui=italic' + exec 'highlight htmlBoldUnderlineItalic ctermbg=232 ctermfg=8 guibg=' . s:black . ' guifg=' . s:coral . ' gui=italic' + exec 'highlight htmlItalic ctermfg=247 guifg=' . s:grey247 . ' gui=italic' + exec 'highlight htmlUnderlineItalic ctermbg=232 ctermfg=247 guibg=' . s:black . ' guifg=' . s:grey247 . ' gui=italic' +else + exec 'highlight htmlBoldItalic ctermbg=232 ctermfg=8 cterm=none guibg=' . s:black . ' guifg=' . s:coral ' gui=none' + exec 'highlight htmlBoldUnderlineItalic ctermbg=232 ctermfg=8 guibg=' . s:black . ' guifg=' . s:coral + exec 'highlight htmlItalic ctermfg=247 cterm=none guifg=' . s:grey247 ' gui=none' + exec 'highlight htmlUnderlineItalic ctermbg=232 ctermfg=247 guibg=' . s:black . ' guifg=' . s:grey247 +endif + +" Java +highlight! link javaAnnotation MoonflyLime +highlight! link javaBraces MoonflyWhite +highlight! link javaClassDecl MoonflyYellow +highlight! link javaCommentTitle MoonflyGrey247 +highlight! link javaConstant MoonflySky +highlight! link javaDebug MoonflySky +highlight! link javaMethodDecl MoonflyYellow +highlight! link javaOperator MoonflyCrimson +highlight! link javaScopeDecl MoonflyViolet +highlight! link javaStatement MoonflyTurquoise + +" JavaScript, 'pangloss/vim-javascript' plugin +highlight! link jsClassDefinition MoonflyEmerald +highlight! link jsClassKeyword MoonflyOrange +highlight! link jsFrom MoonflyCoral +highlight! link jsFuncBlock MoonflyTurquoise +highlight! link jsFuncCall MoonflySky +highlight! link jsFunction MoonflyLime +highlight! link jsGlobalObjects MoonflyEmerald +highlight! link jsModuleAs MoonflyCoral +highlight! link jsObjectKey MoonflySky +highlight! link jsObjectValue MoonflyEmerald +highlight! link jsOperator MoonflyViolet +highlight! link jsStorageClass MoonflyLime +highlight! link jsTemplateBraces MoonflyCranberry +highlight! link jsTemplateExpression MoonflyTurquoise +highlight! link jsThis MoonflyGreen + +" JSX, 'MaxMEllon/vim-jsx-pretty' plugin +highlight! link jsxAttrib MoonflyLime +highlight! link jsxClosePunct MoonflyPurple +highlight! link jsxComponentName MoonflyBlue +highlight! link jsxOpenPunct MoonflyLime +highlight! link jsxTagName MoonflySky + +" Lua +highlight! link luaBraces MoonflyCranberry +highlight! link luaBuiltin MoonflyGreen +highlight! link luaFuncCall MoonflySky +highlight! link luaSpecialTable MoonflySky + +" Markdown, 'tpope/vim-markdown' plugin +highlight! link markdownBold MoonflyYellow +highlight! link markdownCode MoonflyWheat +highlight! link markdownCodeDelimiter MoonflyWheat +highlight! link markdownError NormalNC +highlight! link markdownH1 MoonflyOrange +highlight! link markdownUrl MoonflyPurple + +" Markdown, 'plasticboy/vim-markdown' plugin +highlight! link mkdDelimiter MoonflyWhite +highlight! link mkdLineBreak NormalNC +highlight! link mkdListItem MoonflyBlue +highlight! link mkdURL MoonflyPurple + +" PHP +highlight! link phpClass MoonflyEmerald +highlight! link phpClasses MoonflyBlue +highlight! link phpFunction MoonflySky +highlight! link phpParent MoonflyReset +highlight! link phpType MoonflyViolet + +" PureScript +highlight! link purescriptClass MoonflyOrange +highlight! link purescriptModuleParams MoonflyCoral + +" Python +highlight! link pythonBuiltin MoonflyBlue +highlight! link pythonClassVar MoonflyGreen +highlight! link pythonCoding MoonflySky +highlight! link pythonImport MoonflyCranberry +highlight! link pythonOperator MoonflyViolet +highlight! link pythonRun MoonflySky +highlight! link pythonStatement MoonflyViolet + +" Ruby +exec 'highlight rspecGroupMethods ctermfg=12 guifg=' . s:sky +highlight! link erubyDelimiter MoonflyCrimson +highlight! link rubyAccess MoonflyYellow +highlight! link rubyAssertion MoonflySky +highlight! link rubyAttribute MoonflySky +highlight! link rubyBlockParameter MoonflyGreen +highlight! link rubyCallback MoonflySky +highlight! link rubyClass MoonflyOrange +highlight! link rubyDefine MoonflyViolet +highlight! link rubyEntities MoonflySky +highlight! link rubyExceptional MoonflyCoral +highlight! link rubyGemfileMethod MoonflySky +highlight! link rubyInstanceVariable MoonflyTurquoise +highlight! link rubyInterpolationDelimiter MoonflyCranberry +highlight! link rubyMacro MoonflySky +highlight! link rubyModule MoonflyBlue +highlight! link rubyPseudoVariable MoonflyGreen +highlight! link rubyResponse MoonflySky +highlight! link rubyRoute MoonflySky +highlight! link rubySharpBang MoonflyGrey247 +highlight! link rubyStringDelimiter MoonflyWheat + +" Rust +highlight! link rustAssert MoonflyGreen +highlight! link rustAttribute MoonflyReset +highlight! link rustCharacterInvalid MoonflyCranberry +highlight! link rustCharacterInvalidUnicode MoonflyCranberry +highlight! link rustCommentBlockDoc MoonflyGrey247 +highlight! link rustCommentBlockDocError MoonflyGrey247 +highlight! link rustCommentLineDoc MoonflyGrey247 +highlight! link rustCommentLineDocError MoonflyGrey247 +highlight! link rustConstant MoonflyOrange +highlight! link rustDerive MoonflyGreen +highlight! link rustEscapeError MoonflyCranberry +highlight! link rustFuncName MoonflyBlue +highlight! link rustIdentifier MoonflyBlue +highlight! link rustInvalidBareKeyword MoonflyCranberry +highlight! link rustKeyword MoonflyViolet +highlight! link rustLifetime MoonflyViolet +highlight! link rustMacro MoonflyGreen +highlight! link rustMacroVariable MoonflyViolet +highlight! link rustModPath MoonflyBlue +highlight! link rustObsoleteExternMod MoonflyCranberry +highlight! link rustObsoleteStorage MoonflyCranberry +highlight! link rustReservedKeyword MoonflyCranberry +highlight! link rustSelf MoonflyTurquoise +highlight! link rustSigil MoonflyTurquoise +highlight! link rustStorage MoonflyViolet +highlight! link rustStructure MoonflyViolet +highlight! link rustTrait MoonflyEmerald +highlight! link rustType MoonflyEmerald + +" Scala, note link highlighting does not work (I don't know why) +exec 'highlight scalaCapitalWord ctermfg=4 guifg=' . s:blue +exec 'highlight scalaCommentCodeBlock ctermfg=247 guifg=' . s:grey247 +exec 'highlight scalaInstanceDeclaration ctermfg=6 guifg=' . s:turquoise +exec 'highlight scalaKeywordModifier ctermfg=14 guifg=' . s:lime +exec 'highlight scalaSpecial ctermfg=9 guifg=' . s:crimson + +" Shell scripts +highlight! link shAlias MoonflyTurquoise +highlight! link shCommandSub MoonflyReset +highlight! link shLoop MoonflyViolet +highlight! link shSetList MoonflyTurquoise +highlight! link shShellVariables MoonflyLime +highlight! link shStatement MoonflyReset +highlight! link shVariable MoonflyTurquoise + +" TypeScript (leafgarland/typescript-vim) +highlight! link typescriptDOMObjects MoonflyBlue +highlight! link typescriptFuncComma MoonflyWhite +highlight! link typescriptFuncKeyword MoonflyLime +highlight! link typescriptGlobalObjects MoonflyBlue +highlight! link typescriptIdentifier MoonflyGreen +highlight! link typescriptNull MoonflyGreen +highlight! link typescriptOpSymbols MoonflyViolet +highlight! link typescriptOperator MoonflyCrimson +highlight! link typescriptParens MoonflyWhite +highlight! link typescriptReserved MoonflyViolet +highlight! link typescriptStorageClass MoonflyLime + +" TypeScript (HerringtonDarkholme/yats.vim) +highlight! link typeScriptModule MoonflyBlue +highlight! link typescriptAbstract MoonflyCoral +highlight! link typescriptArrayMethod MoonflySky +highlight! link typescriptArrowFuncArg MoonflyWhite +highlight! link typescriptBOM MoonflyEmerald +highlight! link typescriptBOMHistoryMethod MoonflySky +highlight! link typescriptBOMLocationMethod MoonflySky +highlight! link typescriptBOMWindowProp MoonflyGreen +highlight! link typescriptBraces MoonflyWhite +highlight! link typescriptCall MoonflyWhite +highlight! link typescriptClassHeritage MoonflyEmerald +highlight! link typescriptClassKeyword MoonflyOrange +highlight! link typescriptClassName MoonflyEmerald +highlight! link typescriptDecorator MoonflyLime +highlight! link typescriptDOMDocMethod MoonflySky +highlight! link typescriptDOMEventTargetMethod MoonflySky +highlight! link typescriptDOMNodeMethod MoonflySky +highlight! link typescriptExceptions MoonflyCrimson +highlight! link typescriptFuncType MoonflyWhite +highlight! link typescriptMathStaticMethod MoonflySky +highlight! link typescriptMethodAccessor MoonflyViolet +highlight! link typescriptObjectLabel MoonflySky +highlight! link typescriptParamImpl MoonflyWhite +highlight! link typescriptStringMethod MoonflySky +highlight! link typescriptTry MoonflyCrimson +highlight! link typescriptVariable MoonflyLime +highlight! link typescriptXHRMethod MoonflySky + +" Vimscript +highlight! link vimBracket MoonflySky +highlight! link vimCommand MoonflyOrange +highlight! link vimCommentTitle MoonflyViolet +highlight! link vimEnvvar MoonflyCrimson +highlight! link vimFuncName MoonflySky +highlight! link vimFuncSID MoonflySky +highlight! link vimFunction MoonflySky +highlight! link vimNotation MoonflySky +highlight! link vimOption MoonflyEmerald +highlight! link vimParenSep MoonflyWhite +highlight! link vimSep MoonflyWhite +highlight! link vimUserFunc MoonflySky + +" XML +highlight! link xmlAttrib MoonflyLime +highlight! link xmlEndTag MoonflyBlue +highlight! link xmlTag MoonflyLime +highlight! link xmlTagName MoonflyBlue + +" Git commits +highlight! link gitCommitBranch MoonflySky +highlight! link gitCommitDiscardedFile MoonflyCrimson +highlight! link gitCommitDiscardedType MoonflySky +highlight! link gitCommitHeader MoonflyPurple +highlight! link gitCommitSelectedFile MoonflyEmerald +highlight! link gitCommitSelectedType MoonflySky +highlight! link gitCommitUntrackedFile MoonflyCranberry +highlight! link gitEmail MoonflyBlue + +" Git commit diffs +highlight! link diffAdded MoonflyGreen +highlight! link diffChanged MoonflyCrimson +highlight! link diffIndexLine MoonflyCrimson +highlight! link diffLine MoonflySky +highlight! link diffRemoved MoonflyRed +highlight! link diffSubname MoonflySky + +" Tagbar plugin +highlight! link TagbarFoldIcon MoonflyGrey247 +highlight! link TagbarVisibilityPublic MoonflyLime +highlight! link TagbarVisibilityProtected MoonflyLime +highlight! link TagbarVisibilityPrivate MoonflyLime +highlight! link TagbarKind MoonflyEmerald + +" NERDTree plugin +highlight! link NERDTreeClosable MoonflyGreen +highlight! link NERDTreeCWD MoonflyPurple +highlight! link NERDTreeDir MoonflySky +highlight! link NERDTreeDirSlash MoonflyCranberry +highlight! link NERDTreeExecFile MoonflyWheat +highlight! link NERDTreeFile MoonflyWhite +highlight! link NERDTreeHelp MoonflyGrey247 +highlight! link NERDTreeLinkDir MoonflyBlue +highlight! link NERDTreeLinkFile MoonflyBlue +highlight! link NERDTreeLinkTarget MoonflyTurquoise +highlight! link NERDTreeOpenable MoonflyGreen +highlight! link NERDTreePart MoonflyGrey0 +highlight! link NERDTreePartFile MoonflyGrey0 +highlight! link NERDTreeUp MoonflyBlue + +" NERDTree Git plugin +highlight! link NERDTreeGitStatusDirDirty MoonflyWheat +highlight! link NERDTreeGitStatusModified MoonflyCrimson +highlight! link NERDTreeGitStatusRenamed MoonflySky +highlight! link NERDTreeGitStatusStaged MoonflySky +highlight! link NERDTreeGitStatusUntracked MoonflyRed + +" vimfiler plugin +highlight! link vimfilerClosedFile MoonflyBlue +highlight! link vimfilerMarkedFile MoonflyOrange +highlight! link vimfilerNonMark MoonflyGreen +highlight! link vimfilerNormalFile MoonflyWhite +highlight! link vimfilerOpenedFile MoonflyBlue +highlight! link vimfilerROFile MoonflyGrey246 + +" fern.vim plugin +highlight! link FernBranchSymbol MoonflyGreen +highlight! link FernBranchText MoonflyBlue +highlight! link FernMarkedLine MoonflyCoral +highlight! link FernMarkedText MoonflyCoral +highlight! link FernRootSymbol MoonflyPurple +highlight! link FernRootText MoonflyPurple + +" fern-git-status.vim plugin +highlight! link FernGitStatusBracket MoonflyGrey246 +highlight! link FernGitStatusIndex MoonflyEmerald +highlight! link FernGitStatusWorktree MoonflyCrimson + +" Misc stylings +highlight! link bufExplorerHelp MoonflyGrey247 +highlight! link bufExplorerSortBy MoonflyGrey247 +highlight! link CleverFDefaultLabel MoonflyCrimson +highlight! link CtrlPMatch MoonflyPurple +highlight! link Directory MoonflyEmerald +highlight! link HighlightedyankRegion MoonflyGrey0 +highlight! link jsonKeyword MoonflySky +highlight! link jsonQuote MoonflyWhite +highlight! link netrwClassify MoonflyCranberry +highlight! link netrwDir MoonflySky +highlight! link netrwExe MoonflyWheat +highlight! link tagName MoonflyTurquoise +highlight! link Cheat40Header MoonflyBlue +highlight! link Beacon MoonflyWhite +if g:moonflyUnderlineMatchParen + exec 'highlight MatchWord cterm=underline gui=underline guisp=' . s:coral +else + highlight! link MatchWord MoonflyCoral +endif +exec 'highlight snipLeadingSpaces ctermbg=bg ctermfg=fg guibg=bg guifg=fg' +exec 'highlight MatchWordCur ctermbg=bg guibg=bg' + +" vimdiff/nvim -d +exec 'highlight DiffAdd ctermbg=10 ctermfg=bg guibg=' . s:emerald . ' guifg=bg' +exec 'highlight DiffChange ctermbg=236 guibg=' . s:grey236 +exec 'highlight DiffDelete ctermbg=236 ctermfg=9 guibg=' . s:grey236 . ' guifg=' . s:crimson ' gui=none' +exec 'highlight DiffText ctermbg=4 ctermfg=bg guibg=' . s:blue . ' guifg=bg gui=none' + +" Neomake plugin +if g:moonflyUndercurls + exec 'highlight NeomakeError ctermbg=bg guibg=bg gui=undercurl guisp=' . s:red + exec 'highlight NeomakeWarning ctermbg=bg guibg=bg gui=undercurl guisp=' . s:yellow + exec 'highlight NeomakeInfo ctermbg=bg guibg=bg gui=undercurl guisp=' . s:sky + exec 'highlight NeomakeMessage ctermbg=bg guibg=bg gui=undercurl guisp=' . s:white +else + exec 'highlight NeomakeError ctermbg=bg guibg=bg' + exec 'highlight NeomakeWarning ctermbg=bg guibg=bg' + exec 'highlight NeomakeInfo ctermbg=bg guibg=bg' + exec 'highlight NeomakeMessage ctermbg=bg guibg=bg' +endif + +highlight! link NeomakeErrorSign MoonflyRedAlert +highlight! link NeomakeWarningSign MoonflyYellowAlert +highlight! link NeomakeInfoSign MoonflySkyAlert +highlight! link NeomakeMessageSign MoonflyWhiteAlert + +" ALE plugin +if g:moonflyUndercurls + exec 'highlight ALEError ctermbg=bg guibg=bg gui=undercurl guisp=' . s:red + exec 'highlight ALEWarning ctermbg=bg guibg=bg gui=undercurl guisp=' . s:yellow + exec 'highlight ALEInfo ctermbg=bg guibg=bg gui=undercurl guisp=' . s:sky +else + exec 'highlight ALEError ctermbg=bg guibg=bg' + exec 'highlight ALEWarning ctermbg=bg guibg=bg' + exec 'highlight ALEInfo ctermbg=bg guibg=bg' +endif +highlight! link ALEVirtualTextError MoonflyGrey241 +highlight! link ALEErrorSign MoonflyRedAlert +highlight! link ALEVirtualTextWarning MoonflyGrey241 +highlight! link ALEWarningSign MoonflyYellowAlert +highlight! link ALEVirtualTextInfo MoonflyGrey241 +highlight! link ALEInfoSign MoonflySkyAlert + +" Neovim LSP diagnostics +if g:moonflyUndercurls + exec 'highlight LspDiagnosticsUnderlineError ctermbg=bg guibg=bg gui=undercurl guisp=' . s:red + exec 'highlight LspDiagnosticsUnderlineWarning ctermbg=bg guibg=bg gui=undercurl guisp=' . s:yellow + exec 'highlight LspDiagnosticsUnderlineInformation ctermbg=bg guibg=bg gui=undercurl guisp=' . s:sky + exec 'highlight LspDiagnosticsUnderlineHint ctermbg=bg guibg=bg gui=undercurl guisp=' . s:white +else + exec 'highlight LspDiagnosticsUnderlineError ctermbg=bg guibg=bg gui=underline guisp=' . s:red + exec 'highlight LspDiagnosticsUnderlineWarning ctermbg=bg guibg=bg gui=underline guisp=' . s:blue + exec 'highlight LspDiagnosticsUnderlineInformation ctermbg=bg guibg=bg gui=underline guisp=' . s:yellow + exec 'highlight LspDiagnosticsUnderlineHint ctermbg=bg guibg=bg gui=underline guisp=' . s:sky +endif +highlight! link LspDiagnosticsVirtualTextError MoonflyGrey241 +highlight! link LspDiagnosticsSignError MoonflyRedAlert +highlight! link LspDiagnosticsFloatingError MoonflyRed +highlight! link LspDiagnosticsVirtualTextWarning MoonflyGrey241 +highlight! link LspDiagnosticsSignWarning MoonflyYellowAlert +highlight! link LspDiagnosticsFloatingWarning MoonflyYellow +highlight! link LspDiagnosticsVirtualTextInformation MoonflyGrey241 +highlight! link LspDiagnosticsSignInformation MoonflySkyAlert +highlight! link LspDiagnosticsFloatingInformation MoonflySky +highlight! link LspDiagnosticsVirtualTextHint MoonflyGrey241 +highlight! link LspDiagnosticsSignHint MoonflyWhiteAlert +highlight! link LspDiagnosticsFloatingHint MoonflyWhite + +" GitGutter plugin +highlight! link GitGutterAdd MoonflyEmeraldAlert +highlight! link GitGutterChange MoonflyPurpleAlert +highlight! link GitGutterChangeDelete MoonflyCoralAlert +highlight! link GitGutterDelete MoonflyRedAlert + +" Signify plugin +highlight! link SignifySignAdd MoonflyEmeraldAlert +highlight! link SignifySignChange MoonflyPurpleAlert +highlight! link SignifySignDelete MoonflyRedAlert + +" FZF plugin +exec 'highlight fzf1 ctermfg=9 ctermbg=236 guifg=' . s:crimson . ' guibg=' . s:grey236 +exec 'highlight fzf2 ctermfg=111 ctermbg=236 guifg=' . s:blue . ' guibg=' . s:grey236 +exec 'highlight fzf3 ctermfg=10 ctermbg=236 guifg=' . s:emerald . ' guibg=' . s:grey236 +exec 'highlight fzfNormal ctermfg=249 guifg=' . s:grey249 +exec 'highlight fzfFgPlus ctermfg=253 guifg=' . s:grey253 +exec 'highlight fzfBorder ctermfg=236 guifg=' . s:grey236 +let g:fzf_colors = { + \ 'fg': ['fg', 'fzfNormal'], + \ 'bg': ['bg', 'Normal'], + \ 'hl': ['fg', 'Number'], + \ 'fg+': ['fg', 'fzfFgPlus'], + \ 'bg+': ['bg', 'Pmenu'], + \ 'hl+': ['fg', 'Number'], + \ 'info': ['fg', 'String'], + \ 'border': ['fg', 'fzfBorder'], + \ 'prompt': ['fg', 'fzf2'], + \ 'pointer': ['fg', 'Exception'], + \ 'marker': ['fg', 'StorageClass'], + \ 'spinner': ['fg', 'Type'], + \ 'header': ['fg', 'CursorLineNr'] + \} + +" barbar.nvim plugin +exec 'highlight BufferCurrent ctermbg=234 ctermfg=251 guibg=' . s:grey234 . ' guifg=' . s:white +exec 'highlight BufferCurrentMod ctermbg=234 ctermfg=11 guibg=' . s:grey234 . ' guifg=' . s:wheat +exec 'highlight BufferCurrentSign ctermbg=234 ctermfg=4 guibg=' . s:grey234 . ' guifg=' . s:blue +exec 'highlight BufferVisible ctermbg=234 ctermfg=246 guibg=' . s:grey234 . ' guifg=' . s:grey246 +exec 'highlight BufferVisibleMod ctermbg=234 ctermfg=11 guibg=' . s:grey234 . ' guifg=' . s:wheat +exec 'highlight BufferVisibleSign ctermbg=234 ctermfg=246 guibg=' . s:grey234 . ' guifg=' . s:grey246 +exec 'highlight BufferInactive ctermbg=236 ctermfg=246 guibg=' . s:grey236 . ' guifg=' . s:grey246 +exec 'highlight BufferInactiveMod ctermbg=236 ctermfg=11 guibg=' . s:grey236 . ' guifg=' . s:wheat +exec 'highlight BufferInactiveSign ctermbg=236 ctermfg=247 guibg=' . s:grey236 . ' guifg=' . s:grey247 diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/odyssey.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/odyssey.vim new file mode 100644 index 0000000..a1f7bc0 --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/odyssey.vim @@ -0,0 +1,358 @@ +" __ +" ____ ____/ /__ __ _____ _____ ___ __ __ +" / __ \ / __ // / / // ___// ___// _ \ / / / / +" / /_/ // /_/ // /_/ /(__ )(__ )/ __// /_/ / +" \____/ \__,_/ \__, //____//____/ \___/ \__, / +" /____/ /____/ +" +" You terrible man, foxy, ingenious, never tired of twists and tricks +" +" Note: Odyssey is a dark green colorscheme for Vim. It main color, the one of +" its background, is an approximation of a darker shade of light sea green. +" This link to the sea is the reason why that colorscheme is named after the +" Odyssey. +" +" Maintainer: Ludovic Koenig +" Version: 0.6.0 +" Since: 0.1.0 +" License: MIT +" +" Prelude {{{ + +if !has('gui_running') + if !(has('termguicolors') && &termguicolors) && &t_Co != 256 + finish + endif +endif + +if v:version > 580 + set background=dark + highlight clear + if exists('syntax_on') + syntax reset + endif +else + finish +endif + +let g:colors_name = 'odyssey' + +" }}} +" Color Helpers {{{ + +function! s:hsv2rgb(hue, saturation, value) + let l:s = a:saturation / 100.0 + let l:v = a:value / 100.0 + + let l:c = l:v * l:s + let l:h = a:hue / 60.0 + let l:x = l:c * (1.0 - abs(fmod(l:h, 2) - 1.0)) + + if 0 <= l:h && l:h <= 1 + let l:l = [l:c, l:x, 0.0] + elseif 1 < l:h && l:h <= 2 + let l:l = [l:x, l:c, 0.0] + elseif 2 < l:h && l:h <= 3 + let l:l = [0.0, l:c, l:x] + elseif 3 < l:h && l:h <= 4 + let l:l = [0.0, l:x, l:c] + elseif 4 < l:h && l:h <= 5 + let l:l = [l:x, 0.0, l:c] + elseif 5 < l:h && l:h <= 6 + let l:l = [l:c, 0.0, l:x] + endif + + let l:m = l:v - l:c + + let l:l = [l:l[0] + l:m, l:l[1] + l:m, l:l[2] + l:m] + let l:l = [l:l[0] * 255, l:l[1] * 255, l:l[2] * 255] + let l:l = [round(l:l[0]), round(l:l[1]), round(l:l[2])] + let l:l = [float2nr(l:l[0]), float2nr(l:l[1]), float2nr(l:l[2])] + + return l:l +endfunction + +function! s:rgb2hex(rgb) + let l:f = "%02x" + return printf(l:f, a:rgb[0]) . printf(l:f, a:rgb[1]) . printf(l:f, a:rgb[2]) +endfunction + +function! s:rgb2short(rgb) + " 216 colors + 24 greys = 240 total ( - 16 because ignoring system color ) + function! s:xterm2rgb(key, val) + let l:incs = [0, 95, 135, 175, 215, 255] + + if a:val < 216 + return [l:incs[a:val / 36], l:incs[(a:val % 36) / 6], l:incs[a:val % 6]] + else + let l:coordinate = a:val * 10 - 2152 + return [l:coordinate, l:coordinate, l:coordinate] + endif + endfunction + + function! s:distance(lhs, rhs) + return abs(a:lhs[0] - a:rhs[0]) + \ + abs(a:lhs[1] - a:rhs[1]) + \ + abs(a:lhs[2] - a:rhs[2]) + endfunction + + let l:xterm = range(0, 239) + let l:xterm = map(l:xterm, function('s:xterm2rgb')) + + let l:distances = [] + for l:value in l:xterm + let l:distances += [s:distance(l:value, a:rgb)] + endfor + + let l:index = index(l:distances, min(l:distances)) + 16 + + return printf("%s", l:index) +endfunction + +function! s:colorize(hue, saturation, value) + let l:rgb = s:hsv2rgb(a:hue, a:saturation, a:value) + let l:gui = s:rgb2hex(l:rgb) + let l:cterm = s:rgb2short(l:rgb) + let l:res = {'gui': l:gui, 'cterm': l:cterm} + return l:res +endfunction + +" }}} +" Colors {{{ +" +" This section deals with the initialization of the different colors used by +" the colorscheme. Odyssey is going to use a 12-colors palette. The will be 6 +" colors for the different part of the editor, and 6 colors for the +" highligting. +" +" The s:colors dictionary is initialized in the Bootstrap section. + +let s:colors = {} + +let s:colors.beyondback = s:colorize(177, 20, 6) +let s:colors.background = s:colorize(177, 20, 11) +let s:colors.cursorline = s:colorize(177, 25, 16) +let s:colors.foldedline = s:colorize(177, 25, 21) +let s:colors.linenumber = s:colorize(177, 9, 55) +let s:colors.foreground = s:colorize(177, 11, 75) + +let s:colors.error = s:colorize( 10, 45, 70) +let s:colors.warning = s:colorize( 40, 45, 70) +let s:colors.type = s:colorize( 70, 45, 70) +let s:colors.procedure = s:colorize(140, 45, 70) +let s:colors.keyword = s:colorize(180, 45, 70) +let s:colors.constant = s:colorize(210, 45, 70) + +" }}} +" Attributes {{{ + +let s:attributes = {} + +let s:attributes[ 'reverse'] = { 'cterm': 'reverse' , 'gui': 'reverse' } +let s:attributes[ 'bold'] = { 'cterm': 'bold' , 'gui': 'bold' } +let s:attributes['underline'] = { 'cterm': 'underline', 'gui': 'underline' } +let s:attributes[ 'italic'] = { 'cterm': 'italic' , 'gui': 'italic' } + +" }}} +" Highlight Helpers {{{ + +function! s:h(group, bg, fg, attr) + let l:hi = 'highlight! ' . a:group . ' ' + + if a:bg != 'none' + let l:bg = get(s:colors, a:bg) + let l:hi .= 'guibg=#'. l:bg['gui'] . ' ' . 'ctermbg=' . l:bg['cterm'] + endif + + if a:fg != 'none' + let l:fg = get(s:colors, a:fg) + let l:hi .= ' guifg=#' . l:fg['gui'] . ' ' . 'ctermfg=' . l:fg['cterm'] + endif + + if a:attr != 'none' + let l:attr = get(s:attributes, a:attr) + let l:hi .= ' gui=' . l:attr['gui'] . ' ' . 'cterm=' . l:attr['cterm'] + elseif a:attr == 'none' + let l:hi .= ' gui=none cterm=none' + endif + + execute l:hi +endfunction + +function! s:l(origin, target) + let l:hi = 'highlight! link ' . a:origin . ' ' . a:target + execute l:hi +endfunction + +" }}} +" Interface Highlights {{{ + +call s:h( 'SpecialKey', 'background', 'warning', 'none') +call s:h( 'EndOfBuffer', 'background', 'linenumber', 'none') +call s:h( 'NonText', 'background', 'linenumber', 'none') +call s:h( 'Directory', 'background', 'foreground', 'none') +call s:h( 'ErrorMsg', 'background', 'error', 'bold') +call s:h( 'MoreMsg', 'background', 'warning', 'none') +call s:h( 'ModeMsg', 'background', 'warning', 'none') +call s:h( 'IncSearch', 'background', 'foreground', 'reverse') +call s:h( 'Search', 'background', 'linenumber', 'reverse') +call s:h( 'LineNr', 'background', 'linenumber', 'none') +call s:h( 'CursorLineNr', 'cursorline', 'foreground', 'none') +call s:h( 'Question', 'background', 'warning', 'none') +call s:h( 'StatusLine', 'cursorline', 'foreground', 'none') +call s:h( 'StatusLineNC', 'beyondback', 'linenumber', 'none') +call s:h( 'VertSplit', 'beyondback', 'beyondback', 'none') +call s:h( 'Title', 'background', 'procedure', 'none') +call s:h( 'Visual', 'background', 'foreground', 'reverse') +call s:h( 'VisualNOS', 'background', 'foreground', 'reverse') +call s:h( 'WarningMsg', 'background', 'warning', 'bold') +call s:h( 'WildMenu', 'cursorline', 'warning', 'none') +call s:h( 'Folded', 'foldedline', 'linenumber', 'none') +call s:h( 'FoldColumn', 'foldedline', 'linenumber', 'none') +call s:h( 'DiffAdd', 'procedure', 'background', 'none') +call s:h( 'DiffChange', 'warning', 'background', 'none') +call s:h( 'DiffDelete', 'error', 'background', 'none') +call s:h( 'DiffText', 'error', 'background', 'none') +call s:h( 'SignColumn', 'background', 'error', 'none') +call s:h( 'Conceal', 'background', 'keyword', 'none') +call s:h( 'SpellBad', 'background', 'error', 'underline') +call s:h( 'SpellCap', 'background', 'warning', 'underline') +call s:h( 'SpellRare', 'background', 'constant', 'underline') +call s:h( 'SpellLocal', 'background', 'keyword', 'underline') +call s:h( 'Pmenu', 'foldedline', 'linenumber', 'none') +call s:h( 'PmenuSel', 'background', 'foreground', 'reverse') +call s:h( 'PmenuSbar', 'foldedline', 'foldedline', 'none') +call s:h( 'PmenuThumb', 'linenumber', 'linenumber', 'none') +call s:h( 'TabLine', 'background', 'linenumber', 'none') +call s:h( 'TabLineSel', 'background', 'foreground', 'none') +call s:h( 'TabLineFill', 'beyondback', 'linenumber', 'none') +call s:h( 'CursorColumn', 'cursorline', 'foreground', 'none') +call s:h( 'CursorLine', 'cursorline', 'none', 'none') +call s:h( 'ColorColumn', 'foldedline', 'none', 'none') +call s:h( 'StatusLineTerm', 'cursorline', 'foreground', 'none') +call s:h('StatusLineTermNC', 'beyondback', 'linenumber', 'none') +call s:h( 'Cursor', 'background', 'foreground', 'reverse') +call s:h( 'lCursor', 'background', 'foreground', 'reverse') +call s:h( 'MatchParen', 'background', 'warning', 'underline') +call s:h( 'ToolbarLine', 'linenumber', 'linenumber', 'none') +call s:h( 'ToolbarButton', 'background', 'linenumber', 'reverse') +call s:h( 'Normal', 'background', 'foreground', 'none') + +" }}} +" Default Highlights {{{ + +call s:h( 'Comment', 'background', 'linenumber', 'none') +call s:h( 'Constant', 'background', 'constant', 'none') +call s:h( 'Identifier', 'background', 'procedure', 'none') +call s:h( 'Statement', 'background', 'keyword', 'none') +call s:h( 'Preproc', 'background', 'warning', 'none') +call s:h( 'Type', 'background', 'type', 'none') +call s:l('StorageClass', 'Statement') +call s:l( 'Structure', 'Statement') +call s:l( 'Typedef', 'Statement') +call s:h( 'Special', 'background', 'warning', 'none') +call s:h( 'Underlined', 'background', 'foreground', 'underline') +call s:h( 'Ignore', 'background', 'background', 'none') +call s:h( 'Error', 'background', 'error', 'bold') +call s:h( 'Todo', 'background', 'warning', 'bold') + +" }}} +" Go Highlights {{{ + +call s:l( 'goOdysseyFunction', 'Function') +call s:l('goOdysseyFuncKeyword', 'Statement') + +" }}} +" Java Highlights {{{ + +call s:h( 'javaAnnotation', 'background', 'warning', 'italic') +call s:l( 'javaExternal', 'Statement') +call s:l( 'javaTypeDef', 'javaOdysseyThis') +call s:l( 'javaOdysseyClass', 'Type') +call s:l( 'javaOdysseyDotOperator', 'Type') +call s:l( 'javaOdysseyInterface', 'Type') +call s:l( 'javaOdysseyEnum', 'Type') +call s:l( 'javaOdysseyCasting', 'Type') +call s:l( 'javaOdysseyGetClass', 'Type') +call s:l('javaOdysseyGetStaticMethod', 'Function') +call s:l( 'javaOdysseyGetStaticClass', 'Type') +call s:l( 'javaOdysseyExtends', 'Type') +call s:l( 'javaOdysseyImplements', 'Type') +call s:l( 'javaOdysseyArray', 'Normal') +call s:l( 'javaOdysseyGeneric', 'Normal') +call s:l( 'javaOdysseyType', 'Type') +call s:l( 'javaOdysseyConstructor', 'Type') +call s:l( 'javaOdysseyMethod', 'Function') +call s:l( 'javaOdysseyThis', 'Special') +call s:l( 'javaOdysseyArrow', 'Operator') +call s:l( 'javaOdysseyLombok', 'Statement') +call s:l( 'javaOdysseyEnumValue', 'Type') +call s:l( 'javaOdysseyMethodRef', 'Function') +call s:l( 'javaOdysseyClassMethodRef', 'Type') + +if exists('g:odyssey_java_javadoc') && g:odyssey_java_javadoc != 0 + if exists('g:java_ignore_javadoc') + unlet g:java_ignore_javadoc + end +else + let g:java_ignore_javadoc = 1 +endif + +" }}} +" JavaScript Highlights {{{ + +call s:l( 'javaScriptFunction', 'Statement') +call s:l( 'javaScriptBraces', 'Normal') +call s:l( 'javaScriptIdentifier', 'Statement') +call s:l( 'javaScriptOdysseyKeyword', 'Keyword') +call s:l('javaScriptOdysseyFunction', 'Function') +call s:l('javaScriptOdysseyFatArrow', 'Statement') + +" }}} +" Python Highlights {{{ + +call s:h( 'pythonDecorator', 'background', 'warning', 'italic') +call s:h( 'pythonDecoratorName', 'background', 'warning', 'italic') +call s:l( 'pythonOdysseyNone', 'Constant') +call s:l( 'pythonOdysseyBoolean', 'Constant') +call s:l( 'pythonOdysseyBuiltin', 'Type') +call s:l( 'pythonOdysseyPrint', 'Function') +call s:l( 'pythonOdysseyArrow', 'Keyword') +call s:l( 'pythonInclude', 'Statement') +call s:l('pythonOdysseyFunction', 'Function') +call s:l( 'pythonOdysseySelf', 'Special') +call s:l( 'pythonOdysseyType', 'Type') +call s:l( 'pythonOdysseyClass', 'Type') + +let g:python_no_builtin_highlight = 1 + +" }}} +" Ruby Highlights {{{ + +call s:l( 'rubyClass', 'Statement') +call s:h( 'rubyClassVariable', 'background', 'warning', 'italic') +call s:l( 'rubyDefine', 'Statement') +call s:l( 'rubyInclude', 'Statement') +call s:h( 'rubyInstanceVariable', 'background', 'warning', 'italic') +call s:l('rubyInterpolationDelimiter', 'Function') +call s:l( 'rubyStringDelimiter', 'Normal') +call s:l( 'rubyAccess', 'Statement') +call s:l( 'rubyAttribute', 'Statement') +call s:l( 'rubyPseudoVariable', 'Special') +call s:l( 'rubySymbol', 'rubyConstant') +call s:h( 'rubyBlockParameter', 'background', 'procedure', 'italic') +call s:l( 'rubyOdysseyNil', 'Normal') +call s:l( 'rubyBoolean', 'Normal') +call s:l( 'rubyFloat', 'Normal') +call s:l( 'rubyInteger', 'Normal') + +" }}} +" Rust Highlights {{{ + +call s:l( 'rustLifetime', 'Constant') +call s:l( 'rustQuestionMark', 'Operator') +call s:l('rustOdysseyFunction', 'Function') +call s:l( 'rustOdysseyType', 'Type') + +" }}} +" vim: foldmethod=marker textwidth=79 colorcolumn=+1 diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/tango-desert.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/tango-desert.vim new file mode 100644 index 0000000..688111f --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/tango-desert.vim @@ -0,0 +1,115 @@ +" Vim color file +" Maintainer: Vineeth N +" Last Change: $Date: 2009/06/12 $ +" Version: 1.1 +" Description: Dark Tango colorscheme based on "desert.vim" & tango color +" palette + +set background=dark +if version > 580 + " no guarantees for version 5.8 and below, but this makes it stop + " complaining + hi clear + if exists("syntax_on") + syntax reset + endif +endif +let g:colors_name="tango-desert" + +hi Normal guifg=#eeeeec guibg=#555753 + +" highlight groups +hi Cursor guibg=#fcaf3e +"hi CursorIM +hi Directory guifg=#e9b96e +hi VertSplit guifg=#babdb6 guibg=#555753 gui=none +hi Folded guifg=#eeeeec guibg=#888a85 +hi FoldColumn guifg=#eeeeec guibg=#888a85 +hi IncSearch guifg=#eeeeec guibg=#204a87 +hi LineNr guifg=#babdb6 guibg=#555753 +hi ModeMsg guifg=#8ae234 +hi MatchParen guibg=#ad7fa8 guifg=#eeeeec +hi MoreMsg guifg=#8ae234 +hi NonText guifg=#babdb6 guibg=#555753 +hi PmenuSel guibg=#5c3566 guifg=#eeeeec +hi Pmenu guibg=#75507b guifg=#eeeeec +hi PmenuSbar guibg=#75507b guifg=#5c3566 +hi PmenuThumb guifg=#5c3566 guibg=#75507b +hi Question guifg=#8ae234 +hi Search guibg=#edd400 +hi SpecialKey guifg=#888a85 +hi StatusLine guibg=#d3d7cf guifg=#2e3436 gui=none +hi StatusLineNC guibg=#babdb6 guifg=#2e3436 gui=none +hi Title guifg=#8ae234 +hi Visual guibg=#3465a4 guifg=#eeeeec +"hi VisualNOS +hi DiffText gui=bold guibg=#204a87 guifg=#eeeeec +hi DiffAdd guibg=#204a87 guifg=#eeeeec +hi DiffChange guibg=#75507b +hi DiffDelete gui=bold guifg=#babdb6 guibg=#555753 + +hi WarningMsg guifg=#8ae234 +"hi WildMenu +"hi Menu +"hi Scrollbar +"hi Tooltip + +" syntax highlighting groups +hi Comment guifg=#babdb6 +hi Constant guifg=#73d216 +hi Identifier guifg=#8ae234 +hi Statement guifg=#e9b96e +" lightskyblue appears better than 729fcf +"hi PreProc guifg=#729fcf +hi PreProc guifg=lightskyblue +hi Type guifg=#e9b96e +hi Special guifg=#73d216 +" lightskyblue appears better than 729fcf +"hi Underlined guifg=#729fcf +hi Underlined guifg=lightskyblue +hi Ignore guifg=grey40 +hi Error guibg=#ef2929 guifg=#eeeeec +hi Todo guibg=#73d216 guifg=#2e3436 gui=bold +"hi Todo guifg=#73d216 guibg=NONE gui=underline,bold + +" ----------------------------------------------------------- +" color terminal definitions, based on ''desert'' +" ----------------------------------------------------------- +hi SpecialKey ctermfg=darkgreen +hi NonText cterm=bold ctermfg=darkblue +hi Directory ctermfg=darkcyan +hi ErrorMsg cterm=bold ctermfg=7 ctermbg=1 +hi IncSearch cterm=NONE ctermfg=yellow ctermbg=green +hi Search cterm=NONE ctermfg=grey ctermbg=blue +hi MoreMsg ctermfg=darkgreen +hi ModeMsg cterm=NONE ctermfg=brown +hi LineNr ctermfg=3 +hi Question ctermfg=green +hi StatusLine cterm=bold,reverse +hi StatusLineNC cterm=reverse +hi VertSplit cterm=reverse +hi Title ctermfg=5 +hi Visual cterm=reverse +hi VisualNOS cterm=bold,underline +hi WarningMsg ctermfg=1 +hi WildMenu ctermfg=0 ctermbg=3 +hi Folded ctermfg=darkgrey ctermbg=NONE +hi FoldColumn ctermfg=darkgrey ctermbg=NONE +hi DiffAdd ctermbg=4 +hi DiffChange ctermbg=5 +hi DiffDelete cterm=bold ctermfg=4 ctermbg=6 +hi DiffText cterm=bold ctermbg=1 +hi Comment ctermfg=darkcyan +hi Constant ctermfg=brown +hi Special ctermfg=5 +hi Identifier ctermfg=6 +hi Statement ctermfg=3 +hi PreProc ctermfg=5 +hi Type ctermfg=2 +hi Underlined cterm=underline ctermfg=5 +hi Ignore cterm=bold ctermfg=7 +hi Ignore ctermfg=darkgrey +hi Error cterm=bold ctermfg=7 ctermbg=1 + + +"vim: sw=4 diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/wombat.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/wombat.vim new file mode 100644 index 0000000..482995c --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/wombat.vim @@ -0,0 +1,49 @@ +set background=dark + +hi clear + +if exists("syntax_on") + syntax reset +endif + +let colors_name = "wombat" + + +" Vim >= 7.0 specific colors +if version >= 700 + hi CursorLine guibg=#2d2d2d + hi CursorColumn guibg=#2d2d2d + hi MatchParen guifg=#f6f3e8 guibg=#857b6f gui=bold + hi Pmenu guifg=#f6f3e8 guibg=#444444 + hi PmenuSel guifg=#000000 guibg=#cae682 +endif + +" General colors +hi Cursor guifg=NONE guibg=#656565 gui=none +hi Normal guifg=#f6f3e8 guibg=#242424 gui=none +hi NonText guifg=#808080 guibg=#303030 gui=none +hi LineNr guifg=#857b6f guibg=#000000 gui=none +hi StatusLine guifg=#f6f3e8 guibg=#444444 gui=italic +hi StatusLineNC guifg=#857b6f guibg=#444444 gui=none +hi VertSplit guifg=#444444 guibg=#444444 gui=none +hi Folded guibg=#384048 guifg=#a0a8b0 gui=none +hi Title guifg=#f6f3e8 guibg=NONE gui=bold +hi Visual guifg=#f6f3e8 guibg=#444444 gui=none +hi SpecialKey guifg=#808080 guibg=#343434 gui=none + +" Syntax highlighting +hi Comment guifg=#99968b gui=italic +hi Todo guifg=#8f8f8f gui=italic +hi Constant guifg=#e5786d gui=none +hi String guifg=#95e454 gui=none +hi Identifier guifg=#cae682 gui=none +hi Function guifg=#cae682 gui=none +hi Type guifg=#cae682 gui=none +hi Statement guifg=#8ac6f2 gui=none +hi Keyword guifg=#8ac6f2 gui=none +hi PreProc guifg=#e5786d gui=none +hi Number guifg=#e5786d gui=none +hi Special guifg=#e7f6da gui=none + +" My new stuff starts here +hi Label guifg=#47e0c3 gui=none diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/wombat256.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/wombat256.vim new file mode 100644 index 0000000..82cc8de --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/wombat256.vim @@ -0,0 +1,95 @@ +" Vim color file +" Original Maintainer: Lars H. Nielsen (dengmao@gmail.com) +" Last Change: 2010-07-23 +" +" Modified version of wombat for 256-color terminals by +" David Liang (bmdavll@gmail.com) +" based on version by +" Danila Bespalov (danila.bespalov@gmail.com) + +set background=dark + +if version > 580 + hi clear + if exists("syntax_on") + syntax reset + endif +endif + +let colors_name = "wombat256" + +" General colors +hi Normal ctermfg=252 ctermbg=black cterm=none guifg=#e3e0d7 guibg=#242424 gui=none +hi Cursor ctermfg=234 ctermbg=228 cterm=none guifg=#242424 guibg=#eae788 gui=none +hi Visual ctermfg=251 ctermbg=239 cterm=none guifg=#c3c6ca guibg=#554d4b gui=none +hi VisualNOS ctermfg=251 ctermbg=236 cterm=none guifg=#c3c6ca guibg=#303030 gui=none +hi Search ctermfg=177 ctermbg=241 cterm=none guifg=#d787ff guibg=#636066 gui=none +hi Folded ctermfg=103 ctermbg=237 cterm=none guifg=#a0a8b0 guibg=#3a4046 gui=none +hi Title ctermfg=230 cterm=bold guifg=#ffffd7 gui=bold +hi StatusLine ctermfg=230 ctermbg=238 cterm=none guifg=#ffffd7 guibg=#444444 gui=italic +hi VertSplit ctermfg=238 ctermbg=238 cterm=none guifg=#444444 guibg=#444444 gui=none +hi StatusLineNC ctermfg=241 ctermbg=238 cterm=none guifg=#857b6f guibg=#444444 gui=none +hi LineNr ctermfg=241 ctermbg=232 cterm=none guifg=#857b6f guibg=#080808 gui=none +hi SpecialKey ctermfg=241 ctermbg=235 cterm=none guifg=#626262 guibg=#2b2b2b gui=none +hi WarningMsg ctermfg=203 guifg=#ff5f55 +hi ErrorMsg ctermfg=196 ctermbg=236 cterm=bold guifg=#ff2026 guibg=#3a3a3a gui=bold + +" Vim >= 7.0 specific colors +if version >= 700 +hi CursorLine ctermbg=236 cterm=none guibg=#32322f +hi MatchParen ctermfg=228 ctermbg=101 cterm=bold guifg=#eae788 guibg=#857b6f gui=bold +hi Pmenu ctermfg=230 ctermbg=238 guifg=#ffffd7 guibg=#444444 +hi PmenuSel ctermfg=232 ctermbg=192 guifg=#080808 guibg=#cae982 +endif + +" Diff highlighting +hi DiffAdd ctermbg=17 guibg=#2a0d6a +hi DiffDelete ctermfg=234 ctermbg=60 cterm=none guifg=#242424 guibg=#3e3969 gui=none +hi DiffText ctermbg=53 cterm=none guibg=#73186e gui=none +hi DiffChange ctermbg=237 guibg=#382a37 + +"hi CursorIM +"hi Directory +"hi IncSearch +"hi Menu +"hi ModeMsg +"hi MoreMsg +"hi PmenuSbar +"hi PmenuThumb +"hi Question +"hi Scrollbar +"hi SignColumn +"hi SpellBad +"hi SpellCap +"hi SpellLocal +"hi SpellRare +"hi TabLine +"hi TabLineFill +"hi TabLineSel +"hi Tooltip +"hi User1 +"hi User9 +"hi WildMenu + + +" Syntax highlighting +hi Keyword ctermfg=111 cterm=none guifg=#88b8f6 gui=none +hi Statement ctermfg=111 cterm=none guifg=#88b8f6 gui=none +hi Constant ctermfg=173 cterm=none guifg=#e5786d gui=none +hi Number ctermfg=173 cterm=none guifg=#e5786d gui=none +hi PreProc ctermfg=173 cterm=none guifg=#e5786d gui=none +hi Function ctermfg=192 cterm=none guifg=#cae982 gui=none +hi Identifier ctermfg=192 cterm=none guifg=#cae982 gui=none +hi Type ctermfg=186 cterm=none guifg=#d4d987 gui=none +hi Special ctermfg=229 cterm=none guifg=#eadead gui=none +hi String ctermfg=113 cterm=none guifg=#95e454 gui=italic +hi Comment ctermfg=246 cterm=none guifg=#9c998e gui=italic +hi Todo ctermfg=101 cterm=none guifg=#857b6f gui=italic + + +" Links +hi! link FoldColumn Folded +hi! link CursorColumn CursorLine +hi! link NonText LineNr + +" vim:set ts=4 sw=4 noet: diff --git a/.vim/pack/plugins/start/vim-colorschemes/colors/zenburn.vim b/.vim/pack/plugins/start/vim-colorschemes/colors/zenburn.vim new file mode 100644 index 0000000..037b0f5 --- /dev/null +++ b/.vim/pack/plugins/start/vim-colorschemes/colors/zenburn.vim @@ -0,0 +1,425 @@ +" Vim color file +" Maintainer: Jani Nurminen +" Last Change: $Id: zenburn.vim,v 2.16 2010/10/24 10:55:30 slinky Exp slinky $ +" URL: http://slinky.imukuppi.org/zenburnpage/ +" License: GNU GPL +" +" Nothing too fancy, just some alien fruit salad to keep you in the zone. +" This syntax file was designed to be used with dark environments and +" low light situations. Of course, if it works during a daybright office, go +" ahead :) +" +" Owes heavily to other Vim color files! With special mentions +" to "BlackDust", "Camo" and "Desert". +" +" To install, copy to ~/.vim/colors directory. +" +" Alternatively, you can use Vimball installation: +" vim zenburn.vba +" :so % +" :q +" +" For details, see :help vimball +" +" After installation, use it with :colorscheme zenburn. +" See also :help syntax +" +" Credits: +" - Jani Nurminen - original Zenburn, maintainer +" - Steve Hall & Cream posse - higher-contrast Visual selection +" - Kurt Maier - 256 color console coloring, low and high contrast toggle, +" bug fixing +" - Charlie - spotted too bright StatusLine in non-high contrast mode +" - Pablo Castellazzi - CursorLine fix for 256 color mode +" - Tim Smith - force dark background +" - John Gabriele - spotted bad Ignore-group handling +" - Zac Thompson - spotted invisible NonText in low contrast mode +" - Christophe-Marie Duquesne - suggested making a Vimball +" - Andrew Wagner - noted the CursorColumn bug (guifg was unintentionally set), +" unify CursorColumn colour +" - Martin Langasek - clarify the license, whitespace fixes +" - Marcin Szamotulski - support autocomplete for Zenburn configuration +" parameters +" +" CONFIGURABLE PARAMETERS: +" +" You can use the default (don't set any parameters), or you can +" set some parameters to tweak the Zenburn colours. +" +" To use them, put them into your .vimrc file before loading the color scheme, +" example: +" let g:zenburn_high_Contrast=1 +" colors zenburn +" +" You can also do ":let g:zenburn" then hit Ctrl-d or Tab to scroll through the +" list of configurable parameters. +" +" * You can now set a darker background for bright environments. To activate, use: +" contrast Zenburn, use: +" +" let g:zenburn_high_Contrast = 1 +" +" * For example, Vim help files uses the Ignore-group for the pipes in tags +" like "|somelink.txt|". By default, the pipes are not visible, as they +" map to Ignore group. If you wish to enable coloring of the Ignore group, +" set the following parameter to 1. Warning, it might make some syntax files +" look strange. +" +" let g:zenburn_color_also_Ignore = 1 +" +" * To get more contrast to the Visual selection, use +" +" let g:zenburn_alternate_Visual = 1 +" +" * To use alternate colouring for Error message, use +" +" let g:zenburn_alternate_Error = 1 +" +" * The new default for Include is a duller orange. To use the original +" colouring for Include, use +" +" let g:zenburn_alternate_Include = 1 +" +" * Work-around to a Vim bug, it seems to misinterpret ctermfg and 234 and 237 +" as light values, and sets background to light for some people. If you have +" this problem, use: +" +" let g:zenburn_force_dark_Background = 1 +" +" * By default the CursorColumn is of a lighter colour. I find it more readable +" that way, but some people may want to align it with the darker CursorLine +" color, for visual uniformity. To do so, use: +" +" let g:zenburn_unified_CursorColumn = 1 +" +" Note: you can ignore this unless you use +" ":set cursorline cursorcolumn", since otherwise the effect won't be +" seen. +" +" NOTE: +" +" * To turn the parameter(s) back to defaults, use UNLET or set them to 0: +" +" unlet g:zenburn_alternate_Include +" or +" let g:zenburn_alternate_Include = 0 +" +" +" That's it, enjoy! +" +" TODO +" - Visual alternate color is broken? Try GVim >= 7.0.66 if you have trouble +" - IME colouring (CursorIM) + +" Set defaults, but keep any parameters already set by the user +if ! exists("g:zenburn_high_Contrast") + let g:zenburn_high_Contrast = 0 +endif + +if ! exists("g:zenburn_color_also_Ignore") + let g:zenburn_color_also_Ignore = 0 +endif + +if ! exists("g:zenburn_alternate_Error") + let g:zenburn_alternate_Error = 0 +endif + +if ! exists("g:zenburn_force_dark_Background") + let g:zenburn_force_dark_Background = 0 +endif + +if ! exists("g:zenburn_alternate_Visual") + let g:zenburn_alternate_Visual = 0 +endif + +if ! exists("g:zenburn_alternate_Include") + let g:zenburn_alternate_Include = 0 +endif + +if ! exists("g:zenburn_unified_CursorColumn") + let g:zenburn_unified_CursorColumn = 0 +endif +" ----------------------------------------------- + +set background=dark +hi clear +if exists("syntax_on") + syntax reset +endif +let g:colors_name="zenburn" + +hi Boolean guifg=#dca3a3 +hi Character guifg=#dca3a3 gui=bold +hi Comment guifg=#7f9f7f gui=italic +hi Conditional guifg=#f0dfaf gui=bold +hi Constant guifg=#dca3a3 gui=bold +hi Cursor guifg=#000d18 guibg=#8faf9f gui=bold +hi Debug guifg=#bca3a3 gui=bold +hi Define guifg=#ffcfaf gui=bold +hi Delimiter guifg=#8f8f8f +hi DiffAdd guifg=#709080 guibg=#313c36 gui=bold +hi DiffChange guibg=#333333 +hi DiffDelete guifg=#333333 guibg=#464646 +hi DiffText guifg=#ecbcbc guibg=#41363c gui=bold +hi Directory guifg=#dcdccc gui=bold +hi ErrorMsg guifg=#80d4aa guibg=#2f2f2f gui=bold +hi Exception guifg=#c3bf9f gui=bold +hi Float guifg=#c0bed1 +hi FoldColumn guifg=#93b3a3 guibg=#3f4040 +hi Folded guifg=#93b3a3 guibg=#3f4040 +hi Function guifg=#efef8f +hi Identifier guifg=#efdcbc +hi IncSearch guibg=#f8f893 guifg=#385f38 +hi Keyword guifg=#f0dfaf gui=bold +hi Label guifg=#dfcfaf gui=underline +hi LineNr guifg=#9fafaf guibg=#262626 +hi Macro guifg=#ffcfaf gui=bold +hi ModeMsg guifg=#ffcfaf gui=none +hi MoreMsg guifg=#ffffff gui=bold +hi Number guifg=#8cd0d3 +hi Operator guifg=#f0efd0 +hi PreCondit guifg=#dfaf8f gui=bold +hi PreProc guifg=#ffcfaf gui=bold +hi Question guifg=#ffffff gui=bold +hi Repeat guifg=#ffd7a7 gui=bold +hi Search guifg=#ffffe0 guibg=#284f28 +hi SpecialChar guifg=#dca3a3 gui=bold +hi SpecialComment guifg=#82a282 gui=bold +hi Special guifg=#cfbfaf +hi SpecialKey guifg=#9ece9e +hi Statement guifg=#e3ceab gui=none +hi StatusLine guifg=#313633 guibg=#ccdc90 +hi StatusLineNC guifg=#2e3330 guibg=#88b090 +hi StorageClass guifg=#c3bf9f gui=bold +hi String guifg=#cc9393 +hi Structure guifg=#efefaf gui=bold +hi Tag guifg=#e89393 gui=bold +hi Title guifg=#efefef gui=bold +hi Todo guifg=#dfdfdf guibg=bg gui=bold +hi Typedef guifg=#dfe4cf gui=bold +hi Type guifg=#dfdfbf gui=bold +hi Underlined guifg=#dcdccc gui=underline +hi VertSplit guifg=#2e3330 guibg=#688060 +hi VisualNOS guifg=#333333 guibg=#f18c96 gui=bold,underline +hi WarningMsg guifg=#ffffff guibg=#333333 gui=bold +hi WildMenu guibg=#2c302d guifg=#cbecd0 gui=underline + +hi SpellBad guisp=#bc6c4c guifg=#dc8c6c +hi SpellCap guisp=#6c6c9c guifg=#8c8cbc +hi SpellRare guisp=#bc6c9c guifg=#bc8cbc +hi SpellLocal guisp=#7cac7c guifg=#9ccc9c + +" Entering Kurt zone +if &t_Co > 255 + hi Boolean ctermfg=181 + hi Character ctermfg=181 cterm=bold + hi Comment ctermfg=108 + hi Conditional ctermfg=223 cterm=bold + hi Constant ctermfg=181 cterm=bold + hi Cursor ctermfg=233 ctermbg=109 cterm=bold + hi Debug ctermfg=181 cterm=bold + hi Define ctermfg=223 cterm=bold + hi Delimiter ctermfg=245 + hi DiffAdd ctermfg=66 ctermbg=237 cterm=bold + hi DiffChange ctermbg=236 + hi DiffDelete ctermfg=236 ctermbg=238 + hi DiffText ctermfg=217 ctermbg=237 cterm=bold + hi Directory ctermfg=188 cterm=bold + hi ErrorMsg ctermfg=115 ctermbg=236 cterm=bold + hi Exception ctermfg=249 cterm=bold + hi Float ctermfg=251 + hi FoldColumn ctermfg=109 ctermbg=238 + hi Folded ctermfg=109 ctermbg=238 + hi Function ctermfg=228 + hi Identifier ctermfg=223 + hi IncSearch ctermbg=228 ctermfg=238 + hi Keyword ctermfg=223 cterm=bold + hi Label ctermfg=187 cterm=underline + hi LineNr ctermfg=248 ctermbg=235 + hi Macro ctermfg=223 cterm=bold + hi ModeMsg ctermfg=223 cterm=none + hi MoreMsg ctermfg=15 cterm=bold + hi Number ctermfg=116 + hi Operator ctermfg=230 + hi PreCondit ctermfg=180 cterm=bold + hi PreProc ctermfg=223 cterm=bold + hi Question ctermfg=15 cterm=bold + hi Repeat ctermfg=223 cterm=bold + hi Search ctermfg=230 ctermbg=236 + hi SpecialChar ctermfg=181 cterm=bold + hi SpecialComment ctermfg=108 cterm=bold + hi Special ctermfg=181 + hi SpecialKey ctermfg=151 + hi Statement ctermfg=187 ctermbg=234 cterm=none + hi StatusLine ctermfg=236 ctermbg=186 + hi StatusLineNC ctermfg=235 ctermbg=108 + hi StorageClass ctermfg=249 cterm=bold + hi String ctermfg=174 + hi Structure ctermfg=229 cterm=bold + hi Tag ctermfg=181 cterm=bold + hi Title ctermfg=7 ctermbg=234 cterm=bold + hi Todo ctermfg=108 ctermbg=234 cterm=bold + hi Typedef ctermfg=253 cterm=bold + hi Type ctermfg=187 cterm=bold + hi Underlined ctermfg=188 ctermbg=234 cterm=bold + hi VertSplit ctermfg=236 ctermbg=65 + hi VisualNOS ctermfg=236 ctermbg=210 cterm=bold + hi WarningMsg ctermfg=15 ctermbg=236 cterm=bold + hi WildMenu ctermbg=236 ctermfg=194 cterm=bold + + " spellchecking, always "bright" background + hi SpellLocal ctermfg=14 ctermbg=237 + hi SpellBad ctermfg=9 ctermbg=237 + hi SpellCap ctermfg=12 ctermbg=237 + hi SpellRare ctermfg=13 ctermbg=237 + + " pmenu + hi PMenu ctermfg=248 ctermbg=0 + hi PMenuSel ctermfg=223 ctermbg=235 + + if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast + hi Normal ctermfg=188 ctermbg=234 + hi NonText ctermfg=238 + + if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore + hi Ignore ctermfg=238 + endif + + " hc mode, darker CursorLine, default 236 + hi CursorLine ctermbg=233 cterm=none + + if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn + hi CursorColumn ctermbg=233 cterm=none + else + hi CursorColumn ctermbg=235 cterm=none + endif + else + hi Normal ctermfg=188 ctermbg=237 + hi Cursor ctermbg=109 + hi diffadd ctermbg=237 + hi diffdelete ctermbg=238 + hi difftext ctermbg=237 + hi errormsg ctermbg=237 + hi foldcolumn ctermbg=238 + hi folded ctermbg=238 + hi incsearch ctermbg=228 + hi linenr ctermbg=238 + hi search ctermbg=238 + hi statement ctermbg=237 + hi statusline ctermbg=144 + hi statuslinenc ctermbg=108 + hi title ctermbg=237 + hi todo ctermbg=237 + hi underlined ctermbg=237 + hi vertsplit ctermbg=65 + hi visualnos ctermbg=210 + hi warningmsg ctermbg=236 + hi wildmenu ctermbg=236 + hi NonText ctermfg=240 + + if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore + hi Ignore ctermfg=240 + endif + + " normal mode, lighter CursorLine + hi CursorLine ctermbg=238 cterm=none + + if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn + hi CursorColumn ctermbg=238 cterm=none + else + hi CursorColumn ctermbg=239 cterm=none + endif + endif + + if exists("g:zenburn_alternate_Error") && g:zenburn_alternate_Error + " use more jumpy Error + hi Error ctermfg=210 ctermbg=52 gui=bold + else + " default is something more zenburn-compatible + hi Error ctermfg=228 ctermbg=95 gui=bold + endif +endif + +if exists("g:zenburn_force_dark_Background") && g:zenburn_force_dark_Background + " Force dark background, because of a bug in VIM: VIM sets background + " automatically during "hi Normal ctermfg=X"; it misinterprets the high + " value (234 or 237 above) as a light color, and wrongly sets background to + " light. See ":help highlight" for details. + set background=dark +endif + +if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast + " use new darker background + hi Normal guifg=#dcdccc guibg=#1f1f1f + hi CursorLine guibg=#121212 gui=bold + if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn + hi CursorColumn guibg=#121212 gui=bold + else + hi CursorColumn guibg=#2b2b2b + endif + hi Pmenu guibg=#242424 guifg=#ccccbc + hi PMenuSel guibg=#353a37 guifg=#ccdc90 gui=bold + hi PmenuSbar guibg=#2e3330 guifg=#000000 + hi PMenuThumb guibg=#a0afa0 guifg=#040404 + hi MatchParen guifg=#f0f0c0 guibg=#383838 gui=bold + hi SignColumn guifg=#9fafaf guibg=#181818 gui=bold + hi TabLineFill guifg=#cfcfaf guibg=#181818 gui=bold + hi TabLineSel guifg=#efefef guibg=#1c1c1b gui=bold + hi TabLine guifg=#b6bf98 guibg=#181818 gui=bold + hi NonText guifg=#404040 gui=bold +else + " Original, lighter background + hi Normal guifg=#dcdccc guibg=#3f3f3f + hi CursorLine guibg=#434443 + if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn + hi CursorColumn guibg=#434343 + else + hi CursorColumn guibg=#4f4f4f + endif + hi Pmenu guibg=#2c2e2e guifg=#9f9f9f + hi PMenuSel guibg=#242424 guifg=#d0d0a0 gui=bold + hi PmenuSbar guibg=#2e3330 guifg=#000000 + hi PMenuThumb guibg=#a0afa0 guifg=#040404 + hi MatchParen guifg=#b2b2a0 guibg=#2e2e2e gui=bold + hi SignColumn guifg=#9fafaf guibg=#343434 gui=bold + hi TabLineFill guifg=#cfcfaf guibg=#353535 gui=bold + hi TabLineSel guifg=#efefef guibg=#3a3a39 gui=bold + hi TabLine guifg=#b6bf98 guibg=#353535 gui=bold + hi NonText guifg=#5b605e gui=bold +endif + + +if exists("g:zenburn_alternate_Visual") && g:zenburn_alternate_Visual + " Visual with more contrast, thanks to Steve Hall & Cream posse + " gui=none fixes weird highlight problem in at least GVim 7.0.66, thanks to Kurt Maier + hi Visual guifg=#000000 guibg=#71d3b4 gui=none + hi VisualNOS guifg=#000000 guibg=#71d3b4 gui=none +else + " use default visual + hi Visual guifg=#233323 guibg=#71d3b4 gui=none + hi VisualNOS guifg=#233323 guibg=#71d3b4 gui=none +endif + +if exists("g:zenburn_alternate_Error") && g:zenburn_alternate_Error + " use more jumpy Error + hi Error guifg=#e37170 guibg=#664040 gui=bold +else + " default is something more zenburn-compatible + hi Error guifg=#e37170 guibg=#3d3535 gui=none +endif + +if exists("g:zenburn_alternate_Include") && g:zenburn_alternate_Include + " original setting + hi Include guifg=#ffcfaf gui=bold +else + " new, less contrasted one + hi Include guifg=#dfaf8f gui=bold +endif + +if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore + " color the Ignore groups + " note: if you get strange coloring for your files, turn this off (unlet) + hi Ignore guifg=#545a4f +endif + +" TODO check for more obscure syntax groups that they're ok