123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251 |
- " Base16 Pop (https://github.com/chriskempson/base16)
- " Scheme: Chris Kempson (http://chriskempson.com)
- " GUI Base16 Color Definitions
- let s:gui00 = "000000"
- let s:gui01 = "202020"
- let s:gui02 = "303030"
- let s:gui03 = "505050"
- let s:gui04 = "b0b0b0"
- let s:gui05 = "d0d0d0"
- let s:gui06 = "e0e0e0"
- let s:gui07 = "ffffff"
- let s:gui08 = "eb008a"
- let s:gui09 = "f29333"
- let s:gui0A = "f8ca12"
- let s:gui0B = "37b349"
- let s:gui0C = "00aabb"
- let s:gui0D = "0e5a94"
- let s:gui0E = "b31e8d"
- let s:gui0F = "7a2d00"
- " Terminal Base16 Color Definitions
- let s:cterm00 = "00"
- let s:cterm03 = "08"
- let s:cterm05 = "07"
- let s:cterm07 = "15"
- let s:cterm08 = "01"
- let s:cterm0A = "03"
- let s:cterm0B = "02"
- let s:cterm0C = "06"
- let s:cterm0D = "04"
- let s:cterm0E = "05"
- if exists('base16colorspace') && base16colorspace == "256"
- let s:cterm01 = "18"
- let s:cterm02 = "19"
- let s:cterm04 = "20"
- let s:cterm06 = "21"
- let s:cterm09 = "16"
- let s:cterm0F = "17"
- else
- let s:cterm01 = "10"
- let s:cterm02 = "11"
- let s:cterm04 = "12"
- let s:cterm06 = "13"
- let s:cterm09 = "09"
- let s:cterm0F = "14"
- endif
- " Theme Setup
- hi clear
- syntax reset
- let g:colors_name = "base16-pop"
- " Highlighting function
- fun! <SID>hi(group, guifg, guibg, ctermfg, ctermbg, attr)
- if a:guifg != ""
- exec "hi " . a:group . " guifg=#" . a:guifg
- endif
- if a:guibg != ""
- exec "hi " . a:group . " guibg=#" . a:guibg
- endif
- if a:ctermfg != ""
- exec "hi " . a:group . " ctermfg=" . a:ctermfg
- endif
- if a:ctermbg != ""
- exec "hi " . a:group . " ctermbg=" . a:ctermbg
- endif
- if a:attr != ""
- exec "hi " . a:group . " gui=" . a:attr . " cterm=" . a:attr
- endif
- endfun
- " Vim Editor Colors
- call <SID>hi("Bold", "", "", "", "", "bold")
- call <SID>hi("Debug", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("Directory", s:gui0D, "", s:cterm0D, "", "")
- call <SID>hi("ErrorMsg", s:gui08, s:gui00, s:cterm08, s:cterm00, "")
- call <SID>hi("Exception", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("FoldColumn", "", s:gui01, "", s:cterm01, "")
- call <SID>hi("Folded", s:gui03, s:gui01, s:cterm03, s:cterm01, "")
- call <SID>hi("IncSearch", s:gui0A, "", s:cterm0A, "", "")
- call <SID>hi("Italic", "", "", "", "", "none")
- call <SID>hi("Macro", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("MatchParen", s:gui03, s:gui00, s:cterm03, s:cterm00, "reverse")
- call <SID>hi("ModeMsg", s:gui0B, "", s:cterm0B, "", "")
- call <SID>hi("MoreMsg", s:gui0B, "", s:cterm0B, "", "")
- call <SID>hi("Question", s:gui0A, "", s:cterm0A, "", "")
- call <SID>hi("Search", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "reverse")
- call <SID>hi("SpecialKey", s:gui03, "", s:cterm03, "", "")
- call <SID>hi("TooLong", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("Underlined", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("Visual", "", s:gui02, "", s:cterm02, "")
- call <SID>hi("VisualNOS", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("WarningMsg", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("WildMenu", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("Title", s:gui0D, "", s:cterm0D, "", "none")
- if &background == "dark"
- call <SID>hi("Cursor", s:gui00, s:gui05, s:cterm00, s:cterm05, "")
- call <SID>hi("NonText", s:gui03, "", s:cterm03, "", "")
- call <SID>hi("Normal", s:gui05, s:gui00, s:cterm05, s:cterm00, "")
- call <SID>hi("LineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "")
- call <SID>hi("SignColumn", s:gui03, s:gui01, s:cterm03, s:cterm01, "")
- call <SID>hi("SpecialKey", s:gui03, "", s:cterm03, "", "")
- call <SID>hi("StatusLine", s:gui04, s:gui02, s:cterm04, s:cterm02, "none")
- call <SID>hi("StatusLineNC", s:gui03, s:gui01, s:cterm03, s:cterm01, "none")
- call <SID>hi("VertSplit", s:gui02, s:gui02, s:cterm02, s:cterm02, "none")
- call <SID>hi("ColorColumn", "", s:gui01, "", s:cterm01, "none")
- call <SID>hi("CursorColumn", "", s:gui01, "", s:cterm01, "none")
- call <SID>hi("CursorLine", "", s:gui01, "", s:cterm01, "none")
- call <SID>hi("CursorLineNr", s:gui03, s:gui01, s:cterm03, s:cterm01, "")
- call <SID>hi("PMenu", s:gui04, s:gui01, s:cterm04, s:cterm01, "none")
- call <SID>hi("PMenuSel", s:gui04, s:gui01, s:cterm04, s:cterm01, "reverse")
- call <SID>hi("TabLine", s:gui03, s:gui01, s:cterm03, s:cterm01, "none")
- call <SID>hi("TabLineFill", s:gui03, s:gui01, s:cterm03, s:cterm01, "none")
- call <SID>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "none")
- else
- call <SID>hi("Cursor", s:gui00, s:gui02, s:cterm00, s:cterm02, "")
- call <SID>hi("NonText", s:gui05, "", s:cterm05, "", "")
- call <SID>hi("Normal", s:gui02, s:gui07, s:cterm02, s:cterm05, "")
- call <SID>hi("LineNr", s:gui04, s:gui06, s:cterm04, s:cterm06, "")
- call <SID>hi("SignColumn", s:gui04, s:gui06, s:cterm04, s:cterm06, "")
- call <SID>hi("SpecialKey", s:gui05, "", s:cterm05, "", "")
- call <SID>hi("StatusLine", s:gui04, s:gui06, s:cterm04, s:cterm06, "none")
- call <SID>hi("StatusLineNC", s:gui04, s:gui06, s:cterm04, s:cterm06, "none")
- call <SID>hi("VertSplit", s:gui05, s:gui05, s:cterm05, s:cterm05, "none")
- call <SID>hi("ColorColumn", "", s:gui06, "", s:cterm06, "none")
- call <SID>hi("CursorColumn", "", s:gui06, "", s:cterm06, "none")
- call <SID>hi("CursorLine", "", s:gui06, "", s:cterm06, "none")
- call <SID>hi("CursorLineNr", s:gui04, s:gui06, s:cterm04, s:cterm06, "")
- call <SID>hi("PMenu", s:gui05, s:gui03, s:cterm05, s:cterm03, "none")
- call <SID>hi("PMenuSel", s:gui05, s:gui03, s:cterm05, s:cterm03, "reverse")
- call <SID>hi("TabLine", s:gui06, s:gui01, s:cterm06, s:cterm01, "reverse")
- call <SID>hi("TabLineFill", s:gui06, s:gui01, s:cterm06, s:cterm01, "reverse")
- call <SID>hi("TabLineSel", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "reverse")
- endif
- " Standard Syntax Highlighting
- call <SID>hi("Boolean", s:gui09, "", s:cterm09, "", "")
- call <SID>hi("Character", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("Comment", s:gui03, "", s:cterm03, "", "")
- call <SID>hi("Conditional", s:gui0E, "", s:cterm0E, "", "")
- call <SID>hi("Constant", s:gui09, "", s:cterm09, "", "")
- call <SID>hi("Define", s:gui0E, "", s:cterm0E, "", "none")
- call <SID>hi("Delimiter", s:gui0F, "", s:cterm0F, "", "")
- call <SID>hi("Float", s:gui09, "", s:cterm09, "", "")
- call <SID>hi("Function", s:gui0D, "", s:cterm0D, "", "")
- call <SID>hi("Identifier", s:gui08, "", s:cterm08, "", "none")
- call <SID>hi("Include", s:gui0D, "", s:cterm0D, "", "")
- call <SID>hi("Keyword", s:gui0E, "", s:cterm0E, "", "")
- call <SID>hi("Label", s:gui0A, "", s:cterm0A, "", "")
- call <SID>hi("Number", s:gui09, "", s:cterm09, "", "")
- call <SID>hi("Operator", s:gui05, "", s:cterm05, "", "none")
- call <SID>hi("PreProc", s:gui0A, "", s:cterm0A, "", "")
- call <SID>hi("Repeat", s:gui0A, "", s:cterm0A, "", "")
- call <SID>hi("Special", s:gui0C, "", s:cterm0C, "", "")
- call <SID>hi("SpecialChar", s:gui0F, "", s:cterm0F, "", "")
- call <SID>hi("Statement", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("StorageClass", s:gui0A, "", s:cterm0A, "", "")
- call <SID>hi("String", s:gui0B, "", s:cterm0B, "", "")
- call <SID>hi("Structure", s:gui0E, "", s:cterm0E, "", "")
- call <SID>hi("Tag", s:gui0A, "", s:cterm0A, "", "")
- call <SID>hi("Todo", s:gui0A, s:gui01, s:cterm0A, s:cterm01, "")
- call <SID>hi("Type", s:gui09, "", s:cterm09, "", "none")
- call <SID>hi("Typedef", s:gui0A, "", s:cterm0A, "", "")
- " Spelling Highlighting
- call <SID>hi("SpellBad", "", s:gui00, "", s:cterm08, "")
- call <SID>hi("SpellLocal", "", s:gui00, "", s:cterm0D, "")
- "call <SID>hi("SpellCap", s:gui00, s:gui08, s:cterm00, s:cterm08, "")
- "call <SID>hi("SpellRare", s:gui00, s:gui08, s:cterm00, s:cterm08, "")
- " Additional Diff Highlighting
- call <SID>hi("DiffAdd", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "")
- call <SID>hi("DiffChange", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "")
- call <SID>hi("DiffDelete", s:gui08, s:gui00, s:cterm08, s:cterm00, "")
- call <SID>hi("DiffText", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "")
- call <SID>hi("DiffAdded", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "")
- call <SID>hi("DiffFile", s:gui08, s:gui00, s:cterm08, s:cterm00, "")
- call <SID>hi("DiffNewFile", s:gui0B, s:gui00, s:cterm0B, s:cterm00, "")
- call <SID>hi("DiffLine", s:gui0D, s:gui00, s:cterm0D, s:cterm00, "")
- call <SID>hi("DiffRemoved", s:gui08, s:gui00, s:cterm08, s:cterm00, "")
- " Ruby Highlighting
- call <SID>hi("rubyAttribute", s:gui0D, "", s:cterm0D, "", "")
- call <SID>hi("rubyConstant", s:gui0A, "", s:cterm0A, "", "")
- call <SID>hi("rubyInterpolation", s:gui0B, "", s:cterm0B, "", "")
- call <SID>hi("rubyInterpolationDelimiter", s:gui0F, "", s:cterm0F, "", "")
- call <SID>hi("rubyRegexp", s:gui0C, "", s:cterm0C, "", "")
- call <SID>hi("rubySymbol", s:gui0B, "", s:cterm0B, "", "")
- call <SID>hi("rubyStringDelimiter", s:gui0B, "", s:cterm0B, "", "")
- " PHP Highlighting
- call <SID>hi("phpMemberSelector", s:gui05, "", s:cterm05, "", "")
- call <SID>hi("phpComparison", s:gui05, "", s:cterm05, "", "")
- call <SID>hi("phpParent", s:gui05, "", s:cterm05, "", "")
- " HTML Highlighting
- call <SID>hi("htmlBold", s:gui0A, "", s:cterm0A, "", "")
- call <SID>hi("htmlItalic", s:gui0E, "", s:cterm0E, "", "")
- call <SID>hi("htmlEndTag", s:gui05, "", s:cterm05, "", "")
- call <SID>hi("htmlTag", s:gui05, "", s:cterm05, "", "")
- " CSS Highlighting
- call <SID>hi("cssBraces", s:gui05, "", s:cterm05, "", "")
- call <SID>hi("cssClassName", s:gui0E, "", s:cterm0E, "", "")
- call <SID>hi("cssColor", s:gui0C, "", s:cterm0C, "", "")
- " SASS Highlighting
- call <SID>hi("sassIdChar", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("sassClassChar", s:gui09, "", s:cterm09, "", "")
- call <SID>hi("sassInclude", s:gui0E, "", s:cterm0E, "", "")
- call <SID>hi("sassMixing", s:gui0E, "", s:cterm0E, "", "")
- call <SID>hi("sassMixinName", s:gui0D, "", s:cterm0D, "", "")
- " JavaScript Highlighting
- call <SID>hi("javaScript", s:gui05, "", s:cterm05, "", "")
- call <SID>hi("javaScriptBraces", s:gui05, "", s:cterm05, "", "")
- call <SID>hi("javaScriptNumber", s:gui09, "", s:cterm09, "", "")
- " Markdown Highlighting
- call <SID>hi("markdownCode", s:gui0B, "", s:cterm0B, "", "")
- call <SID>hi("markdownCodeBlock", s:gui0B, "", s:cterm0B, "", "")
- call <SID>hi("markdownHeadingDelimiter", s:gui0D, "", s:cterm0D, "", "")
- " Git Highlighting
- call <SID>hi("gitCommitOverflow", s:gui08, "", s:cterm08, "", "")
- call <SID>hi("gitCommitSummary", s:gui0B, "", s:cterm0B, "", "")
-
- " GitGutter Highlighting
- if &background == "dark"
- call <SID>hi("GitGutterAdd", s:gui0B, s:gui01, s:cterm0B, s:cterm01, "")
- call <SID>hi("GitGutterChange", s:gui0D, s:gui01, s:cterm0D, s:cterm01, "")
- call <SID>hi("GitGutterDelete", s:gui08, s:gui01, s:cterm08, s:cterm01, "")
- else
- call <SID>hi("GitGutterAdd", s:gui0B, s:gui06, s:cterm0B, s:cterm06, "")
- call <SID>hi("GitGutterChange", s:gui0D, s:gui06, s:cterm0D, s:cterm06, "")
- call <SID>hi("GitGutterDelete", s:gui08, s:gui06, s:cterm08, s:cterm06, "")
- endif
- " GitGutter Highlighting
- call <SID>hi("NERDTreeDirSlash", s:gui0D, "", s:cterm0D, "", "")
- call <SID>hi("NERDTreeExecFile", s:gui05, "", s:cterm05, "", "")
- " remove highlighting function
- delf <sid>hi
- " Remove Colour Variables
- unlet s:gui00 s:gui01 s:gui02 s:gui03 s:gui04 s:gui05 s:gui06 s:gui07 s:gui08 s:gui09 s:gui0A s:gui0B s:gui0C s:gui0D s:gui0E s:gui0F
- unlet s:cterm00 s:cterm01 s:cterm02 s:cterm03 s:cterm04 s:cterm05 s:cterm06 s:cterm07 s:cterm08 s:cterm09 s:cterm0A s:cterm0B s:cterm0C s:cterm0D s:cterm0E s:cterm0F
|