From 125ac2637066f6d409abc1a1246a611736745a74 Mon Sep 17 00:00:00 2001 From: chxuan <787280310@qq.com> Date: Thu, 21 Nov 2019 21:17:37 +0800 Subject: [PATCH] update colors --- colors/badwolf.vim | 670 +++++++++++++++++++++ colors/dream.vim | 367 ------------ colors/gruvbox.vim | 1393 +++++++++++++++++++++++++++++++++++++++++++ colors/seoul256.vim | 439 ++++++++++++++ colors/tender.vim | 157 ----- 5 files changed, 2502 insertions(+), 524 deletions(-) create mode 100644 colors/badwolf.vim delete mode 100644 colors/dream.vim create mode 100644 colors/gruvbox.vim create mode 100644 colors/seoul256.vim delete mode 100644 colors/tender.vim diff --git a/colors/badwolf.vim b/colors/badwolf.vim new file mode 100644 index 0000000..9ce5441 --- /dev/null +++ b/colors/badwolf.vim @@ -0,0 +1,670 @@ +" _ _ _ __ +" | |__ __ _ __| | __ _____ | |/ _| +" | '_ \ / _` |/ _` | \ \ /\ / / _ \| | |_ +" | |_) | (_| | (_| | \ V V / (_) | | _| +" |_.__/ \__,_|\__,_| \_/\_/ \___/|_|_| +" +" I am the Bad Wolf. I create myself. +" I take the words. I scatter them in time and space. +" A message to lead myself here. +" +" A Vim colorscheme pieced together by Steve Losh. +" Available at http://stevelosh.com/projects/badwolf/ +" +" Why? {{{ +" +" After using Molokai for quite a long time, I started longing for +" a replacement. +" +" I love Molokai's high contrast and gooey, saturated tones, but it can be +" a little inconsistent at times. +" +" Also it's winter here in Rochester, so I wanted a color scheme that's a bit +" warmer. A little less blue and a bit more red. +" +" And so Bad Wolf was born. I'm no designer, but designers have been scattering +" beautiful colors through time and space long before I came along. I took +" advantage of that and reused some of my favorites to lead me to this scheme. +" +" }}} + +" Supporting code ------------------------------------------------------------- +" Preamble {{{ + +if !has("gui_running") && &t_Co != 88 && &t_Co != 256 + finish +endif + +set background=dark + +if exists("syntax_on") + syntax reset +endif + +let g:colors_name = "badwolf" + +if !exists("g:badwolf_html_link_underline") " {{{ + let g:badwolf_html_link_underline = 1 +endif " }}} + +if !exists("g:badwolf_css_props_highlight") " {{{ + let g:badwolf_css_props_highlight = 0 +endif " }}} + +" }}} +" Palette {{{ + +let s:bwc = {} + +" The most basic of all our colors is a slightly tweaked version of the Molokai +" Normal text. +let s:bwc.plain = ['f8f6f2', 15] + +" Pure and simple. +let s:bwc.snow = ['ffffff', 15] +let s:bwc.coal = ['000000', 16] + +" All of the Gravel colors are based on a brown from Clouds Midnight. +let s:bwc.brightgravel = ['d9cec3', 252] +let s:bwc.lightgravel = ['998f84', 245] +let s:bwc.gravel = ['857f78', 243] +let s:bwc.mediumgravel = ['666462', 241] +let s:bwc.deepgravel = ['45413b', 238] +let s:bwc.deepergravel = ['35322d', 236] +let s:bwc.darkgravel = ['242321', 235] +let s:bwc.blackgravel = ['1c1b1a', 233] +let s:bwc.blackestgravel = ['141413', 232] + +" A color sampled from a highlight in a photo of a glass of Dale's Pale Ale on +" my desk. +let s:bwc.dalespale = ['fade3e', 221] + +" A beautiful tan from Tomorrow Night. +let s:bwc.dirtyblonde = ['f4cf86', 222] + +" Delicious, chewy red from Made of Code for the poppiest highlights. +let s:bwc.taffy = ['ff2c4b', 196] + +" Another chewy accent, but use sparingly! +let s:bwc.saltwatertaffy = ['8cffba', 121] + +" The star of the show comes straight from Made of Code. +" +" You should almost never use this. It should be used for things that denote +" 'where the user is', which basically consists of: +" +" * The cursor +" * A REPL prompt +let s:bwc.tardis = ['0a9dff', 39] + +" This one's from Mustang, not Florida! +let s:bwc.orange = ['ffa724', 214] + +" A limier green from Getafe. +let s:bwc.lime = ['aeee00', 154] + +" Rose's dress in The Idiot's Lantern. +let s:bwc.dress = ['ff9eb8', 211] + +" Another play on the brown from Clouds Midnight. I love that color. +let s:bwc.toffee = ['b88853', 137] + +" Also based on that Clouds Midnight brown. +let s:bwc.coffee = ['c7915b', 173] +let s:bwc.darkroast = ['88633f', 95] + +" }}} +" Highlighting Function {{{ +function! s:HL(group, fg, ...) + " Arguments: group, guifg, guibg, gui, guisp + + let histring = 'hi ' . a:group . ' ' + + if strlen(a:fg) + if a:fg == 'fg' + let histring .= 'guifg=fg ctermfg=fg ' + else + let c = get(s:bwc, a:fg) + let histring .= 'guifg=#' . c[0] . ' ctermfg=' . c[1] . ' ' + endif + endif + + if a:0 >= 1 && strlen(a:1) + if a:1 == 'bg' + let histring .= 'guibg=bg ctermbg=bg ' + else + let c = get(s:bwc, a:1) + let histring .= 'guibg=#' . c[0] . ' ctermbg=' . c[1] . ' ' + endif + endif + + if a:0 >= 2 && strlen(a:2) + let histring .= 'gui=' . a:2 . ' cterm=' . a:2 . ' ' + endif + + if a:0 >= 3 && strlen(a:3) + let c = get(s:bwc, a:3) + let histring .= 'guisp=#' . c[0] . ' ' + endif + + " echom histring + + execute histring +endfunction +" }}} +" Configuration Options {{{ + +if exists('g:badwolf_darkgutter') && g:badwolf_darkgutter + let s:gutter = 'blackestgravel' +else + let s:gutter = 'blackgravel' +endif + +if exists('g:badwolf_tabline') + if g:badwolf_tabline == 0 + let s:tabline = 'blackestgravel' + elseif g:badwolf_tabline == 1 + let s:tabline = 'blackgravel' + elseif g:badwolf_tabline == 2 + let s:tabline = 'darkgravel' + elseif g:badwolf_tabline == 3 + let s:tabline = 'deepgravel' + else + let s:tabline = 'blackestgravel' + endif +else + let s:tabline = 'blackgravel' +endif + +" }}} + +" Actual colorscheme ---------------------------------------------------------- +" Vanilla Vim {{{ + +" General/UI {{{ + +call s:HL('Normal', 'plain', 'blackgravel') + +call s:HL('Folded', 'mediumgravel', 'bg', 'none') + +call s:HL('VertSplit', 'lightgravel', 'bg', 'none') + +call s:HL('CursorLine', '', 'darkgravel', 'none') +call s:HL('CursorColumn', '', 'darkgravel') +call s:HL('ColorColumn', '', 'darkgravel') + +call s:HL('TabLine', 'plain', s:tabline, 'none') +call s:HL('TabLineFill', 'plain', s:tabline, 'none') +call s:HL('TabLineSel', 'coal', 'tardis', 'none') + +call s:HL('MatchParen', 'dalespale', 'darkgravel', 'bold') + +call s:HL('NonText', 'deepgravel', 'bg') +call s:HL('SpecialKey', 'deepgravel', 'bg') + +call s:HL('Visual', '', 'deepgravel') +call s:HL('VisualNOS', '', 'deepgravel') + +call s:HL('Search', 'coal', 'dalespale', 'bold') +call s:HL('IncSearch', 'coal', 'tardis', 'bold') + +call s:HL('Underlined', 'fg', '', 'underline') + +call s:HL('StatusLine', 'coal', 'tardis', 'bold') +call s:HL('StatusLineNC', 'snow', 'deepgravel', 'bold') + +call s:HL('Directory', 'dirtyblonde', '', 'bold') + +call s:HL('Title', 'lime') + +call s:HL('ErrorMsg', 'taffy', 'bg', 'bold') +call s:HL('MoreMsg', 'dalespale', '', 'bold') +call s:HL('ModeMsg', 'dirtyblonde', '', 'bold') +call s:HL('Question', 'dirtyblonde', '', 'bold') +call s:HL('WarningMsg', 'dress', '', 'bold') + +" This is a ctags tag, not an HTML one. 'Something you can use c-] on'. +call s:HL('Tag', '', '', 'bold') + +" hi IndentGuides guibg=#373737 +" hi WildMenu guifg=#66D9EF guibg=#000000 + +" }}} +" Gutter {{{ + +call s:HL('LineNr', 'mediumgravel', s:gutter) +call s:HL('SignColumn', '', s:gutter) +call s:HL('FoldColumn', 'mediumgravel', s:gutter) + +" }}} +" Cursor {{{ + +call s:HL('Cursor', 'coal', 'tardis', 'bold') +call s:HL('vCursor', 'coal', 'tardis', 'bold') +call s:HL('iCursor', 'coal', 'tardis', 'none') + +" }}} +" Syntax highlighting {{{ + +" Start with a simple base. +call s:HL('Special', 'plain') + +" Comments are slightly brighter than folds, to make 'headers' easier to see. +call s:HL('Comment', 'gravel') +call s:HL('Todo', 'snow', 'bg', 'bold') +call s:HL('SpecialComment', 'snow', 'bg', 'bold') + +" Strings are a nice, pale straw color. Nothing too fancy. +call s:HL('String', 'dirtyblonde') + +" Control flow stuff is taffy. +call s:HL('Statement', 'taffy', '', 'bold') +call s:HL('Keyword', 'taffy', '', 'bold') +call s:HL('Conditional', 'taffy', '', 'bold') +call s:HL('Operator', 'taffy', '', 'none') +call s:HL('Label', 'taffy', '', 'none') +call s:HL('Repeat', 'taffy', '', 'none') + +" Functions and variable declarations are orange, because plain looks weird. +call s:HL('Identifier', 'orange', '', 'none') +call s:HL('Function', 'orange', '', 'none') + +" Preprocessor stuff is lime, to make it pop. +" +" This includes imports in any given language, because they should usually be +" grouped together at the beginning of a file. If they're in the middle of some +" other code they should stand out, because something tricky is +" probably going on. +call s:HL('PreProc', 'lime', '', 'none') +call s:HL('Macro', 'lime', '', 'none') +call s:HL('Define', 'lime', '', 'none') +call s:HL('PreCondit', 'lime', '', 'bold') + +" Constants of all kinds are colored together. +" I'm not really happy with the color yet... +call s:HL('Constant', 'toffee', '', 'bold') +call s:HL('Character', 'toffee', '', 'bold') +call s:HL('Boolean', 'toffee', '', 'bold') + +call s:HL('Number', 'toffee', '', 'bold') +call s:HL('Float', 'toffee', '', 'bold') + +" Not sure what 'special character in a constant' means, but let's make it pop. +call s:HL('SpecialChar', 'dress', '', 'bold') + +call s:HL('Type', 'dress', '', 'none') +call s:HL('StorageClass', 'taffy', '', 'none') +call s:HL('Structure', 'taffy', '', 'none') +call s:HL('Typedef', 'taffy', '', 'bold') + +" Make try/catch blocks stand out. +call s:HL('Exception', 'lime', '', 'bold') + +" Misc +call s:HL('Error', 'snow', 'taffy', 'bold') +call s:HL('Debug', 'snow', '', 'bold') +call s:HL('Ignore', 'gravel', '', '') + +" }}} +" Completion Menu {{{ + +call s:HL('Pmenu', 'plain', 'deepergravel') +call s:HL('PmenuSel', 'coal', 'tardis', 'bold') +call s:HL('PmenuSbar', '', 'deepergravel') +call s:HL('PmenuThumb', 'brightgravel') + +" }}} +" Diffs {{{ + +call s:HL('DiffDelete', 'coal', 'coal') +call s:HL('DiffAdd', '', 'deepergravel') +call s:HL('DiffChange', '', 'darkgravel') +call s:HL('DiffText', 'snow', 'deepergravel', 'bold') + +" }}} +" Spelling {{{ + +if has("spell") + call s:HL('SpellCap', 'dalespale', 'bg', 'undercurl,bold', 'dalespale') + call s:HL('SpellBad', '', 'bg', 'undercurl', 'dalespale') + call s:HL('SpellLocal', '', '', 'undercurl', 'dalespale') + call s:HL('SpellRare', '', '', 'undercurl', 'dalespale') +endif + +" }}} + +" }}} +" Plugins {{{ + +" CtrlP {{{ + + " the message when no match is found + call s:HL('CtrlPNoEntries', 'snow', 'taffy', 'bold') + + " the matched pattern + call s:HL('CtrlPMatch', 'orange', 'bg', 'none') + + " the line prefix '>' in the match window + call s:HL('CtrlPLinePre', 'deepgravel', 'bg', 'none') + + " the prompt’s base + call s:HL('CtrlPPrtBase', 'deepgravel', 'bg', 'none') + + " the prompt’s text + call s:HL('CtrlPPrtText', 'plain', 'bg', 'none') + + " the prompt’s cursor when moving over the text + call s:HL('CtrlPPrtCursor', 'coal', 'tardis', 'bold') + + " 'prt' or 'win', also for 'regex' + call s:HL('CtrlPMode1', 'coal', 'tardis', 'bold') + + " 'file' or 'path', also for the local working dir + call s:HL('CtrlPMode2', 'coal', 'tardis', 'bold') + + " the scanning status + call s:HL('CtrlPStats', 'coal', 'tardis', 'bold') + + " TODO: CtrlP extensions. + " CtrlPTabExtra : the part of each line that’s not matched against (Comment) + " CtrlPqfLineCol : the line and column numbers in quickfix mode (|s:HL-Search|) + " CtrlPUndoT : the elapsed time in undo mode (|s:HL-Directory|) + " CtrlPUndoBr : the square brackets [] in undo mode (Comment) + " CtrlPUndoNr : the undo number inside [] in undo mode (String) + +" }}} +" EasyMotion {{{ + +call s:HL('EasyMotionTarget', 'tardis', 'bg', 'bold') +call s:HL('EasyMotionShade', 'deepgravel', 'bg') + +" }}} +" Interesting Words {{{ + +" These are only used if you're me or have copied the hNUM mappings +" from my Vimrc. +call s:HL('InterestingWord1', 'coal', 'orange') +call s:HL('InterestingWord2', 'coal', 'lime') +call s:HL('InterestingWord3', 'coal', 'saltwatertaffy') +call s:HL('InterestingWord4', 'coal', 'toffee') +call s:HL('InterestingWord5', 'coal', 'dress') +call s:HL('InterestingWord6', 'coal', 'taffy') + + +" }}} +" Makegreen {{{ + +" hi GreenBar term=reverse ctermfg=white ctermbg=green guifg=coal guibg=#9edf1c +" hi RedBar term=reverse ctermfg=white ctermbg=red guifg=white guibg=#C50048 + +" }}} +" Rainbow Parentheses {{{ + +call s:HL('level16c', 'mediumgravel', '', 'bold') +call s:HL('level15c', 'dalespale', '', '') +call s:HL('level14c', 'dress', '', '') +call s:HL('level13c', 'orange', '', '') +call s:HL('level12c', 'tardis', '', '') +call s:HL('level11c', 'lime', '', '') +call s:HL('level10c', 'toffee', '', '') +call s:HL('level9c', 'saltwatertaffy', '', '') +call s:HL('level8c', 'coffee', '', '') +call s:HL('level7c', 'dalespale', '', '') +call s:HL('level6c', 'dress', '', '') +call s:HL('level5c', 'orange', '', '') +call s:HL('level4c', 'tardis', '', '') +call s:HL('level3c', 'lime', '', '') +call s:HL('level2c', 'toffee', '', '') +call s:HL('level1c', 'saltwatertaffy', '', '') + +" }}} +" ShowMarks {{{ + +call s:HL('ShowMarksHLl', 'tardis', 'blackgravel') +call s:HL('ShowMarksHLu', 'tardis', 'blackgravel') +call s:HL('ShowMarksHLo', 'tardis', 'blackgravel') +call s:HL('ShowMarksHLm', 'tardis', 'blackgravel') + +" }}} + +" }}} +" Filetype-specific {{{ + +" Clojure {{{ + +call s:HL('clojureSpecial', 'taffy', '', '') +call s:HL('clojureDefn', 'taffy', '', '') +call s:HL('clojureDefMacro', 'taffy', '', '') +call s:HL('clojureDefine', 'taffy', '', '') +call s:HL('clojureMacro', 'taffy', '', '') +call s:HL('clojureCond', 'taffy', '', '') + +call s:HL('clojureKeyword', 'orange', '', 'none') + +call s:HL('clojureFunc', 'dress', '', 'none') +call s:HL('clojureRepeat', 'dress', '', 'none') + +call s:HL('clojureParen0', 'lightgravel', '', 'none') + +call s:HL('clojureAnonArg', 'snow', '', 'bold') + +" }}} +" Common Lisp {{{ + +call s:HL('lispFunc', 'lime', '', 'none') +call s:HL('lispVar', 'orange', '', 'bold') +call s:HL('lispEscapeSpecial', 'orange', '', 'none') + +" }}} +" CSS {{{ + +if g:badwolf_css_props_highlight + call s:HL('cssColorProp', 'taffy', '', 'none') + call s:HL('cssBoxProp', 'taffy', '', 'none') + call s:HL('cssTextProp', 'taffy', '', 'none') + call s:HL('cssRenderProp', 'taffy', '', 'none') + call s:HL('cssGeneratedContentProp', 'taffy', '', 'none') +else + call s:HL('cssColorProp', 'fg', '', 'none') + call s:HL('cssBoxProp', 'fg', '', 'none') + call s:HL('cssTextProp', 'fg', '', 'none') + call s:HL('cssRenderProp', 'fg', '', 'none') + call s:HL('cssGeneratedContentProp', 'fg', '', 'none') +end + +call s:HL('cssValueLength', 'toffee', '', 'bold') +call s:HL('cssColor', 'toffee', '', 'bold') +call s:HL('cssBraces', 'lightgravel', '', 'none') +call s:HL('cssIdentifier', 'orange', '', 'bold') +call s:HL('cssClassName', 'orange', '', 'none') + +" }}} +" Diff {{{ + +call s:HL('gitDiff', 'lightgravel', '',) + +call s:HL('diffRemoved', 'dress', '',) +call s:HL('diffAdded', 'lime', '',) +call s:HL('diffFile', 'coal', 'taffy', 'bold') +call s:HL('diffNewFile', 'coal', 'taffy', 'bold') + +call s:HL('diffLine', 'coal', 'orange', 'bold') +call s:HL('diffSubname', 'orange', '', 'none') + +" }}} +" Django Templates {{{ + +call s:HL('djangoArgument', 'dirtyblonde', '',) +call s:HL('djangoTagBlock', 'orange', '') +call s:HL('djangoVarBlock', 'orange', '') +" hi djangoStatement guifg=#ff3853 gui=bold +" hi djangoVarBlock guifg=#f4cf86 + +" }}} +" HTML {{{ + +" Punctuation +call s:HL('htmlTag', 'darkroast', 'bg', 'none') +call s:HL('htmlEndTag', 'darkroast', 'bg', 'none') + +" Tag names +call s:HL('htmlTagName', 'coffee', '', 'bold') +call s:HL('htmlSpecialTagName', 'coffee', '', 'bold') +call s:HL('htmlSpecialChar', 'lime', '', 'none') + +" Attributes +call s:HL('htmlArg', 'coffee', '', 'none') + +" Stuff inside an tag + +if g:badwolf_html_link_underline + call s:HL('htmlLink', 'lightgravel', '', 'underline') +else + call s:HL('htmlLink', 'lightgravel', '', 'none') +endif + +" }}} +" Java {{{ + +call s:HL('javaClassDecl', 'taffy', '', 'bold') +call s:HL('javaScopeDecl', 'taffy', '', 'bold') +call s:HL('javaCommentTitle', 'gravel', '') +call s:HL('javaDocTags', 'snow', '', 'none') +call s:HL('javaDocParam', 'dalespale', '', '') + +" }}} +" LaTeX {{{ + +call s:HL('texStatement', 'tardis', '', 'none') +call s:HL('texMathZoneX', 'orange', '', 'none') +call s:HL('texMathZoneA', 'orange', '', 'none') +call s:HL('texMathZoneB', 'orange', '', 'none') +call s:HL('texMathZoneC', 'orange', '', 'none') +call s:HL('texMathZoneD', 'orange', '', 'none') +call s:HL('texMathZoneE', 'orange', '', 'none') +call s:HL('texMathZoneV', 'orange', '', 'none') +call s:HL('texMathZoneX', 'orange', '', 'none') +call s:HL('texMath', 'orange', '', 'none') +call s:HL('texMathMatcher', 'orange', '', 'none') +call s:HL('texRefLabel', 'dirtyblonde', '', 'none') +call s:HL('texRefZone', 'lime', '', 'none') +call s:HL('texComment', 'darkroast', '', 'none') +call s:HL('texDelimiter', 'orange', '', 'none') +call s:HL('texZone', 'brightgravel', '', 'none') + +augroup badwolf_tex + au! + + au BufRead,BufNewFile *.tex syn region texMathZoneV start="\\(" end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup + au BufRead,BufNewFile *.tex syn region texMathZoneX start="\$" skip="\\\\\|\\\$" end="\$\|%stopzone\>" keepend contains=@texMathZoneGroup +augroup END + +" }}} +" LessCSS {{{ + +call s:HL('lessVariable', 'lime', '', 'none') + +" }}} +" Lispyscript {{{ + +call s:HL('lispyscriptDefMacro', 'lime', '', '') +call s:HL('lispyscriptRepeat', 'dress', '', 'none') + +" }}} +" REPLs {{{ +" This isn't a specific plugin, but just useful highlight classes for anything +" that might want to use them. + +call s:HL('replPrompt', 'tardis', '', 'bold') + +" }}} +" Mail {{{ + +call s:HL('mailSubject', 'orange', '', 'bold') +call s:HL('mailHeader', 'lightgravel', '', '') +call s:HL('mailHeaderKey', 'lightgravel', '', '') +call s:HL('mailHeaderEmail', 'snow', '', '') +call s:HL('mailURL', 'toffee', '', 'underline') +call s:HL('mailSignature', 'gravel', '', 'none') + +call s:HL('mailQuoted1', 'gravel', '', 'none') +call s:HL('mailQuoted2', 'dress', '', 'none') +call s:HL('mailQuoted3', 'dirtyblonde', '', 'none') +call s:HL('mailQuoted4', 'orange', '', 'none') +call s:HL('mailQuoted5', 'lime', '', 'none') + +" }}} +" Markdown {{{ + +call s:HL('markdownHeadingRule', 'lightgravel', '', 'bold') +call s:HL('markdownHeadingDelimiter', 'lightgravel', '', 'bold') +call s:HL('markdownOrderedListMarker', 'lightgravel', '', 'bold') +call s:HL('markdownListMarker', 'lightgravel', '', 'bold') +call s:HL('markdownItalic', 'snow', '', 'bold') +call s:HL('markdownBold', 'snow', '', 'bold') +call s:HL('markdownH1', 'orange', '', 'bold') +call s:HL('markdownH2', 'lime', '', 'bold') +call s:HL('markdownH3', 'lime', '', 'none') +call s:HL('markdownH4', 'lime', '', 'none') +call s:HL('markdownH5', 'lime', '', 'none') +call s:HL('markdownH6', 'lime', '', 'none') +call s:HL('markdownLinkText', 'toffee', '', 'underline') +call s:HL('markdownIdDeclaration', 'toffee') +call s:HL('markdownAutomaticLink', 'toffee', '', 'bold') +call s:HL('markdownUrl', 'toffee', '', 'bold') +call s:HL('markdownUrldelimiter', 'lightgravel', '', 'bold') +call s:HL('markdownLinkDelimiter', 'lightgravel', '', 'bold') +call s:HL('markdownLinkTextDelimiter', 'lightgravel', '', 'bold') +call s:HL('markdownCodeDelimiter', 'dirtyblonde', '', 'bold') +call s:HL('markdownCode', 'dirtyblonde', '', 'none') +call s:HL('markdownCodeBlock', 'dirtyblonde', '', 'none') + +" }}} +" MySQL {{{ + +call s:HL('mysqlSpecial', 'dress', '', 'bold') + +" }}} +" Python {{{ + +hi def link pythonOperator Operator +call s:HL('pythonBuiltin', 'dress') +call s:HL('pythonBuiltinObj', 'dress') +call s:HL('pythonBuiltinFunc', 'dress') +call s:HL('pythonEscape', 'dress') +call s:HL('pythonException', 'lime', '', 'bold') +call s:HL('pythonExceptions', 'lime', '', 'none') +call s:HL('pythonPrecondit', 'lime', '', 'none') +call s:HL('pythonDecorator', 'taffy', '', 'none') +call s:HL('pythonRun', 'gravel', '', 'bold') +call s:HL('pythonCoding', 'gravel', '', 'bold') + +" }}} +" SLIMV {{{ + +" Rainbow parentheses +call s:HL('hlLevel0', 'gravel') +call s:HL('hlLevel1', 'orange') +call s:HL('hlLevel2', 'saltwatertaffy') +call s:HL('hlLevel3', 'dress') +call s:HL('hlLevel4', 'coffee') +call s:HL('hlLevel5', 'dirtyblonde') +call s:HL('hlLevel6', 'orange') +call s:HL('hlLevel7', 'saltwatertaffy') +call s:HL('hlLevel8', 'dress') +call s:HL('hlLevel9', 'coffee') + +" }}} +" Vim {{{ + +call s:HL('VimCommentTitle', 'lightgravel', '', 'bold') + +call s:HL('VimMapMod', 'dress', '', 'none') +call s:HL('VimMapModKey', 'dress', '', 'none') +call s:HL('VimNotation', 'dress', '', 'none') +call s:HL('VimBracket', 'dress', '', 'none') + +" }}} + +" }}} + diff --git a/colors/dream.vim b/colors/dream.vim deleted file mode 100644 index e38e128..0000000 --- a/colors/dream.vim +++ /dev/null @@ -1,367 +0,0 @@ -" File: dream.vim -" Maintainer: Crusoe Xia (crusoexia) -" URL: https://github.com/crusoexia/vim-dream -" License: MIT -" -" The code is learnt from hybrid. -" -" Configuration: -" -" * Enable italic: -" -" let g:dream_italic = 1 - -" Initialisation -" -------------- - -if !has("gui_running") && &t_Co < 256 - finish -endif - -if ! exists("g:dream_italic") - let g:dream_italic = 0 -endif - -set background=dark -hi clear - -if exists("syntax_on") - syntax reset -endif - -let colors_name = "dream" - -" Palettes -" -------- - -if has("gui_running") - let s:vmode = "gui" - let s:background = "#2A2B30" - let s:foreground = "#EAECEB" - let s:window = "#3E4E41" - let s:line = "#3C3C41" - let s:lineNr = "#6C6D7A" - let s:darkcolumn = "#2A2C2A" - let s:selection = "#494C51" - let s:comment = "#8D969F" - let s:error = "#5F0000" - - let s:red = "#DD5676" - let s:orangered = "#DB8C7E" - let s:orange = "#D0A12D" - let s:green = "#A8E6B7" - let s:darkgreen = "#C7C582" - let s:grassgreen = "#C2D23A" - let s:purple = "#BC71C0" - - let s:addfg = "#d7ffaf" - let s:addbg = "#5f875f" - let s:delbg = "#f75f5f" - let s:changefg = "#d7d7ff" - let s:changebg = "#5f5f87" -else - let s:vmode = "cterm" - let s:background = "235" - let s:foreground = "251" - let s:window = "234" - let s:line = "236" - let s:lineNr = "239" - let s:darkcolumn = "234" - let s:selection = "237" - let s:comment = "243" - let s:error = "52" - - let s:red = "197" - let s:orangered = "167" - let s:orange = "130" - let s:green = "157" - let s:darkgreen = "143" - let s:grassgreen = "106" - let s:purple = "98" - - let s:addfg = "193" - let s:addbg = "65" - let s:delbg = "167" - let s:changefg = "189" - let s:changebg = "60" -endif - -" Formatting Options -" ------------------ - -let s:none = "NONE" -let s:t_none = "NONE" -let s:n = "NONE" -let s:c = ",undercurl" -let s:r = ",reverse" -let s:s = ",standout" -let s:b = ",bold" -let s:u = ",underline" -let s:i = ",italic" - -" Highlighting Primitives -" ----------------------- - -exe "let s:bg_none = ' ".s:vmode."bg=".s:none ."'" -exe "let s:bg_foreground = ' ".s:vmode."bg=".s:foreground."'" -exe "let s:bg_background = ' ".s:vmode."bg=".s:background."'" -exe "let s:bg_selection = ' ".s:vmode."bg=".s:selection ."'" -exe "let s:bg_line = ' ".s:vmode."bg=".s:line ."'" -exe "let s:bg_lineNr = ' ".s:vmode."bg=".s:lineNr ."'" -exe "let s:bg_comment = ' ".s:vmode."bg=".s:comment ."'" -exe "let s:bg_red = ' ".s:vmode."bg=".s:red ."'" -exe "let s:bg_orangered = ' ".s:vmode."bg=".s:orangered ."'" -exe "let s:bg_orange = ' ".s:vmode."bg=".s:orange ."'" -exe "let s:bg_green = ' ".s:vmode."bg=".s:green ."'" -exe "let s:bg_grassgreen = ' ".s:vmode."bg=".s:grassgreen."'" -exe "let s:bg_darkgreen = ' ".s:vmode."bg=".s:darkgreen ."'" -exe "let s:bg_purple = ' ".s:vmode."bg=".s:purple ."'" -exe "let s:bg_window = ' ".s:vmode."bg=".s:window ."'" -exe "let s:bg_darkcolumn = ' ".s:vmode."bg=".s:darkcolumn."'" -exe "let s:bg_addbg = ' ".s:vmode."bg=".s:addbg ."'" -exe "let s:bg_addfg = ' ".s:vmode."bg=".s:addfg ."'" -exe "let s:bg_delbg = ' ".s:vmode."bg=".s:delbg ."'" -exe "let s:bg_changebg = ' ".s:vmode."bg=".s:changebg ."'" -exe "let s:bg_changefg = ' ".s:vmode."bg=".s:changefg ."'" -exe "let s:bg_error = ' ".s:vmode."bg=".s:error ."'" - -exe "let s:fg_none = ' ".s:vmode."fg=".s:none ."'" -exe "let s:fg_foreground = ' ".s:vmode."fg=".s:foreground."'" -exe "let s:fg_background = ' ".s:vmode."fg=".s:background."'" -exe "let s:fg_selection = ' ".s:vmode."fg=".s:selection ."'" -exe "let s:fg_line = ' ".s:vmode."fg=".s:line ."'" -exe "let s:fg_lineNr = ' ".s:vmode."fg=".s:lineNr ."'" -exe "let s:fg_comment = ' ".s:vmode."fg=".s:comment ."'" -exe "let s:fg_red = ' ".s:vmode."fg=".s:red ."'" -exe "let s:fg_orangered = ' ".s:vmode."fg=".s:orangered ."'" -exe "let s:fg_orange = ' ".s:vmode."fg=".s:orange ."'" -exe "let s:fg_green = ' ".s:vmode."fg=".s:green ."'" -exe "let s:fg_grassgreen = ' ".s:vmode."fg=".s:grassgreen."'" -exe "let s:fg_darkgreen = ' ".s:vmode."fg=".s:darkgreen ."'" -exe "let s:fg_purple = ' ".s:vmode."fg=".s:purple ."'" -exe "let s:fg_window = ' ".s:vmode."fg=".s:window ."'" -exe "let s:fg_darkcolumn = ' ".s:vmode."fg=".s:darkcolumn."'" -exe "let s:fg_addbg = ' ".s:vmode."fg=".s:addbg ."'" -exe "let s:fg_addfg = ' ".s:vmode."fg=".s:addfg ."'" -exe "let s:fg_delbg = ' ".s:vmode."fg=".s:delbg ."'" -exe "let s:fg_changebg = ' ".s:vmode."fg=".s:changebg ."'" -exe "let s:fg_changefg = ' ".s:vmode."fg=".s:changefg ."'" -exe "let s:fg_error = ' ".s:vmode."fg=".s:error ."'" - -exe "let s:fmt_none = ' ".s:vmode."=NONE". " term=NONE" ."'" -exe "let s:fmt_bold = ' ".s:vmode."=NONE".s:b. " term=NONE".s:b ."'" -exe "let s:fmt_bldi = ' ".s:vmode."=NONE".s:b.s:i. " term=NONE".s:b.s:i."'" -exe "let s:fmt_undr = ' ".s:vmode."=NONE".s:u. " term=NONE".s:u ."'" -exe "let s:fmt_undb = ' ".s:vmode."=NONE".s:u.s:b. " term=NONE".s:u.s:b."'" -exe "let s:fmt_undi = ' ".s:vmode."=NONE".s:u.s:i. " term=NONE".s:u.s:i."'" -exe "let s:fmt_curl = ' ".s:vmode."=NONE".s:c. " term=NONE".s:c ."'" -exe "let s:fmt_ital = ' ".s:vmode."=NONE".s:i. " term=NONE".s:i ."'" -exe "let s:fmt_stnd = ' ".s:vmode."=NONE".s:s. " term=NONE".s:s ."'" -exe "let s:fmt_revr = ' ".s:vmode."=NONE".s:r. " term=NONE".s:r ."'" -exe "let s:fmt_revb = ' ".s:vmode."=NONE".s:r.s:b. " term=NONE".s:r.s:b."'" - -" Highlighting -" ------------ - -" editor -exe "hi! Normal" .s:fg_foreground .s:bg_background .s:fmt_none -exe "hi! ColorColumn" .s:fg_none .s:bg_line .s:fmt_none -exe "hi! CursorColumn" .s:fg_none .s:bg_line .s:fmt_none -exe "hi! CursorLine" .s:fg_none .s:bg_line .s:fmt_none -exe "hi! CursorLineNr" .s:fg_grassgreen .s:bg_none .s:fmt_bold -exe "hi! LineNr" .s:fg_lineNr .s:bg_none .s:fmt_none -exe "hi! SignColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none -exe "hi! VertSplit" .s:fg_green .s:bg_none .s:fmt_none -exe "hi! NonText" .s:fg_selection .s:bg_none .s:fmt_none -exe "hi! StatusLine" .s:fg_comment .s:bg_background .s:fmt_revr -exe "hi! StatusLineNC" .s:fg_window .s:bg_comment .s:fmt_revr -exe "hi! TabLine" .s:fg_foreground .s:bg_darkcolumn .s:fmt_revr -exe "hi! Visual" .s:fg_none .s:bg_selection .s:fmt_none -exe "hi! Search" .s:fg_background .s:bg_grassgreen .s:fmt_none -exe "hi! MatchParen" .s:fg_background .s:bg_orange .s:fmt_none -exe "hi! Question" .s:fg_grassgreen .s:bg_none .s:fmt_none -exe "hi! ModeMsg" .s:fg_grassgreen .s:bg_none .s:fmt_none -exe "hi! MoreMsg" .s:fg_grassgreen .s:bg_none .s:fmt_none -exe "hi! ErrorMsg" .s:fg_background .s:bg_red .s:fmt_stnd -exe "hi! WarningMsg" .s:fg_red .s:bg_none .s:fmt_none - -" misc -exe "hi! SpecialKey" .s:fg_selection .s:bg_none .s:fmt_none -exe "hi! Title" .s:fg_orangered .s:bg_none .s:fmt_none -exe "hi! Directory" .s:fg_green .s:bg_none .s:fmt_bold - -" diff -exe "hi! DiffAdd" .s:fg_addfg .s:bg_addbg .s:fmt_none -exe "hi! DiffDelete" .s:fg_background .s:bg_delbg .s:fmt_none -exe "hi! DiffChange" .s:fg_changefg .s:bg_changebg .s:fmt_none -exe "hi! DiffText" .s:fg_background .s:bg_green .s:fmt_none - -" fold -exe "hi! Folded" .s:fg_comment .s:bg_darkcolumn .s:fmt_none -exe "hi! FoldColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none -" Incsearch" - -" popup menu -exe "hi! Pmenu" .s:fg_foreground .s:bg_selection .s:fmt_none -exe "hi! PmenuSel" .s:fg_foreground .s:bg_selection .s:fmt_revr -" PmenuSbar" -" PmenuThumb" - -" Generic Syntax Highlighting -" --------------------------- - -if g:dream_italic == 1 - exe "hi! Constant" .s:fg_purple .s:bg_none .s:fmt_ital -else - exe "hi! Constant" .s:fg_purple .s:bg_none .s:fmt_none -endif -exe "hi! Number" .s:fg_purple .s:bg_none .s:fmt_none -exe "hi! Float" .s:fg_purple .s:bg_none .s:fmt_none -exe "hi! Boolean" .s:fg_purple .s:bg_none .s:fmt_none -exe "hi! String" .s:fg_grassgreen .s:bg_none .s:fmt_none -exe "hi! Character" .s:fg_grassgreen .s:bg_none .s:fmt_none - -exe "hi! Identifier" .s:fg_orangered .s:bg_none .s:fmt_none -exe "hi! Function" .s:fg_orangered .s:bg_none .s:fmt_none - -exe "hi! Type" .s:fg_green .s:bg_none .s:fmt_none -" Structure" -" StorageClass" -" Typedef" - -exe "hi! Statement" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! Operator" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! Label" .s:fg_orange .s:bg_none .s:fmt_none -exe "hi! Conditional" .s:fg_red .s:bg_none .s:fmt_none -" Repeat" -" Keyword" -" Exception" - -exe "hi! PreProc" .s:fg_darkgreen .s:bg_none .s:fmt_bold -" Include" -" Define" -" Macro" -" PreCondit" - -exe "hi! Special" .s:fg_green .s:bg_none .s:fmt_none -" SpecialKey -" SpecialChar" -" Tag" -" Delimiter" -" SpecialComment" -" Debug" - -exe "hi! Underlined" .s:fg_orangered .s:bg_none .s:fmt_none -exe "hi! Ignore" .s:fg_none .s:bg_none .s:fmt_none -exe "hi! Error" .s:fg_red .s:bg_error .s:fmt_undr - -exe "hi! SpellBad" .s:fg_red .s:bg_error .s:fmt_undr -exe "hi! SpellCap" .s:fg_orange .s:bg_darkcolumn .s:fmt_undb - -if g:dream_italic == 1 - exe "hi! Todo" .s:fg_orange .s:bg_none .s:fmt_bldi - exe "hi! Comment" .s:fg_comment .s:bg_none .s:fmt_ital -else - exe "hi! Todo" .s:fg_orange .s:bg_none .s:fmt_bold - exe "hi! Comment" .s:fg_comment .s:bg_none .s:fmt_none -endif - -" NerdTree -" -------- - -exe "hi! NERDTreeOpenable" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! NERDTreeClosable" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! NERDTreeHelp" .s:fg_grassgreen .s:bg_none .s:fmt_none -exe "hi! NERDTreeBookmarksHeader" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! NERDTreeBookmarksLeader" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! NERDTreeBookmarkName" .s:fg_darkgreen .s:bg_none .s:fmt_none -exe "hi! NERDTreeCWD" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! NERDTreeDirSlash" .s:fg_orangered .s:bg_none .s:fmt_none - -" Syntastic -" --------- - -hi! link SyntasticErrorSign Error -exe "hi! SyntasticWarningSign" .s:fg_orange .s:bg_darkcolumn .s:fmt_none - -" Language highlight -" ------------------ - -" Vim command -exe "hi! vimCommand" .s:fg_red .s:bg_none .s:fmt_none - -" Javascript -exe "hi! jsFuncName" .s:fg_orangered .s:bg_none .s:fmt_none -exe "hi! jsThis" .s:fg_green .s:bg_none .s:fmt_none -exe "hi! jsFuncCall" .s:fg_none .s:bg_none .s:fmt_none - -if g:dream_italic == 1 - exe "hi! jsFuncArgs" .s:fg_orange .s:bg_none .s:fmt_ital -else - exe "hi! jsFuncArgs" .s:fg_orange .s:bg_none .s:fmt_none -endif - -" Html -exe "hi! htmlTag" .s:fg_foreground .s:bg_none .s:fmt_none -exe "hi! htmlEndTag" .s:fg_foreground .s:bg_none .s:fmt_none -exe "hi! htmlTagName" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! htmlArg" .s:fg_orangered .s:bg_none .s:fmt_none -exe "hi! htmlSpecialChar" .s:fg_purple .s:bg_none .s:fmt_none - -" Xml -hi! link xmlTag htmlTag -hi! link xmlEndTag htmlEndTag -hi! link xmlTagName htmlTagName -hi! link xmlAttrib htmlArg - -" CSS -exe "hi! cssFunctionName" .s:fg_green .s:bg_none .s:fmt_none -exe "hi! cssColor" .s:fg_purple .s:bg_none .s:fmt_none -exe "hi! cssPseudoClassId" .s:fg_purple .s:bg_none .s:fmt_none -exe "hi! cssClassName" .s:fg_orangered .s:bg_none .s:fmt_none -exe "hi! cssValueLength" .s:fg_purple .s:bg_none .s:fmt_none -exe "hi! cssCommonAttr" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! cssBraces" .s:fg_none .s:bg_none .s:fmt_none - -if g:dream_italic == 1 - exe "hi! cssURL" .s:fg_orange .s:bg_none .s:fmt_undi -else - exe "hi! cssURL" .s:fg_orange .s:bg_none .s:fmt_undr -endif - -" ruby -exe "hi! rubyInterpolationDelimiter" .s:fg_none .s:bg_none .s:fmt_none -exe "hi! rubyInstanceVariable" .s:fg_none .s:bg_none .s:fmt_none -exe "hi! rubyGlobalVariable" .s:fg_none .s:bg_none .s:fmt_none -exe "hi! rubyClassVariable" .s:fg_none .s:bg_none .s:fmt_none -exe "hi! rubyPseudoVariable" .s:fg_none .s:bg_none .s:fmt_none -exe "hi! rubyOperator" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! rubyFunction" .s:fg_orangered .s:bg_none .s:fmt_none -exe "hi! rubyInclude" .s:fg_orangered .s:bg_none .s:fmt_none -exe "hi! rubyStringDelimiter" .s:fg_grassgreen .s:bg_none .s:fmt_none -exe "hi! rubyRegexp" .s:fg_grassgreen .s:bg_none .s:fmt_none -exe "hi! rubyRegexpDelimiter" .s:fg_grassgreen .s:bg_none .s:fmt_none -exe "hi! rubySymbol" .s:fg_purple .s:bg_none .s:fmt_none -exe "hi! rubyEscape" .s:fg_purple .s:bg_none .s:fmt_none -exe "hi! rubyControl" .s:fg_green .s:bg_none .s:fmt_none -exe "hi! rubyClass" .s:fg_green .s:bg_none .s:fmt_none -exe "hi! rubyDefine" .s:fg_green .s:bg_none .s:fmt_none -exe "hi! rubyException" .s:fg_green .s:bg_none .s:fmt_none -exe "hi! rubyRailsARAssociationMethod" .s:fg_orange .s:bg_none .s:fmt_none -exe "hi! rubyRailsARMethod" .s:fg_orange .s:bg_none .s:fmt_none -exe "hi! rubyRailsRenderMethod" .s:fg_orange .s:bg_none .s:fmt_none -exe "hi! rubyRailsMethod" .s:fg_orange .s:bg_none .s:fmt_none - -if g:dream_italic == 1 - exe "hi! rubyBlockParameter" .s:fg_orange .s:bg_none .s:fmt_ital - exe "hi! rubyConstant" .s:fg_orange .s:bg_none .s:fmt_ital - exe "hi! rubyIdentifier" .s:fg_orange .s:bg_none .s:fmt_ital -else - exe "hi! rubyBlockParameter" .s:fg_orange .s:bg_none .s:fmt_none - exe "hi! rubyConstant" .s:fg_orange .s:bg_none .s:fmt_none - exe "hi! rubyIdentifier" .s:fg_orange .s:bg_none .s:fmt_none -endif - -" eruby -exe "hi! erubyDelimiter" .s:fg_none .s:bg_none .s:fmt_none -exe "hi! erubyRailsMethod" .s:fg_green .s:bg_none .s:fmt_none diff --git a/colors/gruvbox.vim b/colors/gruvbox.vim new file mode 100644 index 0000000..a0c2c0b --- /dev/null +++ b/colors/gruvbox.vim @@ -0,0 +1,1393 @@ +" ----------------------------------------------------------------------------- +" File: gruvbox.vim +" Description: Retro groove color scheme for Vim +" Author: morhetz +" Source: https://github.com/morhetz/gruvbox +" Last Modified: 12 Aug 2017 +" ----------------------------------------------------------------------------- + +" Supporting code ------------------------------------------------------------- +" Initialisation: {{{ + +if version > 580 + hi clear + if exists("syntax_on") + syntax reset + endif +endif + +let g:colors_name='gruvbox' + +if !(has('termguicolors') && &termguicolors) && !has('gui_running') && &t_Co != 256 + finish +endif + +" }}} +" Global Settings: {{{ + +if !exists('g:gruvbox_bold') + let g:gruvbox_bold=1 +endif +if !exists('g:gruvbox_italic') + if has('gui_running') || $TERM_ITALICS == 'true' + let g:gruvbox_italic=1 + else + let g:gruvbox_italic=0 + endif +endif +if !exists('g:gruvbox_undercurl') + let g:gruvbox_undercurl=1 +endif +if !exists('g:gruvbox_underline') + let g:gruvbox_underline=1 +endif +if !exists('g:gruvbox_inverse') + let g:gruvbox_inverse=1 +endif + +if !exists('g:gruvbox_guisp_fallback') || index(['fg', 'bg'], g:gruvbox_guisp_fallback) == -1 + let g:gruvbox_guisp_fallback='NONE' +endif + +if !exists('g:gruvbox_improved_strings') + let g:gruvbox_improved_strings=0 +endif + +if !exists('g:gruvbox_improved_warnings') + let g:gruvbox_improved_warnings=0 +endif + +if !exists('g:gruvbox_termcolors') + let g:gruvbox_termcolors=256 +endif + +if !exists('g:gruvbox_invert_indent_guides') + let g:gruvbox_invert_indent_guides=0 +endif + +if exists('g:gruvbox_contrast') + echo 'g:gruvbox_contrast is deprecated; use g:gruvbox_contrast_light and g:gruvbox_contrast_dark instead' +endif + +if !exists('g:gruvbox_contrast_dark') + let g:gruvbox_contrast_dark='medium' +endif + +if !exists('g:gruvbox_contrast_light') + let g:gruvbox_contrast_light='medium' +endif + +let s:is_dark=(&background == 'dark') + +" }}} +" Palette: {{{ + +" setup palette dictionary +let s:gb = {} + +" fill it with absolute colors +let s:gb.dark0_hard = ['#1d2021', 234] " 29-32-33 +let s:gb.dark0 = ['#282828', 235] " 40-40-40 +let s:gb.dark0_soft = ['#32302f', 236] " 50-48-47 +let s:gb.dark1 = ['#3c3836', 237] " 60-56-54 +let s:gb.dark2 = ['#504945', 239] " 80-73-69 +let s:gb.dark3 = ['#665c54', 241] " 102-92-84 +let s:gb.dark4 = ['#7c6f64', 243] " 124-111-100 +let s:gb.dark4_256 = ['#7c6f64', 243] " 124-111-100 + +let s:gb.gray_245 = ['#928374', 245] " 146-131-116 +let s:gb.gray_244 = ['#928374', 244] " 146-131-116 + +let s:gb.light0_hard = ['#f9f5d7', 230] " 249-245-215 +let s:gb.light0 = ['#fbf1c7', 229] " 253-244-193 +let s:gb.light0_soft = ['#f2e5bc', 228] " 242-229-188 +let s:gb.light1 = ['#ebdbb2', 223] " 235-219-178 +let s:gb.light2 = ['#d5c4a1', 250] " 213-196-161 +let s:gb.light3 = ['#bdae93', 248] " 189-174-147 +let s:gb.light4 = ['#a89984', 246] " 168-153-132 +let s:gb.light4_256 = ['#a89984', 246] " 168-153-132 + +let s:gb.bright_red = ['#fb4934', 167] " 251-73-52 +let s:gb.bright_green = ['#b8bb26', 142] " 184-187-38 +let s:gb.bright_yellow = ['#fabd2f', 214] " 250-189-47 +let s:gb.bright_blue = ['#83a598', 109] " 131-165-152 +let s:gb.bright_purple = ['#d3869b', 175] " 211-134-155 +let s:gb.bright_aqua = ['#8ec07c', 108] " 142-192-124 +let s:gb.bright_orange = ['#fe8019', 208] " 254-128-25 + +let s:gb.neutral_red = ['#cc241d', 124] " 204-36-29 +let s:gb.neutral_green = ['#98971a', 106] " 152-151-26 +let s:gb.neutral_yellow = ['#d79921', 172] " 215-153-33 +let s:gb.neutral_blue = ['#458588', 66] " 69-133-136 +let s:gb.neutral_purple = ['#b16286', 132] " 177-98-134 +let s:gb.neutral_aqua = ['#689d6a', 72] " 104-157-106 +let s:gb.neutral_orange = ['#d65d0e', 166] " 214-93-14 + +let s:gb.faded_red = ['#9d0006', 88] " 157-0-6 +let s:gb.faded_green = ['#79740e', 100] " 121-116-14 +let s:gb.faded_yellow = ['#b57614', 136] " 181-118-20 +let s:gb.faded_blue = ['#076678', 24] " 7-102-120 +let s:gb.faded_purple = ['#8f3f71', 96] " 143-63-113 +let s:gb.faded_aqua = ['#427b58', 66] " 66-123-88 +let s:gb.faded_orange = ['#af3a03', 130] " 175-58-3 + +" }}} +" Setup Emphasis: {{{ + +let s:bold = 'bold,' +if g:gruvbox_bold == 0 + let s:bold = '' +endif + +let s:italic = 'italic,' +if g:gruvbox_italic == 0 + let s:italic = '' +endif + +let s:underline = 'underline,' +if g:gruvbox_underline == 0 + let s:underline = '' +endif + +let s:undercurl = 'undercurl,' +if g:gruvbox_undercurl == 0 + let s:undercurl = '' +endif + +let s:inverse = 'inverse,' +if g:gruvbox_inverse == 0 + let s:inverse = '' +endif + +" }}} +" Setup Colors: {{{ + +let s:vim_bg = ['bg', 'bg'] +let s:vim_fg = ['fg', 'fg'] +let s:none = ['NONE', 'NONE'] + +" determine relative colors +if s:is_dark + let s:bg0 = s:gb.dark0 + if g:gruvbox_contrast_dark == 'soft' + let s:bg0 = s:gb.dark0_soft + elseif g:gruvbox_contrast_dark == 'hard' + let s:bg0 = s:gb.dark0_hard + endif + + let s:bg1 = s:gb.dark1 + let s:bg2 = s:gb.dark2 + let s:bg3 = s:gb.dark3 + let s:bg4 = s:gb.dark4 + + let s:gray = s:gb.gray_245 + + let s:fg0 = s:gb.light0 + let s:fg1 = s:gb.light1 + let s:fg2 = s:gb.light2 + let s:fg3 = s:gb.light3 + let s:fg4 = s:gb.light4 + + let s:fg4_256 = s:gb.light4_256 + + let s:red = s:gb.bright_red + let s:green = s:gb.bright_green + let s:yellow = s:gb.bright_yellow + let s:blue = s:gb.bright_blue + let s:purple = s:gb.bright_purple + let s:aqua = s:gb.bright_aqua + let s:orange = s:gb.bright_orange +else + let s:bg0 = s:gb.light0 + if g:gruvbox_contrast_light == 'soft' + let s:bg0 = s:gb.light0_soft + elseif g:gruvbox_contrast_light == 'hard' + let s:bg0 = s:gb.light0_hard + endif + + let s:bg1 = s:gb.light1 + let s:bg2 = s:gb.light2 + let s:bg3 = s:gb.light3 + let s:bg4 = s:gb.light4 + + let s:gray = s:gb.gray_244 + + let s:fg0 = s:gb.dark0 + let s:fg1 = s:gb.dark1 + let s:fg2 = s:gb.dark2 + let s:fg3 = s:gb.dark3 + let s:fg4 = s:gb.dark4 + + let s:fg4_256 = s:gb.dark4_256 + + let s:red = s:gb.faded_red + let s:green = s:gb.faded_green + let s:yellow = s:gb.faded_yellow + let s:blue = s:gb.faded_blue + let s:purple = s:gb.faded_purple + let s:aqua = s:gb.faded_aqua + let s:orange = s:gb.faded_orange +endif + +" reset to 16 colors fallback +if g:gruvbox_termcolors == 16 + let s:bg0[1] = 0 + let s:fg4[1] = 7 + let s:gray[1] = 8 + let s:red[1] = 9 + let s:green[1] = 10 + let s:yellow[1] = 11 + let s:blue[1] = 12 + let s:purple[1] = 13 + let s:aqua[1] = 14 + let s:fg1[1] = 15 +endif + +" save current relative colors back to palette dictionary +let s:gb.bg0 = s:bg0 +let s:gb.bg1 = s:bg1 +let s:gb.bg2 = s:bg2 +let s:gb.bg3 = s:bg3 +let s:gb.bg4 = s:bg4 + +let s:gb.gray = s:gray + +let s:gb.fg0 = s:fg0 +let s:gb.fg1 = s:fg1 +let s:gb.fg2 = s:fg2 +let s:gb.fg3 = s:fg3 +let s:gb.fg4 = s:fg4 + +let s:gb.fg4_256 = s:fg4_256 + +let s:gb.red = s:red +let s:gb.green = s:green +let s:gb.yellow = s:yellow +let s:gb.blue = s:blue +let s:gb.purple = s:purple +let s:gb.aqua = s:aqua +let s:gb.orange = s:orange + +" }}} +" Setup Terminal Colors For Neovim: {{{ + +if has('nvim') + let g:terminal_color_0 = s:bg0[0] + let g:terminal_color_8 = s:gray[0] + + let g:terminal_color_1 = s:gb.neutral_red[0] + let g:terminal_color_9 = s:red[0] + + let g:terminal_color_2 = s:gb.neutral_green[0] + let g:terminal_color_10 = s:green[0] + + let g:terminal_color_3 = s:gb.neutral_yellow[0] + let g:terminal_color_11 = s:yellow[0] + + let g:terminal_color_4 = s:gb.neutral_blue[0] + let g:terminal_color_12 = s:blue[0] + + let g:terminal_color_5 = s:gb.neutral_purple[0] + let g:terminal_color_13 = s:purple[0] + + let g:terminal_color_6 = s:gb.neutral_aqua[0] + let g:terminal_color_14 = s:aqua[0] + + let g:terminal_color_7 = s:fg4[0] + let g:terminal_color_15 = s:fg1[0] +endif + +" }}} +" Overload Setting: {{{ + +let s:hls_cursor = s:orange +if exists('g:gruvbox_hls_cursor') + let s:hls_cursor = get(s:gb, g:gruvbox_hls_cursor) +endif + +let s:number_column = s:none +if exists('g:gruvbox_number_column') + let s:number_column = get(s:gb, g:gruvbox_number_column) +endif + +let s:sign_column = s:bg1 + +if exists('g:gitgutter_override_sign_column_highlight') && + \ g:gitgutter_override_sign_column_highlight == 1 + let s:sign_column = s:number_column +else + let g:gitgutter_override_sign_column_highlight = 0 + + if exists('g:gruvbox_sign_column') + let s:sign_column = get(s:gb, g:gruvbox_sign_column) + endif +endif + +let s:color_column = s:bg1 +if exists('g:gruvbox_color_column') + let s:color_column = get(s:gb, g:gruvbox_color_column) +endif + +let s:vert_split = s:bg0 +if exists('g:gruvbox_vert_split') + let s:vert_split = get(s:gb, g:gruvbox_vert_split) +endif + +let s:invert_signs = '' +if exists('g:gruvbox_invert_signs') + if g:gruvbox_invert_signs == 1 + let s:invert_signs = s:inverse + endif +endif + +let s:invert_selection = s:inverse +if exists('g:gruvbox_invert_selection') + if g:gruvbox_invert_selection == 0 + let s:invert_selection = '' + endif +endif + +let s:invert_tabline = '' +if exists('g:gruvbox_invert_tabline') + if g:gruvbox_invert_tabline == 1 + let s:invert_tabline = s:inverse + endif +endif + +let s:italicize_comments = s:italic +if exists('g:gruvbox_italicize_comments') + if g:gruvbox_italicize_comments == 0 + let s:italicize_comments = '' + endif +endif + +let s:italicize_strings = '' +if exists('g:gruvbox_italicize_strings') + if g:gruvbox_italicize_strings == 1 + let s:italicize_strings = s:italic + endif +endif + +" }}} +" Highlighting Function: {{{ + +function! s:HL(group, fg, ...) + " Arguments: group, guifg, guibg, gui, guisp + + " foreground + let fg = a:fg + + " background + if a:0 >= 1 + let bg = a:1 + else + let bg = s:none + endif + + " emphasis + if a:0 >= 2 && strlen(a:2) + let emstr = a:2 + else + let emstr = 'NONE,' + endif + + " special fallback + if a:0 >= 3 + if g:gruvbox_guisp_fallback != 'NONE' + let fg = a:3 + endif + + " bg fallback mode should invert higlighting + if g:gruvbox_guisp_fallback == 'bg' + let emstr .= 'inverse,' + endif + endif + + let histring = [ 'hi', a:group, + \ 'guifg=' . fg[0], 'ctermfg=' . fg[1], + \ 'guibg=' . bg[0], 'ctermbg=' . bg[1], + \ 'gui=' . emstr[:-2], 'cterm=' . emstr[:-2] + \ ] + + " special + if a:0 >= 3 + call add(histring, 'guisp=' . a:3[0]) + endif + + execute join(histring, ' ') +endfunction + +" }}} +" Gruvbox Hi Groups: {{{ + +" memoize common hi groups +call s:HL('GruvboxFg0', s:fg0) +call s:HL('GruvboxFg1', s:fg1) +call s:HL('GruvboxFg2', s:fg2) +call s:HL('GruvboxFg3', s:fg3) +call s:HL('GruvboxFg4', s:fg4) +call s:HL('GruvboxGray', s:gray) +call s:HL('GruvboxBg0', s:bg0) +call s:HL('GruvboxBg1', s:bg1) +call s:HL('GruvboxBg2', s:bg2) +call s:HL('GruvboxBg3', s:bg3) +call s:HL('GruvboxBg4', s:bg4) + +call s:HL('GruvboxRed', s:red) +call s:HL('GruvboxRedBold', s:red, s:none, s:bold) +call s:HL('GruvboxGreen', s:green) +call s:HL('GruvboxGreenBold', s:green, s:none, s:bold) +call s:HL('GruvboxYellow', s:yellow) +call s:HL('GruvboxYellowBold', s:yellow, s:none, s:bold) +call s:HL('GruvboxBlue', s:blue) +call s:HL('GruvboxBlueBold', s:blue, s:none, s:bold) +call s:HL('GruvboxPurple', s:purple) +call s:HL('GruvboxPurpleBold', s:purple, s:none, s:bold) +call s:HL('GruvboxAqua', s:aqua) +call s:HL('GruvboxAquaBold', s:aqua, s:none, s:bold) +call s:HL('GruvboxOrange', s:orange) +call s:HL('GruvboxOrangeBold', s:orange, s:none, s:bold) + +call s:HL('GruvboxRedSign', s:red, s:sign_column, s:invert_signs) +call s:HL('GruvboxGreenSign', s:green, s:sign_column, s:invert_signs) +call s:HL('GruvboxYellowSign', s:yellow, s:sign_column, s:invert_signs) +call s:HL('GruvboxBlueSign', s:blue, s:sign_column, s:invert_signs) +call s:HL('GruvboxPurpleSign', s:purple, s:sign_column, s:invert_signs) +call s:HL('GruvboxAquaSign', s:aqua, s:sign_column, s:invert_signs) + +" }}} + +" Vanilla colorscheme --------------------------------------------------------- +" General UI: {{{ + +" Normal text +call s:HL('Normal', s:fg1, s:bg0) + +" Correct background (see issue #7): +" --- Problem with changing between dark and light on 256 color terminal +" --- https://github.com/morhetz/gruvbox/issues/7 +if s:is_dark + set background=dark +else + set background=light +endif + +if version >= 700 + " Screen line that the cursor is + call s:HL('CursorLine', s:none, s:bg1) + " Screen column that the cursor is + hi! link CursorColumn CursorLine + + " Tab pages line filler + call s:HL('TabLineFill', s:bg4, s:bg1, s:invert_tabline) + " Active tab page label + call s:HL('TabLineSel', s:green, s:bg1, s:invert_tabline) + " Not active tab page label + hi! link TabLine TabLineFill + + " Match paired bracket under the cursor + call s:HL('MatchParen', s:none, s:bg3, s:bold) +endif + +if version >= 703 + " Highlighted screen columns + call s:HL('ColorColumn', s:none, s:color_column) + + " Concealed element: \lambda → λ + call s:HL('Conceal', s:blue, s:none) + + " Line number of CursorLine + call s:HL('CursorLineNr', s:yellow, s:bg1) +endif + +hi! link NonText GruvboxBg2 +hi! link SpecialKey GruvboxBg2 + +call s:HL('Visual', s:none, s:bg3, s:invert_selection) +hi! link VisualNOS Visual + +call s:HL('Search', s:yellow, s:bg0, s:inverse) +call s:HL('IncSearch', s:hls_cursor, s:bg0, s:inverse) + +call s:HL('Underlined', s:blue, s:none, s:underline) + +call s:HL('StatusLine', s:bg2, s:fg1, s:inverse) +call s:HL('StatusLineNC', s:bg1, s:fg4, s:inverse) + +" The column separating vertically split windows +call s:HL('VertSplit', s:bg3, s:vert_split) + +" Current match in wildmenu completion +call s:HL('WildMenu', s:blue, s:bg2, s:bold) + +" Directory names, special names in listing +hi! link Directory GruvboxGreenBold + +" Titles for output from :set all, :autocmd, etc. +hi! link Title GruvboxGreenBold + +" Error messages on the command line +call s:HL('ErrorMsg', s:bg0, s:red, s:bold) +" More prompt: -- More -- +hi! link MoreMsg GruvboxYellowBold +" Current mode message: -- INSERT -- +hi! link ModeMsg GruvboxYellowBold +" 'Press enter' prompt and yes/no questions +hi! link Question GruvboxOrangeBold +" Warning messages +hi! link WarningMsg GruvboxRedBold + +" }}} +" Gutter: {{{ + +" Line number for :number and :# commands +call s:HL('LineNr', s:bg4, s:number_column) + +" Column where signs are displayed +call s:HL('SignColumn', s:none, s:sign_column) + +" Line used for closed folds +call s:HL('Folded', s:gray, s:bg1, s:italic) +" Column where folds are displayed +call s:HL('FoldColumn', s:gray, s:bg1) + +" }}} +" Cursor: {{{ + +" Character under cursor +call s:HL('Cursor', s:none, s:none, s:inverse) +" Visual mode cursor, selection +hi! link vCursor Cursor +" Input moder cursor +hi! link iCursor Cursor +" Language mapping cursor +hi! link lCursor Cursor + +" }}} +" Syntax Highlighting: {{{ + +if g:gruvbox_improved_strings == 0 + hi! link Special GruvboxOrange +else + call s:HL('Special', s:orange, s:bg1, s:italicize_strings) +endif + +call s:HL('Comment', s:gray, s:none, s:italicize_comments) +call s:HL('Todo', s:vim_fg, s:vim_bg, s:bold . s:italic) +call s:HL('Error', s:red, s:vim_bg, s:bold . s:inverse) + +" Generic statement +hi! link Statement GruvboxRed +" if, then, else, endif, swicth, etc. +hi! link Conditional GruvboxRed +" for, do, while, etc. +hi! link Repeat GruvboxRed +" case, default, etc. +hi! link Label GruvboxRed +" try, catch, throw +hi! link Exception GruvboxRed +" sizeof, "+", "*", etc. +hi! link Operator Normal +" Any other keyword +hi! link Keyword GruvboxRed + +" Variable name +hi! link Identifier GruvboxBlue +" Function name +hi! link Function GruvboxGreenBold + +" Generic preprocessor +hi! link PreProc GruvboxAqua +" Preprocessor #include +hi! link Include GruvboxAqua +" Preprocessor #define +hi! link Define GruvboxAqua +" Same as Define +hi! link Macro GruvboxAqua +" Preprocessor #if, #else, #endif, etc. +hi! link PreCondit GruvboxAqua + +" Generic constant +hi! link Constant GruvboxPurple +" Character constant: 'c', '/n' +hi! link Character GruvboxPurple +" String constant: "this is a string" +if g:gruvbox_improved_strings == 0 + call s:HL('String', s:green, s:none, s:italicize_strings) +else + call s:HL('String', s:fg1, s:bg1, s:italicize_strings) +endif +" Boolean constant: TRUE, false +hi! link Boolean GruvboxPurple +" Number constant: 234, 0xff +hi! link Number GruvboxPurple +" Floating point constant: 2.3e10 +hi! link Float GruvboxPurple + +" Generic type +hi! link Type GruvboxYellow +" static, register, volatile, etc +hi! link StorageClass GruvboxOrange +" struct, union, enum, etc. +hi! link Structure GruvboxAqua +" typedef +hi! link Typedef GruvboxYellow + +" }}} +" Completion Menu: {{{ + +if version >= 700 + " Popup menu: normal item + call s:HL('Pmenu', s:fg1, s:bg2) + " Popup menu: selected item + call s:HL('PmenuSel', s:bg2, s:blue, s:bold) + " Popup menu: scrollbar + call s:HL('PmenuSbar', s:none, s:bg2) + " Popup menu: scrollbar thumb + call s:HL('PmenuThumb', s:none, s:bg4) +endif + +" }}} +" Diffs: {{{ + +call s:HL('DiffDelete', s:red, s:bg0, s:inverse) +call s:HL('DiffAdd', s:green, s:bg0, s:inverse) +"call s:HL('DiffChange', s:bg0, s:blue) +"call s:HL('DiffText', s:bg0, s:yellow) + +" Alternative setting +call s:HL('DiffChange', s:aqua, s:bg0, s:inverse) +call s:HL('DiffText', s:yellow, s:bg0, s:inverse) + +" }}} +" Spelling: {{{ + +if has("spell") + " Not capitalised word, or compile warnings + if g:gruvbox_improved_warnings == 0 + call s:HL('SpellCap', s:none, s:none, s:undercurl, s:red) + else + call s:HL('SpellCap', s:green, s:none, s:bold . s:italic) + endif + " Not recognized word + call s:HL('SpellBad', s:none, s:none, s:undercurl, s:blue) + " Wrong spelling for selected region + call s:HL('SpellLocal', s:none, s:none, s:undercurl, s:aqua) + " Rare word + call s:HL('SpellRare', s:none, s:none, s:undercurl, s:purple) +endif + +" }}} + +" Plugin specific ------------------------------------------------------------- +" EasyMotion: {{{ + +hi! link EasyMotionTarget Search +hi! link EasyMotionShade Comment + +" }}} +" Sneak: {{{ + +hi! link Sneak Search +hi! link SneakLabel Search + +" }}} +" Indent Guides: {{{ + +if !exists('g:indent_guides_auto_colors') + let g:indent_guides_auto_colors = 0 +endif + +if g:indent_guides_auto_colors == 0 + if g:gruvbox_invert_indent_guides == 0 + call s:HL('IndentGuidesOdd', s:vim_bg, s:bg2) + call s:HL('IndentGuidesEven', s:vim_bg, s:bg1) + else + call s:HL('IndentGuidesOdd', s:vim_bg, s:bg2, s:inverse) + call s:HL('IndentGuidesEven', s:vim_bg, s:bg3, s:inverse) + endif +endif + +" }}} +" IndentLine: {{{ + +if !exists('g:indentLine_color_term') + let g:indentLine_color_term = s:bg2[1] +endif +if !exists('g:indentLine_color_gui') + let g:indentLine_color_gui = s:bg2[0] +endif + +" }}} +" Rainbow Parentheses: {{{ + +if !exists('g:rbpt_colorpairs') + let g:rbpt_colorpairs = + \ [ + \ ['blue', '#458588'], ['magenta', '#b16286'], + \ ['red', '#cc241d'], ['166', '#d65d0e'] + \ ] +endif + +let g:rainbow_guifgs = [ '#d65d0e', '#cc241d', '#b16286', '#458588' ] +let g:rainbow_ctermfgs = [ '166', 'red', 'magenta', 'blue' ] + +if !exists('g:rainbow_conf') + let g:rainbow_conf = {} +endif +if !has_key(g:rainbow_conf, 'guifgs') + let g:rainbow_conf['guifgs'] = g:rainbow_guifgs +endif +if !has_key(g:rainbow_conf, 'ctermfgs') + let g:rainbow_conf['ctermfgs'] = g:rainbow_ctermfgs +endif + +let g:niji_dark_colours = g:rbpt_colorpairs +let g:niji_light_colours = g:rbpt_colorpairs + +"}}} +" GitGutter: {{{ + +hi! link GitGutterAdd GruvboxGreenSign +hi! link GitGutterChange GruvboxAquaSign +hi! link GitGutterDelete GruvboxRedSign +hi! link GitGutterChangeDelete GruvboxAquaSign + +" }}} +" GitCommit: "{{{ + +hi! link gitcommitSelectedFile GruvboxGreen +hi! link gitcommitDiscardedFile GruvboxRed + +" }}} +" Signify: {{{ + +hi! link SignifySignAdd GruvboxGreenSign +hi! link SignifySignChange GruvboxAquaSign +hi! link SignifySignDelete GruvboxRedSign + +" }}} +" Syntastic: {{{ + +call s:HL('SyntasticError', s:none, s:none, s:undercurl, s:red) +call s:HL('SyntasticWarning', s:none, s:none, s:undercurl, s:yellow) + +hi! link SyntasticErrorSign GruvboxRedSign +hi! link SyntasticWarningSign GruvboxYellowSign + +" }}} +" Signature: {{{ +hi! link SignatureMarkText GruvboxBlueSign +hi! link SignatureMarkerText GruvboxPurpleSign + +" }}} +" ShowMarks: {{{ + +hi! link ShowMarksHLl GruvboxBlueSign +hi! link ShowMarksHLu GruvboxBlueSign +hi! link ShowMarksHLo GruvboxBlueSign +hi! link ShowMarksHLm GruvboxBlueSign + +" }}} +" CtrlP: {{{ + +hi! link CtrlPMatch GruvboxYellow +hi! link CtrlPNoEntries GruvboxRed +hi! link CtrlPPrtBase GruvboxBg2 +hi! link CtrlPPrtCursor GruvboxBlue +hi! link CtrlPLinePre GruvboxBg2 + +call s:HL('CtrlPMode1', s:blue, s:bg2, s:bold) +call s:HL('CtrlPMode2', s:bg0, s:blue, s:bold) +call s:HL('CtrlPStats', s:fg4, s:bg2, s:bold) + +" }}} +" Startify: {{{ + +hi! link StartifyBracket GruvboxFg3 +hi! link StartifyFile GruvboxFg1 +hi! link StartifyNumber GruvboxBlue +hi! link StartifyPath GruvboxGray +hi! link StartifySlash GruvboxGray +hi! link StartifySection GruvboxYellow +hi! link StartifySpecial GruvboxBg2 +hi! link StartifyHeader GruvboxOrange +hi! link StartifyFooter GruvboxBg2 + +" }}} +" Vimshell: {{{ + +let g:vimshell_escape_colors = [ + \ s:bg4[0], s:red[0], s:green[0], s:yellow[0], + \ s:blue[0], s:purple[0], s:aqua[0], s:fg4[0], + \ s:bg0[0], s:red[0], s:green[0], s:orange[0], + \ s:blue[0], s:purple[0], s:aqua[0], s:fg0[0] + \ ] + +" }}} +" BufTabLine: {{{ + +call s:HL('BufTabLineCurrent', s:bg0, s:fg4) +call s:HL('BufTabLineActive', s:fg4, s:bg2) +call s:HL('BufTabLineHidden', s:bg4, s:bg1) +call s:HL('BufTabLineFill', s:bg0, s:bg0) + +" }}} +" Asynchronous Lint Engine: {{{ + +call s:HL('ALEError', s:none, s:none, s:undercurl, s:red) +call s:HL('ALEWarning', s:none, s:none, s:undercurl, s:yellow) +call s:HL('ALEInfo', s:none, s:none, s:undercurl, s:blue) + +hi! link ALEErrorSign GruvboxRedSign +hi! link ALEWarningSign GruvboxYellowSign +hi! link ALEInfoSign GruvboxBlueSign + +" }}} +" Dirvish: {{{ + +hi! link DirvishPathTail GruvboxAqua +hi! link DirvishArg GruvboxYellow + +" }}} +" Netrw: {{{ + +hi! link netrwDir GruvboxAqua +hi! link netrwClassify GruvboxAqua +hi! link netrwLink GruvboxGray +hi! link netrwSymLink GruvboxFg1 +hi! link netrwExe GruvboxYellow +hi! link netrwComment GruvboxGray +hi! link netrwList GruvboxBlue +hi! link netrwHelpCmd GruvboxAqua +hi! link netrwCmdSep GruvboxFg3 +hi! link netrwVersion GruvboxGreen + +" }}} +" NERDTree: {{{ + +hi! link NERDTreeDir GruvboxAqua +hi! link NERDTreeDirSlash GruvboxAqua + +hi! link NERDTreeOpenable GruvboxOrange +hi! link NERDTreeClosable GruvboxOrange + +hi! link NERDTreeFile GruvboxFg1 +hi! link NERDTreeExecFile GruvboxYellow + +hi! link NERDTreeUp GruvboxGray +hi! link NERDTreeCWD GruvboxGreen +hi! link NERDTreeHelp GruvboxFg1 + +hi! link NERDTreeToggleOn GruvboxGreen +hi! link NERDTreeToggleOff GruvboxRed + +" }}} +" Vim Multiple Cursors: {{{ + +call s:HL('multiple_cursors_cursor', s:none, s:none, s:inverse) +call s:HL('multiple_cursors_visual', s:none, s:bg2) + +" }}} + +" Filetype specific ----------------------------------------------------------- +" Diff: {{{ + +hi! link diffAdded GruvboxGreen +hi! link diffRemoved GruvboxRed +hi! link diffChanged GruvboxAqua + +hi! link diffFile GruvboxOrange +hi! link diffNewFile GruvboxYellow + +hi! link diffLine GruvboxBlue + +" }}} +" Html: {{{ + +hi! link htmlTag GruvboxBlue +hi! link htmlEndTag GruvboxBlue + +hi! link htmlTagName GruvboxAquaBold +hi! link htmlArg GruvboxAqua + +hi! link htmlScriptTag GruvboxPurple +hi! link htmlTagN GruvboxFg1 +hi! link htmlSpecialTagName GruvboxAquaBold + +call s:HL('htmlLink', s:fg4, s:none, s:underline) + +hi! link htmlSpecialChar GruvboxOrange + +call s:HL('htmlBold', s:vim_fg, s:vim_bg, s:bold) +call s:HL('htmlBoldUnderline', s:vim_fg, s:vim_bg, s:bold . s:underline) +call s:HL('htmlBoldItalic', s:vim_fg, s:vim_bg, s:bold . s:italic) +call s:HL('htmlBoldUnderlineItalic', s:vim_fg, s:vim_bg, s:bold . s:underline . s:italic) + +call s:HL('htmlUnderline', s:vim_fg, s:vim_bg, s:underline) +call s:HL('htmlUnderlineItalic', s:vim_fg, s:vim_bg, s:underline . s:italic) +call s:HL('htmlItalic', s:vim_fg, s:vim_bg, s:italic) + +" }}} +" Xml: {{{ + +hi! link xmlTag GruvboxBlue +hi! link xmlEndTag GruvboxBlue +hi! link xmlTagName GruvboxBlue +hi! link xmlEqual GruvboxBlue +hi! link docbkKeyword GruvboxAquaBold + +hi! link xmlDocTypeDecl GruvboxGray +hi! link xmlDocTypeKeyword GruvboxPurple +hi! link xmlCdataStart GruvboxGray +hi! link xmlCdataCdata GruvboxPurple +hi! link dtdFunction GruvboxGray +hi! link dtdTagName GruvboxPurple + +hi! link xmlAttrib GruvboxAqua +hi! link xmlProcessingDelim GruvboxGray +hi! link dtdParamEntityPunct GruvboxGray +hi! link dtdParamEntityDPunct GruvboxGray +hi! link xmlAttribPunct GruvboxGray + +hi! link xmlEntity GruvboxOrange +hi! link xmlEntityPunct GruvboxOrange +" }}} +" Vim: {{{ + +call s:HL('vimCommentTitle', s:fg4_256, s:none, s:bold . s:italicize_comments) + +hi! link vimNotation GruvboxOrange +hi! link vimBracket GruvboxOrange +hi! link vimMapModKey GruvboxOrange +hi! link vimFuncSID GruvboxFg3 +hi! link vimSetSep GruvboxFg3 +hi! link vimSep GruvboxFg3 +hi! link vimContinue GruvboxFg3 + +" }}} +" Clojure: {{{ + +hi! link clojureKeyword GruvboxBlue +hi! link clojureCond GruvboxOrange +hi! link clojureSpecial GruvboxOrange +hi! link clojureDefine GruvboxOrange + +hi! link clojureFunc GruvboxYellow +hi! link clojureRepeat GruvboxYellow +hi! link clojureCharacter GruvboxAqua +hi! link clojureStringEscape GruvboxAqua +hi! link clojureException GruvboxRed + +hi! link clojureRegexp GruvboxAqua +hi! link clojureRegexpEscape GruvboxAqua +call s:HL('clojureRegexpCharClass', s:fg3, s:none, s:bold) +hi! link clojureRegexpMod clojureRegexpCharClass +hi! link clojureRegexpQuantifier clojureRegexpCharClass + +hi! link clojureParen GruvboxFg3 +hi! link clojureAnonArg GruvboxYellow +hi! link clojureVariable GruvboxBlue +hi! link clojureMacro GruvboxOrange + +hi! link clojureMeta GruvboxYellow +hi! link clojureDeref GruvboxYellow +hi! link clojureQuote GruvboxYellow +hi! link clojureUnquote GruvboxYellow + +" }}} +" C: {{{ + +hi! link cOperator GruvboxPurple +hi! link cStructure GruvboxOrange + +" }}} +" Python: {{{ + +hi! link pythonBuiltin GruvboxOrange +hi! link pythonBuiltinObj GruvboxOrange +hi! link pythonBuiltinFunc GruvboxOrange +hi! link pythonFunction GruvboxAqua +hi! link pythonDecorator GruvboxRed +hi! link pythonInclude GruvboxBlue +hi! link pythonImport GruvboxBlue +hi! link pythonRun GruvboxBlue +hi! link pythonCoding GruvboxBlue +hi! link pythonOperator GruvboxRed +hi! link pythonException GruvboxRed +hi! link pythonExceptions GruvboxPurple +hi! link pythonBoolean GruvboxPurple +hi! link pythonDot GruvboxFg3 +hi! link pythonConditional GruvboxRed +hi! link pythonRepeat GruvboxRed +hi! link pythonDottedName GruvboxGreenBold + +" }}} +" CSS: {{{ + +hi! link cssBraces GruvboxBlue +hi! link cssFunctionName GruvboxYellow +hi! link cssIdentifier GruvboxOrange +hi! link cssClassName GruvboxGreen +hi! link cssColor GruvboxBlue +hi! link cssSelectorOp GruvboxBlue +hi! link cssSelectorOp2 GruvboxBlue +hi! link cssImportant GruvboxGreen +hi! link cssVendor GruvboxFg1 + +hi! link cssTextProp GruvboxAqua +hi! link cssAnimationProp GruvboxAqua +hi! link cssUIProp GruvboxYellow +hi! link cssTransformProp GruvboxAqua +hi! link cssTransitionProp GruvboxAqua +hi! link cssPrintProp GruvboxAqua +hi! link cssPositioningProp GruvboxYellow +hi! link cssBoxProp GruvboxAqua +hi! link cssFontDescriptorProp GruvboxAqua +hi! link cssFlexibleBoxProp GruvboxAqua +hi! link cssBorderOutlineProp GruvboxAqua +hi! link cssBackgroundProp GruvboxAqua +hi! link cssMarginProp GruvboxAqua +hi! link cssListProp GruvboxAqua +hi! link cssTableProp GruvboxAqua +hi! link cssFontProp GruvboxAqua +hi! link cssPaddingProp GruvboxAqua +hi! link cssDimensionProp GruvboxAqua +hi! link cssRenderProp GruvboxAqua +hi! link cssColorProp GruvboxAqua +hi! link cssGeneratedContentProp GruvboxAqua + +" }}} +" JavaScript: {{{ + +hi! link javaScriptBraces GruvboxFg1 +hi! link javaScriptFunction GruvboxAqua +hi! link javaScriptIdentifier GruvboxRed +hi! link javaScriptMember GruvboxBlue +hi! link javaScriptNumber GruvboxPurple +hi! link javaScriptNull GruvboxPurple +hi! link javaScriptParens GruvboxFg3 + +" }}} +" YAJS: {{{ + +hi! link javascriptImport GruvboxAqua +hi! link javascriptExport GruvboxAqua +hi! link javascriptClassKeyword GruvboxAqua +hi! link javascriptClassExtends GruvboxAqua +hi! link javascriptDefault GruvboxAqua + +hi! link javascriptClassName GruvboxYellow +hi! link javascriptClassSuperName GruvboxYellow +hi! link javascriptGlobal GruvboxYellow + +hi! link javascriptEndColons GruvboxFg1 +hi! link javascriptFuncArg GruvboxFg1 +hi! link javascriptGlobalMethod GruvboxFg1 +hi! link javascriptNodeGlobal GruvboxFg1 +hi! link javascriptBOMWindowProp GruvboxFg1 +hi! link javascriptArrayMethod GruvboxFg1 +hi! link javascriptArrayStaticMethod GruvboxFg1 +hi! link javascriptCacheMethod GruvboxFg1 +hi! link javascriptDateMethod GruvboxFg1 +hi! link javascriptMathStaticMethod GruvboxFg1 + +" hi! link javascriptProp GruvboxFg1 +hi! link javascriptURLUtilsProp GruvboxFg1 +hi! link javascriptBOMNavigatorProp GruvboxFg1 +hi! link javascriptDOMDocMethod GruvboxFg1 +hi! link javascriptDOMDocProp GruvboxFg1 +hi! link javascriptBOMLocationMethod GruvboxFg1 +hi! link javascriptBOMWindowMethod GruvboxFg1 +hi! link javascriptStringMethod GruvboxFg1 + +hi! link javascriptVariable GruvboxOrange +" hi! link javascriptVariable GruvboxRed +" hi! link javascriptIdentifier GruvboxOrange +" hi! link javascriptClassSuper GruvboxOrange +hi! link javascriptIdentifier GruvboxOrange +hi! link javascriptClassSuper GruvboxOrange + +" hi! link javascriptFuncKeyword GruvboxOrange +" hi! link javascriptAsyncFunc GruvboxOrange +hi! link javascriptFuncKeyword GruvboxAqua +hi! link javascriptAsyncFunc GruvboxAqua +hi! link javascriptClassStatic GruvboxOrange + +hi! link javascriptOperator GruvboxRed +hi! link javascriptForOperator GruvboxRed +hi! link javascriptYield GruvboxRed +hi! link javascriptExceptions GruvboxRed +hi! link javascriptMessage GruvboxRed + +hi! link javascriptTemplateSB GruvboxAqua +hi! link javascriptTemplateSubstitution GruvboxFg1 + +" hi! link javascriptLabel GruvboxBlue +" hi! link javascriptObjectLabel GruvboxBlue +" hi! link javascriptPropertyName GruvboxBlue +hi! link javascriptLabel GruvboxFg1 +hi! link javascriptObjectLabel GruvboxFg1 +hi! link javascriptPropertyName GruvboxFg1 + +hi! link javascriptLogicSymbols GruvboxFg1 +hi! link javascriptArrowFunc GruvboxYellow + +hi! link javascriptDocParamName GruvboxFg4 +hi! link javascriptDocTags GruvboxFg4 +hi! link javascriptDocNotation GruvboxFg4 +hi! link javascriptDocParamType GruvboxFg4 +hi! link javascriptDocNamedParamType GruvboxFg4 + +hi! link javascriptBrackets GruvboxFg1 +hi! link javascriptDOMElemAttrs GruvboxFg1 +hi! link javascriptDOMEventMethod GruvboxFg1 +hi! link javascriptDOMNodeMethod GruvboxFg1 +hi! link javascriptDOMStorageMethod GruvboxFg1 +hi! link javascriptHeadersMethod GruvboxFg1 + +hi! link javascriptAsyncFuncKeyword GruvboxRed +hi! link javascriptAwaitFuncKeyword GruvboxRed + +" }}} +" PanglossJS: {{{ + +hi! link jsClassKeyword GruvboxAqua +hi! link jsExtendsKeyword GruvboxAqua +hi! link jsExportDefault GruvboxAqua +hi! link jsTemplateBraces GruvboxAqua +hi! link jsGlobalNodeObjects GruvboxFg1 +hi! link jsGlobalObjects GruvboxFg1 +hi! link jsFunction GruvboxAqua +hi! link jsFuncParens GruvboxFg3 +hi! link jsParens GruvboxFg3 +hi! link jsNull GruvboxPurple +hi! link jsUndefined GruvboxPurple +hi! link jsClassDefinition GruvboxYellow + +" }}} +" TypeScript: {{{ + +hi! link typeScriptReserved GruvboxAqua +hi! link typeScriptLabel GruvboxAqua +hi! link typeScriptFuncKeyword GruvboxAqua +hi! link typeScriptIdentifier GruvboxOrange +hi! link typeScriptBraces GruvboxFg1 +hi! link typeScriptEndColons GruvboxFg1 +hi! link typeScriptDOMObjects GruvboxFg1 +hi! link typeScriptAjaxMethods GruvboxFg1 +hi! link typeScriptLogicSymbols GruvboxFg1 +hi! link typeScriptDocSeeTag Comment +hi! link typeScriptDocParam Comment +hi! link typeScriptDocTags vimCommentTitle +hi! link typeScriptGlobalObjects GruvboxFg1 +hi! link typeScriptParens GruvboxFg3 +hi! link typeScriptOpSymbols GruvboxFg3 +hi! link typeScriptHtmlElemProperties GruvboxFg1 +hi! link typeScriptNull GruvboxPurple +hi! link typeScriptInterpolationDelimiter GruvboxAqua + +" }}} +" PureScript: {{{ + +hi! link purescriptModuleKeyword GruvboxAqua +hi! link purescriptModuleName GruvboxFg1 +hi! link purescriptWhere GruvboxAqua +hi! link purescriptDelimiter GruvboxFg4 +hi! link purescriptType GruvboxFg1 +hi! link purescriptImportKeyword GruvboxAqua +hi! link purescriptHidingKeyword GruvboxAqua +hi! link purescriptAsKeyword GruvboxAqua +hi! link purescriptStructure GruvboxAqua +hi! link purescriptOperator GruvboxBlue + +hi! link purescriptTypeVar GruvboxFg1 +hi! link purescriptConstructor GruvboxFg1 +hi! link purescriptFunction GruvboxFg1 +hi! link purescriptConditional GruvboxOrange +hi! link purescriptBacktick GruvboxOrange + +" }}} +" CoffeeScript: {{{ + +hi! link coffeeExtendedOp GruvboxFg3 +hi! link coffeeSpecialOp GruvboxFg3 +hi! link coffeeCurly GruvboxOrange +hi! link coffeeParen GruvboxFg3 +hi! link coffeeBracket GruvboxOrange + +" }}} +" Ruby: {{{ + +hi! link rubyStringDelimiter GruvboxGreen +hi! link rubyInterpolationDelimiter GruvboxAqua + +" }}} +" ObjectiveC: {{{ + +hi! link objcTypeModifier GruvboxRed +hi! link objcDirective GruvboxBlue + +" }}} +" Go: {{{ + +hi! link goDirective GruvboxAqua +hi! link goConstants GruvboxPurple +hi! link goDeclaration GruvboxRed +hi! link goDeclType GruvboxBlue +hi! link goBuiltins GruvboxOrange + +" }}} +" Lua: {{{ + +hi! link luaIn GruvboxRed +hi! link luaFunction GruvboxAqua +hi! link luaTable GruvboxOrange + +" }}} +" MoonScript: {{{ + +hi! link moonSpecialOp GruvboxFg3 +hi! link moonExtendedOp GruvboxFg3 +hi! link moonFunction GruvboxFg3 +hi! link moonObject GruvboxYellow + +" }}} +" Java: {{{ + +hi! link javaAnnotation GruvboxBlue +hi! link javaDocTags GruvboxAqua +hi! link javaCommentTitle vimCommentTitle +hi! link javaParen GruvboxFg3 +hi! link javaParen1 GruvboxFg3 +hi! link javaParen2 GruvboxFg3 +hi! link javaParen3 GruvboxFg3 +hi! link javaParen4 GruvboxFg3 +hi! link javaParen5 GruvboxFg3 +hi! link javaOperator GruvboxOrange + +hi! link javaVarArg GruvboxGreen + +" }}} +" Elixir: {{{ + +hi! link elixirDocString Comment + +hi! link elixirStringDelimiter GruvboxGreen +hi! link elixirInterpolationDelimiter GruvboxAqua + +hi! link elixirModuleDeclaration GruvboxYellow + +" }}} +" Scala: {{{ + +" NB: scala vim syntax file is kinda horrible +hi! link scalaNameDefinition GruvboxFg1 +hi! link scalaCaseFollowing GruvboxFg1 +hi! link scalaCapitalWord GruvboxFg1 +hi! link scalaTypeExtension GruvboxFg1 + +hi! link scalaKeyword GruvboxRed +hi! link scalaKeywordModifier GruvboxRed + +hi! link scalaSpecial GruvboxAqua +hi! link scalaOperator GruvboxFg1 + +hi! link scalaTypeDeclaration GruvboxYellow +hi! link scalaTypeTypePostDeclaration GruvboxYellow + +hi! link scalaInstanceDeclaration GruvboxFg1 +hi! link scalaInterpolation GruvboxAqua + +" }}} +" Markdown: {{{ + +call s:HL('markdownItalic', s:fg3, s:none, s:italic) + +hi! link markdownH1 GruvboxGreenBold +hi! link markdownH2 GruvboxGreenBold +hi! link markdownH3 GruvboxYellowBold +hi! link markdownH4 GruvboxYellowBold +hi! link markdownH5 GruvboxYellow +hi! link markdownH6 GruvboxYellow + +hi! link markdownCode GruvboxAqua +hi! link markdownCodeBlock GruvboxAqua +hi! link markdownCodeDelimiter GruvboxAqua + +hi! link markdownBlockquote GruvboxGray +hi! link markdownListMarker GruvboxGray +hi! link markdownOrderedListMarker GruvboxGray +hi! link markdownRule GruvboxGray +hi! link markdownHeadingRule GruvboxGray + +hi! link markdownUrlDelimiter GruvboxFg3 +hi! link markdownLinkDelimiter GruvboxFg3 +hi! link markdownLinkTextDelimiter GruvboxFg3 + +hi! link markdownHeadingDelimiter GruvboxOrange +hi! link markdownUrl GruvboxPurple +hi! link markdownUrlTitleDelimiter GruvboxGreen + +call s:HL('markdownLinkText', s:gray, s:none, s:underline) +hi! link markdownIdDeclaration markdownLinkText + +" }}} +" Haskell: {{{ + +" hi! link haskellType GruvboxYellow +" hi! link haskellOperators GruvboxOrange +" hi! link haskellConditional GruvboxAqua +" hi! link haskellLet GruvboxOrange +" +hi! link haskellType GruvboxFg1 +hi! link haskellIdentifier GruvboxFg1 +hi! link haskellSeparator GruvboxFg1 +hi! link haskellDelimiter GruvboxFg4 +hi! link haskellOperators GruvboxBlue +" +hi! link haskellBacktick GruvboxOrange +hi! link haskellStatement GruvboxOrange +hi! link haskellConditional GruvboxOrange + +hi! link haskellLet GruvboxAqua +hi! link haskellDefault GruvboxAqua +hi! link haskellWhere GruvboxAqua +hi! link haskellBottom GruvboxAqua +hi! link haskellBlockKeywords GruvboxAqua +hi! link haskellImportKeywords GruvboxAqua +hi! link haskellDeclKeyword GruvboxAqua +hi! link haskellDeriving GruvboxAqua +hi! link haskellAssocType GruvboxAqua + +hi! link haskellNumber GruvboxPurple +hi! link haskellPragma GruvboxPurple + +hi! link haskellString GruvboxGreen +hi! link haskellChar GruvboxGreen + +" }}} +" Json: {{{ + +hi! link jsonKeyword GruvboxGreen +hi! link jsonQuote GruvboxGreen +hi! link jsonBraces GruvboxFg1 +hi! link jsonString GruvboxFg1 + +" }}} + + +" Functions ------------------------------------------------------------------- +" Search Highlighting Cursor {{{ + +function! GruvboxHlsShowCursor() + call s:HL('Cursor', s:bg0, s:hls_cursor) +endfunction + +function! GruvboxHlsHideCursor() + call s:HL('Cursor', s:none, s:none, s:inverse) +endfunction + +" }}} + +" vim: set sw=2 ts=2 sts=2 et tw=80 ft=vim fdm=marker: diff --git a/colors/seoul256.vim b/colors/seoul256.vim new file mode 100644 index 0000000..b6c8054 --- /dev/null +++ b/colors/seoul256.vim @@ -0,0 +1,439 @@ +" " _____ _ ___ ___ ___ " +" " | __|___ ___ _ _| |_ | _| _| " +" " |__ | -_| . | | | | _|_ | . | " +" " |_____|___|___|___|_|___|___|___|.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) +" License: MIT +" +" Copyright (c) 2017 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', [59, 145], ['', '']) + +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('StatusLineTerm', [95, 95], [187, 187]) +call s:hi('StatusLineTermNC', [s:dark_bg + 2, s:light_bg - 2], [187, 238]) +hi StatusLineTerm cterm=bold,reverse gui=bold,reverse +hi StatusLineTermNC cterm=bold,reverse gui=bold,reverse +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]) + +" ale +" --- +call s:hi('ALEErrorSign', [161, 161], [s:dark_bg, s:light_bg]) +call s:hi('ALEWarningSign', [174, 131], [s:dark_bg, s:light_bg]) + +" vim-signify +" ----------- +call s:hi('SignifySignAdd', [108, 65], [s:dark_bg + 1, s:light_bg - 2]) +call s:hi('SignifySignChange', [68, 68], [s:dark_bg + 1, s:light_bg - 2]) +call s:hi('SignifySignDelete', [161, 161], [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 diff --git a/colors/tender.vim b/colors/tender.vim deleted file mode 100644 index f37cf0a..0000000 --- a/colors/tender.vim +++ /dev/null @@ -1,157 +0,0 @@ -" -" tender v0.3.4 -" A tender color scheme for vim and its plugins -" author: Jacobo Tabernero http://jacoborus.codes -" license: MIT -" background: dark -" -" This file was generated by Estilo -" https://github.com/jacoborus/estilo - -let g:colors_name="tender" -hi clear -if exists("syntax_on") - syntax reset -endif -if has("gui_running") - set background=dark -endif - -hi ColorColumn guifg=NONE ctermfg=NONE guibg=#323232 ctermbg=236 gui=NONE cterm=NONE -hi link CursorColumn CursorLine -hi CursorLine guifg=NONE ctermfg=NONE guibg=#323232 ctermbg=236 gui=NONE cterm=NONE -hi CursorLineNr guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Directory guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi DiffAdd guifg=#eeeeee ctermfg=255 guibg=#818f21 ctermbg=100 gui=NONE cterm=NONE -hi DiffChange guifg=#eeeeee ctermfg=255 guibg=#66afce ctermbg=74 gui=NONE cterm=NONE -hi DiffDelete guifg=#282828 ctermfg=235 guibg=#f43753 ctermbg=203 gui=NONE cterm=NONE -hi DiffText guifg=#66afce ctermfg=74 guibg=#eeeeee ctermbg=255 gui=bold cterm=bold -hi ErrorMsg guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=reverse cterm=reverse -hi VertSplit guifg=#282828 ctermfg=235 guibg=#282828 ctermbg=235 gui=NONE cterm=NONE -hi Folded guifg=#666666 ctermfg=242 guibg=#1d1d1d ctermbg=234 gui=NONE cterm=NONE -hi FoldColumn guifg=#666666 ctermfg=242 guibg=#1d1d1d ctermbg=234 gui=NONE cterm=NONE -hi IncSearch guifg=#282828 ctermfg=235 guibg=#e9edb2 ctermbg=193 gui=NONE cterm=NONE -hi LineNr guifg=#444444 ctermfg=238 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi MatchParen guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=bold cterm=bold -hi NonText guifg=#444444 ctermfg=238 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Normal guifg=#eeeeee ctermfg=255 guibg=#282828 ctermbg=235 gui=NONE cterm=NONE -hi PMenu guifg=#282828 ctermfg=235 guibg=#66afce ctermbg=74 gui=NONE cterm=NONE -hi PMenuSel guifg=#282828 ctermfg=235 guibg=#b8c468 ctermbg=149 gui=NONE cterm=NONE -hi PmenuSbar guifg=#d1b580 ctermfg=180 guibg=#d1b580 ctermbg=180 gui=NONE cterm=NONE -hi PmenuThumb guifg=#f9b943 ctermfg=215 guibg=#f9b943 ctermbg=215 gui=NONE cterm=NONE -hi Question guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Search guifg=#e9edb2 ctermfg=193 guibg=NONE ctermbg=NONE gui=underline cterm=underline -hi SpecialKey guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi SpellBad guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi SpellLocal guifg=#d1b580 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi SpellCap guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi SpellRare guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi StatusLine guifg=#282828 ctermfg=235 guibg=#66afce ctermbg=74 gui=bold cterm=bold -hi StatusLineNC guifg=#282828 ctermfg=235 guibg=#666666 ctermbg=242 gui=bold cterm=bold -hi TabLine guifg=#999999 ctermfg=246 guibg=#444444 ctermbg=238 gui=NONE cterm=NONE -hi TabLineFill guifg=NONE ctermfg=NONE guibg=#444444 ctermbg=238 gui=NONE cterm=NONE -hi TabLineSel guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=bold cterm=bold -hi Title guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=bold cterm=bold -hi Visual guifg=NONE ctermfg=NONE guibg=#0b0b0b ctermbg=232 gui=NONE cterm=NONE -hi WarningMsg guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi WildMenu guifg=#282828 ctermfg=235 guibg=#b8c468 ctermbg=149 gui=bold cterm=bold -hi Comment guifg=#666666 ctermfg=242 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Constant guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi String guifg=#d1b580 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Character guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Boolean guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Number guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Float guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Identifier guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Function guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Statement guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Conditional guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Operator guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Exception guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi PreProc guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Type guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Special guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi Error guifg=#eeeeee ctermfg=255 guibg=#f43753 ctermbg=203 gui=NONE cterm=NONE -hi Todo guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=bold cterm=bold -hi cssVendor guifg=#818f21 ctermfg=100 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssTagName guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssAttrComma guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssBackgroundProp guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssBorderProp guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssBoxProp guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssDimensionProp guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssFontProp guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssTextProp guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssValueLength guifg=#eeeeee ctermfg=255 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssValueInteger guifg=#eeeeee ctermfg=255 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssValueNumber guifg=#eeeeee ctermfg=255 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssIdentifier guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssIncludeKeyword guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssImportant guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssClassName guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssClassNameDot guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssProp guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssAttr guifg=#eeeeee ctermfg=255 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssUnitDecorators guifg=#eeeeee ctermfg=255 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi cssNoise guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi gitcommitBranch guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi gitcommitDiscardedType guifg=#c12038 ctermfg=125 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi gitcommitSelectedType guifg=#818f21 ctermfg=100 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi gitcommitHeader guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi gitcommitUntrackedFile guifg=#c12038 ctermfg=125 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi gitcommitDiscardedFile guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi gitcommitSelectedFile guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi helpHeadline guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi helpNote guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi javaScriptOperator guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi javaScriptBraces guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi jsonEscape guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi jsonNumber guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi jsonBraces guifg=#eeeeee ctermfg=255 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi jsonBoolean guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi jsonKeywordMatch guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi jsonQuote guifg=#eeeeee ctermfg=255 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi jsonNoise guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownH1 guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownHeadingRule guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownHeadingDelimiter guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownListMarker guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownBlockquote guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownRule guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownLinkText guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownLinkTextDelimiter guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownLinkDelimiter guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownIdDeclaration guifg=#818f21 ctermfg=100 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownAutomaticLink guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownUrl guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownUrlTitle guifg=#d1b580 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownUrlDelimiter guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownUrlTitleDelimiter guifg=#9b7425 ctermfg=3 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownCodeDelimiter guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownCode guifg=#d1b580 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownEscape guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi markdownError guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi vimCommentTitle guifg=#818f21 ctermfg=100 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi vimError guifg=#eeeeee ctermfg=255 guibg=#f43753 ctermbg=203 gui=NONE cterm=NONE -hi yamlFlowString guifg=#d1b580 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi yamlFlowStringDelimiter guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi yamlKeyValueDelimiter guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi FugitiveblameHash guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi FugitiveblameUncommitted guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi FugitiveblameTime guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi FugitiveblameNotCommittedYet guifg=#d1b580 ctermfg=180 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi NERDTreeHelp guifg=#c9c9c9 ctermfg=251 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi NERDTreeHelpKey guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi NERDTreeHelpCommand guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi NERDTreeHelpTitle guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi NERDTreeUp guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi NERDTreeCWD guifg=#66afce ctermfg=74 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi NERDTreeOpenable guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi NERDTreeClosable guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi GitGutterAdd guifg=#b8c468 ctermfg=149 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi GitGutterChange guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi GitGutterDelete guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi GitGutterChangeDelete guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi javaScriptOpSymbols guifg=#f43753 ctermfg=203 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi javaScriptParens guifg=#abd9ec ctermfg=153 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE -hi javaScriptFuncArg guifg=#f9b943 ctermfg=215 guibg=NONE ctermbg=NONE gui=NONE cterm=NONE