a6f651fa8606

Merge pull request #12 from jbernard/dircolors

Add directory color support for GNU ls
[view raw] [browse files]
author Steve Losh <steve@stevelosh.com>
date Wed, 11 Jan 2017 12:35:09 +0000
parents 7d56e6fbb1b3 (diff) 6cf776472993 (current diff)
children 451b8111344a
branches/tags (none)
files

Changes

--- a/.hgtags	Wed Nov 14 10:07:32 2012 -0500
+++ b/.hgtags	Wed Jan 11 12:35:09 2017 +0000
@@ -5,3 +5,5 @@
 8c3583c971acda5cb4f034dbe643e5a9315db63b v1.2.0
 4e6ee97af8b02741af86dcb2eb3f0f4dbbcc9761 v1.3.0
 5b17fcb91dd54bff3987513ece727b45105b15fc v1.4.0
+2ef3532a6301313f323067bba6b6d445d0f332c5 v1.5.0
+bd56b86c54032b62dd4f755ab4c564c18da0b67f v1.6.0
--- a/colors/badwolf.vim	Wed Nov 14 10:07:32 2012 -0500
+++ b/colors/badwolf.vim	Wed Jan 11 12:35:09 2017 +0000
@@ -41,7 +41,7 @@
     syntax reset
 endif
 
-let colors_name = "badwolf"
+let g:colors_name = "badwolf"
 
 if !exists("g:badwolf_html_link_underline") " {{{
     let g:badwolf_html_link_underline = 1
@@ -89,6 +89,12 @@
 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!
@@ -392,6 +398,26 @@
 " 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')
@@ -423,14 +449,21 @@
 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', 'dirtyblonde', '', 'none')
-    call s:HL('cssBoxProp', 'dirtyblonde', '', 'none')
-    call s:HL('cssTextProp', 'dirtyblonde', '', 'none')
-    call s:HL('cssRenderProp', 'dirtyblonde', '', 'none')
-    call s:HL('cssGeneratedContentProp', 'dirtyblonde', '', 'none')
+    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')
@@ -538,6 +571,13 @@
 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')
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/colors/goodwolf.vim	Wed Jan 11 12:35:09 2017 +0000
@@ -0,0 +1,513 @@
+"                        _                 _  __
+"                       | |               | |/ _|
+"   __ _  ___   ___   __| | __      _____ | | |_
+"  / _` |/ _ \ / _ \ / _` | \ \ /\ / / _ \| |  _|
+" | (_| | (_) | (_) | (_| |  \ V  V / (_) | | |
+"  \__, |\___/ \___/ \__,_|   \_/\_/ \___/|_|_|
+"   __/ |
+"  |___/
+"
+"     :syntax less
+"
+" A Vim colorscheme pieced together by Steve Losh.
+" Available at http://stevelosh.com/projects/badwolf/
+"
+" 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 = "goodwolf"
+
+if !exists("g:badwolf_html_link_underline") " {{{
+    let g:badwolf_html_link_underline = 1
+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
+
+    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')
+
+" }}}
+" 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', 'bg', 'none')
+call s:HL('Todo',           'snow',   'bg', 'bold')
+call s:HL('SpecialComment', 'snow',   'bg', 'bold')
+
+" Strings are highlighted separately.
+call s:HL('String', 'lightgravel', '', 'bold')
+
+" Turn off everything else
+call s:HL('Statement',    'plain', '', 'none')
+call s:HL('Keyword',      'plain', '', 'none')
+call s:HL('Conditional',  'plain', '', 'none')
+call s:HL('Operator',     'plain', '', 'none')
+call s:HL('Label',        'plain', '', 'none')
+call s:HL('Repeat',       'plain', '', 'none')
+call s:HL('Identifier',   'plain', '', 'none')
+call s:HL('Function',     'plain', '', 'none')
+call s:HL('PreProc',      'plain', '', 'none')
+call s:HL('Macro',        'plain', '', 'none')
+call s:HL('Define',       'plain', '', 'none')
+call s:HL('PreCondit',    'plain', '', 'none')
+call s:HL('Constant',     'plain', '', 'none')
+call s:HL('Character',    'plain', '', 'none')
+call s:HL('Boolean',      'plain', '', 'none')
+call s:HL('Number',       'plain', '', 'none')
+call s:HL('Float',        'plain', '', 'none')
+call s:HL('Type',         'plain', '', 'none')
+call s:HL('StorageClass', 'plain', '', 'none')
+call s:HL('Structure',    'plain', '', 'none')
+call s:HL('Typedef',      'plain', '', 'none')
+call s:HL('Exception',    'plain', '', 'none')
+
+" Not sure what 'special character in a constant' means, but let's make it pop.
+call s:HL('SpecialChar', 'plain', '', '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 {{{
+
+" Clam {{{
+
+" hg status
+call s:HL('clamHgStatusAdded',    'lime', '', 'none')
+call s:HL('clamHgStatusModified', 'saltwatertaffy', '', 'none')
+call s:HL('clamHgStatusRemoved',  'toffee', '', 'none')
+call s:HL('clamHgStatusUnknown',  'taffy', '', 'bold')
+
+" }}}
+" CtrlP {{{
+
+" the message when no match is found
+call s:HL('CtrlPNoEntries', 'snow', 'taffy', 'bold')
+
+" the matched pattern
+call s:HL('CtrlPMatch', 'dress', 'bg', 'bold')
+
+" 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')
+
+" }}}
+" Interesting Words {{{
+
+" These are only used if you're me or have copied the <leader>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')
+
+" }}}
+" Rainbow Parentheses {{{
+
+call s:HL('level1c',  'mediumgravel', '', 'bold')
+
+" }}}
+
+" }}}
+" Filetype-specific {{{
+
+" Clojure {{{
+
+call s:HL('clojureParen0', 'lightgravel', '', 'none')
+call s:HL('clojureAnonArg', 'snow', '', 'bold')
+
+" }}}
+" CSS {{{
+
+call s:HL('cssBraces', 'lightgravel', '', 'none')
+
+" }}}
+" Diff {{{
+
+call s:HL('gitDiff', 'lightgravel', '',)
+
+call s:HL('diffRemoved', 'dress', '',)
+call s:HL('diffAdded', 'lime', '',)
+call s:HL('diffFile', 'coal', 'toffee', 'bold')
+call s:HL('diffNewFile', 'coal', 'toffee', 'bold')
+
+call s:HL('diffLine', 'coal', 'orange', 'bold')
+call s:HL('diffSubname', 'orange', '', 'none')
+
+" }}}
+" 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 <a> 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('javaCommentTitle', 'gravel', '')
+call s:HL('javaDocTags', 'snow', '', 'none')
+call s:HL('javaDocParam', 'plain', '', '')
+
+" }}}
+" LaTeX {{{
+
+call s:HL('texStatement', 'dress', '', 'none')
+call s:HL('texDocType', 'dress', '', 'none')
+call s:HL('texSection', 'dress', '', 'none')
+call s:HL('texBeginEnd', 'dress', '', '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('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
+
+" }}}
+" 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')
+
+" }}}
+" Python {{{
+
+hi def link pythonOperator Operator
+call s:HL('pythonBuiltin',     'plain')
+call s:HL('pythonBuiltinObj',  'plain')
+call s:HL('pythonBuiltinFunc', 'plain')
+call s:HL('pythonEscape',      'plain')
+call s:HL('pythonException',   'plain', '', 'none')
+call s:HL('pythonExceptions',  'plain', '', 'none')
+call s:HL('pythonPrecondit',   'plain', '', 'none')
+call s:HL('pythonDecorator',   'plain', '', 'none')
+call s:HL('pythonRun',         'plain', '', 'none')
+call s:HL('pythonCoding',      'plain', '', 'bold')
+
+" }}}
+" Vim {{{
+
+call s:HL('helpHyperTextJump', 'dress', '', 'none')
+
+" }}}
+
+" }}}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/contrib/badwolf-theme.el	Wed Jan 11 12:35:09 2017 +0000
@@ -0,0 +1,108 @@
+(deftheme badwolf "Badwolf color Theme")
+
+(let ((class '((class color) (min-colors 89)))
+     ;;Badwolf pallete
+    (bwc-plain "#f8f6f2")
+    (bwc-snow "#ffffff")
+    (bwc-coal "#000000")
+
+    (bwc-brightgravel "#d9cec3")
+    (bwc-lightgravel "#998f84")
+    (bwc-gravel "#857f78")
+    (bwc-mediumgravel "#666462")
+    (bwc-deepgravel "#45413b")
+    (bwc-deepergravel "#35322d")
+    (bwc-darkgravel "#242321")
+    (bwc-blackgravel "#1c1b1a")
+    (bwc-blackestgravel "#141413")
+
+    (bwc-dalespale "#fade3e")
+    (bwc-dirtyblonde "#f4cf86")
+    ; (bwc-taffy "#ff2c4b")
+    (bwc-taffy "#ff0208")
+    (bwc-saltwatertaffy "#8cffba")
+    (bwc-tardis "#0a9dff")
+    (bwc-orange "#ffa724")
+    (bwc-lime "#aeee00")
+    (bwc-dress "#ff9eb8")
+    (bwc-toffee "#b88853")
+    (bwc-coffee "#c7915b")
+    (bwc-darkroast "#88633f")
+    )
+
+  ;; theme faces
+  (custom-theme-set-faces
+   'badwolf
+   `(default ((t (:inherit nil :foreground ,bwc-plain :background ,bwc-blackestgravel))))
+   `(cursor ((t (:background ,bwc-tardis))))
+   `(region ((t (:foreground nil :background ,bwc-mediumgravel ))))
+   `(fringe ((t (:background ,bwc-blackestgravel))))
+
+   `(minibuffer-prompt ((t (:foreground ,bwc-lime))))
+   `(link ((t (:foreground ,bwc-lightgravel :underline t))))
+   `(link-visited ((t (:inherit link :foreground ,bwc-orange))))
+
+   `(highlight ((t (:foreground ,bwc-coal :background ,bwc-dalespale))))
+   `(hl-line ((t (:inherit nil :background ,bwc-darkgravel))))
+
+   `(linum ((t (:foreground ,bwc-mediumgravel))))
+
+   `(isearch ((t (:foreground ,bwc-coal :background ,bwc-dalespale :weight bold))))
+   `(lazy-highlight ((t (:foreground ,bwc-coal :background, bwc-dalespale :weight bold))))
+
+   `(mode-line ((t (:box (:line-width -1 :style released-button) :foreground ,bwc-brightgravel :background ,bwc-darkgravel))))
+   `(mode-line-inactive ((t (:box (:line-width -1 :style released-button) :foreground ,bwc-snow :background ,bwc-deepgravel))))
+
+
+   `(font-lock-comment-face ((t (:foreground ,bwc-lightgravel))))
+   `(font-lock-comment-delimiter-face ((t (:foreground ,bwc-lightgravel))))
+   `(font-lock-doc-face ((t (:foreground ,bwc-snow))))
+   `(font-lock-string-face ((t (:foreground ,bwc-dirtyblonde))))
+   `(font-lock-function-name-face ((t (:foreground ,bwc-orange))))
+   `(font-lock-variable-name-face ((t (:foreground ,bwc-dress))))
+   `(font-lock-builtin-face ((t (:foreground ,bwc-taffy :weight bold))))
+   `(font-lock-keyword-face ((t (:foreground ,bwc-taffy :weight bold))))
+   `(font-lock-type-face ((t (:foreground ,bwc-dress))))
+   `(font-lock-constant-face ((t (:foreground ,bwc-orange))))
+   `(font-lock-warning-face ((t (:foreground ,bwc-dress :weight bold))))
+
+  `(show-paren-match ((t (:background ,bwc-tardis :weight bold))))
+  `(show-paren-mismatch ((t (:background ,bwc-taffy :weight bold))))
+
+    ;; rainbow-delimiters
+   `(rainbow-delimiters-depth-1-face ((t (:foreground ,bwc-lightgravel))))
+   `(rainbow-delimiters-depth-2-face ((t (:foreground ,bwc-orange))))
+   `(rainbow-delimiters-depth-3-face ((t (:foreground ,bwc-saltwatertaffy))))
+   `(rainbow-delimiters-depth-4-face ((t (:foreground ,bwc-dress))))
+   `(rainbow-delimiters-depth-5-face ((t (:foreground ,bwc-coffee))))
+   `(rainbow-delimiters-depth-6-face ((t (:foreground ,bwc-dirtyblonde))))
+   `(rainbow-delimiters-depth-7-face ((t (:foreground ,bwc-orange))))
+   `(rainbow-delimiters-depth-8-face ((t (:foreground ,bwc-saltwatertaffy)))
+   `(rainbow-delimiters-depth-9-face ((t (:foreground ,bwc-dress))))
+   `(rainbow-delimiters-depth-10-face ((t (:foreground ,bwc-coffee))))
+   `(rainbow-delimiters-depth-11-face ((t (:foreground ,bwc-dirtyblonde))))
+   `(rainbow-delimiters-unmatched-face ((t (:foreground "red"))))
+
+
+
+
+   ))
+
+    (custom-set-faces
+     `(ein:cell-input-area ((t (:background ,bwc-blackestgravel :inherit nil))))
+     `(ein:cell-input-prompt ((t (:foreground ,bwc-orange :background nil :inherit nil))))
+     `(ein:cell-output-prompt ((t (:foreground ,bwc-taffy :background nil :inherit nil))))
+     '(mumamo-background-chunk-major ((((class color) (min-colors 88) (background dark)) nil)))
+
+     `(ac-candidate-face ((t (:background ,bwc-lightgravel))))
+     `(ac-selection-face ((t (:foreground ,bwc-coal :background ,bwc-orange))))
+
+      `(flymake-errline ((t (:background nil :underline ,bwc-taffy ))))
+      `(flymake-warnline ((t (:background nil :underline ,bwc-dress ))))
+     )
+
+
+    (font-lock-add-keywords 'python-mode `(("\\<\\(import\\||from\\|except\\|finally\\|try\\|from\\|\\)\\>" 1 '(:foreground ,bwc-lime ) t)))
+  )
+
+(provide-theme 'badwolf)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/contrib/badwolf.dvtcolortheme	Wed Jan 11 12:35:09 2017 +0000
@@ -0,0 +1,142 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>DVTConsoleDebuggerInputTextColor</key>
+	<string>0.972549 0.964706 0.94902 1</string>
+	<key>DVTConsoleDebuggerInputTextFont</key>
+	<string>Monaco - 11.0</string>
+	<key>DVTConsoleDebuggerOutputTextColor</key>
+	<string>0.972549 0.964706 0.94902 1</string>
+	<key>DVTConsoleDebuggerOutputTextFont</key>
+	<string>Monaco - 11.0</string>
+	<key>DVTConsoleDebuggerPromptTextColor</key>
+	<string>0.0392157 0.615686 1 1</string>
+	<key>DVTConsoleDebuggerPromptTextFont</key>
+	<string>Monaco - 11.0</string>
+	<key>DVTConsoleExectuableInputTextColor</key>
+	<string>0.972549 0.964706 0.94902 1</string>
+	<key>DVTConsoleExectuableInputTextFont</key>
+	<string>Monaco - 11.0</string>
+	<key>DVTConsoleExectuableOutputTextColor</key>
+	<string>0.972549 0.964706 0.94902 1</string>
+	<key>DVTConsoleExectuableOutputTextFont</key>
+	<string>Monaco - 11.0</string>
+	<key>DVTConsoleTextBackgroundColor</key>
+	<string>0.138326 0.138352 0.13832 1</string>
+	<key>DVTConsoleTextInsertionPointColor</key>
+	<string>0 0 0 1</string>
+	<key>DVTConsoleTextSelectionColor</key>
+	<string>0.2 0.2 0.2 1</string>
+	<key>DVTDebuggerInstructionPointerColor</key>
+	<string>0.705792 0.8 0.544 1</string>
+	<key>DVTSourceTextBackground</key>
+	<string>0.0784314 0.0784314 0.0745098 1</string>
+	<key>DVTSourceTextBlockDimBackgroundColor</key>
+	<string>0.5 0.5 0.5 1</string>
+	<key>DVTSourceTextInsertionPointColor</key>
+	<string>0.0392157 0.615686 1 1</string>
+	<key>DVTSourceTextInvisiblesColor</key>
+	<string>0.85098 0.807843 0.764706 1</string>
+	<key>DVTSourceTextSelectionColor</key>
+	<string>0.207843 0.196078 0.176471 1</string>
+	<key>DVTSourceTextSyntaxColors</key>
+	<dict>
+		<key>xcode.syntax.attribute</key>
+		<string>1 0.619608 0.721569 1</string>
+		<key>xcode.syntax.character</key>
+		<string>0.721569 0.533333 0.32549 1</string>
+		<key>xcode.syntax.comment</key>
+		<string>0.521569 0.498039 0.470588 1</string>
+		<key>xcode.syntax.comment.doc</key>
+		<string>0.521569 0.498039 0.470588 1</string>
+		<key>xcode.syntax.comment.doc.keyword</key>
+		<string>0.521569 0.498039 0.470588 1</string>
+		<key>xcode.syntax.identifier.class</key>
+		<string>0.972549 0.964706 0.94902 1</string>
+		<key>xcode.syntax.identifier.class.system</key>
+		<string>0.972549 0.964706 0.94902 1</string>
+		<key>xcode.syntax.identifier.constant</key>
+		<string>0.721569 0.533333 0.32549 1</string>
+		<key>xcode.syntax.identifier.constant.system</key>
+		<string>0.721569 0.533333 0.32549 1</string>
+		<key>xcode.syntax.identifier.function</key>
+		<string>1 0.654902 0.141176 1</string>
+		<key>xcode.syntax.identifier.function.system</key>
+		<string>1 0.654902 0.141176 1</string>
+		<key>xcode.syntax.identifier.macro</key>
+		<string>0.682353 0.933333 0 1</string>
+		<key>xcode.syntax.identifier.macro.system</key>
+		<string>0.682353 0.933333 0 1</string>
+		<key>xcode.syntax.identifier.type</key>
+		<string>1 0.654902 0.141176 1</string>
+		<key>xcode.syntax.identifier.type.system</key>
+		<string>1 0.654902 0.141176 1</string>
+		<key>xcode.syntax.identifier.variable</key>
+		<string>0.972549 0.964706 0.94902 1</string>
+		<key>xcode.syntax.identifier.variable.system</key>
+		<string>0.972549 0.964706 0.94902 1</string>
+		<key>xcode.syntax.keyword</key>
+		<string>1 0.172549 0.294118 1</string>
+		<key>xcode.syntax.number</key>
+		<string>0.721569 0.533333 0.32549 1</string>
+		<key>xcode.syntax.plain</key>
+		<string>0.972549 0.964706 0.94902 1</string>
+		<key>xcode.syntax.preprocessor</key>
+		<string>0.682353 0.933333 0 1</string>
+		<key>xcode.syntax.string</key>
+		<string>0.956863 0.811765 0.52549 1</string>
+		<key>xcode.syntax.url</key>
+		<string>0.721569 0.533333 0.32549 1</string>
+	</dict>
+	<key>DVTSourceTextSyntaxFonts</key>
+	<dict>
+		<key>xcode.syntax.attribute</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.character</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.comment</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.comment.doc</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.comment.doc.keyword</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.class</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.class.system</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.constant</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.constant.system</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.function</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.function.system</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.macro</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.macro.system</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.type</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.type.system</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.variable</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.identifier.variable.system</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.keyword</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.number</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.plain</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.preprocessor</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.string</key>
+		<string>Monaco - 11.0</string>
+		<key>xcode.syntax.url</key>
+		<string>Monaco - 11.0</string>
+	</dict>
+</dict>
+</plist>