GruberDarker.vim (11362B)
1 " GruberDarker Theme for Vim 2 " 3 " Adapted from an Emacs theme: 4 " https://github.com/rexim/gruber-darker-theme 5 " 6 " Colorscheme template: https://github.com/mhartington/oceanic-next/blob/master/colors/OceanicNext.vim 7 " -------------------------------------------- 8 9 " {{{ Setup 10 set background=dark 11 hi clear 12 if exists("syntax_on") 13 syntax reset 14 endif 15 let g:colors_name="GruberDarker" 16 " }}} 17 " {{{ Italics 18 let g:gruber_terminal_italic = get(g:, 'gruber_terminal_italic', 0) 19 let s:italic = "" 20 if g:gruber_terminal_italic == 1 21 let s:italic = "italic" 22 endif 23 "}}} 24 " {{{ Bold 25 let g:gruber_terminal_bold = get(g:, 'gruber_terminal_bold', 0) 26 let s:bold = "" 27 if g:gruber_terminal_bold == 1 28 let s:bold = "bold" 29 endif 30 "}}} 31 " {{{ Colors 32 let s:gruberFG=['#e4e4ef', '253'] 33 let s:gruberFG1=['#f4f4ff', '254'] 34 let s:gruberFG2=['#f5f5ff', '240'] 35 let s:gruberFG3=['#65737e', '243'] 36 let s:gruberWhite=['#ffffff', '15'] 37 let s:gruberBlack=['#000000', '0'] 38 let s:gruberBG=['#181818', '233'] 39 let s:gruberBG1=['#282828', '235'] 40 let s:gruberBG2=['#453d41', '238'] 41 let s:gruberLightRed=['#c73c3f', '203'] 42 let s:gruberRed=['#f43841', '160'] 43 let s:gruberNiagara=['#96a6c8', '147'] 44 let s:gruberQuartz=['#95a99f', '108'] 45 let s:gruberGreen=['#73c936', '70'] 46 let s:gruberMain=['#ffdd33', '220'] 47 let s:gruberBrown=['#cc8c3c', '172'] 48 let s:gruberPurple=['#9e95c7', '98'] 49 let s:gruberLightBlue=['#0087d7', '32'] 50 let s:gruberBlue=['#0000d7', '20'] 51 let s:gruberGold=['#d7af00', '178'] 52 let s:none=['NONE', 'NONE'] 53 54 " {{{ Highlight function 55 function! <sid>hi(group, fg, bg, attr, attrsp) 56 " fg, bg, attr, attrsp 57 if !empty(a:fg) 58 exec "hi " . a:group . " guifg=" . a:fg[0] 59 exec "hi " . a:group . " ctermfg=" . a:fg[1] 60 endif 61 if !empty(a:bg) 62 exec "hi " . a:group . " guibg=" . a:bg[0] 63 exec "hi " . a:group . " ctermbg=" . a:bg[1] 64 endif 65 if a:attr != "" 66 exec "hi " . a:group . " gui=" . a:attr 67 exec "hi " . a:group . " cterm=" . a:attr 68 endif 69 if !empty(a:attrsp) 70 exec "hi " . a:group . " guisp=" . a:attrsp[0] 71 endif 72 endfunction 73 " }}} 74 " {{{ call <sid>:hi(group, fg, bg, gui, guisp) 75 call <sid>hi('Bold', '', '', 'bold', '') 76 call <sid>hi('Debug', s:gruberFG2, '', '', '') 77 call <sid>hi('Directory', s:gruberLightBlue, '', '', '') 78 call <sid>hi('ErrorMsg', s:gruberWhite, s:gruberRed, '', '') 79 call <sid>hi('Exception', s:gruberBrown, '', '', '') 80 call <sid>hi('FoldColumn', s:gruberBrown, s:gruberFG2, '', '') 81 call <sid>hi('Folded', s:gruberBrown, s:gruberFG2, s:italic, '') 82 call <sid>hi('IncSearch', s:gruberBlack, s:gruberFG2, 'NONE', '') 83 call <sid>hi('Italic', '', '', s:italic, '') 84 85 call <sid>hi('Macro', s:gruberFG, '', '', '') 86 call <sid>hi('MatchParen', s:gruberBG2, s:gruberMain, '', '') 87 call <sid>hi('ModeMsg', s:gruberFG2, '', '', '') 88 call <sid>hi('MoreMsg', s:gruberFG2, '', '', '') 89 call <sid>hi('Question', s:gruberNiagara, '', '', '') 90 call <sid>hi('Search', s:gruberBlack, s:gruberMain, '', '') 91 call <sid>hi('SpecialKey', s:gruberFG2, '', '', '') 92 call <sid>hi('TooLong', s:gruberFG2, '', '', '') 93 call <sid>hi('Underlined', s:gruberPurple, '', '', '') 94 call <sid>hi('Visual', '', s:gruberBG2, '', '') 95 call <sid>hi('VisualNOS', s:gruberRed, '', '', '') 96 call <sid>hi('WarningMsg', s:gruberRed, '', '', '') 97 call <sid>hi('WildMenu', s:gruberBlack, s:gruberMain, '', '') 98 call <sid>hi('Title', s:gruberQuartz, '', '', '') 99 call <sid>hi('Conceal', s:gruberFG, s:gruberBG, '', '') 100 call <sid>hi('Cursor', s:gruberBG, s:gruberFG, '', '') 101 call <sid>hi('NonText', s:gruberFG2, '', '', '') 102 call <sid>hi('Normal', s:gruberFG, s:gruberBG, '', '') 103 call <sid>hi('EndOfBuffer', s:gruberFG, s:gruberBG, '', '') 104 call <sid>hi('LineNr', s:gruberFG, s:gruberBG, '', '') 105 call <sid>hi('SignColumn', s:none, s:none, '', '') 106 call <sid>hi('VertSplit', s:gruberFG2, s:gruberBG1, '', '') 107 call <sid>hi('ColorColumn', '', s:gruberBG2, '', '') 108 call <sid>hi('CursorColumn', '', s:gruberBG2, '', '') 109 call <sid>hi('CursorLine', '', s:gruberBG2, 'NONE', '') 110 call <sid>hi('CursorLineNr', s:gruberMain, s:gruberBG, '', '') 111 call <sid>hi('PMenu', s:gruberFG, s:gruberBG1, '', '') 112 call <sid>hi('PMenuSel', s:gruberFG, s:gruberBG2, '', '') 113 call <sid>hi('PmenuSbar', '', s:gruberBG, '', '') 114 call <sid>hi('PmenuThumb', '', s:gruberBG, '', '') 115 call <sid>hi('helpExample', s:gruberMain, '', '', '') 116 call <sid>hi('helpCommand', s:gruberMain, '', '', '') 117 118 " Standard syntax highlighting 119 call <sid>hi('Boolean', s:gruberQuartz, '', '', '') 120 call <sid>hi('Character', s:gruberGreen, '', '', '') 121 call <sid>hi('Comment', s:gruberBrown, '', s:italic, '') 122 call <sid>hi('Conditional', s:gruberMain, '', '', '') 123 call <sid>hi('Constant', s:gruberQuartz, '', '', '') 124 call <sid>hi('Define', s:gruberMain, '', '', '') 125 call <sid>hi('Delimiter', s:gruberFG, '', '', '') 126 call <sid>hi('Float', s:gruberQuartz, '', '', '') 127 call <sid>hi('Function', s:gruberNiagara, '', '', '') 128 call <sid>hi('Identifier', s:gruberNiagara, '', '', '') 129 call <sid>hi('Include', s:gruberMain, '', '', '') 130 call <sid>hi('Keyword', s:gruberMain, '', '', '') 131 call <sid>hi('Label', s:gruberFG, '', '', '') 132 call <sid>hi('Number', s:gruberQuartz, '', '', '') 133 call <sid>hi('Operator', s:gruberFG, '', '', '') 134 call <sid>hi('PreProc', s:gruberFG1, '', '', '') 135 call <sid>hi('Repeat', s:gruberMain, '', '', '') 136 call <sid>hi('Special', s:gruberMain, '', '', '') 137 call <sid>hi('SpecialChar', s:gruberMain, '', '', '') 138 call <sid>hi('Statement', s:gruberMain, '', '', '') 139 call <sid>hi('StorageClass', s:gruberMain, '', '', '') 140 call <sid>hi('String', s:gruberGreen, '', '', '') 141 call <sid>hi('Structure', s:gruberMain, '', '', '') 142 call <sid>hi('Todo', s:gruberBG, s:gruberMain, '', '') 143 call <sid>hi('Type', s:gruberQuartz, '', '', '') 144 call <sid>hi('Typedef', s:gruberQuartz, '', '', '') 145 146 call <sid>hi('SpellBad', '', '', 'undercurl', '') 147 call <sid>hi('SpellLocal', '', '', 'undercurl', '') 148 call <sid>hi('SpellCap', '', '', 'undercurl', '') 149 call <sid>hi('SpellRare', '', '', 'undercurl', '') 150 151 " Haskell Highlighting 152 call <sid>hi('hsTypeDef', s:gruberMain, '', '', '') 153 call <sid>hi('hsStructure', s:gruberMain, '', '', '') 154 call <sid>hi('hsStatement', s:gruberMain, '', '', '') 155 call <sid>hi('hsconditional', s:gruberMain, '', '', '') 156 call <sid>hi('hsconditional', s:gruberMain, '', '', '') 157 call <sid>hi('hsconditional', s:gruberMain, '', '', '') 158 159 " Java Highlighting 160 " TODO Fix function definitions 161 call <sid>hi('javaConstant', s:gruberQuartz, '', '', '') 162 call <sid>hi('javaConditional', s:gruberMain, '', '', '') 163 call <sid>hi('javaOperator', s:gruberMain, '', '', '') 164 call <sid>hi('javaExceptions', s:gruberMain, '', '', '') 165 call <sid>hi('javaAssert', s:gruberMain, '', '', '') 166 call <sid>hi('javaClassDecl', s:gruberMain, '', '', '') 167 call <sid>hi('javaBraces', s:gruberFG, '', '', '') 168 call <sid>hi('javaLangObject', s:gruberFG, '', '', '') 169 call <sid>hi('javaType', s:gruberQuartz, '', '', '') 170 171 " Python Highlighting 172 call <sid>hi('pythonRepeat', s:gruberMain, '', '', '') 173 call <sid>hi('pythonOperator', s:gruberMain, '', '', '') 174 call <sid>hi('pythonException', s:gruberMain, '', '', '') 175 176 177 call <sid>hi('markdownCode', s:gruberGreen, '', '', '') 178 call <sid>hi('markdownCodeBlock', s:gruberGreen, '', '', '') 179 call <sid>hi('markdownHeadingDelimiter', s:gruberNiagara, '', '', '') 180 call <sid>hi('markdownItalic', s:gruberPurple, '', s:italic, '') 181 call <sid>hi('markdownBold', s:gruberMain, '', s:bold, '') 182 call <sid>hi('markdownCodeDelimiter', s:gruberBrown, '', s:italic, '') 183 call <sid>hi('markdownError', s:gruberFG, s:gruberBG1, '', '') 184 185 call <sid>hi('ALEErrorSign', s:gruberRed, s:gruberBG2, s:bold, '') 186 call <sid>hi('ALEWarningSign', s:gruberMain, s:gruberBG2, s:bold, '') 187 call <sid>hi('ALEInfoSign', s:gruberGreen, s:gruberBG2, s:bold, '') 188 189 call <sid>hi('NERDTreeExecFile', s:gruberFG, '', '', '') 190 call <sid>hi('NERDTreeDirSlash', s:gruberNiagara, '', '', '') 191 call <sid>hi('NERDTreeOpenable', s:gruberNiagara, '', '', '') 192 call <sid>hi('NERDTreeFile', '', s:none, '', '') 193 call <sid>hi('NERDTreeFlags', s:gruberNiagara, '', '', '') 194 195 call <sid>hi('vimfilerLeaf', s:gruberFG, '', '', '') 196 call <sid>hi('vimfilerNormalFile', s:gruberFG, s:gruberBG1, '', '') 197 call <sid>hi('vimfilerOpenedFile', s:gruberNiagara, '', '', '') 198 call <sid>hi('vimfilerClosedFile', s:gruberNiagara, '', '', '') 199 200 " }}} 201 202 let g:terminal_color_0=s:gruberBG1[0] 203 let g:terminal_color_8=s:gruberBG1[0] 204 205 let g:terminal_color_1=s:gruberLightRed[0] 206 let g:terminal_color_9=s:gruberLightRed[0] 207 208 let g:terminal_color_2=s:gruberGreen[0] 209 let g:terminal_color_10=s:gruberGreen[0] 210 211 let g:terminal_color_3=s:gruberMain[0] 212 let g:terminal_color_11=s:gruberMain[0] 213 214 let g:terminal_color_4=s:gruberNiagara[0] 215 let g:terminal_color_12=s:gruberNiagara[0] 216 217 let g:terminal_color_5=s:gruberPurple[0] 218 let g:terminal_color_13=s:gruberPurple[0] 219 220 let g:terminal_color_6=s:gruberNiagara[0] 221 let g:terminal_color_14=s:gruberNiagara[0] 222 223 let g:terminal_color_7=s:gruberFG[0] 224 let g:terminal_color_15=s:gruberFG[0] 225 226 let g:terminal_color_background=s:gruberBG1[0] 227 let g:terminal_color_foreground=s:gruberWhite[0] 228