add some colorschemes
This commit is contained in:
parent
676fe77b04
commit
f69e52110e
@ -1,489 +0,0 @@
|
||||
" 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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>colour(r, g, b)
|
||||
" Get the closest grey
|
||||
let l:gx = <SID>grey_number(a:r)
|
||||
let l:gy = <SID>grey_number(a:g)
|
||||
let l:gz = <SID>grey_number(a:b)
|
||||
|
||||
" Get the closest colour
|
||||
let l:x = <SID>rgb_number(a:r)
|
||||
let l:y = <SID>rgb_number(a:g)
|
||||
let l:z = <SID>rgb_number(a:b)
|
||||
|
||||
if l:gx == l:gy && l:gy == l:gz
|
||||
" There are two possibilities
|
||||
let l:dgr = <SID>grey_level(l:gx) - a:r
|
||||
let l:dgg = <SID>grey_level(l:gy) - a:g
|
||||
let l:dgb = <SID>grey_level(l:gz) - a:b
|
||||
let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb)
|
||||
let l:dr = <SID>rgb_level(l:gx) - a:r
|
||||
let l:dg = <SID>rgb_level(l:gy) - a:g
|
||||
let l:db = <SID>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 <SID>grey_colour(l:gx)
|
||||
else
|
||||
" Use the colour
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
else
|
||||
" Only one possibility
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Returns the palette index to approximate the 'rrggbb' hex string
|
||||
fun <SID>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 <SID>colour(l:r, l:g, l:b)
|
||||
endfun
|
||||
|
||||
" Sets the highlighting for the given group
|
||||
fun <SID>X(group, fg, bg, attr)
|
||||
if a:fg != ""
|
||||
exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . <SID>rgb(a:fg)
|
||||
endif
|
||||
if a:bg != ""
|
||||
exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . <SID>rgb(a:bg)
|
||||
endif
|
||||
if a:attr != ""
|
||||
exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("Normal", s:foreground, s:background, "")
|
||||
call <SID>X("LineNr", s:selection, "", "")
|
||||
call <SID>X("NonText", s:selection, "", "")
|
||||
call <SID>X("SpecialKey", s:selection, "", "")
|
||||
call <SID>X("Search", s:background, s:yellow, "")
|
||||
call <SID>X("TabLine", s:window, s:foreground, "reverse")
|
||||
call <SID>X("TabLineFill", s:window, s:foreground, "reverse")
|
||||
call <SID>X("StatusLine", s:window, s:yellow, "reverse")
|
||||
call <SID>X("StatusLineNC", s:window, s:foreground, "reverse")
|
||||
call <SID>X("VertSplit", s:window, s:window, "none")
|
||||
call <SID>X("Visual", "", s:selection, "")
|
||||
call <SID>X("Directory", s:blue, "", "")
|
||||
call <SID>X("ModeMsg", s:green, "", "")
|
||||
call <SID>X("MoreMsg", s:green, "", "")
|
||||
call <SID>X("Question", s:green, "", "")
|
||||
call <SID>X("WarningMsg", s:red, "", "")
|
||||
call <SID>X("MatchParen", "", s:selection, "")
|
||||
call <SID>X("Folded", s:comment, s:background, "")
|
||||
call <SID>X("FoldColumn", "", s:background, "")
|
||||
if version >= 700
|
||||
call <SID>X("CursorLine", "", s:line, "none")
|
||||
call <SID>X("CursorColumn", "", s:line, "none")
|
||||
call <SID>X("PMenu", s:foreground, s:selection, "none")
|
||||
call <SID>X("PMenuSel", s:foreground, s:selection, "reverse")
|
||||
call <SID>X("SignColumn", "", s:background, "none")
|
||||
end
|
||||
if version >= 703
|
||||
call <SID>X("ColorColumn", "", s:line, "none")
|
||||
end
|
||||
|
||||
" Standard Highlighting
|
||||
call <SID>X("Comment", s:comment, "", "")
|
||||
call <SID>X("Todo", s:comment, s:background, "")
|
||||
call <SID>X("Title", s:comment, "", "")
|
||||
call <SID>X("Identifier", s:red, "", "none")
|
||||
call <SID>X("Statement", s:foreground, "", "")
|
||||
call <SID>X("Conditional", s:foreground, "", "")
|
||||
call <SID>X("Repeat", s:foreground, "", "")
|
||||
call <SID>X("Structure", s:purple, "", "")
|
||||
call <SID>X("Function", s:blue, "", "")
|
||||
call <SID>X("Constant", s:orange, "", "")
|
||||
call <SID>X("Keyword", s:orange, "", "")
|
||||
call <SID>X("String", s:green, "", "")
|
||||
call <SID>X("Special", s:foreground, "", "")
|
||||
call <SID>X("PreProc", s:purple, "", "")
|
||||
call <SID>X("Operator", s:aqua, "", "none")
|
||||
call <SID>X("Type", s:blue, "", "none")
|
||||
call <SID>X("Define", s:purple, "", "none")
|
||||
call <SID>X("Include", s:blue, "", "")
|
||||
"call <SID>X("Ignore", "666666", "", "")
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("vimCommand", s:red, "", "none")
|
||||
|
||||
" C Highlighting
|
||||
call <SID>X("cType", s:yellow, "", "")
|
||||
call <SID>X("cStorageClass", s:purple, "", "")
|
||||
call <SID>X("cConditional", s:purple, "", "")
|
||||
call <SID>X("cRepeat", s:purple, "", "")
|
||||
|
||||
" PHP Highlighting
|
||||
call <SID>X("phpVarSelector", s:red, "", "")
|
||||
call <SID>X("phpKeyword", s:purple, "", "")
|
||||
call <SID>X("phpRepeat", s:purple, "", "")
|
||||
call <SID>X("phpConditional", s:purple, "", "")
|
||||
call <SID>X("phpStatement", s:purple, "", "")
|
||||
call <SID>X("phpMemberSelector", s:foreground, "", "")
|
||||
|
||||
" Ruby Highlighting
|
||||
call <SID>X("rubySymbol", s:green, "", "")
|
||||
call <SID>X("rubyConstant", s:yellow, "", "")
|
||||
call <SID>X("rubyAccess", s:yellow, "", "")
|
||||
call <SID>X("rubyAttribute", s:blue, "", "")
|
||||
call <SID>X("rubyInclude", s:blue, "", "")
|
||||
call <SID>X("rubyLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("rubyCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("rubyStringDelimiter", s:green, "", "")
|
||||
call <SID>X("rubyInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("rubyConditional", s:purple, "", "")
|
||||
call <SID>X("rubyRepeat", s:purple, "", "")
|
||||
call <SID>X("rubyControl", s:purple, "", "")
|
||||
call <SID>X("rubyException", s:purple, "", "")
|
||||
|
||||
" Crystal Highlighting
|
||||
call <SID>X("crystalSymbol", s:green, "", "")
|
||||
call <SID>X("crystalConstant", s:yellow, "", "")
|
||||
call <SID>X("crystalAccess", s:yellow, "", "")
|
||||
call <SID>X("crystalAttribute", s:blue, "", "")
|
||||
call <SID>X("crystalInclude", s:blue, "", "")
|
||||
call <SID>X("crystalLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("crystalCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("crystalStringDelimiter", s:green, "", "")
|
||||
call <SID>X("crystalInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("crystalConditional", s:purple, "", "")
|
||||
call <SID>X("crystalRepeat", s:purple, "", "")
|
||||
call <SID>X("crystalControl", s:purple, "", "")
|
||||
call <SID>X("crystalException", s:purple, "", "")
|
||||
|
||||
" Python Highlighting
|
||||
call <SID>X("pythonInclude", s:purple, "", "")
|
||||
call <SID>X("pythonStatement", s:purple, "", "")
|
||||
call <SID>X("pythonConditional", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:purple, "", "")
|
||||
call <SID>X("pythonException", s:purple, "", "")
|
||||
call <SID>X("pythonFunction", s:blue, "", "")
|
||||
call <SID>X("pythonPreCondit", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:aqua, "", "")
|
||||
call <SID>X("pythonExClass", s:orange, "", "")
|
||||
|
||||
" JavaScript Highlighting
|
||||
call <SID>X("javaScriptBraces", s:foreground, "", "")
|
||||
call <SID>X("javaScriptFunction", s:purple, "", "")
|
||||
call <SID>X("javaScriptConditional", s:purple, "", "")
|
||||
call <SID>X("javaScriptRepeat", s:purple, "", "")
|
||||
call <SID>X("javaScriptNumber", s:orange, "", "")
|
||||
call <SID>X("javaScriptMember", s:orange, "", "")
|
||||
call <SID>X("javascriptNull", s:orange, "", "")
|
||||
call <SID>X("javascriptGlobal", s:blue, "", "")
|
||||
call <SID>X("javascriptStatement", s:red, "", "")
|
||||
|
||||
" CoffeeScript Highlighting
|
||||
call <SID>X("coffeeRepeat", s:purple, "", "")
|
||||
call <SID>X("coffeeConditional", s:purple, "", "")
|
||||
call <SID>X("coffeeKeyword", s:purple, "", "")
|
||||
call <SID>X("coffeeObject", s:yellow, "", "")
|
||||
|
||||
" HTML Highlighting
|
||||
call <SID>X("htmlTag", s:red, "", "")
|
||||
call <SID>X("htmlTagName", s:red, "", "")
|
||||
call <SID>X("htmlArg", s:red, "", "")
|
||||
call <SID>X("htmlScriptTag", s:red, "", "")
|
||||
|
||||
" Diff Highlighting
|
||||
call <SID>X("diffAdd", "", "4c4e39", "")
|
||||
call <SID>X("diffDelete", s:background, s:red, "")
|
||||
call <SID>X("diffChange", "", "2b5b77", "")
|
||||
call <SID>X("diffText", s:line, s:blue, "")
|
||||
|
||||
" ShowMarks Highlighting
|
||||
call <SID>X("ShowMarksHLl", s:orange, s:background, "none")
|
||||
call <SID>X("ShowMarksHLo", s:purple, s:background, "none")
|
||||
call <SID>X("ShowMarksHLu", s:yellow, s:background, "none")
|
||||
call <SID>X("ShowMarksHLm", s:aqua, s:background, "none")
|
||||
|
||||
" Lua Highlighting
|
||||
call <SID>X("luaStatement", s:purple, "", "")
|
||||
call <SID>X("luaRepeat", s:purple, "", "")
|
||||
call <SID>X("luaCondStart", s:purple, "", "")
|
||||
call <SID>X("luaCondElseif", s:purple, "", "")
|
||||
call <SID>X("luaCond", s:purple, "", "")
|
||||
call <SID>X("luaCondEnd", s:purple, "", "")
|
||||
|
||||
" Cucumber Highlighting
|
||||
call <SID>X("cucumberGiven", s:blue, "", "")
|
||||
call <SID>X("cucumberGivenAnd", s:blue, "", "")
|
||||
|
||||
" Go Highlighting
|
||||
call <SID>X("goDirective", s:purple, "", "")
|
||||
call <SID>X("goDeclaration", s:purple, "", "")
|
||||
call <SID>X("goStatement", s:purple, "", "")
|
||||
call <SID>X("goConditional", s:purple, "", "")
|
||||
call <SID>X("goConstants", s:orange, "", "")
|
||||
call <SID>X("goTodo", s:yellow, "", "")
|
||||
call <SID>X("goDeclType", s:blue, "", "")
|
||||
call <SID>X("goBuiltins", s:purple, "", "")
|
||||
call <SID>X("goRepeat", s:purple, "", "")
|
||||
call <SID>X("goLabel", s:purple, "", "")
|
||||
|
||||
" Clojure Highlighting
|
||||
call <SID>X("clojureConstant", s:orange, "", "")
|
||||
call <SID>X("clojureBoolean", s:orange, "", "")
|
||||
call <SID>X("clojureCharacter", s:orange, "", "")
|
||||
call <SID>X("clojureKeyword", s:green, "", "")
|
||||
call <SID>X("clojureNumber", s:orange, "", "")
|
||||
call <SID>X("clojureString", s:green, "", "")
|
||||
call <SID>X("clojureRegexp", s:green, "", "")
|
||||
call <SID>X("clojureParen", s:aqua, "", "")
|
||||
call <SID>X("clojureVariable", s:yellow, "", "")
|
||||
call <SID>X("clojureCond", s:blue, "", "")
|
||||
call <SID>X("clojureDefine", s:purple, "", "")
|
||||
call <SID>X("clojureException", s:red, "", "")
|
||||
call <SID>X("clojureFunc", s:blue, "", "")
|
||||
call <SID>X("clojureMacro", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureSpecial", s:purple, "", "")
|
||||
call <SID>X("clojureQuote", s:blue, "", "")
|
||||
call <SID>X("clojureUnquote", s:blue, "", "")
|
||||
call <SID>X("clojureMeta", s:blue, "", "")
|
||||
call <SID>X("clojureDeref", s:blue, "", "")
|
||||
call <SID>X("clojureAnonArg", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureDispatch", s:blue, "", "")
|
||||
|
||||
" Scala Highlighting
|
||||
call <SID>X("scalaKeyword", s:purple, "", "")
|
||||
call <SID>X("scalaKeywordModifier", s:purple, "", "")
|
||||
call <SID>X("scalaOperator", s:blue, "", "")
|
||||
call <SID>X("scalaPackage", s:red, "", "")
|
||||
call <SID>X("scalaFqn", s:foreground, "", "")
|
||||
call <SID>X("scalaFqnSet", s:foreground, "", "")
|
||||
call <SID>X("scalaImport", s:purple, "", "")
|
||||
call <SID>X("scalaBoolean", s:orange, "", "")
|
||||
call <SID>X("scalaDef", s:purple, "", "")
|
||||
call <SID>X("scalaVal", s:purple, "", "")
|
||||
call <SID>X("scalaVar", s:aqua, "", "")
|
||||
call <SID>X("scalaClass", s:purple, "", "")
|
||||
call <SID>X("scalaObject", s:purple, "", "")
|
||||
call <SID>X("scalaTrait", s:purple, "", "")
|
||||
call <SID>X("scalaDefName", s:blue, "", "")
|
||||
call <SID>X("scalaValName", s:foreground, "", "")
|
||||
call <SID>X("scalaVarName", s:foreground, "", "")
|
||||
call <SID>X("scalaClassName", s:foreground, "", "")
|
||||
call <SID>X("scalaType", s:yellow, "", "")
|
||||
call <SID>X("scalaTypeSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaAnnotation", s:orange, "", "")
|
||||
call <SID>X("scalaNumber", s:orange, "", "")
|
||||
call <SID>X("scalaDefSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaClassSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:green, "", "")
|
||||
call <SID>X("scalaRoot", s:foreground, "", "")
|
||||
call <SID>X("scalaMethodCall", s:blue, "", "")
|
||||
call <SID>X("scalaCaseType", s:yellow, "", "")
|
||||
call <SID>X("scalaLineComment", s:comment, "", "")
|
||||
call <SID>X("scalaComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocTags", s:comment, "", "")
|
||||
call <SID>X("scalaEmptyString", s:green, "", "")
|
||||
call <SID>X("scalaMultiLineString", s:green, "", "")
|
||||
call <SID>X("scalaUnicode", s:orange, "", "")
|
||||
call <SID>X("scalaString", s:green, "", "")
|
||||
call <SID>X("scalaStringEscape", s:green, "", "")
|
||||
call <SID>X("scalaSymbol", s:orange, "", "")
|
||||
call <SID>X("scalaChar", s:orange, "", "")
|
||||
call <SID>X("scalaXml", s:green, "", "")
|
||||
call <SID>X("scalaConstructorSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:blue, "", "")
|
||||
|
||||
" Git
|
||||
call <SID>X("diffAdded", s:green, "", "")
|
||||
call <SID>X("diffRemoved", s:red, "", "")
|
||||
call <SID>X("gitcommitSummary", "", "", "bold")
|
||||
|
||||
" Delete Functions
|
||||
delf <SID>X
|
||||
delf <SID>rgb
|
||||
delf <SID>colour
|
||||
delf <SID>rgb_colour
|
||||
delf <SID>rgb_level
|
||||
delf <SID>rgb_number
|
||||
delf <SID>grey_colour
|
||||
delf <SID>grey_level
|
||||
delf <SID>grey_number
|
||||
endif
|
||||
|
||||
set background=dark
|
@ -1,489 +0,0 @@
|
||||
" 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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>colour(r, g, b)
|
||||
" Get the closest grey
|
||||
let l:gx = <SID>grey_number(a:r)
|
||||
let l:gy = <SID>grey_number(a:g)
|
||||
let l:gz = <SID>grey_number(a:b)
|
||||
|
||||
" Get the closest colour
|
||||
let l:x = <SID>rgb_number(a:r)
|
||||
let l:y = <SID>rgb_number(a:g)
|
||||
let l:z = <SID>rgb_number(a:b)
|
||||
|
||||
if l:gx == l:gy && l:gy == l:gz
|
||||
" There are two possibilities
|
||||
let l:dgr = <SID>grey_level(l:gx) - a:r
|
||||
let l:dgg = <SID>grey_level(l:gy) - a:g
|
||||
let l:dgb = <SID>grey_level(l:gz) - a:b
|
||||
let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb)
|
||||
let l:dr = <SID>rgb_level(l:gx) - a:r
|
||||
let l:dg = <SID>rgb_level(l:gy) - a:g
|
||||
let l:db = <SID>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 <SID>grey_colour(l:gx)
|
||||
else
|
||||
" Use the colour
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
else
|
||||
" Only one possibility
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Returns the palette index to approximate the 'rrggbb' hex string
|
||||
fun <SID>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 <SID>colour(l:r, l:g, l:b)
|
||||
endfun
|
||||
|
||||
" Sets the highlighting for the given group
|
||||
fun <SID>X(group, fg, bg, attr)
|
||||
if a:fg != ""
|
||||
exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . <SID>rgb(a:fg)
|
||||
endif
|
||||
if a:bg != ""
|
||||
exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . <SID>rgb(a:bg)
|
||||
endif
|
||||
if a:attr != ""
|
||||
exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("Normal", s:foreground, s:background, "")
|
||||
call <SID>X("LineNr", s:selection, "", "")
|
||||
call <SID>X("NonText", s:selection, "", "")
|
||||
call <SID>X("SpecialKey", s:selection, "", "")
|
||||
call <SID>X("Search", s:background, s:yellow, "")
|
||||
call <SID>X("TabLine", s:window, s:foreground, "reverse")
|
||||
call <SID>X("TabLineFill", s:window, s:foreground, "reverse")
|
||||
call <SID>X("StatusLine", s:window, s:yellow, "reverse")
|
||||
call <SID>X("StatusLineNC", s:window, s:foreground, "reverse")
|
||||
call <SID>X("VertSplit", s:window, s:window, "none")
|
||||
call <SID>X("Visual", "", s:selection, "")
|
||||
call <SID>X("Directory", s:blue, "", "")
|
||||
call <SID>X("ModeMsg", s:green, "", "")
|
||||
call <SID>X("MoreMsg", s:green, "", "")
|
||||
call <SID>X("Question", s:green, "", "")
|
||||
call <SID>X("WarningMsg", s:red, "", "")
|
||||
call <SID>X("MatchParen", "", s:selection, "")
|
||||
call <SID>X("Folded", s:comment, s:background, "")
|
||||
call <SID>X("FoldColumn", "", s:background, "")
|
||||
if version >= 700
|
||||
call <SID>X("CursorLine", "", s:line, "none")
|
||||
call <SID>X("CursorColumn", "", s:line, "none")
|
||||
call <SID>X("PMenu", s:foreground, s:selection, "none")
|
||||
call <SID>X("PMenuSel", s:foreground, s:selection, "reverse")
|
||||
call <SID>X("SignColumn", "", s:background, "none")
|
||||
end
|
||||
if version >= 703
|
||||
call <SID>X("ColorColumn", "", s:line, "none")
|
||||
end
|
||||
|
||||
" Standard Highlighting
|
||||
call <SID>X("Comment", s:comment, "", "")
|
||||
call <SID>X("Todo", s:comment, s:background, "")
|
||||
call <SID>X("Title", s:comment, "", "")
|
||||
call <SID>X("Identifier", s:red, "", "none")
|
||||
call <SID>X("Statement", s:foreground, "", "")
|
||||
call <SID>X("Conditional", s:foreground, "", "")
|
||||
call <SID>X("Repeat", s:foreground, "", "")
|
||||
call <SID>X("Structure", s:purple, "", "")
|
||||
call <SID>X("Function", s:blue, "", "")
|
||||
call <SID>X("Constant", s:orange, "", "")
|
||||
call <SID>X("Keyword", s:orange, "", "")
|
||||
call <SID>X("String", s:green, "", "")
|
||||
call <SID>X("Special", s:foreground, "", "")
|
||||
call <SID>X("PreProc", s:purple, "", "")
|
||||
call <SID>X("Operator", s:aqua, "", "none")
|
||||
call <SID>X("Type", s:blue, "", "none")
|
||||
call <SID>X("Define", s:purple, "", "none")
|
||||
call <SID>X("Include", s:blue, "", "")
|
||||
"call <SID>X("Ignore", "666666", "", "")
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("vimCommand", s:red, "", "none")
|
||||
|
||||
" C Highlighting
|
||||
call <SID>X("cType", s:yellow, "", "")
|
||||
call <SID>X("cStorageClass", s:purple, "", "")
|
||||
call <SID>X("cConditional", s:purple, "", "")
|
||||
call <SID>X("cRepeat", s:purple, "", "")
|
||||
|
||||
" PHP Highlighting
|
||||
call <SID>X("phpVarSelector", s:red, "", "")
|
||||
call <SID>X("phpKeyword", s:purple, "", "")
|
||||
call <SID>X("phpRepeat", s:purple, "", "")
|
||||
call <SID>X("phpConditional", s:purple, "", "")
|
||||
call <SID>X("phpStatement", s:purple, "", "")
|
||||
call <SID>X("phpMemberSelector", s:foreground, "", "")
|
||||
|
||||
" Ruby Highlighting
|
||||
call <SID>X("rubySymbol", s:green, "", "")
|
||||
call <SID>X("rubyConstant", s:yellow, "", "")
|
||||
call <SID>X("rubyAccess", s:yellow, "", "")
|
||||
call <SID>X("rubyAttribute", s:blue, "", "")
|
||||
call <SID>X("rubyInclude", s:blue, "", "")
|
||||
call <SID>X("rubyLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("rubyCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("rubyStringDelimiter", s:green, "", "")
|
||||
call <SID>X("rubyInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("rubyConditional", s:purple, "", "")
|
||||
call <SID>X("rubyRepeat", s:purple, "", "")
|
||||
call <SID>X("rubyControl", s:purple, "", "")
|
||||
call <SID>X("rubyException", s:purple, "", "")
|
||||
|
||||
" Crystal Highlighting
|
||||
call <SID>X("crystalSymbol", s:green, "", "")
|
||||
call <SID>X("crystalConstant", s:yellow, "", "")
|
||||
call <SID>X("crystalAccess", s:yellow, "", "")
|
||||
call <SID>X("crystalAttribute", s:blue, "", "")
|
||||
call <SID>X("crystalInclude", s:blue, "", "")
|
||||
call <SID>X("crystalLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("crystalCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("crystalStringDelimiter", s:green, "", "")
|
||||
call <SID>X("crystalInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("crystalConditional", s:purple, "", "")
|
||||
call <SID>X("crystalRepeat", s:purple, "", "")
|
||||
call <SID>X("crystalControl", s:purple, "", "")
|
||||
call <SID>X("crystalException", s:purple, "", "")
|
||||
|
||||
" Python Highlighting
|
||||
call <SID>X("pythonInclude", s:purple, "", "")
|
||||
call <SID>X("pythonStatement", s:purple, "", "")
|
||||
call <SID>X("pythonConditional", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:purple, "", "")
|
||||
call <SID>X("pythonException", s:purple, "", "")
|
||||
call <SID>X("pythonFunction", s:blue, "", "")
|
||||
call <SID>X("pythonPreCondit", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:aqua, "", "")
|
||||
call <SID>X("pythonExClass", s:orange, "", "")
|
||||
|
||||
" JavaScript Highlighting
|
||||
call <SID>X("javaScriptBraces", s:foreground, "", "")
|
||||
call <SID>X("javaScriptFunction", s:purple, "", "")
|
||||
call <SID>X("javaScriptConditional", s:purple, "", "")
|
||||
call <SID>X("javaScriptRepeat", s:purple, "", "")
|
||||
call <SID>X("javaScriptNumber", s:orange, "", "")
|
||||
call <SID>X("javaScriptMember", s:orange, "", "")
|
||||
call <SID>X("javascriptNull", s:orange, "", "")
|
||||
call <SID>X("javascriptGlobal", s:blue, "", "")
|
||||
call <SID>X("javascriptStatement", s:red, "", "")
|
||||
|
||||
" CoffeeScript Highlighting
|
||||
call <SID>X("coffeeRepeat", s:purple, "", "")
|
||||
call <SID>X("coffeeConditional", s:purple, "", "")
|
||||
call <SID>X("coffeeKeyword", s:purple, "", "")
|
||||
call <SID>X("coffeeObject", s:yellow, "", "")
|
||||
|
||||
" HTML Highlighting
|
||||
call <SID>X("htmlTag", s:red, "", "")
|
||||
call <SID>X("htmlTagName", s:red, "", "")
|
||||
call <SID>X("htmlArg", s:red, "", "")
|
||||
call <SID>X("htmlScriptTag", s:red, "", "")
|
||||
|
||||
" Diff Highlighting
|
||||
call <SID>X("diffAdd", "", "4c4e39", "")
|
||||
call <SID>X("diffDelete", s:background, s:red, "")
|
||||
call <SID>X("diffChange", "", "2B5B77", "")
|
||||
call <SID>X("diffText", s:line, s:blue, "")
|
||||
|
||||
" ShowMarks Highlighting
|
||||
call <SID>X("ShowMarksHLl", s:orange, s:background, "none")
|
||||
call <SID>X("ShowMarksHLo", s:purple, s:background, "none")
|
||||
call <SID>X("ShowMarksHLu", s:yellow, s:background, "none")
|
||||
call <SID>X("ShowMarksHLm", s:aqua, s:background, "none")
|
||||
|
||||
" Lua Highlighting
|
||||
call <SID>X("luaStatement", s:purple, "", "")
|
||||
call <SID>X("luaRepeat", s:purple, "", "")
|
||||
call <SID>X("luaCondStart", s:purple, "", "")
|
||||
call <SID>X("luaCondElseif", s:purple, "", "")
|
||||
call <SID>X("luaCond", s:purple, "", "")
|
||||
call <SID>X("luaCondEnd", s:purple, "", "")
|
||||
|
||||
" Cucumber Highlighting
|
||||
call <SID>X("cucumberGiven", s:blue, "", "")
|
||||
call <SID>X("cucumberGivenAnd", s:blue, "", "")
|
||||
|
||||
" Go Highlighting
|
||||
call <SID>X("goDirective", s:purple, "", "")
|
||||
call <SID>X("goDeclaration", s:purple, "", "")
|
||||
call <SID>X("goStatement", s:purple, "", "")
|
||||
call <SID>X("goConditional", s:purple, "", "")
|
||||
call <SID>X("goConstants", s:orange, "", "")
|
||||
call <SID>X("goTodo", s:yellow, "", "")
|
||||
call <SID>X("goDeclType", s:blue, "", "")
|
||||
call <SID>X("goBuiltins", s:purple, "", "")
|
||||
call <SID>X("goRepeat", s:purple, "", "")
|
||||
call <SID>X("goLabel", s:purple, "", "")
|
||||
|
||||
" Clojure Highlighting
|
||||
call <SID>X("clojureConstant", s:orange, "", "")
|
||||
call <SID>X("clojureBoolean", s:orange, "", "")
|
||||
call <SID>X("clojureCharacter", s:orange, "", "")
|
||||
call <SID>X("clojureKeyword", s:green, "", "")
|
||||
call <SID>X("clojureNumber", s:orange, "", "")
|
||||
call <SID>X("clojureString", s:green, "", "")
|
||||
call <SID>X("clojureRegexp", s:green, "", "")
|
||||
call <SID>X("clojureParen", s:aqua, "", "")
|
||||
call <SID>X("clojureVariable", s:yellow, "", "")
|
||||
call <SID>X("clojureCond", s:blue, "", "")
|
||||
call <SID>X("clojureDefine", s:purple, "", "")
|
||||
call <SID>X("clojureException", s:red, "", "")
|
||||
call <SID>X("clojureFunc", s:blue, "", "")
|
||||
call <SID>X("clojureMacro", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureSpecial", s:purple, "", "")
|
||||
call <SID>X("clojureQuote", s:blue, "", "")
|
||||
call <SID>X("clojureUnquote", s:blue, "", "")
|
||||
call <SID>X("clojureMeta", s:blue, "", "")
|
||||
call <SID>X("clojureDeref", s:blue, "", "")
|
||||
call <SID>X("clojureAnonArg", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureDispatch", s:blue, "", "")
|
||||
|
||||
" Scala Highlighting
|
||||
call <SID>X("scalaKeyword", s:purple, "", "")
|
||||
call <SID>X("scalaKeywordModifier", s:purple, "", "")
|
||||
call <SID>X("scalaOperator", s:blue, "", "")
|
||||
call <SID>X("scalaPackage", s:red, "", "")
|
||||
call <SID>X("scalaFqn", s:foreground, "", "")
|
||||
call <SID>X("scalaFqnSet", s:foreground, "", "")
|
||||
call <SID>X("scalaImport", s:purple, "", "")
|
||||
call <SID>X("scalaBoolean", s:orange, "", "")
|
||||
call <SID>X("scalaDef", s:purple, "", "")
|
||||
call <SID>X("scalaVal", s:purple, "", "")
|
||||
call <SID>X("scalaVar", s:aqua, "", "")
|
||||
call <SID>X("scalaClass", s:purple, "", "")
|
||||
call <SID>X("scalaObject", s:purple, "", "")
|
||||
call <SID>X("scalaTrait", s:purple, "", "")
|
||||
call <SID>X("scalaDefName", s:blue, "", "")
|
||||
call <SID>X("scalaValName", s:foreground, "", "")
|
||||
call <SID>X("scalaVarName", s:foreground, "", "")
|
||||
call <SID>X("scalaClassName", s:foreground, "", "")
|
||||
call <SID>X("scalaType", s:yellow, "", "")
|
||||
call <SID>X("scalaTypeSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaAnnotation", s:orange, "", "")
|
||||
call <SID>X("scalaNumber", s:orange, "", "")
|
||||
call <SID>X("scalaDefSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaClassSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:green, "", "")
|
||||
call <SID>X("scalaRoot", s:foreground, "", "")
|
||||
call <SID>X("scalaMethodCall", s:blue, "", "")
|
||||
call <SID>X("scalaCaseType", s:yellow, "", "")
|
||||
call <SID>X("scalaLineComment", s:comment, "", "")
|
||||
call <SID>X("scalaComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocTags", s:comment, "", "")
|
||||
call <SID>X("scalaEmptyString", s:green, "", "")
|
||||
call <SID>X("scalaMultiLineString", s:green, "", "")
|
||||
call <SID>X("scalaUnicode", s:orange, "", "")
|
||||
call <SID>X("scalaString", s:green, "", "")
|
||||
call <SID>X("scalaStringEscape", s:green, "", "")
|
||||
call <SID>X("scalaSymbol", s:orange, "", "")
|
||||
call <SID>X("scalaChar", s:orange, "", "")
|
||||
call <SID>X("scalaXml", s:green, "", "")
|
||||
call <SID>X("scalaConstructorSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:blue, "", "")
|
||||
|
||||
" Git
|
||||
call <SID>X("diffAdded", s:green, "", "")
|
||||
call <SID>X("diffRemoved", s:red, "", "")
|
||||
call <SID>X("gitcommitSummary", "", "", "bold")
|
||||
|
||||
" Delete Functions
|
||||
delf <SID>X
|
||||
delf <SID>rgb
|
||||
delf <SID>colour
|
||||
delf <SID>rgb_colour
|
||||
delf <SID>rgb_level
|
||||
delf <SID>rgb_number
|
||||
delf <SID>grey_colour
|
||||
delf <SID>grey_level
|
||||
delf <SID>grey_number
|
||||
endif
|
||||
|
||||
set background=dark
|
@ -1,489 +0,0 @@
|
||||
" 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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>colour(r, g, b)
|
||||
" Get the closest grey
|
||||
let l:gx = <SID>grey_number(a:r)
|
||||
let l:gy = <SID>grey_number(a:g)
|
||||
let l:gz = <SID>grey_number(a:b)
|
||||
|
||||
" Get the closest colour
|
||||
let l:x = <SID>rgb_number(a:r)
|
||||
let l:y = <SID>rgb_number(a:g)
|
||||
let l:z = <SID>rgb_number(a:b)
|
||||
|
||||
if l:gx == l:gy && l:gy == l:gz
|
||||
" There are two possibilities
|
||||
let l:dgr = <SID>grey_level(l:gx) - a:r
|
||||
let l:dgg = <SID>grey_level(l:gy) - a:g
|
||||
let l:dgb = <SID>grey_level(l:gz) - a:b
|
||||
let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb)
|
||||
let l:dr = <SID>rgb_level(l:gx) - a:r
|
||||
let l:dg = <SID>rgb_level(l:gy) - a:g
|
||||
let l:db = <SID>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 <SID>grey_colour(l:gx)
|
||||
else
|
||||
" Use the colour
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
else
|
||||
" Only one possibility
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Returns the palette index to approximate the 'rrggbb' hex string
|
||||
fun <SID>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 <SID>colour(l:r, l:g, l:b)
|
||||
endfun
|
||||
|
||||
" Sets the highlighting for the given group
|
||||
fun <SID>X(group, fg, bg, attr)
|
||||
if a:fg != ""
|
||||
exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . <SID>rgb(a:fg)
|
||||
endif
|
||||
if a:bg != ""
|
||||
exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . <SID>rgb(a:bg)
|
||||
endif
|
||||
if a:attr != ""
|
||||
exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("Normal", s:foreground, s:background, "")
|
||||
call <SID>X("LineNr", s:selection, "", "")
|
||||
call <SID>X("NonText", s:selection, "", "")
|
||||
call <SID>X("SpecialKey", s:selection, "", "")
|
||||
call <SID>X("Search", s:background, s:yellow, "")
|
||||
call <SID>X("TabLine", s:window, s:foreground, "reverse")
|
||||
call <SID>X("TabLineFill", s:window, s:foreground, "reverse")
|
||||
call <SID>X("StatusLine", s:window, s:yellow, "reverse")
|
||||
call <SID>X("StatusLineNC", s:window, s:foreground, "reverse")
|
||||
call <SID>X("VertSplit", s:window, s:window, "none")
|
||||
call <SID>X("Visual", "", s:selection, "")
|
||||
call <SID>X("Directory", s:blue, "", "")
|
||||
call <SID>X("ModeMsg", s:green, "", "")
|
||||
call <SID>X("MoreMsg", s:green, "", "")
|
||||
call <SID>X("Question", s:green, "", "")
|
||||
call <SID>X("WarningMsg", s:red, "", "")
|
||||
call <SID>X("MatchParen", "", s:selection, "")
|
||||
call <SID>X("Folded", s:comment, s:background, "")
|
||||
call <SID>X("FoldColumn", "", s:background, "")
|
||||
if version >= 700
|
||||
call <SID>X("CursorLine", "", s:line, "none")
|
||||
call <SID>X("CursorColumn", "", s:line, "none")
|
||||
call <SID>X("PMenu", s:foreground, s:selection, "none")
|
||||
call <SID>X("PMenuSel", s:foreground, s:selection, "reverse")
|
||||
call <SID>X("SignColumn", "", s:background, "none")
|
||||
end
|
||||
if version >= 703
|
||||
call <SID>X("ColorColumn", "", s:line, "none")
|
||||
end
|
||||
|
||||
" Standard Highlighting
|
||||
call <SID>X("Comment", s:comment, "", "")
|
||||
call <SID>X("Todo", s:comment, s:background, "")
|
||||
call <SID>X("Title", s:comment, "", "")
|
||||
call <SID>X("Identifier", s:red, "", "none")
|
||||
call <SID>X("Statement", s:foreground, "", "")
|
||||
call <SID>X("Conditional", s:foreground, "", "")
|
||||
call <SID>X("Repeat", s:foreground, "", "")
|
||||
call <SID>X("Structure", s:purple, "", "")
|
||||
call <SID>X("Function", s:blue, "", "")
|
||||
call <SID>X("Constant", s:orange, "", "")
|
||||
call <SID>X("Keyword", s:orange, "", "")
|
||||
call <SID>X("String", s:green, "", "")
|
||||
call <SID>X("Special", s:foreground, "", "")
|
||||
call <SID>X("PreProc", s:purple, "", "")
|
||||
call <SID>X("Operator", s:aqua, "", "none")
|
||||
call <SID>X("Type", s:blue, "", "none")
|
||||
call <SID>X("Define", s:purple, "", "none")
|
||||
call <SID>X("Include", s:blue, "", "")
|
||||
"call <SID>X("Ignore", "666666", "", "")
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("vimCommand", s:red, "", "none")
|
||||
|
||||
" C Highlighting
|
||||
call <SID>X("cType", s:yellow, "", "")
|
||||
call <SID>X("cStorageClass", s:purple, "", "")
|
||||
call <SID>X("cConditional", s:purple, "", "")
|
||||
call <SID>X("cRepeat", s:purple, "", "")
|
||||
|
||||
" PHP Highlighting
|
||||
call <SID>X("phpVarSelector", s:red, "", "")
|
||||
call <SID>X("phpKeyword", s:purple, "", "")
|
||||
call <SID>X("phpRepeat", s:purple, "", "")
|
||||
call <SID>X("phpConditional", s:purple, "", "")
|
||||
call <SID>X("phpStatement", s:purple, "", "")
|
||||
call <SID>X("phpMemberSelector", s:foreground, "", "")
|
||||
|
||||
" Ruby Highlighting
|
||||
call <SID>X("rubySymbol", s:green, "", "")
|
||||
call <SID>X("rubyConstant", s:yellow, "", "")
|
||||
call <SID>X("rubyAccess", s:yellow, "", "")
|
||||
call <SID>X("rubyAttribute", s:blue, "", "")
|
||||
call <SID>X("rubyInclude", s:blue, "", "")
|
||||
call <SID>X("rubyLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("rubyCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("rubyStringDelimiter", s:green, "", "")
|
||||
call <SID>X("rubyInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("rubyConditional", s:purple, "", "")
|
||||
call <SID>X("rubyRepeat", s:purple, "", "")
|
||||
call <SID>X("rubyControl", s:purple, "", "")
|
||||
call <SID>X("rubyException", s:purple, "", "")
|
||||
|
||||
" Crystal Highlighting
|
||||
call <SID>X("crystalSymbol", s:green, "", "")
|
||||
call <SID>X("crystalConstant", s:yellow, "", "")
|
||||
call <SID>X("crystalAccess", s:yellow, "", "")
|
||||
call <SID>X("crystalAttribute", s:blue, "", "")
|
||||
call <SID>X("crystalInclude", s:blue, "", "")
|
||||
call <SID>X("crystalLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("crystalCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("crystalStringDelimiter", s:green, "", "")
|
||||
call <SID>X("crystalInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("crystalConditional", s:purple, "", "")
|
||||
call <SID>X("crystalRepeat", s:purple, "", "")
|
||||
call <SID>X("crystalControl", s:purple, "", "")
|
||||
call <SID>X("crystalException", s:purple, "", "")
|
||||
|
||||
" Python Highlighting
|
||||
call <SID>X("pythonInclude", s:purple, "", "")
|
||||
call <SID>X("pythonStatement", s:purple, "", "")
|
||||
call <SID>X("pythonConditional", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:purple, "", "")
|
||||
call <SID>X("pythonException", s:purple, "", "")
|
||||
call <SID>X("pythonFunction", s:blue, "", "")
|
||||
call <SID>X("pythonPreCondit", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:aqua, "", "")
|
||||
call <SID>X("pythonExClass", s:orange, "", "")
|
||||
|
||||
" JavaScript Highlighting
|
||||
call <SID>X("javaScriptBraces", s:foreground, "", "")
|
||||
call <SID>X("javaScriptFunction", s:purple, "", "")
|
||||
call <SID>X("javaScriptConditional", s:purple, "", "")
|
||||
call <SID>X("javaScriptRepeat", s:purple, "", "")
|
||||
call <SID>X("javaScriptNumber", s:orange, "", "")
|
||||
call <SID>X("javaScriptMember", s:orange, "", "")
|
||||
call <SID>X("javascriptNull", s:orange, "", "")
|
||||
call <SID>X("javascriptGlobal", s:blue, "", "")
|
||||
call <SID>X("javascriptStatement", s:red, "", "")
|
||||
|
||||
" CoffeeScript Highlighting
|
||||
call <SID>X("coffeeRepeat", s:purple, "", "")
|
||||
call <SID>X("coffeeConditional", s:purple, "", "")
|
||||
call <SID>X("coffeeKeyword", s:purple, "", "")
|
||||
call <SID>X("coffeeObject", s:yellow, "", "")
|
||||
|
||||
" HTML Highlighting
|
||||
call <SID>X("htmlTag", s:red, "", "")
|
||||
call <SID>X("htmlTagName", s:red, "", "")
|
||||
call <SID>X("htmlArg", s:red, "", "")
|
||||
call <SID>X("htmlScriptTag", s:red, "", "")
|
||||
|
||||
" Diff Highlighting
|
||||
call <SID>X("diffAdd", "", "4c4e39", "")
|
||||
call <SID>X("diffDelete", s:background, s:red, "")
|
||||
call <SID>X("diffChange", "", "2B5B77", "")
|
||||
call <SID>X("diffText", s:line, s:blue, "")
|
||||
|
||||
" ShowMarks Highlighting
|
||||
call <SID>X("ShowMarksHLl", s:orange, s:background, "none")
|
||||
call <SID>X("ShowMarksHLo", s:purple, s:background, "none")
|
||||
call <SID>X("ShowMarksHLu", s:yellow, s:background, "none")
|
||||
call <SID>X("ShowMarksHLm", s:aqua, s:background, "none")
|
||||
|
||||
" Lua Highlighting
|
||||
call <SID>X("luaStatement", s:purple, "", "")
|
||||
call <SID>X("luaRepeat", s:purple, "", "")
|
||||
call <SID>X("luaCondStart", s:purple, "", "")
|
||||
call <SID>X("luaCondElseif", s:purple, "", "")
|
||||
call <SID>X("luaCond", s:purple, "", "")
|
||||
call <SID>X("luaCondEnd", s:purple, "", "")
|
||||
|
||||
" Cucumber Highlighting
|
||||
call <SID>X("cucumberGiven", s:blue, "", "")
|
||||
call <SID>X("cucumberGivenAnd", s:blue, "", "")
|
||||
|
||||
" Go Highlighting
|
||||
call <SID>X("goDirective", s:purple, "", "")
|
||||
call <SID>X("goDeclaration", s:purple, "", "")
|
||||
call <SID>X("goStatement", s:purple, "", "")
|
||||
call <SID>X("goConditional", s:purple, "", "")
|
||||
call <SID>X("goConstants", s:orange, "", "")
|
||||
call <SID>X("goTodo", s:yellow, "", "")
|
||||
call <SID>X("goDeclType", s:blue, "", "")
|
||||
call <SID>X("goBuiltins", s:purple, "", "")
|
||||
call <SID>X("goRepeat", s:purple, "", "")
|
||||
call <SID>X("goLabel", s:purple, "", "")
|
||||
|
||||
" Clojure Highlighting
|
||||
call <SID>X("clojureConstant", s:orange, "", "")
|
||||
call <SID>X("clojureBoolean", s:orange, "", "")
|
||||
call <SID>X("clojureCharacter", s:orange, "", "")
|
||||
call <SID>X("clojureKeyword", s:green, "", "")
|
||||
call <SID>X("clojureNumber", s:orange, "", "")
|
||||
call <SID>X("clojureString", s:green, "", "")
|
||||
call <SID>X("clojureRegexp", s:green, "", "")
|
||||
call <SID>X("clojureParen", s:aqua, "", "")
|
||||
call <SID>X("clojureVariable", s:yellow, "", "")
|
||||
call <SID>X("clojureCond", s:blue, "", "")
|
||||
call <SID>X("clojureDefine", s:purple, "", "")
|
||||
call <SID>X("clojureException", s:red, "", "")
|
||||
call <SID>X("clojureFunc", s:blue, "", "")
|
||||
call <SID>X("clojureMacro", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureSpecial", s:purple, "", "")
|
||||
call <SID>X("clojureQuote", s:blue, "", "")
|
||||
call <SID>X("clojureUnquote", s:blue, "", "")
|
||||
call <SID>X("clojureMeta", s:blue, "", "")
|
||||
call <SID>X("clojureDeref", s:blue, "", "")
|
||||
call <SID>X("clojureAnonArg", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureDispatch", s:blue, "", "")
|
||||
|
||||
" Scala Highlighting
|
||||
call <SID>X("scalaKeyword", s:purple, "", "")
|
||||
call <SID>X("scalaKeywordModifier", s:purple, "", "")
|
||||
call <SID>X("scalaOperator", s:blue, "", "")
|
||||
call <SID>X("scalaPackage", s:red, "", "")
|
||||
call <SID>X("scalaFqn", s:foreground, "", "")
|
||||
call <SID>X("scalaFqnSet", s:foreground, "", "")
|
||||
call <SID>X("scalaImport", s:purple, "", "")
|
||||
call <SID>X("scalaBoolean", s:orange, "", "")
|
||||
call <SID>X("scalaDef", s:purple, "", "")
|
||||
call <SID>X("scalaVal", s:purple, "", "")
|
||||
call <SID>X("scalaVar", s:aqua, "", "")
|
||||
call <SID>X("scalaClass", s:purple, "", "")
|
||||
call <SID>X("scalaObject", s:purple, "", "")
|
||||
call <SID>X("scalaTrait", s:purple, "", "")
|
||||
call <SID>X("scalaDefName", s:blue, "", "")
|
||||
call <SID>X("scalaValName", s:foreground, "", "")
|
||||
call <SID>X("scalaVarName", s:foreground, "", "")
|
||||
call <SID>X("scalaClassName", s:foreground, "", "")
|
||||
call <SID>X("scalaType", s:yellow, "", "")
|
||||
call <SID>X("scalaTypeSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaAnnotation", s:orange, "", "")
|
||||
call <SID>X("scalaNumber", s:orange, "", "")
|
||||
call <SID>X("scalaDefSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaClassSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:green, "", "")
|
||||
call <SID>X("scalaRoot", s:foreground, "", "")
|
||||
call <SID>X("scalaMethodCall", s:blue, "", "")
|
||||
call <SID>X("scalaCaseType", s:yellow, "", "")
|
||||
call <SID>X("scalaLineComment", s:comment, "", "")
|
||||
call <SID>X("scalaComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocTags", s:comment, "", "")
|
||||
call <SID>X("scalaEmptyString", s:green, "", "")
|
||||
call <SID>X("scalaMultiLineString", s:green, "", "")
|
||||
call <SID>X("scalaUnicode", s:orange, "", "")
|
||||
call <SID>X("scalaString", s:green, "", "")
|
||||
call <SID>X("scalaStringEscape", s:green, "", "")
|
||||
call <SID>X("scalaSymbol", s:orange, "", "")
|
||||
call <SID>X("scalaChar", s:orange, "", "")
|
||||
call <SID>X("scalaXml", s:green, "", "")
|
||||
call <SID>X("scalaConstructorSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:blue, "", "")
|
||||
|
||||
" Git
|
||||
call <SID>X("diffAdded", s:green, "", "")
|
||||
call <SID>X("diffRemoved", s:red, "", "")
|
||||
call <SID>X("gitcommitSummary", "", "", "bold")
|
||||
|
||||
" Delete Functions
|
||||
delf <SID>X
|
||||
delf <SID>rgb
|
||||
delf <SID>colour
|
||||
delf <SID>rgb_colour
|
||||
delf <SID>rgb_level
|
||||
delf <SID>rgb_number
|
||||
delf <SID>grey_colour
|
||||
delf <SID>grey_level
|
||||
delf <SID>grey_number
|
||||
endif
|
||||
|
||||
set background=dark
|
@ -1,497 +0,0 @@
|
||||
" 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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>colour(r, g, b)
|
||||
" Get the closest grey
|
||||
let l:gx = <SID>grey_number(a:r)
|
||||
let l:gy = <SID>grey_number(a:g)
|
||||
let l:gz = <SID>grey_number(a:b)
|
||||
|
||||
" Get the closest colour
|
||||
let l:x = <SID>rgb_number(a:r)
|
||||
let l:y = <SID>rgb_number(a:g)
|
||||
let l:z = <SID>rgb_number(a:b)
|
||||
|
||||
if l:gx == l:gy && l:gy == l:gz
|
||||
" There are two possibilities
|
||||
let l:dgr = <SID>grey_level(l:gx) - a:r
|
||||
let l:dgg = <SID>grey_level(l:gy) - a:g
|
||||
let l:dgb = <SID>grey_level(l:gz) - a:b
|
||||
let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb)
|
||||
let l:dr = <SID>rgb_level(l:gx) - a:r
|
||||
let l:dg = <SID>rgb_level(l:gy) - a:g
|
||||
let l:db = <SID>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 <SID>grey_colour(l:gx)
|
||||
else
|
||||
" Use the colour
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
else
|
||||
" Only one possibility
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Returns the palette index to approximate the 'rrggbb' hex string
|
||||
fun <SID>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 <SID>colour(l:r, l:g, l:b)
|
||||
endfun
|
||||
|
||||
" Sets the highlighting for the given group
|
||||
fun <SID>X(group, fg, bg, attr)
|
||||
if a:fg != ""
|
||||
exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . <SID>rgb(a:fg)
|
||||
endif
|
||||
if a:bg != ""
|
||||
exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . <SID>rgb(a:bg)
|
||||
endif
|
||||
if a:attr != ""
|
||||
exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("Normal", s:foreground, s:background, "")
|
||||
call <SID>X("LineNr", s:selection, "", "")
|
||||
call <SID>X("NonText", s:selection, "", "")
|
||||
call <SID>X("SpecialKey", s:selection, "", "")
|
||||
call <SID>X("Search", s:background, s:yellow, "")
|
||||
call <SID>X("TabLine", s:window, s:foreground, "reverse")
|
||||
call <SID>X("TabLineFill", s:window, s:foreground, "reverse")
|
||||
call <SID>X("StatusLine", s:window, s:yellow, "reverse")
|
||||
call <SID>X("StatusLineNC", s:window, s:foreground, "reverse")
|
||||
call <SID>X("VertSplit", s:window, s:window, "none")
|
||||
call <SID>X("Visual", "", s:selection, "")
|
||||
call <SID>X("Directory", s:blue, "", "")
|
||||
call <SID>X("ModeMsg", s:green, "", "")
|
||||
call <SID>X("MoreMsg", s:green, "", "")
|
||||
call <SID>X("Question", s:green, "", "")
|
||||
call <SID>X("WarningMsg", s:red, "", "")
|
||||
call <SID>X("MatchParen", "", s:selection, "")
|
||||
call <SID>X("Folded", s:comment, s:background, "")
|
||||
call <SID>X("FoldColumn", "", s:background, "")
|
||||
if version >= 700
|
||||
call <SID>X("CursorLine", "", s:line, "none")
|
||||
call <SID>X("CursorColumn", "", s:line, "none")
|
||||
call <SID>X("PMenu", s:foreground, s:selection, "none")
|
||||
call <SID>X("PMenuSel", s:foreground, s:selection, "reverse")
|
||||
call <SID>X("SignColumn", "", s:background, "none")
|
||||
end
|
||||
if version >= 703
|
||||
call <SID>X("ColorColumn", "", s:line, "none")
|
||||
end
|
||||
|
||||
" Standard Highlighting
|
||||
call <SID>X("Comment", s:comment, "", "")
|
||||
call <SID>X("Todo", s:comment, s:background, "")
|
||||
call <SID>X("Title", s:comment, "", "")
|
||||
call <SID>X("Identifier", s:red, "", "none")
|
||||
call <SID>X("Statement", s:foreground, "", "")
|
||||
call <SID>X("Conditional", s:foreground, "", "")
|
||||
call <SID>X("Repeat", s:foreground, "", "")
|
||||
call <SID>X("Structure", s:purple, "", "")
|
||||
call <SID>X("Function", s:blue, "", "")
|
||||
call <SID>X("Constant", s:orange, "", "")
|
||||
call <SID>X("Keyword", s:orange, "", "")
|
||||
call <SID>X("String", s:green, "", "")
|
||||
call <SID>X("Special", s:foreground, "", "")
|
||||
call <SID>X("PreProc", s:purple, "", "")
|
||||
call <SID>X("Operator", s:aqua, "", "none")
|
||||
call <SID>X("Type", s:blue, "", "none")
|
||||
call <SID>X("Define", s:purple, "", "none")
|
||||
call <SID>X("Include", s:blue, "", "")
|
||||
"call <SID>X("Ignore", "666666", "", "")
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("vimCommand", s:red, "", "none")
|
||||
|
||||
" C Highlighting
|
||||
call <SID>X("cType", s:yellow, "", "")
|
||||
call <SID>X("cStorageClass", s:purple, "", "")
|
||||
call <SID>X("cConditional", s:purple, "", "")
|
||||
call <SID>X("cRepeat", s:purple, "", "")
|
||||
|
||||
" PHP Highlighting
|
||||
call <SID>X("phpVarSelector", s:red, "", "")
|
||||
call <SID>X("phpKeyword", s:purple, "", "")
|
||||
call <SID>X("phpRepeat", s:purple, "", "")
|
||||
call <SID>X("phpConditional", s:purple, "", "")
|
||||
call <SID>X("phpStatement", s:purple, "", "")
|
||||
call <SID>X("phpMemberSelector", s:foreground, "", "")
|
||||
|
||||
" Ruby Highlighting
|
||||
call <SID>X("rubySymbol", s:green, "", "")
|
||||
call <SID>X("rubyConstant", s:yellow, "", "")
|
||||
call <SID>X("rubyAccess", s:yellow, "", "")
|
||||
call <SID>X("rubyAttribute", s:blue, "", "")
|
||||
call <SID>X("rubyInclude", s:blue, "", "")
|
||||
call <SID>X("rubyLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("rubyCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("rubyStringDelimiter", s:green, "", "")
|
||||
call <SID>X("rubyInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("rubyConditional", s:purple, "", "")
|
||||
call <SID>X("rubyRepeat", s:purple, "", "")
|
||||
call <SID>X("rubyControl", s:purple, "", "")
|
||||
call <SID>X("rubyException", s:purple, "", "")
|
||||
|
||||
" Crystal Highlighting
|
||||
call <SID>X("crystalSymbol", s:green, "", "")
|
||||
call <SID>X("crystalConstant", s:yellow, "", "")
|
||||
call <SID>X("crystalAccess", s:yellow, "", "")
|
||||
call <SID>X("crystalAttribute", s:blue, "", "")
|
||||
call <SID>X("crystalInclude", s:blue, "", "")
|
||||
call <SID>X("crystalLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("crystalCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("crystalStringDelimiter", s:green, "", "")
|
||||
call <SID>X("crystalInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("crystalConditional", s:purple, "", "")
|
||||
call <SID>X("crystalRepeat", s:purple, "", "")
|
||||
call <SID>X("crystalControl", s:purple, "", "")
|
||||
call <SID>X("crystalException", s:purple, "", "")
|
||||
|
||||
" Python Highlighting
|
||||
call <SID>X("pythonInclude", s:purple, "", "")
|
||||
call <SID>X("pythonStatement", s:purple, "", "")
|
||||
call <SID>X("pythonConditional", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:purple, "", "")
|
||||
call <SID>X("pythonException", s:purple, "", "")
|
||||
call <SID>X("pythonFunction", s:blue, "", "")
|
||||
call <SID>X("pythonPreCondit", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:aqua, "", "")
|
||||
call <SID>X("pythonExClass", s:orange, "", "")
|
||||
|
||||
" JavaScript Highlighting
|
||||
call <SID>X("javaScriptBraces", s:foreground, "", "")
|
||||
call <SID>X("javaScriptFunction", s:purple, "", "")
|
||||
call <SID>X("javaScriptConditional", s:purple, "", "")
|
||||
call <SID>X("javaScriptRepeat", s:purple, "", "")
|
||||
call <SID>X("javaScriptNumber", s:orange, "", "")
|
||||
call <SID>X("javaScriptMember", s:orange, "", "")
|
||||
call <SID>X("javascriptNull", s:orange, "", "")
|
||||
call <SID>X("javascriptGlobal", s:blue, "", "")
|
||||
call <SID>X("javascriptStatement", s:red, "", "")
|
||||
|
||||
" CoffeeScript Highlighting
|
||||
call <SID>X("coffeeRepeat", s:purple, "", "")
|
||||
call <SID>X("coffeeConditional", s:purple, "", "")
|
||||
call <SID>X("coffeeKeyword", s:purple, "", "")
|
||||
call <SID>X("coffeeObject", s:yellow, "", "")
|
||||
|
||||
" HTML Highlighting
|
||||
call <SID>X("htmlTag", s:red, "", "")
|
||||
call <SID>X("htmlTagName", s:red, "", "")
|
||||
call <SID>X("htmlArg", s:red, "", "")
|
||||
call <SID>X("htmlScriptTag", s:red, "", "")
|
||||
|
||||
" Diff Highlighting
|
||||
call <SID>X("diffAdd", "", "4c4e39", "")
|
||||
call <SID>X("diffDelete", s:background, s:red, "")
|
||||
call <SID>X("diffChange", "", "2B5B77", "")
|
||||
call <SID>X("diffText", s:line, s:blue, "")
|
||||
|
||||
" ShowMarks Highlighting
|
||||
call <SID>X("ShowMarksHLl", s:orange, s:background, "none")
|
||||
call <SID>X("ShowMarksHLo", s:purple, s:background, "none")
|
||||
call <SID>X("ShowMarksHLu", s:yellow, s:background, "none")
|
||||
call <SID>X("ShowMarksHLm", s:aqua, s:background, "none")
|
||||
|
||||
" Lua Highlighting
|
||||
call <SID>X("luaStatement", s:purple, "", "")
|
||||
call <SID>X("luaRepeat", s:purple, "", "")
|
||||
call <SID>X("luaCondStart", s:purple, "", "")
|
||||
call <SID>X("luaCondElseif", s:purple, "", "")
|
||||
call <SID>X("luaCond", s:purple, "", "")
|
||||
call <SID>X("luaCondEnd", s:purple, "", "")
|
||||
|
||||
" Cucumber Highlighting
|
||||
call <SID>X("cucumberGiven", s:blue, "", "")
|
||||
call <SID>X("cucumberGivenAnd", s:blue, "", "")
|
||||
|
||||
" Go Highlighting
|
||||
call <SID>X("goDirective", s:purple, "", "")
|
||||
call <SID>X("goDeclaration", s:purple, "", "")
|
||||
call <SID>X("goStatement", s:purple, "", "")
|
||||
call <SID>X("goConditional", s:purple, "", "")
|
||||
call <SID>X("goConstants", s:orange, "", "")
|
||||
call <SID>X("goTodo", s:yellow, "", "")
|
||||
call <SID>X("goDeclType", s:blue, "", "")
|
||||
call <SID>X("goBuiltins", s:purple, "", "")
|
||||
call <SID>X("goRepeat", s:purple, "", "")
|
||||
call <SID>X("goLabel", s:purple, "", "")
|
||||
|
||||
" Clojure Highlighting
|
||||
call <SID>X("clojureConstant", s:orange, "", "")
|
||||
call <SID>X("clojureBoolean", s:orange, "", "")
|
||||
call <SID>X("clojureCharacter", s:orange, "", "")
|
||||
call <SID>X("clojureKeyword", s:green, "", "")
|
||||
call <SID>X("clojureNumber", s:orange, "", "")
|
||||
call <SID>X("clojureString", s:green, "", "")
|
||||
call <SID>X("clojureRegexp", s:green, "", "")
|
||||
call <SID>X("clojureParen", s:aqua, "", "")
|
||||
call <SID>X("clojureVariable", s:yellow, "", "")
|
||||
call <SID>X("clojureCond", s:blue, "", "")
|
||||
call <SID>X("clojureDefine", s:purple, "", "")
|
||||
call <SID>X("clojureException", s:red, "", "")
|
||||
call <SID>X("clojureFunc", s:blue, "", "")
|
||||
call <SID>X("clojureMacro", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureSpecial", s:purple, "", "")
|
||||
call <SID>X("clojureQuote", s:blue, "", "")
|
||||
call <SID>X("clojureUnquote", s:blue, "", "")
|
||||
call <SID>X("clojureMeta", s:blue, "", "")
|
||||
call <SID>X("clojureDeref", s:blue, "", "")
|
||||
call <SID>X("clojureAnonArg", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureDispatch", s:blue, "", "")
|
||||
|
||||
" Scala Highlighting
|
||||
call <SID>X("scalaKeyword", s:purple, "", "")
|
||||
call <SID>X("scalaKeywordModifier", s:purple, "", "")
|
||||
call <SID>X("scalaOperator", s:blue, "", "")
|
||||
call <SID>X("scalaPackage", s:red, "", "")
|
||||
call <SID>X("scalaFqn", s:foreground, "", "")
|
||||
call <SID>X("scalaFqnSet", s:foreground, "", "")
|
||||
call <SID>X("scalaImport", s:purple, "", "")
|
||||
call <SID>X("scalaBoolean", s:orange, "", "")
|
||||
call <SID>X("scalaDef", s:purple, "", "")
|
||||
call <SID>X("scalaVal", s:purple, "", "")
|
||||
call <SID>X("scalaVar", s:aqua, "", "")
|
||||
call <SID>X("scalaClass", s:purple, "", "")
|
||||
call <SID>X("scalaObject", s:purple, "", "")
|
||||
call <SID>X("scalaTrait", s:purple, "", "")
|
||||
call <SID>X("scalaDefName", s:blue, "", "")
|
||||
call <SID>X("scalaValName", s:foreground, "", "")
|
||||
call <SID>X("scalaVarName", s:foreground, "", "")
|
||||
call <SID>X("scalaClassName", s:foreground, "", "")
|
||||
call <SID>X("scalaType", s:yellow, "", "")
|
||||
call <SID>X("scalaTypeSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaAnnotation", s:orange, "", "")
|
||||
call <SID>X("scalaNumber", s:orange, "", "")
|
||||
call <SID>X("scalaDefSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaClassSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:green, "", "")
|
||||
call <SID>X("scalaRoot", s:foreground, "", "")
|
||||
call <SID>X("scalaMethodCall", s:blue, "", "")
|
||||
call <SID>X("scalaCaseType", s:yellow, "", "")
|
||||
call <SID>X("scalaLineComment", s:comment, "", "")
|
||||
call <SID>X("scalaComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocTags", s:comment, "", "")
|
||||
call <SID>X("scalaEmptyString", s:green, "", "")
|
||||
call <SID>X("scalaMultiLineString", s:green, "", "")
|
||||
call <SID>X("scalaUnicode", s:orange, "", "")
|
||||
call <SID>X("scalaString", s:green, "", "")
|
||||
call <SID>X("scalaStringEscape", s:green, "", "")
|
||||
call <SID>X("scalaSymbol", s:orange, "", "")
|
||||
call <SID>X("scalaChar", s:orange, "", "")
|
||||
call <SID>X("scalaXml", s:green, "", "")
|
||||
call <SID>X("scalaConstructorSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:blue, "", "")
|
||||
|
||||
" Git
|
||||
call <SID>X("diffAdded", s:green, "", "")
|
||||
call <SID>X("diffRemoved", s:red, "", "")
|
||||
call <SID>X("gitcommitSummary", "", "", "bold")
|
||||
|
||||
" Delete Functions
|
||||
delf <SID>X
|
||||
delf <SID>rgb
|
||||
delf <SID>colour
|
||||
delf <SID>rgb_colour
|
||||
delf <SID>rgb_level
|
||||
delf <SID>rgb_number
|
||||
delf <SID>grey_colour
|
||||
delf <SID>grey_level
|
||||
delf <SID>grey_number
|
||||
endif
|
||||
|
||||
set background=dark
|
@ -1,482 +0,0 @@
|
||||
" 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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>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 <SID>colour(r, g, b)
|
||||
" Get the closest grey
|
||||
let l:gx = <SID>grey_number(a:r)
|
||||
let l:gy = <SID>grey_number(a:g)
|
||||
let l:gz = <SID>grey_number(a:b)
|
||||
|
||||
" Get the closest colour
|
||||
let l:x = <SID>rgb_number(a:r)
|
||||
let l:y = <SID>rgb_number(a:g)
|
||||
let l:z = <SID>rgb_number(a:b)
|
||||
|
||||
if l:gx == l:gy && l:gy == l:gz
|
||||
" There are two possibilities
|
||||
let l:dgr = <SID>grey_level(l:gx) - a:r
|
||||
let l:dgg = <SID>grey_level(l:gy) - a:g
|
||||
let l:dgb = <SID>grey_level(l:gz) - a:b
|
||||
let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb)
|
||||
let l:dr = <SID>rgb_level(l:gx) - a:r
|
||||
let l:dg = <SID>rgb_level(l:gy) - a:g
|
||||
let l:db = <SID>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 <SID>grey_colour(l:gx)
|
||||
else
|
||||
" Use the colour
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
else
|
||||
" Only one possibility
|
||||
return <SID>rgb_colour(l:x, l:y, l:z)
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Returns the palette index to approximate the 'rrggbb' hex string
|
||||
fun <SID>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 <SID>colour(l:r, l:g, l:b)
|
||||
endfun
|
||||
|
||||
" Sets the highlighting for the given group
|
||||
fun <SID>X(group, fg, bg, attr)
|
||||
if a:fg != ""
|
||||
exec "hi " . a:group . " guifg=#" . a:fg . " ctermfg=" . <SID>rgb(a:fg)
|
||||
endif
|
||||
if a:bg != ""
|
||||
exec "hi " . a:group . " guibg=#" . a:bg . " ctermbg=" . <SID>rgb(a:bg)
|
||||
endif
|
||||
if a:attr != ""
|
||||
exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr
|
||||
endif
|
||||
endfun
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("Normal", s:foreground, s:background, "")
|
||||
highlight LineNr term=bold cterm=NONE ctermfg=DarkGrey ctermbg=NONE gui=NONE guifg=DarkGrey guibg=NONE
|
||||
call <SID>X("NonText", s:selection, "", "")
|
||||
call <SID>X("SpecialKey", s:selection, "", "")
|
||||
call <SID>X("Search", s:foreground, s:yellow, "")
|
||||
call <SID>X("TabLine", s:window, s:foreground, "reverse")
|
||||
call <SID>X("TabLineFill", s:window, s:foreground, "reverse")
|
||||
call <SID>X("StatusLine", s:window, s:yellow, "reverse")
|
||||
call <SID>X("StatusLineNC", s:window, s:foreground, "reverse")
|
||||
call <SID>X("VertSplit", s:window, s:window, "none")
|
||||
call <SID>X("Visual", "", s:selection, "")
|
||||
call <SID>X("Directory", s:blue, "", "")
|
||||
call <SID>X("ModeMsg", s:green, "", "")
|
||||
call <SID>X("MoreMsg", s:green, "", "")
|
||||
call <SID>X("Question", s:green, "", "")
|
||||
call <SID>X("WarningMsg", s:red, "", "")
|
||||
call <SID>X("MatchParen", "", s:selection, "")
|
||||
call <SID>X("Folded", s:comment, s:background, "")
|
||||
call <SID>X("FoldColumn", "", s:background, "")
|
||||
if version >= 700
|
||||
call <SID>X("CursorLine", "", s:line, "none")
|
||||
call <SID>X("CursorColumn", "", s:line, "none")
|
||||
call <SID>X("PMenu", s:foreground, s:selection, "none")
|
||||
call <SID>X("PMenuSel", s:foreground, s:selection, "reverse")
|
||||
call <SID>X("SignColumn", "", s:background, "none")
|
||||
end
|
||||
if version >= 703
|
||||
call <SID>X("ColorColumn", "", s:line, "none")
|
||||
end
|
||||
|
||||
" Standard Highlighting
|
||||
call <SID>X("Comment", s:comment, "", "")
|
||||
call <SID>X("Todo", s:comment, s:background, "")
|
||||
call <SID>X("Title", s:comment, "", "")
|
||||
call <SID>X("Identifier", s:red, "", "none")
|
||||
call <SID>X("Statement", s:foreground, "", "")
|
||||
call <SID>X("Conditional", s:foreground, "", "")
|
||||
call <SID>X("Repeat", s:foreground, "", "")
|
||||
call <SID>X("Structure", s:purple, "", "")
|
||||
call <SID>X("Function", s:blue, "", "")
|
||||
call <SID>X("Constant", s:orange, "", "")
|
||||
call <SID>X("Keyword", s:orange, "", "")
|
||||
call <SID>X("String", s:green, "", "")
|
||||
call <SID>X("Special", s:foreground, "", "")
|
||||
call <SID>X("PreProc", s:purple, "", "")
|
||||
call <SID>X("Operator", s:aqua, "", "none")
|
||||
call <SID>X("Type", s:blue, "", "none")
|
||||
call <SID>X("Define", s:purple, "", "none")
|
||||
call <SID>X("Include", s:blue, "", "")
|
||||
"call <SID>X("Ignore", "666666", "", "")
|
||||
|
||||
" Vim Highlighting
|
||||
call <SID>X("vimCommand", s:red, "", "none")
|
||||
|
||||
" C Highlighting
|
||||
call <SID>X("cType", s:yellow, "", "")
|
||||
call <SID>X("cStorageClass", s:purple, "", "")
|
||||
call <SID>X("cConditional", s:purple, "", "")
|
||||
call <SID>X("cRepeat", s:purple, "", "")
|
||||
|
||||
" PHP Highlighting
|
||||
call <SID>X("phpVarSelector", s:red, "", "")
|
||||
call <SID>X("phpKeyword", s:purple, "", "")
|
||||
call <SID>X("phpRepeat", s:purple, "", "")
|
||||
call <SID>X("phpConditional", s:purple, "", "")
|
||||
call <SID>X("phpStatement", s:purple, "", "")
|
||||
call <SID>X("phpMemberSelector", s:foreground, "", "")
|
||||
|
||||
" Ruby Highlighting
|
||||
call <SID>X("rubySymbol", s:green, "", "")
|
||||
call <SID>X("rubyConstant", s:yellow, "", "")
|
||||
call <SID>X("rubyAccess", s:yellow, "", "")
|
||||
call <SID>X("rubyAttribute", s:blue, "", "")
|
||||
call <SID>X("rubyInclude", s:blue, "", "")
|
||||
call <SID>X("rubyLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("rubyCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("rubyStringDelimiter", s:green, "", "")
|
||||
call <SID>X("rubyInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("rubyConditional", s:purple, "", "")
|
||||
call <SID>X("rubyRepeat", s:purple, "", "")
|
||||
call <SID>X("rubyControl", s:purple, "", "")
|
||||
call <SID>X("rubyException", s:purple, "", "")
|
||||
|
||||
" Crystal Highlighting
|
||||
call <SID>X("crystalSymbol", s:green, "", "")
|
||||
call <SID>X("crystalConstant", s:yellow, "", "")
|
||||
call <SID>X("crystalAccess", s:yellow, "", "")
|
||||
call <SID>X("crystalAttribute", s:blue, "", "")
|
||||
call <SID>X("crystalInclude", s:blue, "", "")
|
||||
call <SID>X("crystalLocalVariableOrMethod", s:orange, "", "")
|
||||
call <SID>X("crystalCurlyBlock", s:orange, "", "")
|
||||
call <SID>X("crystalStringDelimiter", s:green, "", "")
|
||||
call <SID>X("crystalInterpolationDelimiter", s:orange, "", "")
|
||||
call <SID>X("crystalConditional", s:purple, "", "")
|
||||
call <SID>X("crystalRepeat", s:purple, "", "")
|
||||
call <SID>X("crystalControl", s:purple, "", "")
|
||||
call <SID>X("crystalException", s:purple, "", "")
|
||||
|
||||
" Python Highlighting
|
||||
call <SID>X("pythonInclude", s:purple, "", "")
|
||||
call <SID>X("pythonStatement", s:purple, "", "")
|
||||
call <SID>X("pythonConditional", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:purple, "", "")
|
||||
call <SID>X("pythonException", s:purple, "", "")
|
||||
call <SID>X("pythonFunction", s:blue, "", "")
|
||||
call <SID>X("pythonPreCondit", s:purple, "", "")
|
||||
call <SID>X("pythonRepeat", s:aqua, "", "")
|
||||
call <SID>X("pythonExClass", s:orange, "", "")
|
||||
|
||||
" JavaScript Highlighting
|
||||
call <SID>X("javaScriptBraces", s:foreground, "", "")
|
||||
call <SID>X("javaScriptFunction", s:purple, "", "")
|
||||
call <SID>X("javaScriptConditional", s:purple, "", "")
|
||||
call <SID>X("javaScriptRepeat", s:purple, "", "")
|
||||
call <SID>X("javaScriptNumber", s:orange, "", "")
|
||||
call <SID>X("javaScriptMember", s:orange, "", "")
|
||||
call <SID>X("javascriptNull", s:orange, "", "")
|
||||
call <SID>X("javascriptGlobal", s:blue, "", "")
|
||||
call <SID>X("javascriptStatement", s:red, "", "")
|
||||
|
||||
" CoffeeScript Highlighting
|
||||
call <SID>X("coffeeRepeat", s:purple, "", "")
|
||||
call <SID>X("coffeeConditional", s:purple, "", "")
|
||||
call <SID>X("coffeeKeyword", s:purple, "", "")
|
||||
call <SID>X("coffeeObject", s:yellow, "", "")
|
||||
|
||||
" HTML Highlighting
|
||||
call <SID>X("htmlTag", s:red, "", "")
|
||||
call <SID>X("htmlTagName", s:red, "", "")
|
||||
call <SID>X("htmlArg", s:red, "", "")
|
||||
call <SID>X("htmlScriptTag", s:red, "", "")
|
||||
|
||||
" ShowMarks Highlighting
|
||||
call <SID>X("ShowMarksHLl", s:orange, s:background, "none")
|
||||
call <SID>X("ShowMarksHLo", s:purple, s:background, "none")
|
||||
call <SID>X("ShowMarksHLu", s:yellow, s:background, "none")
|
||||
call <SID>X("ShowMarksHLm", s:aqua, s:background, "none")
|
||||
|
||||
" Lua Highlighting
|
||||
call <SID>X("luaStatement", s:purple, "", "")
|
||||
call <SID>X("luaRepeat", s:purple, "", "")
|
||||
call <SID>X("luaCondStart", s:purple, "", "")
|
||||
call <SID>X("luaCondElseif", s:purple, "", "")
|
||||
call <SID>X("luaCond", s:purple, "", "")
|
||||
call <SID>X("luaCondEnd", s:purple, "", "")
|
||||
|
||||
" Cucumber Highlighting
|
||||
call <SID>X("cucumberGiven", s:blue, "", "")
|
||||
call <SID>X("cucumberGivenAnd", s:blue, "", "")
|
||||
|
||||
" Go Highlighting
|
||||
call <SID>X("goDirective", s:purple, "", "")
|
||||
call <SID>X("goDeclaration", s:purple, "", "")
|
||||
call <SID>X("goStatement", s:purple, "", "")
|
||||
call <SID>X("goConditional", s:purple, "", "")
|
||||
call <SID>X("goConstants", s:orange, "", "")
|
||||
call <SID>X("goTodo", s:yellow, "", "")
|
||||
call <SID>X("goDeclType", s:blue, "", "")
|
||||
call <SID>X("goBuiltins", s:purple, "", "")
|
||||
call <SID>X("goRepeat", s:purple, "", "")
|
||||
call <SID>X("goLabel", s:purple, "", "")
|
||||
|
||||
" Clojure Highlighting
|
||||
call <SID>X("clojureConstant", s:orange, "", "")
|
||||
call <SID>X("clojureBoolean", s:orange, "", "")
|
||||
call <SID>X("clojureCharacter", s:orange, "", "")
|
||||
call <SID>X("clojureKeyword", s:green, "", "")
|
||||
call <SID>X("clojureNumber", s:orange, "", "")
|
||||
call <SID>X("clojureString", s:green, "", "")
|
||||
call <SID>X("clojureRegexp", s:green, "", "")
|
||||
call <SID>X("clojureParen", s:aqua, "", "")
|
||||
call <SID>X("clojureVariable", s:yellow, "", "")
|
||||
call <SID>X("clojureCond", s:blue, "", "")
|
||||
call <SID>X("clojureDefine", s:purple, "", "")
|
||||
call <SID>X("clojureException", s:red, "", "")
|
||||
call <SID>X("clojureFunc", s:blue, "", "")
|
||||
call <SID>X("clojureMacro", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureSpecial", s:purple, "", "")
|
||||
call <SID>X("clojureQuote", s:blue, "", "")
|
||||
call <SID>X("clojureUnquote", s:blue, "", "")
|
||||
call <SID>X("clojureMeta", s:blue, "", "")
|
||||
call <SID>X("clojureDeref", s:blue, "", "")
|
||||
call <SID>X("clojureAnonArg", s:blue, "", "")
|
||||
call <SID>X("clojureRepeat", s:blue, "", "")
|
||||
call <SID>X("clojureDispatch", s:blue, "", "")
|
||||
|
||||
" Scala Highlighting
|
||||
call <SID>X("scalaKeyword", s:purple, "", "")
|
||||
call <SID>X("scalaKeywordModifier", s:purple, "", "")
|
||||
call <SID>X("scalaOperator", s:blue, "", "")
|
||||
call <SID>X("scalaPackage", s:red, "", "")
|
||||
call <SID>X("scalaFqn", s:foreground, "", "")
|
||||
call <SID>X("scalaFqnSet", s:foreground, "", "")
|
||||
call <SID>X("scalaImport", s:purple, "", "")
|
||||
call <SID>X("scalaBoolean", s:orange, "", "")
|
||||
call <SID>X("scalaDef", s:purple, "", "")
|
||||
call <SID>X("scalaVal", s:purple, "", "")
|
||||
call <SID>X("scalaVar", s:aqua, "", "")
|
||||
call <SID>X("scalaClass", s:purple, "", "")
|
||||
call <SID>X("scalaObject", s:purple, "", "")
|
||||
call <SID>X("scalaTrait", s:purple, "", "")
|
||||
call <SID>X("scalaDefName", s:blue, "", "")
|
||||
call <SID>X("scalaValName", s:foreground, "", "")
|
||||
call <SID>X("scalaVarName", s:foreground, "", "")
|
||||
call <SID>X("scalaClassName", s:foreground, "", "")
|
||||
call <SID>X("scalaType", s:yellow, "", "")
|
||||
call <SID>X("scalaTypeSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaAnnotation", s:orange, "", "")
|
||||
call <SID>X("scalaNumber", s:orange, "", "")
|
||||
call <SID>X("scalaDefSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaClassSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:green, "", "")
|
||||
call <SID>X("scalaRoot", s:foreground, "", "")
|
||||
call <SID>X("scalaMethodCall", s:blue, "", "")
|
||||
call <SID>X("scalaCaseType", s:yellow, "", "")
|
||||
call <SID>X("scalaLineComment", s:comment, "", "")
|
||||
call <SID>X("scalaComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocComment", s:comment, "", "")
|
||||
call <SID>X("scalaDocTags", s:comment, "", "")
|
||||
call <SID>X("scalaEmptyString", s:green, "", "")
|
||||
call <SID>X("scalaMultiLineString", s:green, "", "")
|
||||
call <SID>X("scalaUnicode", s:orange, "", "")
|
||||
call <SID>X("scalaString", s:green, "", "")
|
||||
call <SID>X("scalaStringEscape", s:green, "", "")
|
||||
call <SID>X("scalaSymbol", s:orange, "", "")
|
||||
call <SID>X("scalaChar", s:orange, "", "")
|
||||
call <SID>X("scalaXml", s:green, "", "")
|
||||
call <SID>X("scalaConstructorSpecializer", s:yellow, "", "")
|
||||
call <SID>X("scalaBackTick", s:blue, "", "")
|
||||
|
||||
" Git
|
||||
call <SID>X("diffAdded", s:green, "", "")
|
||||
call <SID>X("diffRemoved", s:red, "", "")
|
||||
call <SID>X("gitcommitSummary", "", "", "bold")
|
||||
|
||||
" Delete Functions
|
||||
delf <SID>X
|
||||
delf <SID>rgb
|
||||
delf <SID>colour
|
||||
delf <SID>rgb_colour
|
||||
delf <SID>rgb_level
|
||||
delf <SID>rgb_number
|
||||
delf <SID>grey_colour
|
||||
delf <SID>grey_level
|
||||
delf <SID>grey_number
|
||||
endif
|
20
colors/better-default.vim
Normal file
20
colors/better-default.vim
Normal file
@ -0,0 +1,20 @@
|
||||
" Vim color file
|
||||
|
||||
hi clear Normal
|
||||
set bg&
|
||||
|
||||
hi clear
|
||||
|
||||
hi CursorLine cterm=NONE
|
||||
|
||||
hi SignColumn ctermbg=NONE
|
||||
|
||||
hi FoldColumn ctermbg=NONE
|
||||
|
||||
if exists("syntax_on")
|
||||
syntax reset
|
||||
endif
|
||||
|
||||
let colors_name = "better-default"
|
||||
|
||||
" vim: sw=2
|
276
colors/molokai.vim
Normal file
276
colors/molokai.vim
Normal file
@ -0,0 +1,276 @@
|
||||
" Vim color file
|
||||
"
|
||||
" Author: Tomas Restrepo <tomas@winterdom.com>
|
||||
" https://github.com/tomasr/molokai
|
||||
"
|
||||
" Note: Based on the Monokai theme for TextMate
|
||||
" by Wimer Hazenberg and its darker variant
|
||||
" by Hamish Stuart Macpherson
|
||||
"
|
||||
|
||||
hi clear
|
||||
|
||||
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="molokai"
|
||||
|
||||
if exists("g:molokai_original")
|
||||
let s:molokai_original = g:molokai_original
|
||||
else
|
||||
let s:molokai_original = 0
|
||||
endif
|
||||
|
||||
|
||||
hi Boolean guifg=#AE81FF
|
||||
hi Character guifg=#E6DB74
|
||||
hi Number guifg=#AE81FF
|
||||
hi String guifg=#E6DB74
|
||||
hi Conditional guifg=#F92672 gui=bold
|
||||
hi Constant guifg=#AE81FF gui=bold
|
||||
hi Cursor guifg=#000000 guibg=#F8F8F0
|
||||
hi iCursor guifg=#000000 guibg=#F8F8F0
|
||||
hi Debug guifg=#BCA3A3 gui=bold
|
||||
hi Define guifg=#66D9EF
|
||||
hi Delimiter guifg=#8F8F8F
|
||||
hi DiffAdd guibg=#13354A
|
||||
hi DiffChange guifg=#89807D guibg=#4C4745
|
||||
hi DiffDelete guifg=#960050 guibg=#1E0010
|
||||
hi DiffText guibg=#4C4745 gui=italic,bold
|
||||
|
||||
hi Directory guifg=#A6E22E gui=bold
|
||||
hi Error guifg=#E6DB74 guibg=#1E0010
|
||||
hi ErrorMsg guifg=#F92672 guibg=#232526 gui=bold
|
||||
hi Exception guifg=#A6E22E gui=bold
|
||||
hi Float guifg=#AE81FF
|
||||
hi FoldColumn guifg=#465457 guibg=#000000
|
||||
hi Folded guifg=#465457 guibg=#000000
|
||||
hi Function guifg=#A6E22E
|
||||
hi Identifier guifg=#FD971F
|
||||
hi Ignore guifg=#808080 guibg=bg
|
||||
hi IncSearch guifg=#C4BE89 guibg=#000000
|
||||
|
||||
hi Keyword guifg=#F92672 gui=bold
|
||||
hi Label guifg=#E6DB74 gui=none
|
||||
hi Macro guifg=#C4BE89 gui=italic
|
||||
hi SpecialKey guifg=#66D9EF gui=italic
|
||||
|
||||
hi MatchParen guifg=#000000 guibg=#FD971F gui=bold
|
||||
hi ModeMsg guifg=#E6DB74
|
||||
hi MoreMsg guifg=#E6DB74
|
||||
hi Operator guifg=#F92672
|
||||
|
||||
" complete menu
|
||||
hi Pmenu guifg=#66D9EF guibg=#000000
|
||||
hi PmenuSel guibg=#808080
|
||||
hi PmenuSbar guibg=#080808
|
||||
hi PmenuThumb guifg=#66D9EF
|
||||
|
||||
hi PreCondit guifg=#A6E22E gui=bold
|
||||
hi PreProc guifg=#A6E22E
|
||||
hi Question guifg=#66D9EF
|
||||
hi Repeat guifg=#F92672 gui=bold
|
||||
hi Search guifg=#000000 guibg=#FFE792
|
||||
" marks
|
||||
hi SignColumn guifg=#A6E22E guibg=#232526
|
||||
hi SpecialChar guifg=#F92672 gui=bold
|
||||
hi SpecialComment guifg=#7E8E91 gui=bold
|
||||
hi Special guifg=#66D9EF guibg=bg gui=italic
|
||||
if has("spell")
|
||||
hi SpellBad guisp=#FF0000 gui=undercurl
|
||||
hi SpellCap guisp=#7070F0 gui=undercurl
|
||||
hi SpellLocal guisp=#70F0F0 gui=undercurl
|
||||
hi SpellRare guisp=#FFFFFF gui=undercurl
|
||||
endif
|
||||
hi Statement guifg=#F92672 gui=bold
|
||||
hi StatusLine guifg=#455354 guibg=fg
|
||||
hi StatusLineNC guifg=#808080 guibg=#080808
|
||||
hi StorageClass guifg=#FD971F gui=italic
|
||||
hi Structure guifg=#66D9EF
|
||||
hi Tag guifg=#F92672 gui=italic
|
||||
hi Title guifg=#ef5939
|
||||
hi Todo guifg=#FFFFFF guibg=bg gui=bold
|
||||
|
||||
hi Typedef guifg=#66D9EF
|
||||
hi Type guifg=#66D9EF gui=none
|
||||
hi Underlined guifg=#808080 gui=underline
|
||||
|
||||
hi VertSplit guifg=#808080 guibg=#080808 gui=bold
|
||||
hi VisualNOS guibg=#403D3D
|
||||
hi Visual guibg=#403D3D
|
||||
hi WarningMsg guifg=#FFFFFF guibg=#333333 gui=bold
|
||||
hi WildMenu guifg=#66D9EF guibg=#000000
|
||||
|
||||
hi TabLineFill guifg=#1B1D1E guibg=#1B1D1E
|
||||
hi TabLine guibg=#1B1D1E guifg=#808080 gui=none
|
||||
|
||||
if s:molokai_original == 1
|
||||
hi Normal guifg=#F8F8F2 guibg=#272822
|
||||
hi Comment guifg=#75715E
|
||||
hi CursorLine guibg=#3E3D32
|
||||
hi CursorLineNr guifg=#FD971F gui=none
|
||||
hi CursorColumn guibg=#3E3D32
|
||||
hi ColorColumn guibg=#3B3A32
|
||||
hi LineNr guifg=#BCBCBC guibg=#3B3A32
|
||||
hi NonText guifg=#75715E
|
||||
hi SpecialKey guifg=#75715E
|
||||
else
|
||||
hi Normal guifg=#F8F8F2 guibg=#1B1D1E
|
||||
hi Comment guifg=#7E8E91
|
||||
hi CursorLine guibg=#293739
|
||||
hi CursorLineNr guifg=#FD971F gui=none
|
||||
hi CursorColumn guibg=#293739
|
||||
hi ColorColumn guibg=#232526
|
||||
hi LineNr guifg=#465457 guibg=#232526
|
||||
hi NonText guifg=#465457
|
||||
hi SpecialKey guifg=#465457
|
||||
end
|
||||
|
||||
"
|
||||
" Support for 256-color terminal
|
||||
"
|
||||
if &t_Co > 255
|
||||
if s:molokai_original == 1
|
||||
hi Normal ctermbg=234
|
||||
hi CursorLine ctermbg=235 cterm=none
|
||||
hi CursorLineNr ctermfg=208 cterm=none
|
||||
else
|
||||
hi Normal ctermfg=252 ctermbg=233
|
||||
hi CursorLine ctermbg=234 cterm=none
|
||||
hi CursorLineNr ctermfg=208 cterm=none
|
||||
endif
|
||||
hi Boolean ctermfg=135
|
||||
hi Character ctermfg=144
|
||||
hi Number ctermfg=135
|
||||
hi String ctermfg=144
|
||||
hi Conditional ctermfg=161 cterm=bold
|
||||
hi Constant ctermfg=135 cterm=bold
|
||||
hi Cursor ctermfg=16 ctermbg=253
|
||||
hi Debug ctermfg=225 cterm=bold
|
||||
hi Define ctermfg=81
|
||||
hi Delimiter ctermfg=241
|
||||
|
||||
hi DiffAdd ctermbg=24
|
||||
hi DiffChange ctermfg=181 ctermbg=239
|
||||
hi DiffDelete ctermfg=162 ctermbg=53
|
||||
hi DiffText ctermbg=102 cterm=bold
|
||||
|
||||
hi Directory ctermfg=118 cterm=bold
|
||||
hi Error ctermfg=219 ctermbg=89
|
||||
hi ErrorMsg ctermfg=199 ctermbg=16 cterm=bold
|
||||
hi Exception ctermfg=118 cterm=bold
|
||||
hi Float ctermfg=135
|
||||
hi FoldColumn ctermfg=67 ctermbg=16
|
||||
hi Folded ctermfg=67 ctermbg=16
|
||||
hi Function ctermfg=118
|
||||
hi Identifier ctermfg=208 cterm=none
|
||||
hi Ignore ctermfg=244 ctermbg=232
|
||||
hi IncSearch ctermfg=193 ctermbg=16
|
||||
|
||||
hi keyword ctermfg=161 cterm=bold
|
||||
hi Label ctermfg=229 cterm=none
|
||||
hi Macro ctermfg=193
|
||||
hi SpecialKey ctermfg=81
|
||||
|
||||
hi MatchParen ctermfg=233 ctermbg=208 cterm=bold
|
||||
hi ModeMsg ctermfg=229
|
||||
hi MoreMsg ctermfg=229
|
||||
hi Operator ctermfg=161
|
||||
|
||||
" complete menu
|
||||
hi Pmenu ctermfg=81 ctermbg=16
|
||||
hi PmenuSel ctermfg=255 ctermbg=242
|
||||
hi PmenuSbar ctermbg=232
|
||||
hi PmenuThumb ctermfg=81
|
||||
|
||||
hi PreCondit ctermfg=118 cterm=bold
|
||||
hi PreProc ctermfg=118
|
||||
hi Question ctermfg=81
|
||||
hi Repeat ctermfg=161 cterm=bold
|
||||
hi Search ctermfg=0 ctermbg=222 cterm=NONE
|
||||
|
||||
" marks column
|
||||
hi SignColumn ctermfg=118 ctermbg=235
|
||||
hi SpecialChar ctermfg=161 cterm=bold
|
||||
hi SpecialComment ctermfg=245 cterm=bold
|
||||
hi Special ctermfg=81
|
||||
if has("spell")
|
||||
hi SpellBad ctermbg=52
|
||||
hi SpellCap ctermbg=17
|
||||
hi SpellLocal ctermbg=17
|
||||
hi SpellRare ctermfg=none ctermbg=none cterm=reverse
|
||||
endif
|
||||
hi Statement ctermfg=161 cterm=bold
|
||||
hi StatusLine ctermfg=238 ctermbg=253
|
||||
hi StatusLineNC ctermfg=244 ctermbg=232
|
||||
hi StorageClass ctermfg=208
|
||||
hi Structure ctermfg=81
|
||||
hi Tag ctermfg=161
|
||||
hi Title ctermfg=166
|
||||
hi Todo ctermfg=231 ctermbg=232 cterm=bold
|
||||
|
||||
hi Typedef ctermfg=81
|
||||
hi Type ctermfg=81 cterm=none
|
||||
hi Underlined ctermfg=244 cterm=underline
|
||||
|
||||
hi VertSplit ctermfg=244 ctermbg=232 cterm=bold
|
||||
hi VisualNOS ctermbg=238
|
||||
hi Visual ctermbg=235
|
||||
hi WarningMsg ctermfg=231 ctermbg=238 cterm=bold
|
||||
hi WildMenu ctermfg=81 ctermbg=16
|
||||
|
||||
hi Comment ctermfg=59
|
||||
hi CursorColumn ctermbg=236
|
||||
hi ColorColumn ctermbg=236
|
||||
hi LineNr ctermfg=250 ctermbg=236
|
||||
hi NonText ctermfg=59
|
||||
|
||||
hi SpecialKey ctermfg=59
|
||||
|
||||
if exists("g:rehash256") && g:rehash256 == 1
|
||||
hi Normal ctermfg=252 ctermbg=234
|
||||
hi CursorLine ctermbg=236 cterm=none
|
||||
hi CursorLineNr ctermfg=208 cterm=none
|
||||
|
||||
hi Boolean ctermfg=141
|
||||
hi Character ctermfg=222
|
||||
hi Number ctermfg=141
|
||||
hi String ctermfg=222
|
||||
hi Conditional ctermfg=197 cterm=bold
|
||||
hi Constant ctermfg=141 cterm=bold
|
||||
|
||||
hi DiffDelete ctermfg=125 ctermbg=233
|
||||
|
||||
hi Directory ctermfg=154 cterm=bold
|
||||
hi Error ctermfg=222 ctermbg=233
|
||||
hi Exception ctermfg=154 cterm=bold
|
||||
hi Float ctermfg=141
|
||||
hi Function ctermfg=154
|
||||
hi Identifier ctermfg=208
|
||||
|
||||
hi Keyword ctermfg=197 cterm=bold
|
||||
hi Operator ctermfg=197
|
||||
hi PreCondit ctermfg=154 cterm=bold
|
||||
hi PreProc ctermfg=154
|
||||
hi Repeat ctermfg=197 cterm=bold
|
||||
|
||||
hi Statement ctermfg=197 cterm=bold
|
||||
hi Tag ctermfg=197
|
||||
hi Title ctermfg=203
|
||||
hi Visual ctermbg=238
|
||||
|
||||
hi Comment ctermfg=244
|
||||
hi LineNr ctermfg=239 ctermbg=235
|
||||
hi NonText ctermfg=239
|
||||
hi SpecialKey ctermfg=239
|
||||
endif
|
||||
end
|
||||
|
||||
" Must be at the end, because of ctermbg=234 bug.
|
||||
" https://groups.google.com/forum/#!msg/vim_dev/afPqwAFNdrU/nqh6tOM87QUJ
|
||||
set background=dark
|
78
colors/seoul256-light.vim
Normal file
78
colors/seoul256-light.vim
Normal file
@ -0,0 +1,78 @@
|
||||
" " _____ _ ___ ___ ___ "
|
||||
" " | __|___ ___ _ _| |_ | _| _| "
|
||||
" " |__ | -_| . | | | | _|_ | . | "
|
||||
" " |_____|___|___|___|_|___|___|___|-light.vim "
|
||||
"
|
||||
" " Low-contrast light Vim color scheme using Seoul Colors "
|
||||
"
|
||||
" File: seoul256-light.vim
|
||||
" URL: github.com/junegunn/seoul256.vim
|
||||
" Author: Junegunn Choi (junegunn.c@gmail.com)
|
||||
" Version: 1.4.0
|
||||
" Last Updated: July 6, 2014
|
||||
" License: MIT
|
||||
"
|
||||
" Copyright (c) 2013 Junegunn Choi
|
||||
"
|
||||
" MIT License
|
||||
"
|
||||
" Permission is hereby granted, free of charge, to any person obtaining
|
||||
" a copy of this software and associated documentation files (the
|
||||
" "Software"), to deal in the Software without restriction, including
|
||||
" without limitation the rights to use, copy, modify, merge, publish,
|
||||
" distribute, sublicense, and/or sell copies of the Software, and to
|
||||
" permit persons to whom the Software is furnished to do so, subject to
|
||||
" the following conditions:
|
||||
"
|
||||
" The above copyright notice and this permission notice shall be
|
||||
" included in all copies or substantial portions of the Software.
|
||||
"
|
||||
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
" NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
" LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
" OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
" WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
let s:master = get(split(globpath(&rtp, 'colors/seoul256.vim'), '\n'), 0, '')
|
||||
let s:custom_bg = get(g:, 'seoul256_light_background', get(g:, 'seoul256_background', 253))
|
||||
let s:light = s:custom_bg >= 252 && s:custom_bg <= 256
|
||||
let s:var_found = exists('g:seoul256_background')
|
||||
let s:light_var_found = exists('g:seoul256_light_background')
|
||||
|
||||
if !empty(s:master)
|
||||
try
|
||||
" Backup current g:seoul256_background
|
||||
if s:var_found
|
||||
let s:backup = g:seoul256_background
|
||||
endif
|
||||
|
||||
" Invalid range. Force the default light version.
|
||||
if !s:light && s:var_found
|
||||
unlet g:seoul256_background
|
||||
endif
|
||||
|
||||
" g:seoul256_light_background is found, use it
|
||||
if s:light && s:light_var_found
|
||||
let g:seoul256_background = s:custom_bg
|
||||
endif
|
||||
|
||||
if get(g:, 'colors_name', '') == 'seoul256-light' && &background == 'dark'
|
||||
set background=dark
|
||||
else
|
||||
set background=light
|
||||
endif
|
||||
let g:colors_name = 'seoul256'
|
||||
execute 'silent source' fnameescape(s:master)
|
||||
let g:colors_name = &background == 'dark' ? 'seoul256' : 'seoul256-light'
|
||||
finally
|
||||
" Revert g:seoul256_background
|
||||
if s:var_found
|
||||
let g:seoul256_background = s:backup
|
||||
endif
|
||||
endtry
|
||||
else
|
||||
echom 'seoul256.vim not found'
|
||||
endif
|
||||
|
425
colors/seoul256.vim
Normal file
425
colors/seoul256.vim
Normal file
@ -0,0 +1,425 @@
|
||||
" " _____ _ ___ ___ ___ "
|
||||
" " | __|___ ___ _ _| |_ | _| _| "
|
||||
" " |__ | -_| . | | | | _|_ | . | "
|
||||
" " |_____|___|___|___|_|___|___|___|.vim "
|
||||
"
|
||||
" " Low-contrast dark Vim color scheme using Seoul Colors "
|
||||
"
|
||||
" File: seoul256.vim
|
||||
" URL: github.com/junegunn/seoul256.vim
|
||||
" Author: Junegunn Choi (junegunn.c@gmail.com)
|
||||
" Version: 1.5.3
|
||||
" Last Updated: Aug 4, 2014
|
||||
" License: MIT
|
||||
"
|
||||
" Copyright (c) 2013 Junegunn Choi
|
||||
"
|
||||
" MIT License
|
||||
"
|
||||
" Permission is hereby granted, free of charge, to any person obtaining
|
||||
" a copy of this software and associated documentation files (the
|
||||
" "Software"), to deal in the Software without restriction, including
|
||||
" without limitation the rights to use, copy, modify, merge, publish,
|
||||
" distribute, sublicense, and/or sell copies of the Software, and to
|
||||
" permit persons to whom the Software is furnished to do so, subject to
|
||||
" the following conditions:
|
||||
"
|
||||
" The above copyright notice and this permission notice shall be
|
||||
" included in all copies or substantial portions of the Software.
|
||||
"
|
||||
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
" NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
" LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
" OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
" WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
if !exists('s:rgb_map')
|
||||
if get(g:, 'seoul256_srgb', 0)
|
||||
let s:rgb_map =
|
||||
\{ 16: '#000000', 17: '#00005f', 18: '#000087',
|
||||
\ 19: '#0000af', 20: '#0000d7', 21: '#0000ff',
|
||||
\ 22: '#005f00', 23: '#005f5f', 24: '#005f87',
|
||||
\ 25: '#005faf', 26: '#005fd7', 27: '#005fff',
|
||||
\ 28: '#008700', 29: '#00875f', 30: '#008787',
|
||||
\ 31: '#0087af', 32: '#0087d7', 33: '#0087ff',
|
||||
\ 34: '#00af00', 35: '#00af5f', 36: '#00af87',
|
||||
\ 37: '#00afaf', 38: '#00afd7', 39: '#00afff',
|
||||
\ 40: '#00d700', 41: '#00d75f', 42: '#00d787',
|
||||
\ 43: '#00d7af', 44: '#00d7d7', 45: '#00d7ff',
|
||||
\ 46: '#00ff00', 47: '#00ff5f', 48: '#00ff87',
|
||||
\ 49: '#00ffaf', 50: '#00ffd7', 51: '#00ffff',
|
||||
\ 52: '#5f0000', 53: '#5f005f', 54: '#5f0087',
|
||||
\ 55: '#5f00af', 56: '#5f00d7', 57: '#5f00ff',
|
||||
\ 58: '#5f5f00', 59: '#5f5f5f', 60: '#5f5f87',
|
||||
\ 61: '#5f5faf', 62: '#5f5fd7', 63: '#5f5fff',
|
||||
\ 64: '#5f8700', 65: '#5f875f', 66: '#5f8787',
|
||||
\ 67: '#5f87af', 68: '#5f87d7', 69: '#5f87ff',
|
||||
\ 70: '#5faf00', 71: '#5faf5f', 72: '#5faf87',
|
||||
\ 73: '#5fafaf', 74: '#5fafd7', 75: '#5fafff',
|
||||
\ 76: '#5fd700', 77: '#5fd75f', 78: '#5fd787',
|
||||
\ 79: '#5fd7af', 80: '#5fd7d7', 81: '#5fd7ff',
|
||||
\ 82: '#5fff00', 83: '#5fff5f', 84: '#5fff87',
|
||||
\ 85: '#5fffaf', 86: '#5fffd7', 87: '#5fffff',
|
||||
\ 88: '#870000', 89: '#87005f', 90: '#870087',
|
||||
\ 91: '#8700af', 92: '#8700d7', 93: '#8700ff',
|
||||
\ 94: '#875f00', 95: '#875f5f', 96: '#875f87',
|
||||
\ 97: '#875faf', 98: '#875fd7', 99: '#875fff',
|
||||
\ 100: '#878700', 101: '#87875f', 102: '#878787',
|
||||
\ 103: '#8787af', 104: '#8787d7', 105: '#8787ff',
|
||||
\ 106: '#87af00', 107: '#87af5f', 108: '#87af87',
|
||||
\ 109: '#87afaf', 110: '#87afd7', 111: '#87afff',
|
||||
\ 112: '#87d700', 113: '#87d75f', 114: '#87d787',
|
||||
\ 115: '#87d7af', 116: '#87d7d7', 117: '#87d7ff',
|
||||
\ 118: '#87ff00', 119: '#87ff5f', 120: '#87ff87',
|
||||
\ 121: '#87ffaf', 122: '#87ffd7', 123: '#87ffff',
|
||||
\ 124: '#af0000', 125: '#af005f', 126: '#af0087',
|
||||
\ 127: '#af00af', 128: '#af00d7', 129: '#af00ff',
|
||||
\ 130: '#af5f00', 131: '#af5f5f', 132: '#af5f87',
|
||||
\ 133: '#af5faf', 134: '#af5fd7', 135: '#af5fff',
|
||||
\ 136: '#af8700', 137: '#af875f', 138: '#af8787',
|
||||
\ 139: '#af87af', 140: '#af87d7', 141: '#af87ff',
|
||||
\ 142: '#afaf00', 143: '#afaf5f', 144: '#afaf87',
|
||||
\ 145: '#afafaf', 146: '#afafd7', 147: '#afafff',
|
||||
\ 148: '#afd700', 149: '#afd75f', 150: '#afd787',
|
||||
\ 151: '#afd7af', 152: '#afd7d7', 153: '#afd7ff',
|
||||
\ 154: '#afff00', 155: '#afff5f', 156: '#afff87',
|
||||
\ 157: '#afffaf', 158: '#afffd7', 159: '#afffff',
|
||||
\ 160: '#d70000', 161: '#d7005f', 162: '#d70087',
|
||||
\ 163: '#d700af', 164: '#d700d7', 165: '#d700ff',
|
||||
\ 166: '#d75f00', 167: '#d75f5f', 168: '#d75f87',
|
||||
\ 169: '#d75faf', 170: '#d75fd7', 171: '#d75fff',
|
||||
\ 172: '#d78700', 173: '#d7875f', 174: '#d78787',
|
||||
\ 175: '#d787af', 176: '#d787d7', 177: '#d787ff',
|
||||
\ 178: '#d7af00', 179: '#d7af5f', 180: '#d7af87',
|
||||
\ 181: '#d7afaf', 182: '#d7afd7', 183: '#d7afff',
|
||||
\ 184: '#d7d700', 185: '#d7d75f', 186: '#d7d787',
|
||||
\ 187: '#d7d7af', 188: '#d7d7d7', 189: '#d7d7ff',
|
||||
\ 190: '#d7ff00', 191: '#d7ff5f', 192: '#d7ff87',
|
||||
\ 193: '#d7ffaf', 194: '#d7ffd7', 195: '#d7ffff',
|
||||
\ 196: '#ff0000', 197: '#ff005f', 198: '#ff0087',
|
||||
\ 199: '#ff00af', 200: '#ff00d7', 201: '#ff00ff',
|
||||
\ 202: '#ff5f00', 203: '#ff5f5f', 204: '#ff5f87',
|
||||
\ 205: '#ff5faf', 206: '#ff5fd7', 207: '#ff5fff',
|
||||
\ 208: '#ff8700', 209: '#ff875f', 210: '#ff8787',
|
||||
\ 211: '#ff87af', 212: '#ff87d7', 213: '#ff87ff',
|
||||
\ 214: '#ffaf00', 215: '#ffaf5f', 216: '#ffaf87',
|
||||
\ 217: '#ffafaf', 218: '#ffafd7', 219: '#ffafff',
|
||||
\ 220: '#ffd700', 221: '#ffd75f', 222: '#ffd787',
|
||||
\ 223: '#ffd7af', 224: '#ffd7d7', 225: '#ffd7ff',
|
||||
\ 226: '#ffff00', 227: '#ffff5f', 228: '#ffff87',
|
||||
\ 229: '#ffffaf', 230: '#ffffd7', 231: '#ffffff',
|
||||
\ 232: '#080808', 233: '#121212', 234: '#1c1c1c',
|
||||
\ 235: '#262626', 236: '#303030', 237: '#3a3a3a',
|
||||
\ 238: '#444444', 239: '#4e4e4e', 240: '#585858',
|
||||
\ 241: '#626262', 242: '#6c6c6c', 243: '#767676',
|
||||
\ 244: '#808080', 245: '#8a8a8a', 246: '#949494',
|
||||
\ 247: '#9e9e9e', 248: '#a8a8a8', 249: '#b2b2b2',
|
||||
\ 250: '#bcbcbc', 251: '#c6c6c6', 252: '#d0d0d0',
|
||||
\ 253: '#dadada', 254: '#e4e4e4', 255: '#eeeeee' }
|
||||
else
|
||||
let s:rgb_map =
|
||||
\{ 22: '#006F00', 23: '#007173', 24: '#007299', 25: '#0074BE', 30: '#009799',
|
||||
\ 31: '#0099BD', 38: '#00BDDF', 52: '#730B00', 58: '#727100', 59: '#727272',
|
||||
\ 65: '#719872', 66: '#719899', 67: '#7299BC', 68: '#719CDF', 73: '#6FBCBD',
|
||||
\ 74: '#70BDDF', 88: '#9B1300', 89: '#9B1D72', 94: '#9A7200', 95: '#9A7372',
|
||||
\ 96: '#9A7599', 101: '#999872', 103: '#999ABD', 108: '#98BC99', 109: '#98BCBD',
|
||||
\ 110: '#98BEDE', 116: '#97DDDF', 125: '#BF2172', 131: '#BE7572', 137: '#BE9873',
|
||||
\ 143: '#BDBB72', 144: '#BDBC98', 145: '#BDBDBD', 151: '#BCDDBD', 152: '#BCDEDE',
|
||||
\ 153: '#BCE0FF', 161: '#E12672', 168: '#E17899', 173: '#E19972', 174: '#E09B99',
|
||||
\ 179: '#DFBC72', 181: '#E0BEBC', 184: '#DEDC00', 186: '#DEDD99', 187: '#DFDEBD',
|
||||
\ 189: '#DFDFFF', 216: '#FFBD98', 217: '#FFBFBD', 218: '#FFC0DE', 220: '#FFDD00',
|
||||
\ 222: '#FFDE99', 224: '#FFDFDF', 230: '#FFFFDF', 231: '#FFFFFF', 232: '#060606',
|
||||
\ 233: '#171717', 234: '#252525', 235: '#333233', 236: '#3F3F3F', 237: '#4B4B4B',
|
||||
\ 238: '#565656', 239: '#616161', 240: '#6B6B6B', 241: '#757575', 249: '#BFBFBF',
|
||||
\ 250: '#C8C8C8', 251: '#D1D0D1', 252: '#D9D9D9', 253: '#E1E1E1', 254: '#E9E9E9',
|
||||
\ 255: '#F1F1F1' }
|
||||
endif
|
||||
endif
|
||||
|
||||
let s:background = &background
|
||||
let s:colors_name = get(g:, 'colors_name', '')
|
||||
|
||||
silent! unlet s:style s:seoul256_background
|
||||
|
||||
" 1. If g:seoul256_background is found
|
||||
if exists('g:seoul256_background')
|
||||
let s:seoul256_background = g:seoul256_background
|
||||
if s:seoul256_background >= 233 && s:seoul256_background <= 239
|
||||
let s:style = 'dark'
|
||||
elseif s:seoul256_background >= 252 && s:seoul256_background <= 256
|
||||
let s:style = 'light'
|
||||
else
|
||||
unlet s:seoul256_background
|
||||
endif
|
||||
endif
|
||||
|
||||
if !exists('s:style')
|
||||
" 2. If g:colors_name is NOT 'seoul256' -> dark version
|
||||
if s:colors_name != 'seoul256'
|
||||
let s:style = 'dark'
|
||||
" 3. Follow &background setting
|
||||
else
|
||||
let s:style = &background
|
||||
endif
|
||||
endif
|
||||
let s:style_idx = s:style == 'light'
|
||||
|
||||
" Background colors
|
||||
if s:style == 'dark'
|
||||
let s:dark_bg = get(s:, 'seoul256_background', 237)
|
||||
let s:light_bg = 253
|
||||
else
|
||||
let s:dark_bg = 237
|
||||
let s:light_bg = get(s:, 'seoul256_background', 253)
|
||||
endif
|
||||
let s:dark_bg_2 = s:dark_bg > 233 ? s:dark_bg - 2 : 16
|
||||
let s:light_bg_1 = min([s:light_bg + 1, 256])
|
||||
let s:light_bg_2 = min([s:light_bg + 2, 256])
|
||||
|
||||
" Foreground colors
|
||||
let s:dark_fg = 252
|
||||
let s:light_fg = 239
|
||||
|
||||
function! s:hi(item, fg, bg)
|
||||
let fg = a:fg[s:style_idx] > 255 ? 231 : a:fg[s:style_idx]
|
||||
let bg = a:bg[s:style_idx] > 255 ? 231 : a:bg[s:style_idx]
|
||||
|
||||
if !empty(fg)
|
||||
execute printf("highlight %s ctermfg=%s guifg=%s", a:item, fg, get(s:rgb_map, fg, 'NONE'))
|
||||
endif
|
||||
if !empty(bg)
|
||||
execute printf("highlight %s ctermbg=%s guibg=%s", a:item, bg, get(s:rgb_map, bg, 'NONE'))
|
||||
endif
|
||||
endfunction
|
||||
|
||||
let s:gui = has('gui_running')
|
||||
if !s:gui
|
||||
set t_Co=256
|
||||
end
|
||||
|
||||
silent! unlet g:colors_name
|
||||
hi clear
|
||||
if exists("syntax_on")
|
||||
syntax reset
|
||||
endif
|
||||
|
||||
call s:hi('Normal', [s:dark_fg, s:light_fg], [s:dark_bg, s:light_bg])
|
||||
|
||||
call s:hi('LineNr', [101, 101], [s:dark_bg + 1, s:light_bg - 2])
|
||||
call s:hi('Visual', ['', ''], [23, 152])
|
||||
call s:hi('VisualNOS', ['', ''], [23, 152])
|
||||
|
||||
call s:hi('Comment', [65, 65], ['', ''])
|
||||
call s:hi('Number', [222, 95], ['', ''])
|
||||
call s:hi('Float', [222, 95], ['', ''])
|
||||
call s:hi('Boolean', [103, 168], ['', ''])
|
||||
call s:hi('String', [109, 30], ['', ''])
|
||||
call s:hi('Constant', [73, 23], ['', ''])
|
||||
call s:hi('Character', [174, 168], ['', ''])
|
||||
call s:hi('Delimiter', [137, 94], ['', ''])
|
||||
call s:hi('StringDelimiter', [137, 94], ['', ''])
|
||||
call s:hi('Statement', [108, 66], ['', ''])
|
||||
" case, default, etc.
|
||||
" hi Label ctermfg=
|
||||
|
||||
" if else end
|
||||
call s:hi('Conditional', [110, 31], ['', ''])
|
||||
|
||||
" while end
|
||||
call s:hi('Repeat', [68, 67], ['', ''])
|
||||
call s:hi('Todo', [161, 125], [s:dark_bg_2, s:light_bg_2])
|
||||
call s:hi('Function', [187, 58], ['', ''])
|
||||
|
||||
" Macros
|
||||
call s:hi('Define', [173, 131], ['', ''])
|
||||
call s:hi('Macro', [173, 131], ['', ''])
|
||||
call s:hi('Include', [173, 131], ['', ''])
|
||||
call s:hi('PreCondit', [173, 131], ['', ''])
|
||||
|
||||
|
||||
" #!
|
||||
call s:hi('PreProc', [143, 58], ['', ''])
|
||||
|
||||
" @abc
|
||||
call s:hi('Identifier', [217, 96], ['', ''])
|
||||
|
||||
" AAA Abc
|
||||
call s:hi('Type', [179, 94], ['', ''])
|
||||
|
||||
" + - * / <<
|
||||
call s:hi('Operator', [186, 131], ['', ''])
|
||||
|
||||
" super yield
|
||||
call s:hi('Keyword', [168, 168], ['', ''])
|
||||
|
||||
" raise
|
||||
call s:hi('Exception', [161, 161], ['', ''])
|
||||
"
|
||||
" hi StorageClass ctermfg=
|
||||
call s:hi('Structure', [116, 23], ['', ''])
|
||||
" hi Typedef ctermfg=
|
||||
|
||||
call s:hi('Error', [s:dark_fg, s:light_bg_1], [52, 174])
|
||||
call s:hi('ErrorMsg', [s:dark_fg, s:light_bg_1], [52, 168])
|
||||
call s:hi('Underlined', [181, 168], ['', ''])
|
||||
|
||||
" set textwidth=80
|
||||
" set colorcolumn=+1
|
||||
call s:hi('ColorColumn', ['', ''], [s:dark_bg - 1, s:light_bg - 2])
|
||||
|
||||
" GVIM only
|
||||
" hi Cursor ctermfg=
|
||||
" hi CursorIM ctermfg=
|
||||
|
||||
" set cursorline cursorcolumn
|
||||
call s:hi('CursorLine', ['', ''], [s:dark_bg - 1, s:light_bg - 1])
|
||||
call s:hi('CursorLineNr', [131, 131], [s:dark_bg - 1, s:light_bg - 1])
|
||||
call s:hi('CursorColumn', ['', ''], [s:dark_bg - 1, s:light_bg - 1])
|
||||
|
||||
call s:hi('Directory', [187, 95], ['', ''])
|
||||
|
||||
call s:hi('DiffAdd', ['NONE', 'NONE'], [22, 151])
|
||||
call s:hi('DiffDelete', ['NONE', 'NONE'], [95, 181])
|
||||
call s:hi('DiffChange', ['NONE', 'NONE'], [s:dark_bg + 3, 189])
|
||||
call s:hi('DiffText', ['NONE', 'NONE'], [52, 224])
|
||||
|
||||
call s:hi('VertSplit', [s:dark_bg_2, s:light_bg - 3], [s:dark_bg_2, s:light_bg - 3])
|
||||
call s:hi('Folded', [101, 101], [s:dark_bg + 1, s:light_bg - 2])
|
||||
|
||||
" set foldcolumn=1
|
||||
call s:hi('FoldColumn', [144, 94], [s:dark_bg + 1, s:light_bg - 2])
|
||||
|
||||
call s:hi('MatchParen', ['', ''], [s:dark_bg + 3, s:light_bg - 3])
|
||||
|
||||
" -- INSERT --
|
||||
call s:hi('ModeMsg', [173, 173], ['', ''])
|
||||
|
||||
" let &showbreak = '> '
|
||||
call s:hi('NonText', [101, 101], ['', ''])
|
||||
|
||||
call s:hi('MoreMsg', [173, 173], ['', ''])
|
||||
|
||||
" Popup menu
|
||||
call s:hi('Pmenu', [s:dark_bg + 1, 238], [224, 224])
|
||||
call s:hi('PmenuSel', [s:dark_fg, s:dark_fg], [89, 89])
|
||||
call s:hi('PmenuSbar', ['', ''], [65, 65])
|
||||
call s:hi('PmenuThumb', ['', ''], [23, 23])
|
||||
|
||||
call s:hi('Search', [s:dark_fg, 255], [24, 74])
|
||||
call s:hi('IncSearch', [220, 220], [s:dark_bg + 1, 238])
|
||||
|
||||
" String delimiter, interpolation
|
||||
call s:hi('Special', [216, 173], ['', ''])
|
||||
" hi SpecialChar ctermfg=
|
||||
" hi SpecialComment ctermfg=
|
||||
" hi Tag ctermfg=
|
||||
" hi Debug ctermfg=
|
||||
|
||||
" :map, listchars
|
||||
call s:hi('SpecialKey', [59, 145], ['', ''])
|
||||
|
||||
if !s:gui
|
||||
" Red / Blue / Cyan / Magenta
|
||||
if s:style_idx == 0
|
||||
hi SpellBad ctermbg=NONE cterm=underline ctermfg=168
|
||||
hi SpellCap ctermbg=NONE cterm=underline ctermfg=110
|
||||
hi SpellLocal ctermbg=NONE cterm=underline ctermfg=153
|
||||
hi SpellRare ctermbg=NONE cterm=underline ctermfg=218
|
||||
else
|
||||
hi SpellBad ctermbg=NONE cterm=underline ctermfg=125
|
||||
hi SpellCap ctermbg=NONE cterm=underline ctermfg=25
|
||||
hi SpellLocal ctermbg=NONE cterm=underline ctermfg=31
|
||||
hi SpellRare ctermbg=NONE cterm=underline ctermfg=96
|
||||
endif
|
||||
else
|
||||
if s:style_idx == 0
|
||||
execute 'hi SpellBad gui=undercurl guisp=' . s:rgb_map[168]
|
||||
execute 'hi SpellCap gui=undercurl guisp=' . s:rgb_map[110]
|
||||
execute 'hi SpellLocal gui=undercurl guisp=' . s:rgb_map[153]
|
||||
execute 'hi SpellRare gui=undercurl guisp=' . s:rgb_map[218]
|
||||
else
|
||||
execute 'hi SpellBad gui=undercurl guisp=' . s:rgb_map[125]
|
||||
execute 'hi SpellCap gui=undercurl guisp=' . s:rgb_map[25]
|
||||
execute 'hi SpellLocal gui=undercurl guisp=' . s:rgb_map[31]
|
||||
execute 'hi SpellRare gui=undercurl guisp=' . s:rgb_map[96]
|
||||
endif
|
||||
endif
|
||||
|
||||
"
|
||||
call s:hi('StatusLine', [95, 95], [187, 187])
|
||||
call s:hi('StatusLineNC', [s:dark_bg + 2, s:light_bg - 2], [187, 238])
|
||||
call s:hi('TabLineFill', [s:dark_bg + 2, s:light_bg - 2], ['', ''])
|
||||
call s:hi('TabLineSel', [187, 187], [23, 66])
|
||||
call s:hi('TabLine', [s:dark_bg + 12, s:light_bg - 12], [s:dark_bg + 4, s:light_bg - 4])
|
||||
call s:hi('WildMenu', [95, 95], [184, 184])
|
||||
|
||||
" :set all
|
||||
call s:hi('Title', [181, 88], ['', ''])
|
||||
|
||||
" TODO
|
||||
call s:hi('Question', [179, 88], ['', ''])
|
||||
|
||||
" Search hit bottom
|
||||
call s:hi('WarningMsg', [179, 88], ['', ''])
|
||||
|
||||
" Sign column
|
||||
call s:hi('SignColumn', [173, 173], [s:dark_bg, s:light_bg])
|
||||
|
||||
" Diff
|
||||
call s:hi('diffAdded', [108, 65], ['', ''])
|
||||
call s:hi('diffRemoved', [174, 131], ['', ''])
|
||||
hi link diffLine Constant
|
||||
|
||||
call s:hi('Conceal', [s:dark_fg + 2, s:light_fg - 2], [s:dark_bg - 1, s:light_bg + 2])
|
||||
call s:hi('Ignore', [s:dark_bg + 3, s:light_bg - 3], [s:dark_bg, s:light_bg])
|
||||
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
" Plugins
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
" vim-indent-guides
|
||||
" -----------------
|
||||
let g:indent_guides_auto_colors = 0
|
||||
call s:hi('IndentGuidesOdd', ['', ''], [s:dark_bg - 1, s:light_bg + 1])
|
||||
call s:hi('IndentGuidesEven', ['', ''], [s:dark_bg + 1, s:light_bg - 1])
|
||||
|
||||
" vim-gitgutter
|
||||
" -------------
|
||||
call s:hi('GitGutterAdd', [108, 65], [s:dark_bg + 1, s:light_bg - 2])
|
||||
call s:hi('GitGutterChange', [68, 68], [s:dark_bg + 1, s:light_bg - 2])
|
||||
call s:hi('GitGutterDelete', [161, 161], [s:dark_bg + 1, s:light_bg -2 ])
|
||||
call s:hi('GitGutterChangeDelete', [168, 168], [s:dark_bg + 1, s:light_bg - 2])
|
||||
|
||||
" http://vim.wikia.com/wiki/Highlight_unwanted_spaces
|
||||
" ---------------------------------------------------^^^^^
|
||||
call s:hi('ExtraWhitespace', ['', ''], [s:dark_bg - 1, s:light_bg - 2])
|
||||
|
||||
" vim-ruby
|
||||
" --------
|
||||
" " rubySymbol
|
||||
let ruby_operators = 1
|
||||
call s:hi('rubyClass', [31, 31], ['', ''])
|
||||
" call s:hi('rubyInstanceVariable', [189, 189], ['', ''])
|
||||
call s:hi('rubyRegexp', [186, 101], ['', ''])
|
||||
call s:hi('rubyRegexpDelimiter', [168, 168], ['', ''])
|
||||
call s:hi('rubyArrayDelimiter', [67, 38], ['', ''])
|
||||
call s:hi('rubyBlockParameterList', [186, 94], ['', ''])
|
||||
call s:hi('rubyCurlyBlockDelimiter', [144, 101], ['', ''])
|
||||
|
||||
" ARGV $stdout
|
||||
call s:hi('rubyPredefinedIdentifier', [230, 52], ['', ''])
|
||||
" hi rubyRegexpSpecial
|
||||
|
||||
hi CursorLine cterm=NONE
|
||||
hi CursorLineNr cterm=NONE
|
||||
|
||||
let g:seoul256_current_fg = [s:dark_fg, s:light_fg][s:style_idx]
|
||||
let g:seoul256_current_bg = [s:dark_bg, s:light_bg][s:style_idx]
|
||||
let g:colors_name = 'seoul256'
|
||||
if s:colors_name != g:colors_name || s:background == s:style
|
||||
let &background = s:style
|
||||
else
|
||||
let &background = s:background
|
||||
endif
|
216
colors/sourcerer.vim
Normal file
216
colors/sourcerer.vim
Normal file
@ -0,0 +1,216 @@
|
||||
" ██████ ██████ ██ ██ ██████ █████ █████ ██████ █████ ██████
|
||||
" ██░░░░ ██░░░░██░██ ░██░░██░░████░░░██ ██░░░██░░██░░████░░░██░░██░░██
|
||||
" ░░█████ ░██ ░██░██ ░██ ░██ ░░░██ ░░ ░███████ ░██ ░░░███████ ░██ ░░
|
||||
" ░░░░░██░██ ░██░██ ░██ ░██ ░██ ██░██░░░░ ░██ ░██░░░░ ░██
|
||||
" ██████ ░░██████ ░░██████░███ ░░█████ ░░██████░███ ░░██████░███
|
||||
" ░░░░░░ ░░░░░░ ░░░░░░ ░░░ ░░░░░ ░░░░░░ ░░░ ░░░░░░ ░░░
|
||||
" r e a d c o d e l i k e a w i z a r d
|
||||
"
|
||||
" sourcerer by xero harrison (http://sourcerer.xero.nu)
|
||||
" ├─ based on sorcerer by Jeet Sukumaran (http://jeetworks.org)
|
||||
" └─ based on mustang by Henrique C. Alves (hcarvalhoalves@gmail.com)
|
||||
|
||||
set background=dark
|
||||
hi clear
|
||||
|
||||
if exists("syntax_on")
|
||||
syntax reset
|
||||
endif
|
||||
|
||||
let colors_name = "sourcerer"
|
||||
|
||||
|
||||
" █▓▒░ GUI colors
|
||||
hi Normal guifg=#c2c2b0 guibg=#222222 gui=NONE
|
||||
hi ColorColumn guifg=NONE guibg=#1c1c1c
|
||||
hi Cursor guifg=NONE guibg=#626262 gui=NONE
|
||||
hi CursorColumn guibg=#2d2d2d
|
||||
hi CursorLine guibg=#2d2d2d
|
||||
hi DiffAdd guifg=#000000 guibg=#3cb371 gui=NONE
|
||||
hi DiffDelete guifg=#000000 guibg=#aa4450 gui=NONE
|
||||
hi DiffChange guifg=#000000 guibg=#4f94cd gui=NONE
|
||||
hi DiffText guifg=#000000 guibg=#8ee5ee gui=NONE
|
||||
hi Directory guifg=#1e90ff guibg=NONE gui=NONE
|
||||
hi ErrorMsg guifg=#ff6a6a guibg=NONE gui=bold
|
||||
hi FoldColumn guifg=#68838b guibg=#4B4B4B gui=bold
|
||||
hi Folded guifg=#406060 guibg=#232c2c gui=NONE
|
||||
hi IncSearch guifg=#ffffff guibg=#ff4500 gui=bold
|
||||
hi LineNr guifg=#878787 guibg=#3A3A3A gui=NONE
|
||||
hi MatchParen guifg=#fff000 guibg=NONE gui=bold
|
||||
hi ModeMsg guifg=#afafaf guibg=#222222 gui=bold
|
||||
hi MoreMsg guifg=#2e8b57 guibg=NONE gui=bold
|
||||
hi NonText guifg=#404050 guibg=NONE gui=NONE
|
||||
|
||||
" completions
|
||||
hi Pmenu guifg=#A8A8A8 guibg=#3A3A3A
|
||||
hi PmenuSel guifg=#000000 guibg=#528B8B
|
||||
hi PmenuSbar guifg=#000000 guibg=#528B8B
|
||||
hi PmenuThumb guifg=#000000 guibg=#528B8B
|
||||
|
||||
hi Question guifg=#00ee00 guibg=NONE gui=bold
|
||||
hi Search guifg=#000000 guibg=#d6e770 gui=bold
|
||||
hi SignColumn guifg=#ffffff guibg=NONE gui=NONE
|
||||
hi SpecialKey guifg=#505060 guibg=NONE gui=NONE
|
||||
hi SpellBad guisp=#ee2c2c gui=undercurl
|
||||
hi SpellCap guisp=#0000ff gui=undercurl
|
||||
hi SpellLocal guisp=#008b8b gui=undercurl
|
||||
hi SpellRare guisp=#ff00ff gui=undercurl
|
||||
hi StatusLine guifg=#000000 guibg=#808070 gui=bold
|
||||
hi StatusLineNC guifg=#000000 guibg=#404c4c gui=italic
|
||||
hi VertSplit guifg=#404c4c guibg=#404c4c gui=NONE
|
||||
hi TabLine guifg=fg guibg=#d3d3d3 gui=underline
|
||||
hi TabLineFill guifg=fg guibg=NONE gui=reverse
|
||||
hi TabLineSel guifg=fg guibg=NONE gui=bold
|
||||
hi Title guifg=#528b8b guibg=NONE gui=bold
|
||||
hi Visual guifg=#000000 guibg=#6688aa gui=NONE
|
||||
hi WarningMsg guifg=#ee9a00 guibg=NONE gui=NONE
|
||||
hi WildMenu guifg=#000000 guibg=#87ceeb gui=NONE
|
||||
hi ExtraWhitespace guifg=fg guibg=#528b8b gui=NONE
|
||||
|
||||
" syntax highlighting
|
||||
hi Comment guifg=#686858 gui=italic
|
||||
hi Boolean guifg=#ff9800 gui=NONE
|
||||
hi String guifg=#779b70 gui=NONE
|
||||
hi Identifier guifg=#9ebac2 gui=NONE
|
||||
hi Function guifg=#faf4c6 gui=NONE
|
||||
hi Type guifg=#7e8aa2 gui=NONE
|
||||
hi Statement guifg=#90b0d1 gui=NONE
|
||||
hi Keyword guifg=#90b0d1 gui=NONE
|
||||
hi Constant guifg=#ff9800 gui=NONE
|
||||
hi Number guifg=#cc8800 gui=NONE
|
||||
hi Special guifg=#719611 gui=NONE
|
||||
hi PreProc guifg=#528b8b gui=NONE
|
||||
hi Todo guifg=#8f6f8f guibg=#202020 gui=italic,underline,bold
|
||||
|
||||
" diff
|
||||
hi diffOldFile guifg=#88afcb guibg=NONE gui=italic
|
||||
hi diffNewFile guifg=#88afcb guibg=NONE gui=italic
|
||||
hi diffFile guifg=#88afcb guibg=NONE gui=italic
|
||||
hi diffLine guifg=#88afcb guibg=NONE gui=italic
|
||||
hi link diffSubname diffLine
|
||||
hi diffAdded guifg=#3cb371 guibg=NONE gui=NONE
|
||||
hi diffRemoved guifg=#aa4450 guibg=NONE gui=NONE
|
||||
hi diffChanged guifg=#4f94cd guibg=NONE gui=NONE
|
||||
hi link diffOnly Constant
|
||||
hi link diffIdentical Constant
|
||||
hi link diffDiffer Constant
|
||||
hi link diffBDiffer Constant
|
||||
hi link diffIsA Constant
|
||||
hi link diffNoEOL Constant
|
||||
hi link diffCommon Constant
|
||||
hi link diffComment Constant
|
||||
|
||||
" python
|
||||
hi pythonException guifg=#90b0d1 guibg=NONE gui=NONE
|
||||
hi pythonExClass guifg=#996666 guibg=NONE gui=NONE
|
||||
hi pythonDecorator guifg=#888555 guibg=NONE gui=NONE
|
||||
hi link pythonDecoratorFunction pythonDecorator
|
||||
|
||||
" █▓▒░ 256 colors
|
||||
hi Normal cterm=NONE ctermbg=NONE ctermfg=145
|
||||
hi ColorColumn cterm=NONE ctermbg=16 ctermfg=NONE
|
||||
hi Cursor cterm=NONE ctermbg=241 ctermfg=fg
|
||||
hi CursorColumn cterm=NONE ctermbg=16 ctermfg=fg
|
||||
hi CursorLine cterm=NONE ctermbg=236 ctermfg=fg
|
||||
hi DiffAdd cterm=NONE ctermbg=71 ctermfg=16
|
||||
hi DiffDelete cterm=NONE ctermbg=124 ctermfg=16
|
||||
hi DiffChange cterm=NONE ctermbg=68 ctermfg=16
|
||||
hi DiffText cterm=NONE ctermbg=117 ctermfg=16
|
||||
hi Directory cterm=NONE ctermbg=234 ctermfg=33
|
||||
hi ErrorMsg cterm=bold ctermbg=NONE ctermfg=203
|
||||
hi FoldColumn cterm=bold ctermbg=239 ctermfg=66
|
||||
hi Folded cterm=NONE ctermbg=16 ctermfg=60
|
||||
hi IncSearch cterm=bold ctermbg=202 ctermfg=231
|
||||
hi LineNr cterm=NONE ctermbg=237 ctermfg=102
|
||||
hi MatchParen cterm=bold ctermbg=NONE ctermfg=226
|
||||
hi ModeMsg cterm=bold ctermbg=NONE ctermfg=145
|
||||
hi MoreMsg cterm=bold ctermbg=234 ctermfg=29
|
||||
hi NonText cterm=NONE ctermbg=NONE ctermfg=59
|
||||
hi Pmenu cterm=NONE ctermbg=238 ctermfg=231
|
||||
hi PmenuSbar cterm=NONE ctermbg=250 ctermfg=fg
|
||||
hi PmenuSel cterm=NONE ctermbg=149 ctermfg=16
|
||||
hi Question cterm=bold ctermbg=NONE ctermfg=46
|
||||
hi Search cterm=bold ctermbg=185 ctermfg=16
|
||||
hi SignColumn cterm=NONE ctermbg=NONE ctermfg=231
|
||||
hi SpecialKey cterm=NONE ctermbg=NONE ctermfg=59
|
||||
hi SpellBad cterm=undercurl ctermbg=NONE ctermfg=196
|
||||
hi SpellCap cterm=undercurl ctermbg=NONE ctermfg=21
|
||||
hi SpellLocal cterm=undercurl ctermbg=NONE ctermfg=30
|
||||
hi SpellRare cterm=undercurl ctermbg=NONE ctermfg=201
|
||||
hi StatusLine cterm=bold ctermbg=101 ctermfg=16
|
||||
hi StatusLineNC cterm=NONE ctermbg=102 ctermfg=16
|
||||
hi VertSplit cterm=NONE ctermbg=102 ctermfg=102
|
||||
hi TabLine cterm=bold ctermbg=102 ctermfg=16
|
||||
hi TabLineFill cterm=NONE ctermbg=102 ctermfg=16
|
||||
hi TabLineSel cterm=bold ctermbg=16 ctermfg=59
|
||||
hi Title cterm=bold ctermbg=NONE ctermfg=66
|
||||
hi Visual cterm=NONE ctermbg=67 ctermfg=16
|
||||
hi WarningMsg cterm=NONE ctermbg=234 ctermfg=208
|
||||
hi WildMenu cterm=NONE ctermbg=116 ctermfg=16
|
||||
hi ExtraWhitespace cterm=NONE ctermbg=66 ctermfg=fg
|
||||
|
||||
hi Comment cterm=NONE ctermbg=NONE ctermfg=59
|
||||
hi Boolean cterm=NONE ctermbg=NONE ctermfg=208
|
||||
hi String cterm=NONE ctermbg=NONE ctermfg=101
|
||||
hi Identifier cterm=NONE ctermbg=NONE ctermfg=145
|
||||
hi Function cterm=NONE ctermbg=NONE ctermfg=230
|
||||
hi Type cterm=NONE ctermbg=NONE ctermfg=103
|
||||
hi Statement cterm=NONE ctermbg=NONE ctermfg=110
|
||||
hi Keyword cterm=NONE ctermbg=NONE ctermfg=110
|
||||
hi Constant cterm=NONE ctermbg=NONE ctermfg=208
|
||||
hi Number cterm=NONE ctermbg=NONE ctermfg=172
|
||||
hi Special cterm=NONE ctermbg=NONE ctermfg=64
|
||||
hi PreProc cterm=NONE ctermbg=NONE ctermfg=66
|
||||
hi Todo cterm=bold,underline ctermbg=234 ctermfg=96
|
||||
|
||||
hi diffOldFile cterm=NONE ctermbg=NONE ctermfg=67
|
||||
hi diffNewFile cterm=NONE ctermbg=NONE ctermfg=67
|
||||
hi diffFile cterm=NONE ctermbg=NONE ctermfg=67
|
||||
hi diffLine cterm=NONE ctermbg=NONE ctermfg=67
|
||||
hi diffAdded cterm=NONE ctermfg=NONE ctermfg=71
|
||||
hi diffRemoved cterm=NONE ctermfg=NONE ctermfg=124
|
||||
hi diffChanged cterm=NONE ctermfg=NONE ctermfg=68
|
||||
hi link diffSubname diffLine
|
||||
hi link diffOnly Constant
|
||||
hi link diffIdentical Constant
|
||||
hi link diffDiffer Constant
|
||||
hi link diffBDiffer Constant
|
||||
hi link diffIsA Constant
|
||||
hi link diffNoEOL Constant
|
||||
hi link diffCommon Constant
|
||||
hi link diffComment Constant
|
||||
|
||||
hi pythonClass cterm=NONE ctermbg=NONE ctermfg=fg
|
||||
hi pythonDecorator cterm=NONE ctermbg=NONE ctermfg=101
|
||||
hi pythonExClass cterm=NONE ctermbg=NONE ctermfg=95
|
||||
hi pythonException cterm=NONE ctermbg=NONE ctermfg=110
|
||||
hi pythonFunc cterm=NONE ctermbg=NONE ctermfg=fg
|
||||
hi pythonFuncParams cterm=NONE ctermbg=NONE ctermfg=fg
|
||||
hi pythonKeyword cterm=NONE ctermbg=NONE ctermfg=fg
|
||||
hi pythonParam cterm=NONE ctermbg=NONE ctermfg=fg
|
||||
hi pythonRawEscape cterm=NONE ctermbg=NONE ctermfg=fg
|
||||
hi pythonSuperclasses cterm=NONE ctermbg=NONE ctermfg=fg
|
||||
hi pythonSync cterm=NONE ctermbg=NONE ctermfg=fg
|
||||
|
||||
hi Conceal cterm=NONE ctermbg=248 ctermfg=252
|
||||
hi Error cterm=NONE ctermbg=196 ctermfg=231
|
||||
hi Ignore cterm=NONE ctermbg=NONE ctermfg=234
|
||||
hi InsertModeCursorLine cterm=NONE ctermbg=16 ctermfg=fg
|
||||
hi NormalModeCursorLine cterm=NONE ctermbg=235 ctermfg=fg
|
||||
hi PmenuThumb cterm=reverse ctermbg=NONE ctermfg=fg
|
||||
hi StatusLineAlert cterm=NONE ctermbg=160 ctermfg=231
|
||||
hi StatusLineUnalert cterm=NONE ctermbg=238 ctermfg=144
|
||||
hi Test cterm=NONE ctermbg=NONE ctermfg=fg
|
||||
hi Underlined cterm=underline ctermbg=NONE ctermfg=111
|
||||
hi VisualNOS cterm=bold,underline ctermbg=NONE ctermfg=fg
|
||||
hi cCursor cterm=reverse ctermbg=NONE ctermfg=fg
|
||||
hi iCursor cterm=NONE ctermbg=210 ctermfg=16
|
||||
hi lCursor cterm=NONE ctermbg=145 ctermfg=234
|
||||
hi nCursor cterm=NONE ctermbg=NONE ctermfg=145
|
||||
hi vCursor cterm=NONE ctermbg=201 ctermfg=16
|
||||
|
||||
hi Pmenu cterm=NONE ctermfg=248 ctermbg=237
|
||||
hi PmenuSel cterm=NONE ctermfg=16 ctermbg=66
|
||||
hi PmenuSbar cterm=NONE ctermfg=16 ctermbg=66
|
||||
hi PmenuThumb cterm=NONE ctermfg=16 ctermbg=66
|
||||
|
Loading…
Reference in New Issue
Block a user