├── .hgignore ├── .hgtags ├── LICENSE.markdown ├── README.markdown ├── colors ├── badwolf.vim └── goodwolf.vim ├── contrib ├── badwolf-theme.el ├── badwolf.dircolors ├── badwolf.dvtcolortheme └── badwolf.muttrc └── package.sh /.hgignore: -------------------------------------------------------------------------------- 1 | syntax: glob 2 | 3 | .DS_Store 4 | *.pyc 5 | *.swp 6 | *.swo 7 | *.un~ 8 | *~ 9 | .ropeproject 10 | tags 11 | tags.bak 12 | -------------------------------------------------------------------------------- /.hgtags: -------------------------------------------------------------------------------- 1 | 621c2b1cd1820ede93da83090ef4240ced361000 v1.0.0 2 | 9c22ea4982a779254214a2fcb4ba62918afcae69 v1.1.0 3 | 2804e4d33d917aa2251b6d33709d17223fd5e5d0 v1.1.1 4 | 599ba7563aa4251e5f51c3e00ed8c993fe1426c5 v1.1.2 5 | 8c3583c971acda5cb4f034dbe643e5a9315db63b v1.2.0 6 | 4e6ee97af8b02741af86dcb2eb3f0f4dbbcc9761 v1.3.0 7 | 5b17fcb91dd54bff3987513ece727b45105b15fc v1.4.0 8 | 2ef3532a6301313f323067bba6b6d445d0f332c5 v1.5.0 9 | bd56b86c54032b62dd4f755ab4c564c18da0b67f v1.6.0 10 | -------------------------------------------------------------------------------- /LICENSE.markdown: -------------------------------------------------------------------------------- 1 | Copyright (C) 2012 Steve Losh and Contributors 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software is furnished to do so, 8 | subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | **THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 15 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.** 19 | -------------------------------------------------------------------------------- /README.markdown: -------------------------------------------------------------------------------- 1 | Bad Wolf 2 | ======== 3 | 4 | A color scheme for Vim, pieced together by [Steve Losh](http://stevelosh.com/). 5 | 6 | There's still quite a lot of room for improvement (particularly in HTML) so feel 7 | free to send me ideas through the [issue tracker][] or pull requests. 8 | 9 | It's MIT/X11 licensed, so feel free to hack it apart if you like. 10 | 11 | **If you're going to send a pull request that you want me to merge, please post 12 | a comment in it with before/after screenshots!** 13 | 14 | [issue tracker]: http://github.com/sjl/badwolf/issues 15 | 16 | Screenshots 17 | ----------- 18 | 19 | These screenshots may be out of date, but they'll at least give you a taste of 20 | what you're in for. 21 | 22 | ### Python 23 | 24 | ![Screenshot](http://i.imgur.com/fQGGC.png) 25 | 26 | ### HTML (Django Templates) 27 | 28 | ![Screenshot](http://i.imgur.com/LgLar.png) 29 | 30 | ### Clojure 31 | 32 | ![Screenshot](http://i.imgur.com/THHz7.png) 33 | 34 | ### Markdown 35 | 36 | ![Screenshot](http://i.imgur.com/J56VS.png) 37 | 38 | Configuration 39 | ------------- 40 | 41 | There are a few settings you can use to tweak how Bad Wolf looks. 42 | 43 | ### g:badwolf\_darkgutter 44 | 45 | Determines whether the line number, sign column, and fold column are rendered 46 | darker than the normal background, or the same. 47 | 48 | " Make the gutters darker than the background. 49 | let g:badwolf_darkgutter = 1 50 | 51 | Default: `0` (off, gutters are the same as the background) 52 | 53 | ### g:badwolf\_tabline 54 | 55 | Determines how light to render the background of the tab line (the line at the 56 | top of the screen containing the various tabs (only in console mode)). 57 | 58 | Can be set to `0`, `1`, `2`, or `3`. 59 | 60 | " Make the tab line darker than the background. 61 | let g:badwolf_tabline = 0 62 | 63 | " Make the tab line the same color as the background. 64 | let g:badwolf_tabline = 1 65 | 66 | " Make the tab line lighter than the background. 67 | let g:badwolf_tabline = 2 68 | 69 | " Make the tab line much lighter than the background. 70 | let g:badwolf_tabline = 3 71 | 72 | Default: `1` (same color as the background) 73 | 74 | ### g:badwolf\_html\_link\_underline 75 | 76 | Determines whether text inside `a` tags in HTML files will be underlined. 77 | 78 | " Turn off HTML link underlining 79 | let g:badwolf_html_link_underline = 0 80 | 81 | Default: `1` (on) 82 | 83 | ### g:badwolf\_css\_props\_highlight 84 | 85 | Determines whether CSS properties should be highlighted. 86 | 87 | " Turn on CSS properties highlighting 88 | let g:badwolf_css_props_highlight = 1 89 | 90 | Default: `0` (off) 91 | 92 | Contributing 93 | ------------ 94 | 95 | I'd love pull requests, but won't necessarily merge all of them. Color schemes 96 | are a very subjective topic -- we don't all have the same taste. 97 | 98 | **If you're going to send a pull request that you want me to merge, please post 99 | a comment in it with before/after screenshots!** 100 | -------------------------------------------------------------------------------- /colors/badwolf.vim: -------------------------------------------------------------------------------- 1 | " _ _ _ __ 2 | " | |__ __ _ __| | __ _____ | |/ _| 3 | " | '_ \ / _` |/ _` | \ \ /\ / / _ \| | |_ 4 | " | |_) | (_| | (_| | \ V V / (_) | | _| 5 | " |_.__/ \__,_|\__,_| \_/\_/ \___/|_|_| 6 | " 7 | " I am the Bad Wolf. I create myself. 8 | " I take the words. I scatter them in time and space. 9 | " A message to lead myself here. 10 | " 11 | " A Vim colorscheme pieced together by Steve Losh. 12 | " Available at http://stevelosh.com/projects/badwolf/ 13 | " 14 | " Why? {{{ 15 | " 16 | " After using Molokai for quite a long time, I started longing for 17 | " a replacement. 18 | " 19 | " I love Molokai's high contrast and gooey, saturated tones, but it can be 20 | " a little inconsistent at times. 21 | " 22 | " Also it's winter here in Rochester, so I wanted a color scheme that's a bit 23 | " warmer. A little less blue and a bit more red. 24 | " 25 | " And so Bad Wolf was born. I'm no designer, but designers have been scattering 26 | " beautiful colors through time and space long before I came along. I took 27 | " advantage of that and reused some of my favorites to lead me to this scheme. 28 | " 29 | " }}} 30 | 31 | " Supporting code ------------------------------------------------------------- 32 | " Preamble {{{ 33 | 34 | if !has("gui_running") && &t_Co != 88 && &t_Co != 256 35 | finish 36 | endif 37 | 38 | set background=dark 39 | 40 | if exists("syntax_on") 41 | syntax reset 42 | endif 43 | 44 | let g:colors_name = "badwolf" 45 | 46 | if !exists("g:badwolf_html_link_underline") " {{{ 47 | let g:badwolf_html_link_underline = 1 48 | endif " }}} 49 | 50 | if !exists("g:badwolf_css_props_highlight") " {{{ 51 | let g:badwolf_css_props_highlight = 0 52 | endif " }}} 53 | 54 | " }}} 55 | " Palette {{{ 56 | 57 | let s:bwc = {} 58 | 59 | " The most basic of all our colors is a slightly tweaked version of the Molokai 60 | " Normal text. 61 | let s:bwc.plain = ['f8f6f2', 15] 62 | 63 | " Pure and simple. 64 | let s:bwc.snow = ['ffffff', 15] 65 | let s:bwc.coal = ['000000', 16] 66 | 67 | " All of the Gravel colors are based on a brown from Clouds Midnight. 68 | let s:bwc.brightgravel = ['d9cec3', 252] 69 | let s:bwc.lightgravel = ['998f84', 245] 70 | let s:bwc.gravel = ['857f78', 243] 71 | let s:bwc.mediumgravel = ['666462', 241] 72 | let s:bwc.deepgravel = ['45413b', 238] 73 | let s:bwc.deepergravel = ['35322d', 236] 74 | let s:bwc.darkgravel = ['242321', 235] 75 | let s:bwc.blackgravel = ['1c1b1a', 233] 76 | let s:bwc.blackestgravel = ['141413', 232] 77 | 78 | " A color sampled from a highlight in a photo of a glass of Dale's Pale Ale on 79 | " my desk. 80 | let s:bwc.dalespale = ['fade3e', 221] 81 | 82 | " A beautiful tan from Tomorrow Night. 83 | let s:bwc.dirtyblonde = ['f4cf86', 222] 84 | 85 | " Delicious, chewy red from Made of Code for the poppiest highlights. 86 | let s:bwc.taffy = ['ff2c4b', 196] 87 | 88 | " Another chewy accent, but use sparingly! 89 | let s:bwc.saltwatertaffy = ['8cffba', 121] 90 | 91 | " The star of the show comes straight from Made of Code. 92 | " 93 | " You should almost never use this. It should be used for things that denote 94 | " 'where the user is', which basically consists of: 95 | " 96 | " * The cursor 97 | " * A REPL prompt 98 | let s:bwc.tardis = ['0a9dff', 39] 99 | 100 | " This one's from Mustang, not Florida! 101 | let s:bwc.orange = ['ffa724', 214] 102 | 103 | " A limier green from Getafe. 104 | let s:bwc.lime = ['aeee00', 154] 105 | 106 | " Rose's dress in The Idiot's Lantern. 107 | let s:bwc.dress = ['ff9eb8', 211] 108 | 109 | " Another play on the brown from Clouds Midnight. I love that color. 110 | let s:bwc.toffee = ['b88853', 137] 111 | 112 | " Also based on that Clouds Midnight brown. 113 | let s:bwc.coffee = ['c7915b', 173] 114 | let s:bwc.darkroast = ['88633f', 95] 115 | 116 | " }}} 117 | " Highlighting Function {{{ 118 | function! s:HL(group, fg, ...) 119 | " Arguments: group, guifg, guibg, gui, guisp 120 | 121 | let histring = 'hi ' . a:group . ' ' 122 | 123 | if strlen(a:fg) 124 | if a:fg == 'fg' 125 | let histring .= 'guifg=fg ctermfg=fg ' 126 | else 127 | let c = get(s:bwc, a:fg) 128 | let histring .= 'guifg=#' . c[0] . ' ctermfg=' . c[1] . ' ' 129 | endif 130 | endif 131 | 132 | if a:0 >= 1 && strlen(a:1) 133 | if a:1 == 'bg' 134 | let histring .= 'guibg=bg ctermbg=bg ' 135 | else 136 | let c = get(s:bwc, a:1) 137 | let histring .= 'guibg=#' . c[0] . ' ctermbg=' . c[1] . ' ' 138 | endif 139 | endif 140 | 141 | if a:0 >= 2 && strlen(a:2) 142 | let histring .= 'gui=' . a:2 . ' cterm=' . a:2 . ' ' 143 | endif 144 | 145 | if a:0 >= 3 && strlen(a:3) 146 | let c = get(s:bwc, a:3) 147 | let histring .= 'guisp=#' . c[0] . ' ' 148 | endif 149 | 150 | " echom histring 151 | 152 | execute histring 153 | endfunction 154 | " }}} 155 | " Configuration Options {{{ 156 | 157 | if exists('g:badwolf_darkgutter') && g:badwolf_darkgutter 158 | let s:gutter = 'blackestgravel' 159 | else 160 | let s:gutter = 'blackgravel' 161 | endif 162 | 163 | if exists('g:badwolf_tabline') 164 | if g:badwolf_tabline == 0 165 | let s:tabline = 'blackestgravel' 166 | elseif g:badwolf_tabline == 1 167 | let s:tabline = 'blackgravel' 168 | elseif g:badwolf_tabline == 2 169 | let s:tabline = 'darkgravel' 170 | elseif g:badwolf_tabline == 3 171 | let s:tabline = 'deepgravel' 172 | else 173 | let s:tabline = 'blackestgravel' 174 | endif 175 | else 176 | let s:tabline = 'blackgravel' 177 | endif 178 | 179 | " }}} 180 | 181 | " Actual colorscheme ---------------------------------------------------------- 182 | " Vanilla Vim {{{ 183 | 184 | " General/UI {{{ 185 | 186 | call s:HL('Normal', 'plain', 'blackgravel') 187 | 188 | call s:HL('Folded', 'mediumgravel', 'bg', 'none') 189 | 190 | call s:HL('VertSplit', 'lightgravel', 'bg', 'none') 191 | 192 | call s:HL('CursorLine', '', 'darkgravel', 'none') 193 | call s:HL('CursorColumn', '', 'darkgravel') 194 | call s:HL('ColorColumn', '', 'darkgravel') 195 | 196 | call s:HL('TabLine', 'plain', s:tabline, 'none') 197 | call s:HL('TabLineFill', 'plain', s:tabline, 'none') 198 | call s:HL('TabLineSel', 'coal', 'tardis', 'none') 199 | 200 | call s:HL('MatchParen', 'dalespale', 'darkgravel', 'bold') 201 | 202 | call s:HL('NonText', 'deepgravel', 'bg') 203 | call s:HL('SpecialKey', 'deepgravel', 'bg') 204 | 205 | call s:HL('Visual', '', 'deepgravel') 206 | call s:HL('VisualNOS', '', 'deepgravel') 207 | 208 | call s:HL('Search', 'coal', 'dalespale', 'bold') 209 | call s:HL('IncSearch', 'coal', 'tardis', 'bold') 210 | 211 | call s:HL('Underlined', 'fg', '', 'underline') 212 | 213 | call s:HL('StatusLine', 'coal', 'tardis', 'bold') 214 | call s:HL('StatusLineNC', 'snow', 'deepgravel', 'bold') 215 | 216 | call s:HL('Directory', 'dirtyblonde', '', 'bold') 217 | 218 | call s:HL('Title', 'lime') 219 | 220 | call s:HL('ErrorMsg', 'taffy', 'bg', 'bold') 221 | call s:HL('MoreMsg', 'dalespale', '', 'bold') 222 | call s:HL('ModeMsg', 'dirtyblonde', '', 'bold') 223 | call s:HL('Question', 'dirtyblonde', '', 'bold') 224 | call s:HL('WarningMsg', 'dress', '', 'bold') 225 | 226 | " This is a ctags tag, not an HTML one. 'Something you can use c-] on'. 227 | call s:HL('Tag', '', '', 'bold') 228 | 229 | " hi IndentGuides guibg=#373737 230 | " hi WildMenu guifg=#66D9EF guibg=#000000 231 | 232 | " }}} 233 | " Gutter {{{ 234 | 235 | call s:HL('LineNr', 'mediumgravel', s:gutter) 236 | call s:HL('SignColumn', '', s:gutter) 237 | call s:HL('FoldColumn', 'mediumgravel', s:gutter) 238 | 239 | " }}} 240 | " Cursor {{{ 241 | 242 | call s:HL('Cursor', 'coal', 'tardis', 'bold') 243 | call s:HL('vCursor', 'coal', 'tardis', 'bold') 244 | call s:HL('iCursor', 'coal', 'tardis', 'none') 245 | 246 | " }}} 247 | " Syntax highlighting {{{ 248 | 249 | " Start with a simple base. 250 | call s:HL('Special', 'plain') 251 | 252 | " Comments are slightly brighter than folds, to make 'headers' easier to see. 253 | call s:HL('Comment', 'gravel') 254 | call s:HL('Todo', 'snow', 'bg', 'bold') 255 | call s:HL('SpecialComment', 'snow', 'bg', 'bold') 256 | 257 | " Strings are a nice, pale straw color. Nothing too fancy. 258 | call s:HL('String', 'dirtyblonde') 259 | 260 | " Control flow stuff is taffy. 261 | call s:HL('Statement', 'taffy', '', 'bold') 262 | call s:HL('Keyword', 'taffy', '', 'bold') 263 | call s:HL('Conditional', 'taffy', '', 'bold') 264 | call s:HL('Operator', 'taffy', '', 'none') 265 | call s:HL('Label', 'taffy', '', 'none') 266 | call s:HL('Repeat', 'taffy', '', 'none') 267 | 268 | " Functions and variable declarations are orange, because plain looks weird. 269 | call s:HL('Identifier', 'orange', '', 'none') 270 | call s:HL('Function', 'orange', '', 'none') 271 | 272 | " Preprocessor stuff is lime, to make it pop. 273 | " 274 | " This includes imports in any given language, because they should usually be 275 | " grouped together at the beginning of a file. If they're in the middle of some 276 | " other code they should stand out, because something tricky is 277 | " probably going on. 278 | call s:HL('PreProc', 'lime', '', 'none') 279 | call s:HL('Macro', 'lime', '', 'none') 280 | call s:HL('Define', 'lime', '', 'none') 281 | call s:HL('PreCondit', 'lime', '', 'bold') 282 | 283 | " Constants of all kinds are colored together. 284 | " I'm not really happy with the color yet... 285 | call s:HL('Constant', 'toffee', '', 'bold') 286 | call s:HL('Character', 'toffee', '', 'bold') 287 | call s:HL('Boolean', 'toffee', '', 'bold') 288 | 289 | call s:HL('Number', 'toffee', '', 'bold') 290 | call s:HL('Float', 'toffee', '', 'bold') 291 | 292 | " Not sure what 'special character in a constant' means, but let's make it pop. 293 | call s:HL('SpecialChar', 'dress', '', 'bold') 294 | 295 | call s:HL('Type', 'dress', '', 'none') 296 | call s:HL('StorageClass', 'taffy', '', 'none') 297 | call s:HL('Structure', 'taffy', '', 'none') 298 | call s:HL('Typedef', 'taffy', '', 'bold') 299 | 300 | " Make try/catch blocks stand out. 301 | call s:HL('Exception', 'lime', '', 'bold') 302 | 303 | " Misc 304 | call s:HL('Error', 'snow', 'taffy', 'bold') 305 | call s:HL('Debug', 'snow', '', 'bold') 306 | call s:HL('Ignore', 'gravel', '', '') 307 | 308 | " }}} 309 | " Completion Menu {{{ 310 | 311 | call s:HL('Pmenu', 'plain', 'deepergravel') 312 | call s:HL('PmenuSel', 'coal', 'tardis', 'bold') 313 | call s:HL('PmenuSbar', '', 'deepergravel') 314 | call s:HL('PmenuThumb', 'brightgravel') 315 | 316 | " }}} 317 | " Diffs {{{ 318 | 319 | call s:HL('DiffDelete', 'coal', 'coal') 320 | call s:HL('DiffAdd', '', 'deepergravel') 321 | call s:HL('DiffChange', '', 'darkgravel') 322 | call s:HL('DiffText', 'snow', 'deepergravel', 'bold') 323 | 324 | " }}} 325 | " Spelling {{{ 326 | 327 | if has("spell") 328 | call s:HL('SpellCap', 'dalespale', 'bg', 'undercurl,bold', 'dalespale') 329 | call s:HL('SpellBad', '', 'bg', 'undercurl', 'dalespale') 330 | call s:HL('SpellLocal', '', '', 'undercurl', 'dalespale') 331 | call s:HL('SpellRare', '', '', 'undercurl', 'dalespale') 332 | endif 333 | 334 | " }}} 335 | 336 | " }}} 337 | " Plugins {{{ 338 | 339 | " CtrlP {{{ 340 | 341 | " the message when no match is found 342 | call s:HL('CtrlPNoEntries', 'snow', 'taffy', 'bold') 343 | 344 | " the matched pattern 345 | call s:HL('CtrlPMatch', 'orange', 'bg', 'none') 346 | 347 | " the line prefix '>' in the match window 348 | call s:HL('CtrlPLinePre', 'deepgravel', 'bg', 'none') 349 | 350 | " the prompt’s base 351 | call s:HL('CtrlPPrtBase', 'deepgravel', 'bg', 'none') 352 | 353 | " the prompt’s text 354 | call s:HL('CtrlPPrtText', 'plain', 'bg', 'none') 355 | 356 | " the prompt’s cursor when moving over the text 357 | call s:HL('CtrlPPrtCursor', 'coal', 'tardis', 'bold') 358 | 359 | " 'prt' or 'win', also for 'regex' 360 | call s:HL('CtrlPMode1', 'coal', 'tardis', 'bold') 361 | 362 | " 'file' or 'path', also for the local working dir 363 | call s:HL('CtrlPMode2', 'coal', 'tardis', 'bold') 364 | 365 | " the scanning status 366 | call s:HL('CtrlPStats', 'coal', 'tardis', 'bold') 367 | 368 | " TODO: CtrlP extensions. 369 | " CtrlPTabExtra : the part of each line that’s not matched against (Comment) 370 | " CtrlPqfLineCol : the line and column numbers in quickfix mode (|s:HL-Search|) 371 | " CtrlPUndoT : the elapsed time in undo mode (|s:HL-Directory|) 372 | " CtrlPUndoBr : the square brackets [] in undo mode (Comment) 373 | " CtrlPUndoNr : the undo number inside [] in undo mode (String) 374 | 375 | " }}} 376 | " EasyMotion {{{ 377 | 378 | call s:HL('EasyMotionTarget', 'tardis', 'bg', 'bold') 379 | call s:HL('EasyMotionShade', 'deepgravel', 'bg') 380 | 381 | " }}} 382 | " Interesting Words {{{ 383 | 384 | " These are only used if you're me or have copied the hNUM mappings 385 | " from my Vimrc. 386 | call s:HL('InterestingWord1', 'coal', 'orange') 387 | call s:HL('InterestingWord2', 'coal', 'lime') 388 | call s:HL('InterestingWord3', 'coal', 'saltwatertaffy') 389 | call s:HL('InterestingWord4', 'coal', 'toffee') 390 | call s:HL('InterestingWord5', 'coal', 'dress') 391 | call s:HL('InterestingWord6', 'coal', 'taffy') 392 | 393 | 394 | " }}} 395 | " Makegreen {{{ 396 | 397 | " hi GreenBar term=reverse ctermfg=white ctermbg=green guifg=coal guibg=#9edf1c 398 | " hi RedBar term=reverse ctermfg=white ctermbg=red guifg=white guibg=#C50048 399 | 400 | " }}} 401 | " Rainbow Parentheses {{{ 402 | 403 | call s:HL('level16c', 'mediumgravel', '', 'bold') 404 | call s:HL('level15c', 'dalespale', '', '') 405 | call s:HL('level14c', 'dress', '', '') 406 | call s:HL('level13c', 'orange', '', '') 407 | call s:HL('level12c', 'tardis', '', '') 408 | call s:HL('level11c', 'lime', '', '') 409 | call s:HL('level10c', 'toffee', '', '') 410 | call s:HL('level9c', 'saltwatertaffy', '', '') 411 | call s:HL('level8c', 'coffee', '', '') 412 | call s:HL('level7c', 'dalespale', '', '') 413 | call s:HL('level6c', 'dress', '', '') 414 | call s:HL('level5c', 'orange', '', '') 415 | call s:HL('level4c', 'tardis', '', '') 416 | call s:HL('level3c', 'lime', '', '') 417 | call s:HL('level2c', 'toffee', '', '') 418 | call s:HL('level1c', 'saltwatertaffy', '', '') 419 | 420 | " }}} 421 | " ShowMarks {{{ 422 | 423 | call s:HL('ShowMarksHLl', 'tardis', 'blackgravel') 424 | call s:HL('ShowMarksHLu', 'tardis', 'blackgravel') 425 | call s:HL('ShowMarksHLo', 'tardis', 'blackgravel') 426 | call s:HL('ShowMarksHLm', 'tardis', 'blackgravel') 427 | 428 | " }}} 429 | 430 | " }}} 431 | " Filetype-specific {{{ 432 | 433 | " Clojure {{{ 434 | 435 | call s:HL('clojureSpecial', 'taffy', '', '') 436 | call s:HL('clojureDefn', 'taffy', '', '') 437 | call s:HL('clojureDefMacro', 'taffy', '', '') 438 | call s:HL('clojureDefine', 'taffy', '', '') 439 | call s:HL('clojureMacro', 'taffy', '', '') 440 | call s:HL('clojureCond', 'taffy', '', '') 441 | 442 | call s:HL('clojureKeyword', 'orange', '', 'none') 443 | 444 | call s:HL('clojureFunc', 'dress', '', 'none') 445 | call s:HL('clojureRepeat', 'dress', '', 'none') 446 | 447 | call s:HL('clojureParen0', 'lightgravel', '', 'none') 448 | 449 | call s:HL('clojureAnonArg', 'snow', '', 'bold') 450 | 451 | " }}} 452 | " Common Lisp {{{ 453 | 454 | call s:HL('lispFunc', 'lime', '', 'none') 455 | call s:HL('lispVar', 'orange', '', 'bold') 456 | call s:HL('lispEscapeSpecial', 'orange', '', 'none') 457 | 458 | " }}} 459 | " CSS {{{ 460 | 461 | if g:badwolf_css_props_highlight 462 | call s:HL('cssColorProp', 'taffy', '', 'none') 463 | call s:HL('cssBoxProp', 'taffy', '', 'none') 464 | call s:HL('cssTextProp', 'taffy', '', 'none') 465 | call s:HL('cssRenderProp', 'taffy', '', 'none') 466 | call s:HL('cssGeneratedContentProp', 'taffy', '', 'none') 467 | else 468 | call s:HL('cssColorProp', 'fg', '', 'none') 469 | call s:HL('cssBoxProp', 'fg', '', 'none') 470 | call s:HL('cssTextProp', 'fg', '', 'none') 471 | call s:HL('cssRenderProp', 'fg', '', 'none') 472 | call s:HL('cssGeneratedContentProp', 'fg', '', 'none') 473 | end 474 | 475 | call s:HL('cssValueLength', 'toffee', '', 'bold') 476 | call s:HL('cssColor', 'toffee', '', 'bold') 477 | call s:HL('cssBraces', 'lightgravel', '', 'none') 478 | call s:HL('cssIdentifier', 'orange', '', 'bold') 479 | call s:HL('cssClassName', 'orange', '', 'none') 480 | 481 | " }}} 482 | " Diff {{{ 483 | 484 | call s:HL('gitDiff', 'lightgravel', '',) 485 | 486 | call s:HL('diffRemoved', 'dress', '',) 487 | call s:HL('diffAdded', 'lime', '',) 488 | call s:HL('diffFile', 'coal', 'taffy', 'bold') 489 | call s:HL('diffNewFile', 'coal', 'taffy', 'bold') 490 | 491 | call s:HL('diffLine', 'coal', 'orange', 'bold') 492 | call s:HL('diffSubname', 'orange', '', 'none') 493 | 494 | " }}} 495 | " Django Templates {{{ 496 | 497 | call s:HL('djangoArgument', 'dirtyblonde', '',) 498 | call s:HL('djangoTagBlock', 'orange', '') 499 | call s:HL('djangoVarBlock', 'orange', '') 500 | " hi djangoStatement guifg=#ff3853 gui=bold 501 | " hi djangoVarBlock guifg=#f4cf86 502 | 503 | " }}} 504 | " HTML {{{ 505 | 506 | " Punctuation 507 | call s:HL('htmlTag', 'darkroast', 'bg', 'none') 508 | call s:HL('htmlEndTag', 'darkroast', 'bg', 'none') 509 | 510 | " Tag names 511 | call s:HL('htmlTagName', 'coffee', '', 'bold') 512 | call s:HL('htmlSpecialTagName', 'coffee', '', 'bold') 513 | call s:HL('htmlSpecialChar', 'lime', '', 'none') 514 | 515 | " Attributes 516 | call s:HL('htmlArg', 'coffee', '', 'none') 517 | 518 | " Stuff inside an tag 519 | 520 | if g:badwolf_html_link_underline 521 | call s:HL('htmlLink', 'lightgravel', '', 'underline') 522 | else 523 | call s:HL('htmlLink', 'lightgravel', '', 'none') 524 | endif 525 | 526 | " }}} 527 | " Java {{{ 528 | 529 | call s:HL('javaClassDecl', 'taffy', '', 'bold') 530 | call s:HL('javaScopeDecl', 'taffy', '', 'bold') 531 | call s:HL('javaCommentTitle', 'gravel', '') 532 | call s:HL('javaDocTags', 'snow', '', 'none') 533 | call s:HL('javaDocParam', 'dalespale', '', '') 534 | 535 | " }}} 536 | " LaTeX {{{ 537 | 538 | call s:HL('texStatement', 'tardis', '', 'none') 539 | call s:HL('texMathZoneX', 'orange', '', 'none') 540 | call s:HL('texMathZoneA', 'orange', '', 'none') 541 | call s:HL('texMathZoneB', 'orange', '', 'none') 542 | call s:HL('texMathZoneC', 'orange', '', 'none') 543 | call s:HL('texMathZoneD', 'orange', '', 'none') 544 | call s:HL('texMathZoneE', 'orange', '', 'none') 545 | call s:HL('texMathZoneV', 'orange', '', 'none') 546 | call s:HL('texMathZoneX', 'orange', '', 'none') 547 | call s:HL('texMath', 'orange', '', 'none') 548 | call s:HL('texMathMatcher', 'orange', '', 'none') 549 | call s:HL('texRefLabel', 'dirtyblonde', '', 'none') 550 | call s:HL('texRefZone', 'lime', '', 'none') 551 | call s:HL('texComment', 'darkroast', '', 'none') 552 | call s:HL('texDelimiter', 'orange', '', 'none') 553 | call s:HL('texZone', 'brightgravel', '', 'none') 554 | 555 | augroup badwolf_tex 556 | au! 557 | 558 | au BufRead,BufNewFile *.tex syn region texMathZoneV start="\\(" end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup 559 | au BufRead,BufNewFile *.tex syn region texMathZoneX start="\$" skip="\\\\\|\\\$" end="\$\|%stopzone\>" keepend contains=@texMathZoneGroup 560 | augroup END 561 | 562 | " }}} 563 | " LessCSS {{{ 564 | 565 | call s:HL('lessVariable', 'lime', '', 'none') 566 | 567 | " }}} 568 | " Lispyscript {{{ 569 | 570 | call s:HL('lispyscriptDefMacro', 'lime', '', '') 571 | call s:HL('lispyscriptRepeat', 'dress', '', 'none') 572 | 573 | " }}} 574 | " REPLs {{{ 575 | " This isn't a specific plugin, but just useful highlight classes for anything 576 | " that might want to use them. 577 | 578 | call s:HL('replPrompt', 'tardis', '', 'bold') 579 | 580 | " }}} 581 | " Mail {{{ 582 | 583 | call s:HL('mailSubject', 'orange', '', 'bold') 584 | call s:HL('mailHeader', 'lightgravel', '', '') 585 | call s:HL('mailHeaderKey', 'lightgravel', '', '') 586 | call s:HL('mailHeaderEmail', 'snow', '', '') 587 | call s:HL('mailURL', 'toffee', '', 'underline') 588 | call s:HL('mailSignature', 'gravel', '', 'none') 589 | 590 | call s:HL('mailQuoted1', 'gravel', '', 'none') 591 | call s:HL('mailQuoted2', 'dress', '', 'none') 592 | call s:HL('mailQuoted3', 'dirtyblonde', '', 'none') 593 | call s:HL('mailQuoted4', 'orange', '', 'none') 594 | call s:HL('mailQuoted5', 'lime', '', 'none') 595 | 596 | " }}} 597 | " Markdown {{{ 598 | 599 | call s:HL('markdownHeadingRule', 'lightgravel', '', 'bold') 600 | call s:HL('markdownHeadingDelimiter', 'lightgravel', '', 'bold') 601 | call s:HL('markdownOrderedListMarker', 'lightgravel', '', 'bold') 602 | call s:HL('markdownListMarker', 'lightgravel', '', 'bold') 603 | call s:HL('markdownItalic', 'snow', '', 'bold') 604 | call s:HL('markdownBold', 'snow', '', 'bold') 605 | call s:HL('markdownH1', 'orange', '', 'bold') 606 | call s:HL('markdownH2', 'lime', '', 'bold') 607 | call s:HL('markdownH3', 'lime', '', 'none') 608 | call s:HL('markdownH4', 'lime', '', 'none') 609 | call s:HL('markdownH5', 'lime', '', 'none') 610 | call s:HL('markdownH6', 'lime', '', 'none') 611 | call s:HL('markdownLinkText', 'toffee', '', 'underline') 612 | call s:HL('markdownIdDeclaration', 'toffee') 613 | call s:HL('markdownAutomaticLink', 'toffee', '', 'bold') 614 | call s:HL('markdownUrl', 'toffee', '', 'bold') 615 | call s:HL('markdownUrldelimiter', 'lightgravel', '', 'bold') 616 | call s:HL('markdownLinkDelimiter', 'lightgravel', '', 'bold') 617 | call s:HL('markdownLinkTextDelimiter', 'lightgravel', '', 'bold') 618 | call s:HL('markdownCodeDelimiter', 'dirtyblonde', '', 'bold') 619 | call s:HL('markdownCode', 'dirtyblonde', '', 'none') 620 | call s:HL('markdownCodeBlock', 'dirtyblonde', '', 'none') 621 | 622 | " }}} 623 | " MySQL {{{ 624 | 625 | call s:HL('mysqlSpecial', 'dress', '', 'bold') 626 | 627 | " }}} 628 | " Python {{{ 629 | 630 | hi def link pythonOperator Operator 631 | call s:HL('pythonBuiltin', 'dress') 632 | call s:HL('pythonBuiltinObj', 'dress') 633 | call s:HL('pythonBuiltinFunc', 'dress') 634 | call s:HL('pythonEscape', 'dress') 635 | call s:HL('pythonException', 'lime', '', 'bold') 636 | call s:HL('pythonExceptions', 'lime', '', 'none') 637 | call s:HL('pythonPrecondit', 'lime', '', 'none') 638 | call s:HL('pythonDecorator', 'taffy', '', 'none') 639 | call s:HL('pythonRun', 'gravel', '', 'bold') 640 | call s:HL('pythonCoding', 'gravel', '', 'bold') 641 | 642 | " }}} 643 | " SLIMV {{{ 644 | 645 | " Rainbow parentheses 646 | call s:HL('hlLevel0', 'gravel') 647 | call s:HL('hlLevel1', 'orange') 648 | call s:HL('hlLevel2', 'saltwatertaffy') 649 | call s:HL('hlLevel3', 'dress') 650 | call s:HL('hlLevel4', 'coffee') 651 | call s:HL('hlLevel5', 'dirtyblonde') 652 | call s:HL('hlLevel6', 'orange') 653 | call s:HL('hlLevel7', 'saltwatertaffy') 654 | call s:HL('hlLevel8', 'dress') 655 | call s:HL('hlLevel9', 'coffee') 656 | 657 | " }}} 658 | " Vim {{{ 659 | 660 | call s:HL('VimCommentTitle', 'lightgravel', '', 'bold') 661 | 662 | call s:HL('VimMapMod', 'dress', '', 'none') 663 | call s:HL('VimMapModKey', 'dress', '', 'none') 664 | call s:HL('VimNotation', 'dress', '', 'none') 665 | call s:HL('VimBracket', 'dress', '', 'none') 666 | 667 | " }}} 668 | 669 | " }}} 670 | 671 | -------------------------------------------------------------------------------- /colors/goodwolf.vim: -------------------------------------------------------------------------------- 1 | " _ _ __ 2 | " | | | |/ _| 3 | " __ _ ___ ___ __| | __ _____ | | |_ 4 | " / _` |/ _ \ / _ \ / _` | \ \ /\ / / _ \| | _| 5 | " | (_| | (_) | (_) | (_| | \ V V / (_) | | | 6 | " \__, |\___/ \___/ \__,_| \_/\_/ \___/|_|_| 7 | " __/ | 8 | " |___/ 9 | " 10 | " :syntax less 11 | " 12 | " A Vim colorscheme pieced together by Steve Losh. 13 | " Available at http://stevelosh.com/projects/badwolf/ 14 | " 15 | " Supporting code ------------------------------------------------------------- 16 | " Preamble {{{ 17 | 18 | if !has("gui_running") && &t_Co != 88 && &t_Co != 256 19 | finish 20 | endif 21 | 22 | set background=dark 23 | 24 | if exists("syntax_on") 25 | syntax reset 26 | endif 27 | 28 | let g:colors_name = "goodwolf" 29 | 30 | if !exists("g:badwolf_html_link_underline") " {{{ 31 | let g:badwolf_html_link_underline = 1 32 | endif " }}} 33 | 34 | " }}} 35 | " Palette {{{ 36 | 37 | let s:bwc = {} 38 | 39 | " The most basic of all our colors is a slightly tweaked version of the Molokai 40 | " Normal text. 41 | let s:bwc.plain = ['f8f6f2', 15] 42 | 43 | " Pure and simple. 44 | let s:bwc.snow = ['ffffff', 15] 45 | let s:bwc.coal = ['000000', 16] 46 | 47 | " All of the Gravel colors are based on a brown from Clouds Midnight. 48 | let s:bwc.brightgravel = ['d9cec3', 252] 49 | let s:bwc.lightgravel = ['998f84', 245] 50 | let s:bwc.gravel = ['857f78', 243] 51 | let s:bwc.mediumgravel = ['666462', 241] 52 | let s:bwc.deepgravel = ['45413b', 238] 53 | let s:bwc.deepergravel = ['35322d', 236] 54 | let s:bwc.darkgravel = ['242321', 235] 55 | let s:bwc.blackgravel = ['1c1b1a', 233] 56 | let s:bwc.blackestgravel = ['141413', 232] 57 | 58 | " A color sampled from a highlight in a photo of a glass of Dale's Pale Ale on 59 | " my desk. 60 | let s:bwc.dalespale = ['fade3e', 221] 61 | 62 | " A beautiful tan from Tomorrow Night. 63 | let s:bwc.dirtyblonde = ['f4cf86', 222] 64 | 65 | " Delicious, chewy red from Made of Code for the poppiest highlights. 66 | let s:bwc.taffy = ['ff2c4b', 196] 67 | 68 | " Another chewy accent, but use sparingly! 69 | let s:bwc.saltwatertaffy = ['8cffba', 121] 70 | 71 | " The star of the show comes straight from Made of Code. 72 | " 73 | " You should almost never use this. It should be used for things that denote 74 | " 'where the user is', which basically consists of: 75 | " 76 | " * The cursor 77 | " * A REPL prompt 78 | let s:bwc.tardis = ['0a9dff', 39] 79 | 80 | " This one's from Mustang, not Florida! 81 | let s:bwc.orange = ['ffa724', 214] 82 | 83 | " A limier green from Getafe. 84 | let s:bwc.lime = ['aeee00', 154] 85 | 86 | " Rose's dress in The Idiot's Lantern. 87 | let s:bwc.dress = ['ff9eb8', 211] 88 | 89 | " Another play on the brown from Clouds Midnight. I love that color. 90 | let s:bwc.toffee = ['b88853', 137] 91 | 92 | " Also based on that Clouds Midnight brown. 93 | let s:bwc.coffee = ['c7915b', 173] 94 | let s:bwc.darkroast = ['88633f', 95] 95 | 96 | " }}} 97 | " Highlighting Function {{{ 98 | function! GoodWolfHL(group, fg, ...) 99 | " Arguments: group, guifg, guibg, gui, guisp 100 | 101 | let histring = 'hi ' . a:group . ' ' 102 | 103 | if strlen(a:fg) 104 | if a:fg == 'fg' 105 | let histring .= 'guifg=fg ctermfg=fg ' 106 | else 107 | let c = get(s:bwc, a:fg) 108 | let histring .= 'guifg=#' . c[0] . ' ctermfg=' . c[1] . ' ' 109 | endif 110 | endif 111 | 112 | if a:0 >= 1 && strlen(a:1) 113 | if a:1 == 'bg' 114 | let histring .= 'guibg=bg ctermbg=bg ' 115 | else 116 | let c = get(s:bwc, a:1) 117 | let histring .= 'guibg=#' . c[0] . ' ctermbg=' . c[1] . ' ' 118 | endif 119 | endif 120 | 121 | if a:0 >= 2 && strlen(a:2) 122 | let histring .= 'gui=' . a:2 . ' cterm=' . a:2 . ' ' 123 | endif 124 | 125 | if a:0 >= 3 && strlen(a:3) 126 | let c = get(s:bwc, a:3) 127 | let histring .= 'guisp=#' . c[0] . ' ' 128 | endif 129 | 130 | execute histring 131 | endfunction 132 | 133 | " }}} 134 | " Configuration Options {{{ 135 | 136 | if exists('g:badwolf_darkgutter') && g:badwolf_darkgutter 137 | let s:gutter = 'blackestgravel' 138 | else 139 | let s:gutter = 'blackgravel' 140 | endif 141 | 142 | if exists('g:badwolf_tabline') 143 | if g:badwolf_tabline == 0 144 | let s:tabline = 'blackestgravel' 145 | elseif g:badwolf_tabline == 1 146 | let s:tabline = 'blackgravel' 147 | elseif g:badwolf_tabline == 2 148 | let s:tabline = 'darkgravel' 149 | elseif g:badwolf_tabline == 3 150 | let s:tabline = 'deepgravel' 151 | else 152 | let s:tabline = 'blackestgravel' 153 | endif 154 | else 155 | let s:tabline = 'blackgravel' 156 | endif 157 | 158 | " }}} 159 | 160 | " Actual colorscheme ---------------------------------------------------------- 161 | " Vanilla Vim {{{ 162 | 163 | " General/UI {{{ 164 | 165 | " call GoodWolfHL('Normal', 'plain', 'blackgravel') 166 | call GoodWolfHL('Normal', 'plain', 'blackestgravel') 167 | 168 | call GoodWolfHL('Folded', 'mediumgravel', 'bg', 'none') 169 | 170 | call GoodWolfHL('VertSplit', 'lightgravel', 'bg', 'none') 171 | 172 | call GoodWolfHL('CursorLine', '', 'darkgravel', 'none') 173 | call GoodWolfHL('CursorColumn', '', 'darkgravel') 174 | call GoodWolfHL('ColorColumn', '', 'darkgravel') 175 | 176 | call GoodWolfHL('TabLine', 'plain', s:tabline, 'none') 177 | call GoodWolfHL('TabLineFill', 'plain', s:tabline, 'none') 178 | call GoodWolfHL('TabLineSel', 'coal', 'tardis', 'none') 179 | 180 | call GoodWolfHL('MatchParen', 'dalespale', 'darkgravel', 'bold') 181 | 182 | call GoodWolfHL('NonText', 'deepgravel', 'bg') 183 | call GoodWolfHL('SpecialKey', 'deepgravel', 'bg') 184 | 185 | call GoodWolfHL('Visual', '', 'deepgravel') 186 | call GoodWolfHL('VisualNOS', '', 'deepgravel') 187 | 188 | call GoodWolfHL('Search', 'coal', 'dalespale', 'bold') 189 | call GoodWolfHL('IncSearch', 'coal', 'tardis', 'bold') 190 | 191 | call GoodWolfHL('Underlined', 'fg', '', 'underline') 192 | 193 | call GoodWolfHL('StatusLine', 'coal', 'tardis', 'bold') 194 | call GoodWolfHL('StatusLineNC', 'snow', 'deepgravel', 'none') 195 | 196 | call GoodWolfHL('Directory', 'dirtyblonde', '', 'bold') 197 | 198 | call GoodWolfHL('Title', 'lime') 199 | 200 | call GoodWolfHL('ErrorMsg', 'taffy', 'bg', 'bold') 201 | call GoodWolfHL('MoreMsg', 'dalespale', '', 'bold') 202 | call GoodWolfHL('ModeMsg', 'dirtyblonde', '', 'bold') 203 | call GoodWolfHL('Question', 'dirtyblonde', '', 'bold') 204 | call GoodWolfHL('WarningMsg', 'dress', '', 'bold') 205 | 206 | " This is a ctags tag, not an HTML one. 'Something you can use c-] on'. 207 | call GoodWolfHL('Tag', '', '', 'bold') 208 | 209 | " }}} 210 | " Gutter {{{ 211 | 212 | call GoodWolfHL('LineNr', 'mediumgravel', s:gutter) 213 | call GoodWolfHL('SignColumn', '', s:gutter) 214 | call GoodWolfHL('FoldColumn', 'mediumgravel', s:gutter) 215 | 216 | " }}} 217 | " Cursor {{{ 218 | 219 | call GoodWolfHL('Cursor', 'coal', 'tardis', 'bold') 220 | call GoodWolfHL('vCursor', 'coal', 'tardis', 'bold') 221 | call GoodWolfHL('iCursor', 'coal', 'tardis', 'none') 222 | 223 | " }}} 224 | " Syntax highlighting {{{ 225 | 226 | " Start with a simple base. 227 | call GoodWolfHL('Special', 'plain') 228 | 229 | " Comments are slightly brighter than folds, to make 'headers' easier to see. 230 | call GoodWolfHL('Comment', 'gravel', 'bg', 'none') 231 | call GoodWolfHL('Todo', 'snow', 'bg', 'bold') 232 | call GoodWolfHL('SpecialComment', 'snow', 'bg', 'bold') 233 | 234 | " Strings are highlighted separately. 235 | call GoodWolfHL('String', 'lightgravel', '', 'bold') 236 | 237 | " Turn off everything else 238 | call GoodWolfHL('Statement', 'plain', '', 'none') 239 | call GoodWolfHL('Keyword', 'plain', '', 'none') 240 | call GoodWolfHL('Conditional', 'plain', '', 'none') 241 | call GoodWolfHL('Operator', 'plain', '', 'none') 242 | call GoodWolfHL('Label', 'plain', '', 'none') 243 | call GoodWolfHL('Repeat', 'plain', '', 'none') 244 | call GoodWolfHL('Identifier', 'plain', '', 'none') 245 | call GoodWolfHL('Function', 'plain', '', 'none') 246 | call GoodWolfHL('PreProc', 'plain', '', 'none') 247 | call GoodWolfHL('Macro', 'plain', '', 'none') 248 | call GoodWolfHL('Define', 'plain', '', 'none') 249 | call GoodWolfHL('PreCondit', 'plain', '', 'none') 250 | call GoodWolfHL('Constant', 'plain', '', 'none') 251 | call GoodWolfHL('Character', 'plain', '', 'none') 252 | call GoodWolfHL('Boolean', 'plain', '', 'none') 253 | call GoodWolfHL('Number', 'plain', '', 'none') 254 | call GoodWolfHL('Float', 'plain', '', 'none') 255 | call GoodWolfHL('Type', 'plain', '', 'none') 256 | call GoodWolfHL('StorageClass', 'plain', '', 'none') 257 | call GoodWolfHL('Structure', 'plain', '', 'none') 258 | call GoodWolfHL('Typedef', 'plain', '', 'none') 259 | call GoodWolfHL('Exception', 'plain', '', 'none') 260 | 261 | " Not sure what 'special character in a constant' means, but let's make it pop. 262 | call GoodWolfHL('SpecialChar', 'plain', '', 'bold') 263 | 264 | " Misc 265 | call GoodWolfHL('Error', 'snow', 'taffy', 'bold') 266 | call GoodWolfHL('Debug', 'snow', '', 'bold') 267 | call GoodWolfHL('Ignore', 'gravel', '', '') 268 | 269 | let g:goodwolf_string_style = 'bold' 270 | 271 | function GoodWolfToggleBoldStrings() 272 | if g:goodwolf_string_style == 'bold' 273 | let g:goodwolf_string_style = 'none' 274 | else 275 | let g:goodwolf_string_style = 'bold' 276 | endif 277 | 278 | call GoodWolfHL('String', 'lightgravel', '', g:goodwolf_string_style) 279 | endfunction 280 | 281 | " }}} 282 | " Completion Menu {{{ 283 | 284 | call GoodWolfHL('Pmenu', 'plain', 'deepergravel') 285 | call GoodWolfHL('PmenuSel', 'coal', 'tardis', 'bold') 286 | call GoodWolfHL('PmenuSbar', '', 'deepergravel') 287 | call GoodWolfHL('PmenuThumb', 'brightgravel') 288 | 289 | " }}} 290 | " Diffs {{{ 291 | 292 | call GoodWolfHL('DiffDelete', 'coal', 'coal') 293 | call GoodWolfHL('DiffAdd', '', 'deepergravel') 294 | call GoodWolfHL('DiffChange', '', 'darkgravel') 295 | call GoodWolfHL('DiffText', 'snow', 'deepergravel', 'bold') 296 | 297 | " }}} 298 | " Spelling {{{ 299 | 300 | if has("spell") 301 | call GoodWolfHL('SpellCap', 'dalespale', 'bg', 'undercurl,bold', 'dalespale') 302 | call GoodWolfHL('SpellBad', '', 'bg', 'undercurl', 'dalespale') 303 | call GoodWolfHL('SpellLocal', '', '', 'undercurl', 'dalespale') 304 | call GoodWolfHL('SpellRare', '', '', 'undercurl', 'dalespale') 305 | endif 306 | 307 | " }}} 308 | " Status Line Utils {{{ 309 | 310 | call GoodWolfHL('GWStatusLineMode', 'coal', 'lime') 311 | call GoodWolfHL('GWStatusLineModeX', 'lime', 'deepergravel') 312 | 313 | 314 | " }}} 315 | 316 | " }}} 317 | " Plugins {{{ 318 | 319 | " Clam {{{ 320 | 321 | " hg status 322 | call GoodWolfHL('clamHgStatusAdded', 'lime', '', 'none') 323 | call GoodWolfHL('clamHgStatusModified', 'saltwatertaffy', '', 'none') 324 | call GoodWolfHL('clamHgStatusRemoved', 'toffee', '', 'none') 325 | call GoodWolfHL('clamHgStatusUnknown', 'taffy', '', 'bold') 326 | 327 | " }}} 328 | " CtrlP {{{ 329 | 330 | " the message when no match is found 331 | call GoodWolfHL('CtrlPNoEntries', 'snow', 'taffy', 'bold') 332 | 333 | " the matched pattern 334 | call GoodWolfHL('CtrlPMatch', 'dress', 'bg', 'bold') 335 | 336 | " the line prefix '>' in the match window 337 | call GoodWolfHL('CtrlPLinePre', 'deepgravel', 'bg', 'none') 338 | 339 | " the prompt’s base 340 | call GoodWolfHL('CtrlPPrtBase', 'deepgravel', 'bg', 'none') 341 | 342 | " the prompt’s text 343 | call GoodWolfHL('CtrlPPrtText', 'plain', 'bg', 'none') 344 | 345 | " the prompt’s cursor when moving over the text 346 | call GoodWolfHL('CtrlPPrtCursor', 'coal', 'tardis', 'bold') 347 | 348 | " 'prt' or 'win', also for 'regex' 349 | call GoodWolfHL('CtrlPMode1', 'coal', 'tardis', 'bold') 350 | 351 | " 'file' or 'path', also for the local working dir 352 | call GoodWolfHL('CtrlPMode2', 'coal', 'tardis', 'bold') 353 | 354 | " the scanning status 355 | call GoodWolfHL('CtrlPStats', 'coal', 'tardis', 'bold') 356 | 357 | " }}} 358 | " Interesting Words {{{ 359 | 360 | " These are only used if you're me or have copied the hNUM mappings 361 | " from my Vimrc. 362 | call GoodWolfHL('InterestingWord1', 'coal', 'orange') 363 | call GoodWolfHL('InterestingWord2', 'coal', 'lime') 364 | call GoodWolfHL('InterestingWord3', 'coal', 'saltwatertaffy') 365 | call GoodWolfHL('InterestingWord4', 'coal', 'toffee') 366 | call GoodWolfHL('InterestingWord5', 'coal', 'dress') 367 | call GoodWolfHL('InterestingWord6', 'coal', 'taffy') 368 | 369 | " }}} 370 | " Rainbow Parentheses {{{ 371 | 372 | call GoodWolfHL('level1c', 'mediumgravel', '', 'bold') 373 | 374 | " }}} 375 | " Fugitive {{{ 376 | 377 | call GoodWolfHL('fugitiveHeading', 'dress', 'bg', 'bold') 378 | call GoodWolfHL('fugitiveHeader', 'dress', 'bg', 'bold') 379 | call GoodWolfHL('fugitiveCount', 'plain', 'bg', 'bold') 380 | call GoodWolfHL('fugitiveSymbolicRef', 'dirtyblonde', 'bg', 'none') 381 | call GoodWolfHL('fugitiveModifier', 'dirtyblonde', 'bg', 'bold') 382 | 383 | " }}} 384 | 385 | " }}} 386 | " Filetype-specific {{{ 387 | 388 | " Clojure {{{ 389 | 390 | call GoodWolfHL('clojureParen0', 'lightgravel', '', 'none') 391 | call GoodWolfHL('clojureAnonArg', 'snow', '', 'bold') 392 | 393 | " }}} 394 | " CSS {{{ 395 | 396 | call GoodWolfHL('cssBraces', 'lightgravel', '', 'none') 397 | 398 | " }}} 399 | " Diff {{{ 400 | 401 | call GoodWolfHL('gitDiff', 'lightgravel', '',) 402 | 403 | call GoodWolfHL('diffRemoved', 'dress', '',) 404 | call GoodWolfHL('diffAdded', 'lime', '',) 405 | call GoodWolfHL('diffFile', 'coal', 'toffee', 'bold') 406 | call GoodWolfHL('diffNewFile', 'coal', 'toffee', 'bold') 407 | 408 | call GoodWolfHL('diffLine', 'coal', 'orange', 'bold') 409 | call GoodWolfHL('diffSubname', 'orange', '', 'none') 410 | 411 | " }}} 412 | " Fish {{{ 413 | 414 | call GoodWolfHL('fishOperator', 'fg', 'bg', 'none') 415 | call GoodWolfHL('fishDerefIdentifier', 'dress', 'bg', 'bold') 416 | 417 | " }}} 418 | " HTML {{{ 419 | 420 | " Punctuation 421 | call GoodWolfHL('htmlTag', 'darkroast', 'bg', 'none') 422 | call GoodWolfHL('htmlEndTag', 'darkroast', 'bg', 'none') 423 | 424 | " Tag names 425 | call GoodWolfHL('htmlTagName', 'coffee', '', 'bold') 426 | call GoodWolfHL('htmlSpecialTagName', 'coffee', '', 'bold') 427 | call GoodWolfHL('htmlSpecialChar', 'lime', '', 'none') 428 | 429 | " Attributes 430 | call GoodWolfHL('htmlArg', 'coffee', '', 'none') 431 | 432 | " Stuff inside an tag 433 | 434 | if g:badwolf_html_link_underline 435 | call GoodWolfHL('htmlLink', 'lightgravel', '', 'underline') 436 | else 437 | call GoodWolfHL('htmlLink', 'lightgravel', '', 'none') 438 | endif 439 | 440 | " }}} 441 | " HTML/Django {{{ 442 | 443 | call GoodWolfHL('djangoTagBlock', 'coffee', 'bg', 'bold') 444 | call GoodWolfHL('djangoStatement', 'orange', 'bg', 'none') 445 | call GoodWolfHL('djangoArgument', 'dress', 'bg', 'none') 446 | call GoodWolfHL('djangoVarBlock', 'lime', 'bg', 'none') 447 | 448 | " }}} 449 | " HTML/TEN {{{ 450 | 451 | call GoodWolfHL('tenTagBlock', 'orange', 'bg', 'bold') 452 | call GoodWolfHL('tenArgument', 'lime', 'bg', 'none') 453 | call GoodWolfHL('tenVarBlock', 'dress', 'bg', 'none') 454 | 455 | " }}} 456 | " Java {{{ 457 | 458 | call GoodWolfHL('javaCommentTitle', 'gravel', '') 459 | call GoodWolfHL('javaDocTags', 'snow', '', 'none') 460 | call GoodWolfHL('javaDocParam', 'plain', '', '') 461 | 462 | " }}} 463 | " Jinja {{{ 464 | 465 | call GoodWolfHL('jinjaVarBlock', 'dirtyblonde', '', 'bold') 466 | call GoodWolfHL('jinjaVariable', 'dirtyblonde', '', 'bold') 467 | call GoodWolfHL('jinjaTagBlock', 'toffee', '', 'bold') 468 | call GoodWolfHL('jinjaStatement', 'toffee', '', 'bold') 469 | call GoodWolfHL('jinjaOperator', 'snow', '', 'none') 470 | call GoodWolfHL('jinjaFilter', 'dress', '', 'none') 471 | call GoodWolfHL('jinjaString', 'coffee', '', 'bold') 472 | 473 | " }}} 474 | " LaTeX {{{ 475 | 476 | call GoodWolfHL('texStatement', 'dress', '', 'none') 477 | call GoodWolfHL('texDocType', 'dress', '', 'none') 478 | call GoodWolfHL('texSection', 'dress', '', 'none') 479 | call GoodWolfHL('texBeginEnd', 'dress', '', 'none') 480 | 481 | call GoodWolfHL('texCmd', 'dress', '', 'none') 482 | call GoodWolfHL('texCmdEnv', 'taffy', '', 'bold') 483 | call GoodWolfHL('texCmdItem', 'dirtyblonde', '', 'none') 484 | call GoodWolfHL('texPartArgTitle', 'plain', '', 'none') 485 | call GoodWolfHL('texLstZone', 'toffee', '', 'none') 486 | 487 | call GoodWolfHL('texMathZoneA', 'dirtyblonde', '', 'none') 488 | call GoodWolfHL('texMathZoneB', 'dirtyblonde', '', 'none') 489 | call GoodWolfHL('texMathZoneC', 'dirtyblonde', '', 'none') 490 | call GoodWolfHL('texMathZoneD', 'dirtyblonde', '', 'none') 491 | call GoodWolfHL('texMathZoneE', 'dirtyblonde', '', 'none') 492 | call GoodWolfHL('texMathZoneV', 'dirtyblonde', '', 'none') 493 | call GoodWolfHL('texMathZoneX', 'dirtyblonde', '', 'none') 494 | call GoodWolfHL('texMath', 'orange', '', 'none') 495 | call GoodWolfHL('texMathMatcher', 'orange', '', 'none') 496 | call GoodWolfHL('texRefLabel', 'dirtyblonde', '', 'none') 497 | call GoodWolfHL('texRefZone', 'lime', '', 'none') 498 | call GoodWolfHL('texDelimiter', 'orange', '', 'none') 499 | call GoodWolfHL('texZone', 'brightgravel', '', 'none') 500 | call GoodWolfHL('texTabularChar', 'lime', '', 'none') 501 | 502 | augroup badwolf_tex 503 | au! 504 | 505 | au BufRead,BufNewFile *.tex syn region texMathZoneV start="\\(" end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup 506 | au BufRead,BufNewFile *.tex syn region texMathZoneX start="\$" skip="\\\\\|\\\$" end="\$\|%stopzone\>" keepend contains=@texMathZoneGroup 507 | augroup END 508 | 509 | " }}} 510 | " REPLs {{{ 511 | " This isn't a specific plugin, but just useful highlight classes for anything 512 | " that might want to use them. 513 | 514 | call GoodWolfHL('replPrompt', 'tardis', '', 'bold') 515 | 516 | " }}} 517 | " Mail {{{ 518 | 519 | call GoodWolfHL('mailSubject', 'orange', '', 'bold') 520 | call GoodWolfHL('mailHeader', 'lightgravel', '', '') 521 | call GoodWolfHL('mailHeaderKey', 'lightgravel', '', '') 522 | call GoodWolfHL('mailHeaderEmail', 'snow', '', '') 523 | call GoodWolfHL('mailURL', 'toffee', '', 'underline') 524 | call GoodWolfHL('mailSignature', 'gravel', '', 'none') 525 | 526 | call GoodWolfHL('mailQuoted1', 'gravel', '', 'none') 527 | call GoodWolfHL('mailQuoted2', 'dress', '', 'none') 528 | call GoodWolfHL('mailQuoted3', 'dirtyblonde', '', 'none') 529 | call GoodWolfHL('mailQuoted4', 'orange', '', 'none') 530 | call GoodWolfHL('mailQuoted5', 'lime', '', 'none') 531 | 532 | " }}} 533 | " Markdown {{{ 534 | 535 | call GoodWolfHL('markdownHeadingRule', 'lightgravel', '', 'bold') 536 | call GoodWolfHL('markdownHeadingDelimiter', 'lightgravel', '', 'bold') 537 | call GoodWolfHL('markdownOrderedListMarker', 'lightgravel', '', 'bold') 538 | call GoodWolfHL('markdownListMarker', 'lightgravel', '', 'bold') 539 | call GoodWolfHL('markdownItalic', 'snow', '', 'bold') 540 | call GoodWolfHL('markdownBold', 'snow', '', 'bold') 541 | call GoodWolfHL('markdownH1', 'orange', '', 'bold') 542 | call GoodWolfHL('markdownH2', 'lime', '', 'bold') 543 | call GoodWolfHL('markdownH3', 'lime', '', 'none') 544 | call GoodWolfHL('markdownH4', 'lime', '', 'none') 545 | call GoodWolfHL('markdownH5', 'lime', '', 'none') 546 | call GoodWolfHL('markdownH6', 'lime', '', 'none') 547 | call GoodWolfHL('markdownLinkText', 'toffee', '', 'underline') 548 | call GoodWolfHL('markdownIdDeclaration', 'toffee') 549 | call GoodWolfHL('markdownAutomaticLink', 'toffee', '', 'bold') 550 | call GoodWolfHL('markdownUrl', 'toffee', '', 'bold') 551 | call GoodWolfHL('markdownUrldelimiter', 'lightgravel', '', 'bold') 552 | call GoodWolfHL('markdownLinkDelimiter', 'lightgravel', '', 'bold') 553 | call GoodWolfHL('markdownLinkTextDelimiter', 'lightgravel', '', 'bold') 554 | call GoodWolfHL('markdownCodeDelimiter', 'dirtyblonde', '', 'bold') 555 | call GoodWolfHL('markdownCode', 'dirtyblonde', '', 'none') 556 | call GoodWolfHL('markdownCodeBlock', 'dirtyblonde', '', 'none') 557 | 558 | " }}} 559 | " Python {{{ 560 | 561 | hi def link pythonOperator Operator 562 | call GoodWolfHL('pythonBuiltin', 'plain') 563 | call GoodWolfHL('pythonBuiltinObj', 'plain') 564 | call GoodWolfHL('pythonBuiltinFunc', 'plain') 565 | call GoodWolfHL('pythonEscape', 'plain') 566 | call GoodWolfHL('pythonException', 'plain', '', 'none') 567 | call GoodWolfHL('pythonExceptions', 'plain', '', 'none') 568 | call GoodWolfHL('pythonPrecondit', 'plain', '', 'none') 569 | call GoodWolfHL('pythonDecorator', 'plain', '', 'none') 570 | call GoodWolfHL('pythonRun', 'plain', '', 'none') 571 | call GoodWolfHL('pythonCoding', 'plain', '', 'bold') 572 | 573 | " }}} 574 | " Scala {{{ 575 | 576 | call GoodWolfHL('scalaParameterAnnotation', 'gravel', '', 'bold') 577 | call GoodWolfHL('scalaParamAnnotationValue', 'gravel', '', 'bold') 578 | call GoodWolfHL('scalaCommentAnnotation', 'gravel', '', 'bold') 579 | call GoodWolfHL('scalaDocLinks', 'gravel', '', 'bold') 580 | 581 | " }}} 582 | " Singularity {{{ 583 | 584 | call GoodWolfHL('singularitySectionLine', 'taffy', '', 'bold') 585 | call GoodWolfHL('singularitySection', 'taffy', '', 'bold') 586 | call GoodWolfHL('singularityKeyword', 'dress', '', '') 587 | 588 | " }}} 589 | " Vim {{{ 590 | 591 | call GoodWolfHL('helpHyperTextJump', 'dress', '', 'none') 592 | 593 | " }}} 594 | 595 | " }}} 596 | 597 | 598 | -------------------------------------------------------------------------------- /contrib/badwolf-theme.el: -------------------------------------------------------------------------------- 1 | (deftheme badwolf "Badwolf color Theme") 2 | 3 | (let ((class '((class color) (min-colors 89))) 4 | ;;Badwolf pallete 5 | (bwc-plain "#f8f6f2") 6 | (bwc-snow "#ffffff") 7 | (bwc-coal "#000000") 8 | 9 | (bwc-brightgravel "#d9cec3") 10 | (bwc-lightgravel "#998f84") 11 | (bwc-gravel "#857f78") 12 | (bwc-mediumgravel "#666462") 13 | (bwc-deepgravel "#45413b") 14 | (bwc-deepergravel "#35322d") 15 | (bwc-darkgravel "#242321") 16 | (bwc-blackgravel "#1c1b1a") 17 | (bwc-blackestgravel "#141413") 18 | 19 | (bwc-dalespale "#fade3e") 20 | (bwc-dirtyblonde "#f4cf86") 21 | ; (bwc-taffy "#ff2c4b") 22 | (bwc-taffy "#ff0208") 23 | (bwc-saltwatertaffy "#8cffba") 24 | (bwc-tardis "#0a9dff") 25 | (bwc-orange "#ffa724") 26 | (bwc-lime "#aeee00") 27 | (bwc-dress "#ff9eb8") 28 | (bwc-toffee "#b88853") 29 | (bwc-coffee "#c7915b") 30 | (bwc-darkroast "#88633f") 31 | ) 32 | 33 | ;; theme faces 34 | (custom-theme-set-faces 35 | 'badwolf 36 | `(default ((t (:inherit nil :foreground ,bwc-plain :background ,bwc-blackestgravel)))) 37 | `(cursor ((t (:background ,bwc-tardis)))) 38 | `(region ((t (:foreground nil :background ,bwc-mediumgravel )))) 39 | `(fringe ((t (:background ,bwc-blackestgravel)))) 40 | 41 | `(minibuffer-prompt ((t (:foreground ,bwc-lime)))) 42 | `(link ((t (:foreground ,bwc-lightgravel :underline t)))) 43 | `(link-visited ((t (:inherit link :foreground ,bwc-orange)))) 44 | 45 | `(highlight ((t (:foreground ,bwc-coal :background ,bwc-dalespale)))) 46 | `(hl-line ((t (:inherit nil :background ,bwc-darkgravel)))) 47 | 48 | `(linum ((t (:foreground ,bwc-mediumgravel)))) 49 | 50 | `(isearch ((t (:foreground ,bwc-coal :background ,bwc-dalespale :weight bold)))) 51 | `(lazy-highlight ((t (:foreground ,bwc-coal :background, bwc-dalespale :weight bold)))) 52 | 53 | `(mode-line ((t (:box (:line-width -1 :style released-button) :foreground ,bwc-brightgravel :background ,bwc-darkgravel)))) 54 | `(mode-line-inactive ((t (:box (:line-width -1 :style released-button) :foreground ,bwc-snow :background ,bwc-deepgravel)))) 55 | 56 | 57 | `(font-lock-comment-face ((t (:foreground ,bwc-lightgravel)))) 58 | `(font-lock-comment-delimiter-face ((t (:foreground ,bwc-lightgravel)))) 59 | `(font-lock-doc-face ((t (:foreground ,bwc-snow)))) 60 | `(font-lock-string-face ((t (:foreground ,bwc-dirtyblonde)))) 61 | `(font-lock-function-name-face ((t (:foreground ,bwc-orange)))) 62 | `(font-lock-variable-name-face ((t (:foreground ,bwc-dress)))) 63 | `(font-lock-builtin-face ((t (:foreground ,bwc-taffy :weight bold)))) 64 | `(font-lock-keyword-face ((t (:foreground ,bwc-taffy :weight bold)))) 65 | `(font-lock-type-face ((t (:foreground ,bwc-dress)))) 66 | `(font-lock-constant-face ((t (:foreground ,bwc-orange)))) 67 | `(font-lock-warning-face ((t (:foreground ,bwc-dress :weight bold)))) 68 | 69 | `(show-paren-match ((t (:background ,bwc-tardis :weight bold)))) 70 | `(show-paren-mismatch ((t (:background ,bwc-taffy :weight bold)))) 71 | 72 | ;; rainbow-delimiters 73 | `(rainbow-delimiters-depth-1-face ((t (:foreground ,bwc-lightgravel)))) 74 | `(rainbow-delimiters-depth-2-face ((t (:foreground ,bwc-orange)))) 75 | `(rainbow-delimiters-depth-3-face ((t (:foreground ,bwc-saltwatertaffy)))) 76 | `(rainbow-delimiters-depth-4-face ((t (:foreground ,bwc-dress)))) 77 | `(rainbow-delimiters-depth-5-face ((t (:foreground ,bwc-coffee)))) 78 | `(rainbow-delimiters-depth-6-face ((t (:foreground ,bwc-dirtyblonde)))) 79 | `(rainbow-delimiters-depth-7-face ((t (:foreground ,bwc-orange)))) 80 | `(rainbow-delimiters-depth-8-face ((t (:foreground ,bwc-saltwatertaffy))) 81 | `(rainbow-delimiters-depth-9-face ((t (:foreground ,bwc-dress)))) 82 | `(rainbow-delimiters-depth-10-face ((t (:foreground ,bwc-coffee)))) 83 | `(rainbow-delimiters-depth-11-face ((t (:foreground ,bwc-dirtyblonde)))) 84 | `(rainbow-delimiters-unmatched-face ((t (:foreground "red")))) 85 | 86 | 87 | 88 | 89 | )) 90 | 91 | (custom-set-faces 92 | `(ein:cell-input-area ((t (:background ,bwc-blackestgravel :inherit nil)))) 93 | `(ein:cell-input-prompt ((t (:foreground ,bwc-orange :background nil :inherit nil)))) 94 | `(ein:cell-output-prompt ((t (:foreground ,bwc-taffy :background nil :inherit nil)))) 95 | '(mumamo-background-chunk-major ((((class color) (min-colors 88) (background dark)) nil))) 96 | 97 | `(ac-candidate-face ((t (:background ,bwc-lightgravel)))) 98 | `(ac-selection-face ((t (:foreground ,bwc-coal :background ,bwc-orange)))) 99 | 100 | `(flymake-errline ((t (:background nil :underline ,bwc-taffy )))) 101 | `(flymake-warnline ((t (:background nil :underline ,bwc-dress )))) 102 | ) 103 | 104 | 105 | (font-lock-add-keywords 'python-mode `(("\\<\\(import\\||from\\|except\\|finally\\|try\\|from\\|\\)\\>" 1 '(:foreground ,bwc-lime ) t))) 106 | ) 107 | 108 | (provide-theme 'badwolf) 109 | -------------------------------------------------------------------------------- /contrib/badwolf.dircolors: -------------------------------------------------------------------------------- 1 | # ____ _ _ __ 2 | # | __ ) __ _ __| |_ _____ | |/ _| 3 | # | _ \ / _` |/ _` \ \ /\ / / _ \| | |_ 4 | # | |_) | (_| | (_| |\ V V / (_) | | _| 5 | # |____/ \__,_|\__,_| \_/\_/ \___/|_|_| 6 | # _ _ _ 7 | # __| (_)_ __ ___ ___ | | ___ _ __ ___ 8 | # / _` | | '__/ __/ _ \| |/ _ \| '__/ __| 9 | # | (_| | | | | (_| (_) | | (_) | | \__ \ 10 | # \__,_|_|_| \___\___/|_|\___/|_| |___/ 11 | # 12 | # 13 | # Author: Jon Bernard 14 | # 15 | 16 | # Below, there should be one TERM entry for each termtype that is colorizable 17 | TERM Eterm 18 | TERM ansi 19 | TERM color-xterm 20 | TERM con132x25 21 | TERM con132x30 22 | TERM con132x43 23 | TERM con132x60 24 | TERM con80x25 25 | TERM con80x28 26 | TERM con80x30 27 | TERM con80x43 28 | TERM con80x50 29 | TERM con80x60 30 | TERM cons25 31 | TERM console 32 | TERM cygwin 33 | TERM dtterm 34 | TERM eterm-color 35 | TERM gnome 36 | TERM gnome-256color 37 | TERM jfbterm 38 | TERM konsole 39 | TERM kterm 40 | TERM linux 41 | TERM linux-c 42 | TERM mach-color 43 | TERM mlterm 44 | TERM putty 45 | TERM rxvt 46 | TERM rxvt-256color 47 | TERM rxvt-cygwin 48 | TERM rxvt-cygwin-native 49 | TERM rxvt-unicode 50 | TERM rxvt-unicode-256color 51 | TERM rxvt-unicode256 52 | TERM screen 53 | TERM screen-256color 54 | TERM screen-256color-bce 55 | TERM screen-bce 56 | TERM screen-w 57 | TERM screen.Eterm 58 | TERM screen.rxvt 59 | TERM screen.linux 60 | TERM st-256color 61 | TERM terminator 62 | TERM vt100 63 | TERM xterm 64 | TERM xterm-16color 65 | TERM xterm-256color 66 | TERM xterm-88color 67 | TERM xterm-color 68 | TERM xterm-debian 69 | TERM xterm-termite 70 | 71 | # Below are the color init strings for the basic file types. A color init string 72 | # consists of one or more of the following numeric codes: 73 | # 74 | # Attribute codes: 75 | # 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed 76 | # 77 | # Text color codes: 78 | # 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white 79 | # 80 | # Background color codes: 81 | # 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white 82 | 83 | NORMAL 0;38;5;15 # no color code at all 84 | #FILE 00 # regular file: use no color at all 85 | RESET 0 # reset to "normal" color 86 | DIR 1;38;5;39 # directory 87 | LINK 01;38;5;14 # symbolic link. (If you set this to 'target' instead of a 88 | # numerical value, the color is as for the file pointed to.) 89 | MULTIHARDLINK 00 # regular file with more than one link 90 | FIFO 40;33 # pipe 91 | SOCK 1;38;5;211 # socket 92 | DOOR 01;35 # door 93 | BLK 40;33;01 # block device driver 94 | CHR 40;33;01 # character device driver 95 | ORPHAN 40;31;01 # symlink to nonexistent file, or non-stat'able file 96 | SETUID 37;41 # file that is setuid (u+s) 97 | SETGID 30;43 # file that is setgid (g+s) 98 | CAPABILITY 30;41 # file with capability 99 | STICKY_OTHER_WRITABLE 30;42 # dir that is sticky and other-writable (+t,o+w) 100 | OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky 101 | STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable 102 | 103 | # This is for files with execute permission: 104 | EXEC 1;38;5;154 105 | 106 | # List any file extensions like '.gz' or '.tar' that you would like ls 107 | # to colorize below. Put the extension, a space, and the color init string. 108 | # (and any comments you want to add after a '#') 109 | # If you use DOS-style suffixes, you may want to uncomment the following: 110 | #.cmd 01;32 # executables (bright green) 111 | #.exe 01;32 112 | #.com 01;32 113 | #.btm 01;32 114 | #.bat 01;32 115 | # Or if you want to colorize scripts even if they do not have the 116 | # executable bit actually set. 117 | #.sh 01;32 118 | #.csh 01;32 119 | 120 | # archives or compressed (bright red) 121 | .tar 01;38;5;196 122 | .tgz 01;38;5;196 123 | .arj 01;38;5;196 124 | .taz 01;38;5;196 125 | .lzh 01;38;5;196 126 | .lzma 01;38;5;196 127 | .tlz 01;38;5;196 128 | .txz 01;38;5;196 129 | .zip 01;38;5;196 130 | .z 01;38;5;196 131 | .Z 01;38;5;196 132 | .dz 01;38;5;196 133 | .gz 01;38;5;196 134 | .lz 01;38;5;196 135 | .xz 01;38;5;196 136 | .bz2 01;38;5;196 137 | .bz 01;38;5;196 138 | .tbz 01;38;5;196 139 | .tbz2 01;38;5;196 140 | .tz 01;38;5;196 141 | .deb 01;38;5;196 142 | .rpm 01;38;5;196 143 | .jar 01;38;5;196 144 | .war 01;38;5;196 145 | .ear 01;38;5;196 146 | .sar 01;38;5;196 147 | .rar 01;38;5;196 148 | .ace 01;38;5;196 149 | .zoo 01;38;5;196 150 | .cpio 01;38;5;196 151 | .7z 01;38;5;196 152 | .rz 01;38;5;196 153 | 154 | # image formats 155 | .jpg 01;38;5;211 156 | .jpeg 01;38;5;211 157 | .gif 01;38;5;211 158 | .bmp 01;38;5;211 159 | .pbm 01;38;5;211 160 | .pgm 01;38;5;211 161 | .ppm 01;38;5;211 162 | .tga 01;38;5;211 163 | .xbm 01;38;5;211 164 | .xpm 01;38;5;211 165 | .tif 01;38;5;211 166 | .tiff 01;38;5;211 167 | .png 01;38;5;211 168 | .svg 01;38;5;211 169 | .svgz 01;38;5;211 170 | .mng 01;38;5;211 171 | .pcx 01;38;5;211 172 | .mov 01;38;5;211 173 | .mpg 01;38;5;211 174 | .mpeg 01;38;5;211 175 | .m2v 01;38;5;211 176 | .mkv 01;38;5;211 177 | .webm 01;38;5;211 178 | .ogm 01;38;5;211 179 | .mp4 01;38;5;211 180 | .m4v 01;38;5;211 181 | .mp4v 01;38;5;211 182 | .vob 01;38;5;211 183 | .qt 01;38;5;211 184 | .nuv 01;38;5;211 185 | .wmv 01;38;5;211 186 | .asf 01;38;5;211 187 | .rm 01;38;5;211 188 | .rmvb 01;38;5;211 189 | .flc 01;38;5;211 190 | .avi 01;38;5;211 191 | .fli 01;38;5;211 192 | .flv 01;38;5;211 193 | .gl 01;38;5;211 194 | .dl 01;38;5;211 195 | .xcf 01;38;5;211 196 | .xwd 01;38;5;211 197 | .yuv 01;38;5;211 198 | .cgm 01;38;5;211 199 | .emf 01;38;5;211 200 | .axv 01;38;5;211 201 | .anx 01;38;5;211 202 | .ogv 01;38;5;211 203 | .ogx 01;38;5;211 204 | 205 | # audio formats 206 | .aac 0;38;5;214 207 | .au 0;38;5;214 208 | .flac 0;38;5;214 209 | .mid 0;38;5;214 210 | .midi 0;38;5;214 211 | .mka 0;38;5;214 212 | .mp3 0;38;5;214 213 | .mpc 0;38;5;214 214 | .ogg 0;38;5;214 215 | .ra 0;38;5;214 216 | .wav 0;38;5;214 217 | .axa 0;38;5;214 218 | .oga 0;38;5;214 219 | .spx 0;38;5;214 220 | .xspf 0;38;5;214 221 | 222 | # build system scripts 223 | .do 00;35 224 | *Makefile 00;35 225 | 226 | # cached/compiled files 227 | .o 00;30;1 228 | .pyc 00;30;1 229 | .fasl 00;30;1 230 | -------------------------------------------------------------------------------- /contrib/badwolf.dvtcolortheme: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | DVTConsoleDebuggerInputTextColor 6 | 0.972549 0.964706 0.94902 1 7 | DVTConsoleDebuggerInputTextFont 8 | Monaco - 11.0 9 | DVTConsoleDebuggerOutputTextColor 10 | 0.972549 0.964706 0.94902 1 11 | DVTConsoleDebuggerOutputTextFont 12 | Monaco - 11.0 13 | DVTConsoleDebuggerPromptTextColor 14 | 0.0392157 0.615686 1 1 15 | DVTConsoleDebuggerPromptTextFont 16 | Monaco - 11.0 17 | DVTConsoleExectuableInputTextColor 18 | 0.972549 0.964706 0.94902 1 19 | DVTConsoleExectuableInputTextFont 20 | Monaco - 11.0 21 | DVTConsoleExectuableOutputTextColor 22 | 0.972549 0.964706 0.94902 1 23 | DVTConsoleExectuableOutputTextFont 24 | Monaco - 11.0 25 | DVTConsoleTextBackgroundColor 26 | 0.138326 0.138352 0.13832 1 27 | DVTConsoleTextInsertionPointColor 28 | 0 0 0 1 29 | DVTConsoleTextSelectionColor 30 | 0.2 0.2 0.2 1 31 | DVTDebuggerInstructionPointerColor 32 | 0.705792 0.8 0.544 1 33 | DVTSourceTextBackground 34 | 0.0784314 0.0784314 0.0745098 1 35 | DVTSourceTextBlockDimBackgroundColor 36 | 0.5 0.5 0.5 1 37 | DVTSourceTextInsertionPointColor 38 | 0.0392157 0.615686 1 1 39 | DVTSourceTextInvisiblesColor 40 | 0.85098 0.807843 0.764706 1 41 | DVTSourceTextSelectionColor 42 | 0.207843 0.196078 0.176471 1 43 | DVTSourceTextSyntaxColors 44 | 45 | xcode.syntax.attribute 46 | 1 0.619608 0.721569 1 47 | xcode.syntax.character 48 | 0.721569 0.533333 0.32549 1 49 | xcode.syntax.comment 50 | 0.521569 0.498039 0.470588 1 51 | xcode.syntax.comment.doc 52 | 0.521569 0.498039 0.470588 1 53 | xcode.syntax.comment.doc.keyword 54 | 0.521569 0.498039 0.470588 1 55 | xcode.syntax.identifier.class 56 | 0.972549 0.964706 0.94902 1 57 | xcode.syntax.identifier.class.system 58 | 0.972549 0.964706 0.94902 1 59 | xcode.syntax.identifier.constant 60 | 0.721569 0.533333 0.32549 1 61 | xcode.syntax.identifier.constant.system 62 | 0.721569 0.533333 0.32549 1 63 | xcode.syntax.identifier.function 64 | 1 0.654902 0.141176 1 65 | xcode.syntax.identifier.function.system 66 | 1 0.654902 0.141176 1 67 | xcode.syntax.identifier.macro 68 | 0.682353 0.933333 0 1 69 | xcode.syntax.identifier.macro.system 70 | 0.682353 0.933333 0 1 71 | xcode.syntax.identifier.type 72 | 1 0.654902 0.141176 1 73 | xcode.syntax.identifier.type.system 74 | 1 0.654902 0.141176 1 75 | xcode.syntax.identifier.variable 76 | 0.972549 0.964706 0.94902 1 77 | xcode.syntax.identifier.variable.system 78 | 0.972549 0.964706 0.94902 1 79 | xcode.syntax.keyword 80 | 1 0.172549 0.294118 1 81 | xcode.syntax.number 82 | 0.721569 0.533333 0.32549 1 83 | xcode.syntax.plain 84 | 0.972549 0.964706 0.94902 1 85 | xcode.syntax.preprocessor 86 | 0.682353 0.933333 0 1 87 | xcode.syntax.string 88 | 0.956863 0.811765 0.52549 1 89 | xcode.syntax.url 90 | 0.721569 0.533333 0.32549 1 91 | 92 | DVTSourceTextSyntaxFonts 93 | 94 | xcode.syntax.attribute 95 | Monaco - 11.0 96 | xcode.syntax.character 97 | Monaco - 11.0 98 | xcode.syntax.comment 99 | Monaco - 11.0 100 | xcode.syntax.comment.doc 101 | Monaco - 11.0 102 | xcode.syntax.comment.doc.keyword 103 | Monaco - 11.0 104 | xcode.syntax.identifier.class 105 | Monaco - 11.0 106 | xcode.syntax.identifier.class.system 107 | Monaco - 11.0 108 | xcode.syntax.identifier.constant 109 | Monaco - 11.0 110 | xcode.syntax.identifier.constant.system 111 | Monaco - 11.0 112 | xcode.syntax.identifier.function 113 | Monaco - 11.0 114 | xcode.syntax.identifier.function.system 115 | Monaco - 11.0 116 | xcode.syntax.identifier.macro 117 | Monaco - 11.0 118 | xcode.syntax.identifier.macro.system 119 | Monaco - 11.0 120 | xcode.syntax.identifier.type 121 | Monaco - 11.0 122 | xcode.syntax.identifier.type.system 123 | Monaco - 11.0 124 | xcode.syntax.identifier.variable 125 | Monaco - 11.0 126 | xcode.syntax.identifier.variable.system 127 | Monaco - 11.0 128 | xcode.syntax.keyword 129 | Monaco - 11.0 130 | xcode.syntax.number 131 | Monaco - 11.0 132 | xcode.syntax.plain 133 | Monaco - 11.0 134 | xcode.syntax.preprocessor 135 | Monaco - 11.0 136 | xcode.syntax.string 137 | Monaco - 11.0 138 | xcode.syntax.url 139 | Monaco - 11.0 140 | 141 | 142 | 143 | -------------------------------------------------------------------------------- /contrib/badwolf.muttrc: -------------------------------------------------------------------------------- 1 | color normal color15 color233 2 | color error brightcolor15 color196 3 | color indicator color15 color235 4 | color status brightcolor39 color233 5 | color markers color142 color233 6 | 7 | color hdrdefault color245 color233 8 | color header brightcolor214 color233 "^(Subject): " 9 | color signature color243 color233 10 | 11 | color body color137 color233 [\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+ 12 | color body color137 color233 ((https?|ftp)://|www)+[\-\.\;@,/%~_:?&=\#a-zA-Z0-9+]+ 13 | color bold brightcolor15 color233 14 | color search brightcolor16 color221 15 | 16 | color quoted color243 color233 17 | color quoted1 color211 color233 18 | color quoted2 color222 color233 19 | color quoted3 color214 color233 20 | color quoted4 color154 color233 21 | 22 | color tilde color240 color233 23 | color tree color240 color233 24 | color attachment brightcolor211 color233 25 | 26 | # http://www.mutt.org/doc/manual/manual-4.html#ss4.2 27 | # color index color241 color233 ~A 28 | # color index color241 color233 ~Q 29 | # color index color243 color233 ~P 30 | color index color221 color233 ~N 31 | color index brightcolor211 color233 ~F 32 | color index brightcolor39 color233 ~T 33 | color index color243 color233 ~Q 34 | color index color196 color233 ~D 35 | 36 | # Colorize inline diffs, really helpful for LKML or other mailing lists where 37 | # mails frequently include patches. 38 | color body brightcolor15 color233 '^diff .*' 39 | color body brightcolor15 color233 '^[Ii]{1}ndex .*' 40 | color body brightcolor15 color233 '^=+$' 41 | color body brightcolor15 color233 '^(---|\+\+\+) .*' 42 | color body brightcolor15 color233 '^@@ .*' 43 | color body color121 color233 '^\+([^\+].*)?$' 44 | color body color211 color233 '^-([^-].*)?$' 45 | -------------------------------------------------------------------------------- /package.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | hg archive ~/Desktop/badwolf.zip -I 'colors' -I README.markdown -I 'contrib' 4 | --------------------------------------------------------------------------------