Initial.
6 let g:colors_name = "moon"
10 let s:moon.plain = ['ffffff', 15]
11 let s:moon.snow = ['ffffff', 15]
12 let s:moon.coal = ['000000', 16]
13 let s:moon.brightgravel = ['d9cec3', 252]
14 let s:moon.lightgravel = ['998f84', 245]
15 let s:moon.gravel = ['857f78', 243]
16 let s:moon.mediumgravel = ['666462', 241]
17 let s:moon.deepgravel = ['45413b', 238]
18 let s:moon.deepergravel = ['35322d', 236]
19 let s:moon.darkgravel = ['242321', 235]
20 let s:moon.blackgravel = ['1c1b1a', 233]
21 let s:moon.blackestgravel = ['141413', 232]
22 let s:moon.dalespale = ['fade3e', 221]
23 let s:moon.dirtyblonde = ['f4cf86', 222]
24 let s:moon.taffy = ['ff2c4b', 196]
25 let s:moon.saltwatertaffy = ['8cffba', 121]
26 let s:moon.tardis = ['0a9dff', 39]
27 let s:moon.orange = ['ffa724', 214]
28 let s:moon.lime = ['aeee00', 148]
29 let s:moon.dress = ['ff9eb8', 211]
30 let s:moon.toffee = ['b88853', 137]
31 let s:moon.coffee = ['c7915b', 173]
32 let s:moon.darkroast = ['88633f', 95]
35 nmap <C-S-P> :call <SID>SynStack()<CR>
36 function! <SID>SynStack()
37 if !exists("*synstack")
40 echo map(synstack(line('.'), col('.')), 'synIDattr(v:val, "name")')
43 " highlight function by Steve Josh
44 function! HL(group, fg, ...)
45 " Arguments: group, guifg, guibg, gui, guisp
46 let histring = 'hi ' . a:group . ' '
49 let histring .= 'guifg=fg ctermfg=fg '
51 let c = get(s:moon, a:fg)
52 let histring .= 'guifg=#' . c[0] . ' ctermfg=' . c[1] . ' '
55 if a:0 >= 1 && strlen(a:1)
57 let histring .= 'guibg=bg ctermbg=bg '
59 let c = get(s:moon, a:1)
60 let histring .= 'guibg=#' . c[0] . ' ctermbg=' . c[1] . ' '
63 if a:0 >= 2 && strlen(a:2)
64 let histring .= 'gui=' . a:2 . ' cterm=' . a:2 . ' '
67 if a:0 >= 3 && strlen(a:3)
68 let c = get(s:moon, a:3)
69 let histring .= 'guisp=#' . c[0] . ' '
79 call HL('Normal', 'plain', 'blackgravel')
80 call HL('Folded', 'mediumgravel', 'bg', 'none')
82 call HL('VertSplit', 'lightgravel', 'bg', 'none')
84 call HL('CursorLine', '', 'darkgravel', 'none')
85 call HL('CursorColumn', '', 'darkgravel')
86 call HL('ColorColumn', '', 'darkgravel')
88 call HL('MatchParen', 'dalespale', 'darkgravel', 'bold')
90 call HL('NonText', 'deepgravel', 'bg')
91 call HL('SpecialKey', 'deepgravel', 'bg')
93 call HL('Visual', '', 'deepgravel')
94 call HL('VisualNOS', '', 'deepgravel')
96 call HL('Search', 'coal', 'dalespale', 'bold')
97 call HL('IncSearch', 'coal', 'tardis', 'bold')
99 call HL('Underlined', 'fg', '', 'underline')
101 call HL('StatusLine', 'coal', 'tardis', 'bold')
102 call HL('StatusLineNC', 'snow', 'deepgravel', 'bold')
104 call HL('Directory', 'dirtyblonde', '', 'bold')
106 call HL('Title', 'lime')
108 call HL('ErrorMsg', 'taffy', 'bg', 'bold')
109 call HL('MoreMsg', 'dalespale', '', 'bold')
110 call HL('ModeMsg', 'dirtyblonde', '', 'bold')
111 call HL('Question', 'dirtyblonde', '', 'bold')
112 call HL('WarningMsg', 'dress', '', 'bold')
113 call HL('Tag', '', '', 'bold')
115 call HL('LineNr', 'mediumgravel', 'blackgravel')
116 call HL('SignColumn', '', 'blackgravel')
117 call HL('FoldColumn', 'mediumgravel', 'blackgravel')
119 call HL('Cursor', 'coal', 'tardis', 'bold')
120 call HL('vCursor', 'coal', 'tardis', 'bold')
121 call HL('iCursor', 'coal', 'tardis', 'none')
123 " Syntax highlighting
124 call HL('Special', 'plain')
126 " Comments are slightly brighter than folds, to make 'headers' easier to see.
127 call HL('Comment', 'gravel')
128 call HL('Todo', 'snow', 'bg', 'bold')
129 call HL('SpecialComment', 'snow', 'bg', 'bold')
131 " Strings are a nice, pale straw color. Nothing too fancy.
132 call HL('String', 'dirtyblonde')
134 " Control flow stuff is taffy.
135 call HL('Statement', 'taffy', '', 'bold')
136 call HL('Keyword', 'taffy', '', 'bold')
137 call HL('Conditional', 'taffy', '', 'bold')
138 call HL('Operator', 'taffy', '', 'none')
139 call HL('Label', 'taffy', '', 'none')
140 call HL('Repeat', 'taffy', '', 'none')
142 " Functions and variable declarations are orange, because plain looks weird.
143 call HL('Identifier', 'orange', '', 'none')
144 call HL('Function', 'orange', '', 'none')
146 " Preprocessor stuff is lime, to make it pop.
148 " This includes imports in any given language, because they should usually be
149 " grouped together at the beginning of a file. If they're in the middle of some
150 " other code they should stand out, because something tricky is
152 call HL('PreProc', 'lime', '', 'none')
153 call HL('Macro', 'lime', '', 'none')
154 call HL('Define', 'lime', '', 'none')
155 call HL('PreCondit', 'lime', '', 'bold')
157 " Constants of all kinds are colored together.
158 " I'm not really happy with the color yet...
159 call HL('Constant', 'toffee', '', 'bold')
160 call HL('Character', 'toffee', '', 'bold')
161 call HL('Boolean', 'toffee', '', 'bold')
163 call HL('Number', 'toffee', '', 'bold')
164 call HL('Float', 'toffee', '', 'bold')
166 " Not sure what 'special character in a constant' means, but let's make it pop.
167 call HL('SpecialChar', 'dress', '', 'bold')
169 call HL('Type', 'dress', '', 'none')
170 call HL('StorageClass', 'taffy', '', 'none')
171 call HL('Structure', 'taffy', '', 'none')
172 call HL('Typedef', 'taffy', '', 'bold')
174 " Make try/catch blocks stand out.
175 call HL('Exception', 'lime', '', 'bold')
178 call HL('Error', 'snow', 'taffy', 'bold')
179 call HL('Debug', 'snow', '', 'bold')
180 call HL('Ignore', 'gravel', '', '')
183 " Completion Menu {{{
185 call HL('Pmenu', 'plain', 'deepergravel')
186 call HL('PmenuSel', 'coal', 'tardis', 'bold')
187 call HL('PmenuSbar', '', 'deepergravel')
188 call HL('PmenuThumb', 'brightgravel')
193 call HL('DiffDelete', 'coal', 'coal')
194 call HL('DiffAdd', '', 'deepergravel')
195 call HL('DiffChange', '', 'darkgravel')
196 call HL('DiffText', 'snow', 'deepergravel', 'bold')
202 call HL('SpellCap', 'dalespale', '', 'undercurl,bold', 'dalespale')
203 call HL('SpellBad', '', '', 'undercurl', 'dalespale')
204 call HL('SpellLocal', '', '', 'undercurl', 'dalespale')
205 call HL('SpellRare', '', '', 'undercurl', 'dalespale')
215 " the message when no match is found
216 call HL('CtrlPNoEntries', 'snow', 'taffy', 'bold')
218 " the matched pattern
219 call HL('CtrlPMatch', 'orange', 'bg', 'none')
221 " the line prefix '>' in the match window
222 call HL('CtrlPLinePre', 'deepgravel', 'bg', 'none')
224 " the prompt’s base
225 call HL('CtrlPPrtBase', 'deepgravel', 'bg', 'none')
227 " the prompt’s text
228 call HL('CtrlPPrtText', 'plain', 'bg', 'none')
230 " the prompt’s cursor when moving over the text
231 call HL('CtrlPPrtCursor', 'coal', 'tardis', 'bold')
233 " 'prt' or 'win', also for 'regex'
234 call HL('CtrlPMode1', 'coal', 'tardis', 'bold')
236 " 'file' or 'path', also for the local working dir
237 call HL('CtrlPMode2', 'coal', 'tardis', 'bold')
239 " the scanning status
240 call HL('CtrlPStats', 'coal', 'tardis', 'bold')
242 " TODO: CtrlP extensions.
243 " CtrlPTabExtra : the part of each line that’s not matched against (Comment)
244 " CtrlPqfLineCol : the line and column numbers in quickfix mode (|hl-Search|)
245 " CtrlPUndoT : the elapsed time in undo mode (|hl-Directory|)
246 " CtrlPUndoBr : the square brackets [] in undo mode (Comment)
247 " CtrlPUndoNr : the undo number inside [] in undo mode (String)
252 call HL('EasyMotionTarget', 'tardis', 'bg', 'bold')
253 call HL('EasyMotionShade', 'deepgravel', 'bg')
260 " hi GreenBar term=reverse ctermfg=white ctermbg=green guifg=coal guibg=#9edf1c
261 " hi RedBar term=reverse ctermfg=white ctermbg=red guifg=white guibg=#C50048
266 call HL('ShowMarksHLl', 'tardis', 'blackgravel')
267 call HL('ShowMarksHLu', 'tardis', 'blackgravel')
268 call HL('ShowMarksHLo', 'tardis', 'blackgravel')
269 call HL('ShowMarksHLm', 'tardis', 'blackgravel')
276 call HL('clojureSpecial', 'taffy', '', '')
277 call HL('clojureDefn', 'taffy', '', '')
278 call HL('clojureDefMacro', 'taffy', '', '')
279 call HL('clojureDefine', 'taffy', '', '')
280 call HL('clojureMacro', 'taffy', '', '')
281 call HL('clojureCond', 'taffy', '', '')
283 call HL('clojureKeyword', 'orange', '', 'none')
285 call HL('clojureFunc', 'dress', '', 'none')
286 call HL('clojureRepeat', 'dress', '', 'none')
288 call HL('clojureParen0', 'lightgravel', '', 'none')
290 call HL('clojureAnonArg', 'snow', '', 'bold')
295 call HL('cssColorProp', 'fg', '', 'none')
296 call HL('cssBoxProp', 'fg', '', 'none')
297 call HL('cssTextProp', 'fg', '', 'none')
298 call HL('cssRenderProp', 'fg', '', 'none')
299 call HL('cssGeneratedContentProp', 'fg', '', 'none')
301 call HL('cssValueLength', 'toffee', '', 'bold')
302 call HL('cssColor', 'toffee', '', 'bold')
303 call HL('cssBraces', 'lightgravel', '', 'none')
304 call HL('cssIdentifier', 'orange', '', 'bold')
305 call HL('cssClassName', 'orange', '', 'none')
308 " Django Templates {{{
310 call HL('djangoArgument', 'dirtyblonde', '',)
311 call HL('djangoTagBlock', 'orange', '')
312 call HL('djangoVarBlock', 'orange', '')
313 " hi djangoStatement guifg=#ff3853 gui=bold
314 " hi djangoVarBlock guifg=#f4cf86
320 call HL('htmlTag', 'darkroast', 'bg', 'none')
321 call HL('htmlEndTag', 'darkroast', 'bg', 'none')
324 call HL('htmlTagName', 'coffee', '', 'bold')
325 call HL('htmlSpecialTagName', 'coffee', '', 'bold')
328 call HL('htmlArg', 'coffee', '', 'none')
330 " Stuff inside an <a> tag
331 call HL('htmlLink', 'lightgravel', '', 'underline')
336 call HL('javaClassDecl', 'taffy', '', 'bold')
337 call HL('javaScopeDecl', 'taffy', '', 'bold')
338 call HL('javaCommentTitle', 'gravel', '')
339 call HL('javaDocTags', 'snow', '', 'none')
340 call HL('javaDocParam', 'dalespale', '', '')
345 call HL('lessVariable', 'lime', '', 'none')
350 call HL('mailSubject', 'orange', '', 'bold')
351 call HL('mailHeader', 'lightgravel', '', '')
352 call HL('mailHeaderKey', 'lightgravel', '', '')
353 call HL('mailHeaderEmail', 'snow', '', '')
354 call HL('mailURL', 'toffee', '', 'underline')
355 call HL('mailSignature', 'gravel', '', 'none')
357 call HL('mailQuoted1', 'gravel', '', 'none')
358 call HL('mailQuoted2', 'dress', '', 'none')
359 call HL('mailQuoted3', 'dirtyblonde', '', 'none')
360 call HL('mailQuoted4', 'orange', '', 'none')
361 call HL('mailQuoted5', 'lime', '', 'none')
366 call HL('markdownHeadingRule', 'lightgravel', '', 'bold')
367 call HL('markdownHeadingDelimiter', 'lightgravel', '', 'bold')
368 call HL('markdownOrderedListMarker', 'lightgravel', '', 'bold')
369 call HL('markdownListMarker', 'lightgravel', '', 'bold')
370 call HL('markdownH1', 'orange', '', 'bold')
371 call HL('markdownH2', 'lime', '', 'bold')
372 call HL('markdownH3', 'lime', '', 'none')
373 call HL('markdownH4', 'lime', '', 'none')
374 call HL('markdownH5', 'lime', '', 'none')
375 call HL('markdownH6', 'lime', '', 'none')
376 call HL('markdownLinkText', 'toffee', '', 'underline')
377 call HL('markdownIdDeclaration', 'toffee')
378 call HL('markdownAutomaticLink', 'toffee', '', 'bold')
379 call HL('markdownUrl', 'toffee', '', 'bold')
380 call HL('markdownUrldelimiter', 'lightgravel', '', 'bold')
381 call HL('markdownLinkDelimiter', 'lightgravel', '', 'bold')
382 call HL('markdownLinkTextDelimiter', 'lightgravel', '', 'bold')
383 call HL('markdownCodeDelimiter', 'dirtyblonde', '', 'bold')
384 call HL('markdownCode', 'dirtyblonde', '', 'none')
385 call HL('markdownCodeBlock', 'dirtyblonde', '', 'none')
390 hi def link pythonOperator Operator
391 call HL('pythonBuiltin', 'dress')
392 call HL('pythonEscape', 'dress')
393 call HL('pythonException', 'lime', '', 'bold')
394 call HL('pythonExceptions', 'lime', '', 'none')
395 call HL('pythonDecorator', 'taffy', '', 'none')
400 " Rainbow parentheses
401 call HL('hlLevel0', 'gravel')
402 call HL('hlLevel1', 'orange')
403 call HL('hlLevel2', 'saltwatertaffy')
404 call HL('hlLevel3', 'dress')
405 call HL('hlLevel4', 'coffee')
406 call HL('hlLevel5', 'dirtyblonde')
407 call HL('hlLevel6', 'orange')
408 call HL('hlLevel7', 'saltwatertaffy')
409 call HL('hlLevel8', 'dress')
410 call HL('hlLevel9', 'coffee')
415 call HL('VimCommentTitle', 'lightgravel', '', 'bold')
417 call HL('VimMapMod', 'dress', '', 'none')
418 call HL('VimMapModKey', 'dress', '', 'none')
419 call HL('VimNotation', 'dress', '', 'none')
420 call HL('VimBracket', 'dress', '', 'none')