diff --git a/.fishrc b/.fishrc
new file mode 100644
index 0000000..e69de29
diff --git a/.vim/.netrwhist b/.vim/.netrwhist
new file mode 100644
index 0000000..9767514
--- /dev/null
+++ b/.vim/.netrwhist
@@ -0,0 +1,5 @@
+let g:netrw_dirhistmax =10
+let g:netrw_dirhist_cnt =3
+let g:netrw_dirhist_1='/home/beppe/Downloads/EFI'
+let g:netrw_dirhist_2='/usr/local/bin'
+let g:netrw_dirhist_3='/home/beppe/.backup'
diff --git a/.vim/autoload/pathogen.vim b/.vim/autoload/pathogen.vim
new file mode 100644
index 0000000..3582fbf
--- /dev/null
+++ b/.vim/autoload/pathogen.vim
@@ -0,0 +1,264 @@
+" pathogen.vim - path option manipulation
+" Maintainer: Tim Pope
+" Version: 2.4
+
+" Install in ~/.vim/autoload (or ~\vimfiles\autoload).
+"
+" For management of individually installed plugins in ~/.vim/bundle (or
+" ~\vimfiles\bundle), adding `execute pathogen#infect()` to the top of your
+" .vimrc is the only other setup necessary.
+"
+" The API is documented inline below.
+
+if exists("g:loaded_pathogen") || &cp
+ finish
+endif
+let g:loaded_pathogen = 1
+
+" Point of entry for basic default usage. Give a relative path to invoke
+" pathogen#interpose() or an absolute path to invoke pathogen#surround().
+" Curly braces are expanded with pathogen#expand(): "bundle/{}" finds all
+" subdirectories inside "bundle" inside all directories in the runtime path.
+" If no arguments are given, defaults "bundle/{}", and also "pack/{}/start/{}"
+" on versions of Vim without native package support.
+function! pathogen#infect(...) abort
+ if a:0
+ let paths = filter(reverse(copy(a:000)), 'type(v:val) == type("")')
+ else
+ let paths = ['bundle/{}', 'pack/{}/start/{}']
+ endif
+ if has('packages')
+ call filter(paths, 'v:val !~# "^pack/[^/]*/start/[^/]*$"')
+ endif
+ let static = '^\%([$~\\/]\|\w:[\\/]\)[^{}*]*$'
+ for path in filter(copy(paths), 'v:val =~# static')
+ call pathogen#surround(path)
+ endfor
+ for path in filter(copy(paths), 'v:val !~# static')
+ if path =~# '^\%([$~\\/]\|\w:[\\/]\)'
+ call pathogen#surround(path)
+ else
+ call pathogen#interpose(path)
+ endif
+ endfor
+ call pathogen#cycle_filetype()
+ if pathogen#is_disabled($MYVIMRC)
+ return 'finish'
+ endif
+ return ''
+endfunction
+
+" Split a path into a list.
+function! pathogen#split(path) abort
+ if type(a:path) == type([]) | return a:path | endif
+ if empty(a:path) | return [] | endif
+ let split = split(a:path,'\\\@]','\\&','')
+ endif
+endfunction
+
+" Like findfile(), but hardcoded to use the runtimepath.
+function! pathogen#runtime_findfile(file,count) abort
+ let rtp = pathogen#join(1,pathogen#split(&rtp))
+ let file = findfile(a:file,rtp,a:count)
+ if file ==# ''
+ return ''
+ else
+ return fnamemodify(file,':p')
+ endif
+endfunction
+
+" vim:set et sw=2 foldmethod=expr foldexpr=getline(v\:lnum)=~'^\"\ Section\:'?'>1'\:getline(v\:lnum)=~#'^fu'?'a1'\:getline(v\:lnum)=~#'^endf'?'s1'\:'=':
diff --git a/.vim/bundle/Vundle.vim b/.vim/bundle/Vundle.vim
new file mode 160000
index 0000000..9a38216
--- /dev/null
+++ b/.vim/bundle/Vundle.vim
@@ -0,0 +1 @@
+Subproject commit 9a38216a1c0c597f978d73547d37681fc689c90d
diff --git a/.vim/bundle/YouCompleteMe b/.vim/bundle/YouCompleteMe
new file mode 160000
index 0000000..80246aa
--- /dev/null
+++ b/.vim/bundle/YouCompleteMe
@@ -0,0 +1 @@
+Subproject commit 80246aa9a23cab4175c41a514598284efe218c20
diff --git a/.vim/bundle/ctrlp.vim b/.vim/bundle/ctrlp.vim
new file mode 160000
index 0000000..e953ee7
--- /dev/null
+++ b/.vim/bundle/ctrlp.vim
@@ -0,0 +1 @@
+Subproject commit e953ee7a80dc96cd00c20ed6fe82e0e817d977ff
diff --git a/.vim/bundle/indentpython.vim b/.vim/bundle/indentpython.vim
new file mode 160000
index 0000000..6aaddfd
--- /dev/null
+++ b/.vim/bundle/indentpython.vim
@@ -0,0 +1 @@
+Subproject commit 6aaddfde21fe9e7acbe448b92b3cbb67f2fe1fc1
diff --git a/.vim/bundle/syntastic b/.vim/bundle/syntastic
new file mode 160000
index 0000000..0d25f4f
--- /dev/null
+++ b/.vim/bundle/syntastic
@@ -0,0 +1 @@
+Subproject commit 0d25f4fb4203e600a28e776847d4beca254d3f84
diff --git a/.vim/bundle/vim-coloresque b/.vim/bundle/vim-coloresque
new file mode 160000
index 0000000..0c21b14
--- /dev/null
+++ b/.vim/bundle/vim-coloresque
@@ -0,0 +1 @@
+Subproject commit 0c21b1469993e610600e88e734ffe90b9c10a514
diff --git a/.vim/bundle/vim-gitgutter b/.vim/bundle/vim-gitgutter
new file mode 160000
index 0000000..5c636b1
--- /dev/null
+++ b/.vim/bundle/vim-gitgutter
@@ -0,0 +1 @@
+Subproject commit 5c636b128ed40f3ed926d18adb307e01dfc082f8
diff --git a/.vim/bundle/vim-go b/.vim/bundle/vim-go
new file mode 160000
index 0000000..30cdcf3
--- /dev/null
+++ b/.vim/bundle/vim-go
@@ -0,0 +1 @@
+Subproject commit 30cdcf3c1e4d0be92115f40ea3197a2effde0c27
diff --git a/.vim/colors/badwolf.vim b/.vim/colors/badwolf.vim
new file mode 100644
index 0000000..9ce5441
--- /dev/null
+++ b/.vim/colors/badwolf.vim
@@ -0,0 +1,670 @@
+" _ _ _ __
+" | |__ __ _ __| | __ _____ | |/ _|
+" | '_ \ / _` |/ _` | \ \ /\ / / _ \| | |_
+" | |_) | (_| | (_| | \ V V / (_) | | _|
+" |_.__/ \__,_|\__,_| \_/\_/ \___/|_|_|
+"
+" I am the Bad Wolf. I create myself.
+" I take the words. I scatter them in time and space.
+" A message to lead myself here.
+"
+" A Vim colorscheme pieced together by Steve Losh.
+" Available at http://stevelosh.com/projects/badwolf/
+"
+" Why? {{{
+"
+" After using Molokai for quite a long time, I started longing for
+" a replacement.
+"
+" I love Molokai's high contrast and gooey, saturated tones, but it can be
+" a little inconsistent at times.
+"
+" Also it's winter here in Rochester, so I wanted a color scheme that's a bit
+" warmer. A little less blue and a bit more red.
+"
+" And so Bad Wolf was born. I'm no designer, but designers have been scattering
+" beautiful colors through time and space long before I came along. I took
+" advantage of that and reused some of my favorites to lead me to this scheme.
+"
+" }}}
+
+" Supporting code -------------------------------------------------------------
+" Preamble {{{
+
+if !has("gui_running") && &t_Co != 88 && &t_Co != 256
+ finish
+endif
+
+set background=dark
+
+if exists("syntax_on")
+ syntax reset
+endif
+
+let g:colors_name = "badwolf"
+
+if !exists("g:badwolf_html_link_underline") " {{{
+ let g:badwolf_html_link_underline = 1
+endif " }}}
+
+if !exists("g:badwolf_css_props_highlight") " {{{
+ let g:badwolf_css_props_highlight = 0
+endif " }}}
+
+" }}}
+" Palette {{{
+
+let s:bwc = {}
+
+" The most basic of all our colors is a slightly tweaked version of the Molokai
+" Normal text.
+let s:bwc.plain = ['f8f6f2', 15]
+
+" Pure and simple.
+let s:bwc.snow = ['ffffff', 15]
+let s:bwc.coal = ['000000', 16]
+
+" All of the Gravel colors are based on a brown from Clouds Midnight.
+let s:bwc.brightgravel = ['d9cec3', 252]
+let s:bwc.lightgravel = ['998f84', 245]
+let s:bwc.gravel = ['857f78', 243]
+let s:bwc.mediumgravel = ['666462', 241]
+let s:bwc.deepgravel = ['45413b', 238]
+let s:bwc.deepergravel = ['35322d', 236]
+let s:bwc.darkgravel = ['242321', 235]
+let s:bwc.blackgravel = ['1c1b1a', 233]
+let s:bwc.blackestgravel = ['141413', 232]
+
+" A color sampled from a highlight in a photo of a glass of Dale's Pale Ale on
+" my desk.
+let s:bwc.dalespale = ['fade3e', 221]
+
+" A beautiful tan from Tomorrow Night.
+let s:bwc.dirtyblonde = ['f4cf86', 222]
+
+" Delicious, chewy red from Made of Code for the poppiest highlights.
+let s:bwc.taffy = ['ff2c4b', 196]
+
+" Another chewy accent, but use sparingly!
+let s:bwc.saltwatertaffy = ['8cffba', 121]
+
+" The star of the show comes straight from Made of Code.
+"
+" You should almost never use this. It should be used for things that denote
+" 'where the user is', which basically consists of:
+"
+" * The cursor
+" * A REPL prompt
+let s:bwc.tardis = ['0a9dff', 39]
+
+" This one's from Mustang, not Florida!
+let s:bwc.orange = ['ffa724', 214]
+
+" A limier green from Getafe.
+let s:bwc.lime = ['aeee00', 154]
+
+" Rose's dress in The Idiot's Lantern.
+let s:bwc.dress = ['ff9eb8', 211]
+
+" Another play on the brown from Clouds Midnight. I love that color.
+let s:bwc.toffee = ['b88853', 137]
+
+" Also based on that Clouds Midnight brown.
+let s:bwc.coffee = ['c7915b', 173]
+let s:bwc.darkroast = ['88633f', 95]
+
+" }}}
+" Highlighting Function {{{
+function! s:HL(group, fg, ...)
+ " Arguments: group, guifg, guibg, gui, guisp
+
+ let histring = 'hi ' . a:group . ' '
+
+ if strlen(a:fg)
+ if a:fg == 'fg'
+ let histring .= 'guifg=fg ctermfg=fg '
+ else
+ let c = get(s:bwc, a:fg)
+ let histring .= 'guifg=#' . c[0] . ' ctermfg=' . c[1] . ' '
+ endif
+ endif
+
+ if a:0 >= 1 && strlen(a:1)
+ if a:1 == 'bg'
+ let histring .= 'guibg=bg ctermbg=bg '
+ else
+ let c = get(s:bwc, a:1)
+ let histring .= 'guibg=#' . c[0] . ' ctermbg=' . c[1] . ' '
+ endif
+ endif
+
+ if a:0 >= 2 && strlen(a:2)
+ let histring .= 'gui=' . a:2 . ' cterm=' . a:2 . ' '
+ endif
+
+ if a:0 >= 3 && strlen(a:3)
+ let c = get(s:bwc, a:3)
+ let histring .= 'guisp=#' . c[0] . ' '
+ endif
+
+ " echom histring
+
+ execute histring
+endfunction
+" }}}
+" Configuration Options {{{
+
+if exists('g:badwolf_darkgutter') && g:badwolf_darkgutter
+ let s:gutter = 'blackestgravel'
+else
+ let s:gutter = 'blackgravel'
+endif
+
+if exists('g:badwolf_tabline')
+ if g:badwolf_tabline == 0
+ let s:tabline = 'blackestgravel'
+ elseif g:badwolf_tabline == 1
+ let s:tabline = 'blackgravel'
+ elseif g:badwolf_tabline == 2
+ let s:tabline = 'darkgravel'
+ elseif g:badwolf_tabline == 3
+ let s:tabline = 'deepgravel'
+ else
+ let s:tabline = 'blackestgravel'
+ endif
+else
+ let s:tabline = 'blackgravel'
+endif
+
+" }}}
+
+" Actual colorscheme ----------------------------------------------------------
+" Vanilla Vim {{{
+
+" General/UI {{{
+
+call s:HL('Normal', 'plain', 'blackgravel')
+
+call s:HL('Folded', 'mediumgravel', 'bg', 'none')
+
+call s:HL('VertSplit', 'lightgravel', 'bg', 'none')
+
+call s:HL('CursorLine', '', 'darkgravel', 'none')
+call s:HL('CursorColumn', '', 'darkgravel')
+call s:HL('ColorColumn', '', 'darkgravel')
+
+call s:HL('TabLine', 'plain', s:tabline, 'none')
+call s:HL('TabLineFill', 'plain', s:tabline, 'none')
+call s:HL('TabLineSel', 'coal', 'tardis', 'none')
+
+call s:HL('MatchParen', 'dalespale', 'darkgravel', 'bold')
+
+call s:HL('NonText', 'deepgravel', 'bg')
+call s:HL('SpecialKey', 'deepgravel', 'bg')
+
+call s:HL('Visual', '', 'deepgravel')
+call s:HL('VisualNOS', '', 'deepgravel')
+
+call s:HL('Search', 'coal', 'dalespale', 'bold')
+call s:HL('IncSearch', 'coal', 'tardis', 'bold')
+
+call s:HL('Underlined', 'fg', '', 'underline')
+
+call s:HL('StatusLine', 'coal', 'tardis', 'bold')
+call s:HL('StatusLineNC', 'snow', 'deepgravel', 'bold')
+
+call s:HL('Directory', 'dirtyblonde', '', 'bold')
+
+call s:HL('Title', 'lime')
+
+call s:HL('ErrorMsg', 'taffy', 'bg', 'bold')
+call s:HL('MoreMsg', 'dalespale', '', 'bold')
+call s:HL('ModeMsg', 'dirtyblonde', '', 'bold')
+call s:HL('Question', 'dirtyblonde', '', 'bold')
+call s:HL('WarningMsg', 'dress', '', 'bold')
+
+" This is a ctags tag, not an HTML one. 'Something you can use c-] on'.
+call s:HL('Tag', '', '', 'bold')
+
+" hi IndentGuides guibg=#373737
+" hi WildMenu guifg=#66D9EF guibg=#000000
+
+" }}}
+" Gutter {{{
+
+call s:HL('LineNr', 'mediumgravel', s:gutter)
+call s:HL('SignColumn', '', s:gutter)
+call s:HL('FoldColumn', 'mediumgravel', s:gutter)
+
+" }}}
+" Cursor {{{
+
+call s:HL('Cursor', 'coal', 'tardis', 'bold')
+call s:HL('vCursor', 'coal', 'tardis', 'bold')
+call s:HL('iCursor', 'coal', 'tardis', 'none')
+
+" }}}
+" Syntax highlighting {{{
+
+" Start with a simple base.
+call s:HL('Special', 'plain')
+
+" Comments are slightly brighter than folds, to make 'headers' easier to see.
+call s:HL('Comment', 'gravel')
+call s:HL('Todo', 'snow', 'bg', 'bold')
+call s:HL('SpecialComment', 'snow', 'bg', 'bold')
+
+" Strings are a nice, pale straw color. Nothing too fancy.
+call s:HL('String', 'dirtyblonde')
+
+" Control flow stuff is taffy.
+call s:HL('Statement', 'taffy', '', 'bold')
+call s:HL('Keyword', 'taffy', '', 'bold')
+call s:HL('Conditional', 'taffy', '', 'bold')
+call s:HL('Operator', 'taffy', '', 'none')
+call s:HL('Label', 'taffy', '', 'none')
+call s:HL('Repeat', 'taffy', '', 'none')
+
+" Functions and variable declarations are orange, because plain looks weird.
+call s:HL('Identifier', 'orange', '', 'none')
+call s:HL('Function', 'orange', '', 'none')
+
+" Preprocessor stuff is lime, to make it pop.
+"
+" This includes imports in any given language, because they should usually be
+" grouped together at the beginning of a file. If they're in the middle of some
+" other code they should stand out, because something tricky is
+" probably going on.
+call s:HL('PreProc', 'lime', '', 'none')
+call s:HL('Macro', 'lime', '', 'none')
+call s:HL('Define', 'lime', '', 'none')
+call s:HL('PreCondit', 'lime', '', 'bold')
+
+" Constants of all kinds are colored together.
+" I'm not really happy with the color yet...
+call s:HL('Constant', 'toffee', '', 'bold')
+call s:HL('Character', 'toffee', '', 'bold')
+call s:HL('Boolean', 'toffee', '', 'bold')
+
+call s:HL('Number', 'toffee', '', 'bold')
+call s:HL('Float', 'toffee', '', 'bold')
+
+" Not sure what 'special character in a constant' means, but let's make it pop.
+call s:HL('SpecialChar', 'dress', '', 'bold')
+
+call s:HL('Type', 'dress', '', 'none')
+call s:HL('StorageClass', 'taffy', '', 'none')
+call s:HL('Structure', 'taffy', '', 'none')
+call s:HL('Typedef', 'taffy', '', 'bold')
+
+" Make try/catch blocks stand out.
+call s:HL('Exception', 'lime', '', 'bold')
+
+" Misc
+call s:HL('Error', 'snow', 'taffy', 'bold')
+call s:HL('Debug', 'snow', '', 'bold')
+call s:HL('Ignore', 'gravel', '', '')
+
+" }}}
+" Completion Menu {{{
+
+call s:HL('Pmenu', 'plain', 'deepergravel')
+call s:HL('PmenuSel', 'coal', 'tardis', 'bold')
+call s:HL('PmenuSbar', '', 'deepergravel')
+call s:HL('PmenuThumb', 'brightgravel')
+
+" }}}
+" Diffs {{{
+
+call s:HL('DiffDelete', 'coal', 'coal')
+call s:HL('DiffAdd', '', 'deepergravel')
+call s:HL('DiffChange', '', 'darkgravel')
+call s:HL('DiffText', 'snow', 'deepergravel', 'bold')
+
+" }}}
+" Spelling {{{
+
+if has("spell")
+ call s:HL('SpellCap', 'dalespale', 'bg', 'undercurl,bold', 'dalespale')
+ call s:HL('SpellBad', '', 'bg', 'undercurl', 'dalespale')
+ call s:HL('SpellLocal', '', '', 'undercurl', 'dalespale')
+ call s:HL('SpellRare', '', '', 'undercurl', 'dalespale')
+endif
+
+" }}}
+
+" }}}
+" Plugins {{{
+
+" CtrlP {{{
+
+ " the message when no match is found
+ call s:HL('CtrlPNoEntries', 'snow', 'taffy', 'bold')
+
+ " the matched pattern
+ call s:HL('CtrlPMatch', 'orange', 'bg', 'none')
+
+ " the line prefix '>' in the match window
+ call s:HL('CtrlPLinePre', 'deepgravel', 'bg', 'none')
+
+ " the prompt’s base
+ call s:HL('CtrlPPrtBase', 'deepgravel', 'bg', 'none')
+
+ " the prompt’s text
+ call s:HL('CtrlPPrtText', 'plain', 'bg', 'none')
+
+ " the prompt’s cursor when moving over the text
+ call s:HL('CtrlPPrtCursor', 'coal', 'tardis', 'bold')
+
+ " 'prt' or 'win', also for 'regex'
+ call s:HL('CtrlPMode1', 'coal', 'tardis', 'bold')
+
+ " 'file' or 'path', also for the local working dir
+ call s:HL('CtrlPMode2', 'coal', 'tardis', 'bold')
+
+ " the scanning status
+ call s:HL('CtrlPStats', 'coal', 'tardis', 'bold')
+
+ " TODO: CtrlP extensions.
+ " CtrlPTabExtra : the part of each line that’s not matched against (Comment)
+ " CtrlPqfLineCol : the line and column numbers in quickfix mode (|s:HL-Search|)
+ " CtrlPUndoT : the elapsed time in undo mode (|s:HL-Directory|)
+ " CtrlPUndoBr : the square brackets [] in undo mode (Comment)
+ " CtrlPUndoNr : the undo number inside [] in undo mode (String)
+
+" }}}
+" EasyMotion {{{
+
+call s:HL('EasyMotionTarget', 'tardis', 'bg', 'bold')
+call s:HL('EasyMotionShade', 'deepgravel', 'bg')
+
+" }}}
+" Interesting Words {{{
+
+" These are only used if you're me or have copied the hNUM mappings
+" from my Vimrc.
+call s:HL('InterestingWord1', 'coal', 'orange')
+call s:HL('InterestingWord2', 'coal', 'lime')
+call s:HL('InterestingWord3', 'coal', 'saltwatertaffy')
+call s:HL('InterestingWord4', 'coal', 'toffee')
+call s:HL('InterestingWord5', 'coal', 'dress')
+call s:HL('InterestingWord6', 'coal', 'taffy')
+
+
+" }}}
+" Makegreen {{{
+
+" hi GreenBar term=reverse ctermfg=white ctermbg=green guifg=coal guibg=#9edf1c
+" hi RedBar term=reverse ctermfg=white ctermbg=red guifg=white guibg=#C50048
+
+" }}}
+" Rainbow Parentheses {{{
+
+call s:HL('level16c', 'mediumgravel', '', 'bold')
+call s:HL('level15c', 'dalespale', '', '')
+call s:HL('level14c', 'dress', '', '')
+call s:HL('level13c', 'orange', '', '')
+call s:HL('level12c', 'tardis', '', '')
+call s:HL('level11c', 'lime', '', '')
+call s:HL('level10c', 'toffee', '', '')
+call s:HL('level9c', 'saltwatertaffy', '', '')
+call s:HL('level8c', 'coffee', '', '')
+call s:HL('level7c', 'dalespale', '', '')
+call s:HL('level6c', 'dress', '', '')
+call s:HL('level5c', 'orange', '', '')
+call s:HL('level4c', 'tardis', '', '')
+call s:HL('level3c', 'lime', '', '')
+call s:HL('level2c', 'toffee', '', '')
+call s:HL('level1c', 'saltwatertaffy', '', '')
+
+" }}}
+" ShowMarks {{{
+
+call s:HL('ShowMarksHLl', 'tardis', 'blackgravel')
+call s:HL('ShowMarksHLu', 'tardis', 'blackgravel')
+call s:HL('ShowMarksHLo', 'tardis', 'blackgravel')
+call s:HL('ShowMarksHLm', 'tardis', 'blackgravel')
+
+" }}}
+
+" }}}
+" Filetype-specific {{{
+
+" Clojure {{{
+
+call s:HL('clojureSpecial', 'taffy', '', '')
+call s:HL('clojureDefn', 'taffy', '', '')
+call s:HL('clojureDefMacro', 'taffy', '', '')
+call s:HL('clojureDefine', 'taffy', '', '')
+call s:HL('clojureMacro', 'taffy', '', '')
+call s:HL('clojureCond', 'taffy', '', '')
+
+call s:HL('clojureKeyword', 'orange', '', 'none')
+
+call s:HL('clojureFunc', 'dress', '', 'none')
+call s:HL('clojureRepeat', 'dress', '', 'none')
+
+call s:HL('clojureParen0', 'lightgravel', '', 'none')
+
+call s:HL('clojureAnonArg', 'snow', '', 'bold')
+
+" }}}
+" Common Lisp {{{
+
+call s:HL('lispFunc', 'lime', '', 'none')
+call s:HL('lispVar', 'orange', '', 'bold')
+call s:HL('lispEscapeSpecial', 'orange', '', 'none')
+
+" }}}
+" CSS {{{
+
+if g:badwolf_css_props_highlight
+ call s:HL('cssColorProp', 'taffy', '', 'none')
+ call s:HL('cssBoxProp', 'taffy', '', 'none')
+ call s:HL('cssTextProp', 'taffy', '', 'none')
+ call s:HL('cssRenderProp', 'taffy', '', 'none')
+ call s:HL('cssGeneratedContentProp', 'taffy', '', 'none')
+else
+ call s:HL('cssColorProp', 'fg', '', 'none')
+ call s:HL('cssBoxProp', 'fg', '', 'none')
+ call s:HL('cssTextProp', 'fg', '', 'none')
+ call s:HL('cssRenderProp', 'fg', '', 'none')
+ call s:HL('cssGeneratedContentProp', 'fg', '', 'none')
+end
+
+call s:HL('cssValueLength', 'toffee', '', 'bold')
+call s:HL('cssColor', 'toffee', '', 'bold')
+call s:HL('cssBraces', 'lightgravel', '', 'none')
+call s:HL('cssIdentifier', 'orange', '', 'bold')
+call s:HL('cssClassName', 'orange', '', 'none')
+
+" }}}
+" Diff {{{
+
+call s:HL('gitDiff', 'lightgravel', '',)
+
+call s:HL('diffRemoved', 'dress', '',)
+call s:HL('diffAdded', 'lime', '',)
+call s:HL('diffFile', 'coal', 'taffy', 'bold')
+call s:HL('diffNewFile', 'coal', 'taffy', 'bold')
+
+call s:HL('diffLine', 'coal', 'orange', 'bold')
+call s:HL('diffSubname', 'orange', '', 'none')
+
+" }}}
+" Django Templates {{{
+
+call s:HL('djangoArgument', 'dirtyblonde', '',)
+call s:HL('djangoTagBlock', 'orange', '')
+call s:HL('djangoVarBlock', 'orange', '')
+" hi djangoStatement guifg=#ff3853 gui=bold
+" hi djangoVarBlock guifg=#f4cf86
+
+" }}}
+" HTML {{{
+
+" Punctuation
+call s:HL('htmlTag', 'darkroast', 'bg', 'none')
+call s:HL('htmlEndTag', 'darkroast', 'bg', 'none')
+
+" Tag names
+call s:HL('htmlTagName', 'coffee', '', 'bold')
+call s:HL('htmlSpecialTagName', 'coffee', '', 'bold')
+call s:HL('htmlSpecialChar', 'lime', '', 'none')
+
+" Attributes
+call s:HL('htmlArg', 'coffee', '', 'none')
+
+" Stuff inside an tag
+
+if g:badwolf_html_link_underline
+ call s:HL('htmlLink', 'lightgravel', '', 'underline')
+else
+ call s:HL('htmlLink', 'lightgravel', '', 'none')
+endif
+
+" }}}
+" Java {{{
+
+call s:HL('javaClassDecl', 'taffy', '', 'bold')
+call s:HL('javaScopeDecl', 'taffy', '', 'bold')
+call s:HL('javaCommentTitle', 'gravel', '')
+call s:HL('javaDocTags', 'snow', '', 'none')
+call s:HL('javaDocParam', 'dalespale', '', '')
+
+" }}}
+" LaTeX {{{
+
+call s:HL('texStatement', 'tardis', '', 'none')
+call s:HL('texMathZoneX', 'orange', '', 'none')
+call s:HL('texMathZoneA', 'orange', '', 'none')
+call s:HL('texMathZoneB', 'orange', '', 'none')
+call s:HL('texMathZoneC', 'orange', '', 'none')
+call s:HL('texMathZoneD', 'orange', '', 'none')
+call s:HL('texMathZoneE', 'orange', '', 'none')
+call s:HL('texMathZoneV', 'orange', '', 'none')
+call s:HL('texMathZoneX', 'orange', '', 'none')
+call s:HL('texMath', 'orange', '', 'none')
+call s:HL('texMathMatcher', 'orange', '', 'none')
+call s:HL('texRefLabel', 'dirtyblonde', '', 'none')
+call s:HL('texRefZone', 'lime', '', 'none')
+call s:HL('texComment', 'darkroast', '', 'none')
+call s:HL('texDelimiter', 'orange', '', 'none')
+call s:HL('texZone', 'brightgravel', '', 'none')
+
+augroup badwolf_tex
+ au!
+
+ au BufRead,BufNewFile *.tex syn region texMathZoneV start="\\(" end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup
+ au BufRead,BufNewFile *.tex syn region texMathZoneX start="\$" skip="\\\\\|\\\$" end="\$\|%stopzone\>" keepend contains=@texMathZoneGroup
+augroup END
+
+" }}}
+" LessCSS {{{
+
+call s:HL('lessVariable', 'lime', '', 'none')
+
+" }}}
+" Lispyscript {{{
+
+call s:HL('lispyscriptDefMacro', 'lime', '', '')
+call s:HL('lispyscriptRepeat', 'dress', '', 'none')
+
+" }}}
+" REPLs {{{
+" This isn't a specific plugin, but just useful highlight classes for anything
+" that might want to use them.
+
+call s:HL('replPrompt', 'tardis', '', 'bold')
+
+" }}}
+" Mail {{{
+
+call s:HL('mailSubject', 'orange', '', 'bold')
+call s:HL('mailHeader', 'lightgravel', '', '')
+call s:HL('mailHeaderKey', 'lightgravel', '', '')
+call s:HL('mailHeaderEmail', 'snow', '', '')
+call s:HL('mailURL', 'toffee', '', 'underline')
+call s:HL('mailSignature', 'gravel', '', 'none')
+
+call s:HL('mailQuoted1', 'gravel', '', 'none')
+call s:HL('mailQuoted2', 'dress', '', 'none')
+call s:HL('mailQuoted3', 'dirtyblonde', '', 'none')
+call s:HL('mailQuoted4', 'orange', '', 'none')
+call s:HL('mailQuoted5', 'lime', '', 'none')
+
+" }}}
+" Markdown {{{
+
+call s:HL('markdownHeadingRule', 'lightgravel', '', 'bold')
+call s:HL('markdownHeadingDelimiter', 'lightgravel', '', 'bold')
+call s:HL('markdownOrderedListMarker', 'lightgravel', '', 'bold')
+call s:HL('markdownListMarker', 'lightgravel', '', 'bold')
+call s:HL('markdownItalic', 'snow', '', 'bold')
+call s:HL('markdownBold', 'snow', '', 'bold')
+call s:HL('markdownH1', 'orange', '', 'bold')
+call s:HL('markdownH2', 'lime', '', 'bold')
+call s:HL('markdownH3', 'lime', '', 'none')
+call s:HL('markdownH4', 'lime', '', 'none')
+call s:HL('markdownH5', 'lime', '', 'none')
+call s:HL('markdownH6', 'lime', '', 'none')
+call s:HL('markdownLinkText', 'toffee', '', 'underline')
+call s:HL('markdownIdDeclaration', 'toffee')
+call s:HL('markdownAutomaticLink', 'toffee', '', 'bold')
+call s:HL('markdownUrl', 'toffee', '', 'bold')
+call s:HL('markdownUrldelimiter', 'lightgravel', '', 'bold')
+call s:HL('markdownLinkDelimiter', 'lightgravel', '', 'bold')
+call s:HL('markdownLinkTextDelimiter', 'lightgravel', '', 'bold')
+call s:HL('markdownCodeDelimiter', 'dirtyblonde', '', 'bold')
+call s:HL('markdownCode', 'dirtyblonde', '', 'none')
+call s:HL('markdownCodeBlock', 'dirtyblonde', '', 'none')
+
+" }}}
+" MySQL {{{
+
+call s:HL('mysqlSpecial', 'dress', '', 'bold')
+
+" }}}
+" Python {{{
+
+hi def link pythonOperator Operator
+call s:HL('pythonBuiltin', 'dress')
+call s:HL('pythonBuiltinObj', 'dress')
+call s:HL('pythonBuiltinFunc', 'dress')
+call s:HL('pythonEscape', 'dress')
+call s:HL('pythonException', 'lime', '', 'bold')
+call s:HL('pythonExceptions', 'lime', '', 'none')
+call s:HL('pythonPrecondit', 'lime', '', 'none')
+call s:HL('pythonDecorator', 'taffy', '', 'none')
+call s:HL('pythonRun', 'gravel', '', 'bold')
+call s:HL('pythonCoding', 'gravel', '', 'bold')
+
+" }}}
+" SLIMV {{{
+
+" Rainbow parentheses
+call s:HL('hlLevel0', 'gravel')
+call s:HL('hlLevel1', 'orange')
+call s:HL('hlLevel2', 'saltwatertaffy')
+call s:HL('hlLevel3', 'dress')
+call s:HL('hlLevel4', 'coffee')
+call s:HL('hlLevel5', 'dirtyblonde')
+call s:HL('hlLevel6', 'orange')
+call s:HL('hlLevel7', 'saltwatertaffy')
+call s:HL('hlLevel8', 'dress')
+call s:HL('hlLevel9', 'coffee')
+
+" }}}
+" Vim {{{
+
+call s:HL('VimCommentTitle', 'lightgravel', '', 'bold')
+
+call s:HL('VimMapMod', 'dress', '', 'none')
+call s:HL('VimMapModKey', 'dress', '', 'none')
+call s:HL('VimNotation', 'dress', '', 'none')
+call s:HL('VimBracket', 'dress', '', 'none')
+
+" }}}
+
+" }}}
+
diff --git a/.vim/colors/goodwolf.vim b/.vim/colors/goodwolf.vim
new file mode 100644
index 0000000..61d24e0
--- /dev/null
+++ b/.vim/colors/goodwolf.vim
@@ -0,0 +1,523 @@
+" _ _ __
+" | | | |/ _|
+" __ _ ___ ___ __| | __ _____ | | |_
+" / _` |/ _ \ / _ \ / _` | \ \ /\ / / _ \| | _|
+" | (_| | (_) | (_) | (_| | \ 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! GoodWolfHL(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 GoodWolfHL('Normal', 'plain', 'blackgravel')
+call GoodWolfHL('Normal', 'plain', 'blackestgravel')
+
+call GoodWolfHL('Folded', 'mediumgravel', 'bg', 'none')
+
+call GoodWolfHL('VertSplit', 'lightgravel', 'bg', 'none')
+
+call GoodWolfHL('CursorLine', '', 'darkgravel', 'none')
+call GoodWolfHL('CursorColumn', '', 'darkgravel')
+call GoodWolfHL('ColorColumn', '', 'darkgravel')
+
+call GoodWolfHL('TabLine', 'plain', s:tabline, 'none')
+call GoodWolfHL('TabLineFill', 'plain', s:tabline, 'none')
+call GoodWolfHL('TabLineSel', 'coal', 'tardis', 'none')
+
+call GoodWolfHL('MatchParen', 'dalespale', 'darkgravel', 'bold')
+
+call GoodWolfHL('NonText', 'deepgravel', 'bg')
+call GoodWolfHL('SpecialKey', 'deepgravel', 'bg')
+
+call GoodWolfHL('Visual', '', 'deepgravel')
+call GoodWolfHL('VisualNOS', '', 'deepgravel')
+
+call GoodWolfHL('Search', 'coal', 'dalespale', 'bold')
+call GoodWolfHL('IncSearch', 'coal', 'tardis', 'bold')
+
+call GoodWolfHL('Underlined', 'fg', '', 'underline')
+
+call GoodWolfHL('StatusLine', 'coal', 'tardis', 'bold')
+call GoodWolfHL('StatusLineNC', 'snow', 'deepgravel', 'none')
+
+call GoodWolfHL('Directory', 'dirtyblonde', '', 'bold')
+
+call GoodWolfHL('Title', 'lime')
+
+call GoodWolfHL('ErrorMsg', 'taffy', 'bg', 'bold')
+call GoodWolfHL('MoreMsg', 'dalespale', '', 'bold')
+call GoodWolfHL('ModeMsg', 'dirtyblonde', '', 'bold')
+call GoodWolfHL('Question', 'dirtyblonde', '', 'bold')
+call GoodWolfHL('WarningMsg', 'dress', '', 'bold')
+
+" This is a ctags tag, not an HTML one. 'Something you can use c-] on'.
+call GoodWolfHL('Tag', '', '', 'bold')
+
+" }}}
+" Gutter {{{
+
+call GoodWolfHL('LineNr', 'mediumgravel', s:gutter)
+call GoodWolfHL('SignColumn', '', s:gutter)
+call GoodWolfHL('FoldColumn', 'mediumgravel', s:gutter)
+
+" }}}
+" Cursor {{{
+
+call GoodWolfHL('Cursor', 'coal', 'tardis', 'bold')
+call GoodWolfHL('vCursor', 'coal', 'tardis', 'bold')
+call GoodWolfHL('iCursor', 'coal', 'tardis', 'none')
+
+" }}}
+" Syntax highlighting {{{
+
+" Start with a simple base.
+call GoodWolfHL('Special', 'plain')
+
+" Comments are slightly brighter than folds, to make 'headers' easier to see.
+call GoodWolfHL('Comment', 'gravel', 'bg', 'none')
+call GoodWolfHL('Todo', 'snow', 'bg', 'bold')
+call GoodWolfHL('SpecialComment', 'snow', 'bg', 'bold')
+
+" Strings are highlighted separately.
+call GoodWolfHL('String', 'lightgravel', '', 'bold')
+
+" Turn off everything else
+call GoodWolfHL('Statement', 'plain', '', 'none')
+call GoodWolfHL('Keyword', 'plain', '', 'none')
+call GoodWolfHL('Conditional', 'plain', '', 'none')
+call GoodWolfHL('Operator', 'plain', '', 'none')
+call GoodWolfHL('Label', 'plain', '', 'none')
+call GoodWolfHL('Repeat', 'plain', '', 'none')
+call GoodWolfHL('Identifier', 'plain', '', 'none')
+call GoodWolfHL('Function', 'plain', '', 'none')
+call GoodWolfHL('PreProc', 'plain', '', 'none')
+call GoodWolfHL('Macro', 'plain', '', 'none')
+call GoodWolfHL('Define', 'plain', '', 'none')
+call GoodWolfHL('PreCondit', 'plain', '', 'none')
+call GoodWolfHL('Constant', 'plain', '', 'none')
+call GoodWolfHL('Character', 'plain', '', 'none')
+call GoodWolfHL('Boolean', 'plain', '', 'none')
+call GoodWolfHL('Number', 'plain', '', 'none')
+call GoodWolfHL('Float', 'plain', '', 'none')
+call GoodWolfHL('Type', 'plain', '', 'none')
+call GoodWolfHL('StorageClass', 'plain', '', 'none')
+call GoodWolfHL('Structure', 'plain', '', 'none')
+call GoodWolfHL('Typedef', 'plain', '', 'none')
+call GoodWolfHL('Exception', 'plain', '', 'none')
+
+" Not sure what 'special character in a constant' means, but let's make it pop.
+call GoodWolfHL('SpecialChar', 'plain', '', 'bold')
+
+" Misc
+call GoodWolfHL('Error', 'snow', 'taffy', 'bold')
+call GoodWolfHL('Debug', 'snow', '', 'bold')
+call GoodWolfHL('Ignore', 'gravel', '', '')
+
+" }}}
+" Completion Menu {{{
+
+call GoodWolfHL('Pmenu', 'plain', 'deepergravel')
+call GoodWolfHL('PmenuSel', 'coal', 'tardis', 'bold')
+call GoodWolfHL('PmenuSbar', '', 'deepergravel')
+call GoodWolfHL('PmenuThumb', 'brightgravel')
+
+" }}}
+" Diffs {{{
+
+call GoodWolfHL('DiffDelete', 'coal', 'coal')
+call GoodWolfHL('DiffAdd', '', 'deepergravel')
+call GoodWolfHL('DiffChange', '', 'darkgravel')
+call GoodWolfHL('DiffText', 'snow', 'deepergravel', 'bold')
+
+" }}}
+" Spelling {{{
+
+if has("spell")
+ call GoodWolfHL('SpellCap', 'dalespale', 'bg', 'undercurl,bold', 'dalespale')
+ call GoodWolfHL('SpellBad', '', 'bg', 'undercurl', 'dalespale')
+ call GoodWolfHL('SpellLocal', '', '', 'undercurl', 'dalespale')
+ call GoodWolfHL('SpellRare', '', '', 'undercurl', 'dalespale')
+endif
+
+" }}}
+" Status Line Utils {{{
+
+call GoodWolfHL('GWStatusLineMode', 'coal', 'lime')
+call GoodWolfHL('GWStatusLineModeX', 'lime', 'deepergravel')
+
+
+" }}}
+
+" }}}
+" Plugins {{{
+
+" Clam {{{
+
+" hg status
+call GoodWolfHL('clamHgStatusAdded', 'lime', '', 'none')
+call GoodWolfHL('clamHgStatusModified', 'saltwatertaffy', '', 'none')
+call GoodWolfHL('clamHgStatusRemoved', 'toffee', '', 'none')
+call GoodWolfHL('clamHgStatusUnknown', 'taffy', '', 'bold')
+
+" }}}
+" CtrlP {{{
+
+" the message when no match is found
+call GoodWolfHL('CtrlPNoEntries', 'snow', 'taffy', 'bold')
+
+" the matched pattern
+call GoodWolfHL('CtrlPMatch', 'dress', 'bg', 'bold')
+
+" the line prefix '>' in the match window
+call GoodWolfHL('CtrlPLinePre', 'deepgravel', 'bg', 'none')
+
+" the prompt’s base
+call GoodWolfHL('CtrlPPrtBase', 'deepgravel', 'bg', 'none')
+
+" the prompt’s text
+call GoodWolfHL('CtrlPPrtText', 'plain', 'bg', 'none')
+
+" the prompt’s cursor when moving over the text
+call GoodWolfHL('CtrlPPrtCursor', 'coal', 'tardis', 'bold')
+
+" 'prt' or 'win', also for 'regex'
+call GoodWolfHL('CtrlPMode1', 'coal', 'tardis', 'bold')
+
+" 'file' or 'path', also for the local working dir
+call GoodWolfHL('CtrlPMode2', 'coal', 'tardis', 'bold')
+
+" the scanning status
+call GoodWolfHL('CtrlPStats', 'coal', 'tardis', 'bold')
+
+" }}}
+" Interesting Words {{{
+
+" These are only used if you're me or have copied the hNUM mappings
+" from my Vimrc.
+call GoodWolfHL('InterestingWord1', 'coal', 'orange')
+call GoodWolfHL('InterestingWord2', 'coal', 'lime')
+call GoodWolfHL('InterestingWord3', 'coal', 'saltwatertaffy')
+call GoodWolfHL('InterestingWord4', 'coal', 'toffee')
+call GoodWolfHL('InterestingWord5', 'coal', 'dress')
+call GoodWolfHL('InterestingWord6', 'coal', 'taffy')
+
+" }}}
+" Rainbow Parentheses {{{
+
+call GoodWolfHL('level1c', 'mediumgravel', '', 'bold')
+
+" }}}
+
+" }}}
+" Filetype-specific {{{
+
+" Clojure {{{
+
+call GoodWolfHL('clojureParen0', 'lightgravel', '', 'none')
+call GoodWolfHL('clojureAnonArg', 'snow', '', 'bold')
+
+" }}}
+" CSS {{{
+
+call GoodWolfHL('cssBraces', 'lightgravel', '', 'none')
+
+" }}}
+" Diff {{{
+
+call GoodWolfHL('gitDiff', 'lightgravel', '',)
+
+call GoodWolfHL('diffRemoved', 'dress', '',)
+call GoodWolfHL('diffAdded', 'lime', '',)
+call GoodWolfHL('diffFile', 'coal', 'toffee', 'bold')
+call GoodWolfHL('diffNewFile', 'coal', 'toffee', 'bold')
+
+call GoodWolfHL('diffLine', 'coal', 'orange', 'bold')
+call GoodWolfHL('diffSubname', 'orange', '', 'none')
+
+" }}}
+" HTML {{{
+
+" Punctuation
+call GoodWolfHL('htmlTag', 'darkroast', 'bg', 'none')
+call GoodWolfHL('htmlEndTag', 'darkroast', 'bg', 'none')
+
+" Tag names
+call GoodWolfHL('htmlTagName', 'coffee', '', 'bold')
+call GoodWolfHL('htmlSpecialTagName', 'coffee', '', 'bold')
+call GoodWolfHL('htmlSpecialChar', 'lime', '', 'none')
+
+" Attributes
+call GoodWolfHL('htmlArg', 'coffee', '', 'none')
+
+" Stuff inside an tag
+
+if g:badwolf_html_link_underline
+ call GoodWolfHL('htmlLink', 'lightgravel', '', 'underline')
+else
+ call GoodWolfHL('htmlLink', 'lightgravel', '', 'none')
+endif
+
+" }}}
+" Java {{{
+
+call GoodWolfHL('javaCommentTitle', 'gravel', '')
+call GoodWolfHL('javaDocTags', 'snow', '', 'none')
+call GoodWolfHL('javaDocParam', 'plain', '', '')
+
+" }}}
+" LaTeX {{{
+
+call GoodWolfHL('texStatement', 'dress', '', 'none')
+call GoodWolfHL('texDocType', 'dress', '', 'none')
+call GoodWolfHL('texSection', 'dress', '', 'none')
+call GoodWolfHL('texBeginEnd', 'dress', '', 'none')
+
+call GoodWolfHL('texMathZoneX', 'orange', '', 'none')
+call GoodWolfHL('texMathZoneA', 'orange', '', 'none')
+call GoodWolfHL('texMathZoneB', 'orange', '', 'none')
+call GoodWolfHL('texMathZoneC', 'orange', '', 'none')
+call GoodWolfHL('texMathZoneD', 'orange', '', 'none')
+call GoodWolfHL('texMathZoneE', 'orange', '', 'none')
+call GoodWolfHL('texMathZoneV', 'orange', '', 'none')
+call GoodWolfHL('texMathZoneX', 'orange', '', 'none')
+call GoodWolfHL('texMath', 'orange', '', 'none')
+call GoodWolfHL('texMathMatcher', 'orange', '', 'none')
+call GoodWolfHL('texRefLabel', 'dirtyblonde', '', 'none')
+call GoodWolfHL('texRefZone', 'lime', '', 'none')
+call GoodWolfHL('texDelimiter', 'orange', '', 'none')
+call GoodWolfHL('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 GoodWolfHL('replPrompt', 'tardis', '', 'bold')
+
+" }}}
+" Mail {{{
+
+call GoodWolfHL('mailSubject', 'orange', '', 'bold')
+call GoodWolfHL('mailHeader', 'lightgravel', '', '')
+call GoodWolfHL('mailHeaderKey', 'lightgravel', '', '')
+call GoodWolfHL('mailHeaderEmail', 'snow', '', '')
+call GoodWolfHL('mailURL', 'toffee', '', 'underline')
+call GoodWolfHL('mailSignature', 'gravel', '', 'none')
+
+call GoodWolfHL('mailQuoted1', 'gravel', '', 'none')
+call GoodWolfHL('mailQuoted2', 'dress', '', 'none')
+call GoodWolfHL('mailQuoted3', 'dirtyblonde', '', 'none')
+call GoodWolfHL('mailQuoted4', 'orange', '', 'none')
+call GoodWolfHL('mailQuoted5', 'lime', '', 'none')
+
+" }}}
+" Markdown {{{
+
+call GoodWolfHL('markdownHeadingRule', 'lightgravel', '', 'bold')
+call GoodWolfHL('markdownHeadingDelimiter', 'lightgravel', '', 'bold')
+call GoodWolfHL('markdownOrderedListMarker', 'lightgravel', '', 'bold')
+call GoodWolfHL('markdownListMarker', 'lightgravel', '', 'bold')
+call GoodWolfHL('markdownItalic', 'snow', '', 'bold')
+call GoodWolfHL('markdownBold', 'snow', '', 'bold')
+call GoodWolfHL('markdownH1', 'orange', '', 'bold')
+call GoodWolfHL('markdownH2', 'lime', '', 'bold')
+call GoodWolfHL('markdownH3', 'lime', '', 'none')
+call GoodWolfHL('markdownH4', 'lime', '', 'none')
+call GoodWolfHL('markdownH5', 'lime', '', 'none')
+call GoodWolfHL('markdownH6', 'lime', '', 'none')
+call GoodWolfHL('markdownLinkText', 'toffee', '', 'underline')
+call GoodWolfHL('markdownIdDeclaration', 'toffee')
+call GoodWolfHL('markdownAutomaticLink', 'toffee', '', 'bold')
+call GoodWolfHL('markdownUrl', 'toffee', '', 'bold')
+call GoodWolfHL('markdownUrldelimiter', 'lightgravel', '', 'bold')
+call GoodWolfHL('markdownLinkDelimiter', 'lightgravel', '', 'bold')
+call GoodWolfHL('markdownLinkTextDelimiter', 'lightgravel', '', 'bold')
+call GoodWolfHL('markdownCodeDelimiter', 'dirtyblonde', '', 'bold')
+call GoodWolfHL('markdownCode', 'dirtyblonde', '', 'none')
+call GoodWolfHL('markdownCodeBlock', 'dirtyblonde', '', 'none')
+
+" }}}
+" Python {{{
+
+hi def link pythonOperator Operator
+call GoodWolfHL('pythonBuiltin', 'plain')
+call GoodWolfHL('pythonBuiltinObj', 'plain')
+call GoodWolfHL('pythonBuiltinFunc', 'plain')
+call GoodWolfHL('pythonEscape', 'plain')
+call GoodWolfHL('pythonException', 'plain', '', 'none')
+call GoodWolfHL('pythonExceptions', 'plain', '', 'none')
+call GoodWolfHL('pythonPrecondit', 'plain', '', 'none')
+call GoodWolfHL('pythonDecorator', 'plain', '', 'none')
+call GoodWolfHL('pythonRun', 'plain', '', 'none')
+call GoodWolfHL('pythonCoding', 'plain', '', 'bold')
+
+" }}}
+" Vim {{{
+
+call GoodWolfHL('helpHyperTextJump', 'dress', '', 'none')
+
+" }}}
+
+" }}}
+
+
diff --git a/.vim/colors/ps_color.vim b/.vim/colors/ps_color.vim
new file mode 100644
index 0000000..0aea4f1
--- /dev/null
+++ b/.vim/colors/ps_color.vim
@@ -0,0 +1,538 @@
+" Vim colour file --- PSC
+" Maintainer: Pan, Shi Zhu
+" URL: http://vim.sourceforge.net/scripts/script.php?script_id=760
+" Last Change: 23 Oct 2006
+" Version: 3.00
+"
+" Please prepend [VIM] in the title when writing e-mail to me, or it will
+" be automatically treated as spam and removed.
+"
+" See the help document for all details, the help document will be
+" installed after the script has been sourced once, do not open the
+" script when you source it for the first time.
+"
+
+" Initializations: {{{1
+"
+
+" without user_commands, all these are not possible
+if !has("user_commands")
+ finish
+end
+
+" Init the option to the default value if not defined by user.
+function! s:init_option(var, value)
+ if !exists("g:psc_".a:var)
+ execute "let s:".a:var." = ".a:value
+ else
+ let s:{a:var} = g:psc_{a:var}
+ endif
+endfunction
+command! -nargs=+ InitOpt call s:init_option()
+
+" give highlight setting to multiple highlight groups, maximum 20
+function! s:multi_hi(setting, ...)
+ let l:idx = a:0
+ while l:idx > 0
+ let l:hlgroup = a:{l:idx}
+ execute "highlight ".l:hlgroup." ".a:setting
+ let l:idx = l:idx - 1
+ endwhile
+endfunction
+command! -nargs=+ MultiHi call s:multi_hi()
+
+InitOpt style 'cool'
+InitOpt cterm_transparent 0
+InitOpt inversed_todo 0
+InitOpt use_default_for_cterm 0
+InitOpt statement_different_from_type 0
+
+if !has("gui_running")
+ call s:init_option("cterm_style", "'".s:style."'")
+
+ if s:use_default_for_cterm==1 | let s:cterm_style = 'default'
+ elseif s:use_default_for_cterm==2 | let s:cterm_style = 'defdark'
+ endif
+endif
+
+
+InitOpt other_style 0
+
+" WJMc had changed a version of this, however, it will messed up some features
+" when the psc_style being other values than 'warm' and 'cool'. The psc_style
+" is designed to accept any colorscheme name, such as 'desert'. The following
+" code follows the basic principle of WJMc's code.
+if &background=='light'
+ if has("gui_running")
+ if s:style=='warm' || s:style=='default'
+ " nothing to do
+ elseif s:style=='cool'
+ let s:style = 'warm'
+ elseif s:style=='defdark'
+ let s:style = 'default'
+ else
+ let s:other_style = 1
+ endif
+ else
+ if s:cterm_style=='cool' || s:cterm_style=='defdark' || s:cterm_style=='warm'
+ let s:cterm_style='default'
+ elseif s:cterm_style=='default'
+ " nothing to do
+ else
+ let s:other_style = 1
+ endif
+ endif
+elseif &background=='dark'
+ if s:style=='warm'
+ let s:style = 'cool'
+ elseif s:style=='default'
+ let s:style = 'defdark'
+ elseif s:style=='cool' || s:style=='defdark'
+ " nothing to do
+ else
+ let s:other_style = 1
+ endif
+ let s:cterm_style = s:style
+else
+ echo "unrecognized background=" &background ", ps_color halt.\n"
+ finish
+endif
+
+" This should be after the style mangling
+if s:style == 'warm'
+ InitOpt fontface 'mixed'
+else
+ InitOpt fontface 'plain'
+endif
+
+
+" === Traditional Color Scheme script starts here. ===
+highlight clear
+
+if exists("syntax_on")
+ syntax reset
+endif
+
+let s:color_name = expand(":t:r")
+
+if s:other_style==0
+ let g:colors_name = s:color_name
+ " Go from console version to gui, the color scheme should be sourced again
+ execute "autocmd TermChanged * if g:colors_name == '".s:color_name."' | "
+ \."colo ".s:color_name." | endif"
+else
+ execute "runtime colors/".s:style.".vim"
+endif
+
+" Command to go different schemes easier.
+" This is a multi-purpose command, might be a poor design.
+" WJMc had a change for this, but the 'reloaded' style and other colorscheme
+" cannot be launched that way.
+execute "command! -nargs=1 Colo if '".s:color_name."'!=\"\" |".
+ \'let g:psc_style = ""| endif |'.
+ \'if g:psc_style=="warm" | set background=light | endif |'.
+ \'if g:psc_style=="cool" | set background=dark | endif |'.
+ \'colo '.s:color_name
+
+" Give control to 'reloaded' scheme if possible
+if s:style == 'reloaded'
+ finish
+endif
+
+" }}}1
+
+" Relevant Help:
+" :h highlight-groups
+" :h psc-cterm-color-table
+" :ru syntax/hitest.vim
+"
+" Hard coded Colors Comment:
+" #aabbcc = Red aa, Green bb, Blue cc
+" we must use hard-coded colours to get more 'tender' colours
+"
+
+
+" GUI:
+"
+" I don't want to abuse folding, but here folding is used to avoid confusion.
+if s:style=='warm'
+ " Warm style for gui here {{{2
+ " LIGHT COLOR DEFINE START
+
+ highlight Normal guifg=#000000 guibg=#e0e0e0
+ highlight Search guifg=NONE guibg=#f8f8f8
+ highlight Visual guifg=NONE guibg=#a6caf0
+ highlight Cursor guifg=#f0f0f0 guibg=#008000
+ " The idea of CursorIM is pretty good, however, the feature is still buggy
+ " in the current version (Vim 7.0).
+ " The following line will be kept commented until the bug fixed.
+ "
+ " highlight CursorIM guifg=#f0f0f0 guibg=#800080
+ highlight Special guifg=#907000 guibg=NONE
+ highlight Comment guifg=#606000 guibg=NONE
+ highlight Number guifg=#907000 guibg=NONE
+ highlight Constant guifg=#007068 guibg=NONE
+ highlight StatusLine guifg=fg guibg=#a6caf0
+ highlight LineNr guifg=#686868 guibg=NONE
+ highlight Question guifg=fg guibg=#d0d090
+ highlight PreProc guifg=#009030 guibg=NONE
+ if s:statement_different_from_type==1
+ highlight Statement guifg=#4020a0 guibg=NONE
+ else
+ highlight Statement guifg=#2060a8 guibg=NONE
+ endif
+ highlight Type guifg=#0850a0 guibg=NONE
+ if s:inversed_todo==1
+ highlight Todo guifg=#e0e090 guibg=#000080
+ else
+ highlight Todo guifg=#800000 guibg=#e0e090
+ endif
+ " NOTE THIS IS IN THE WARM SECTION
+ highlight Error guifg=#c03000 guibg=NONE
+ highlight Identifier guifg=#a030a0 guibg=NONE
+ highlight ModeMsg guifg=fg guibg=#b0b0e0
+ highlight VisualNOS guifg=fg guibg=#b0b0e0
+ highlight SpecialKey guifg=#1050a0 guibg=NONE
+ highlight NonText guifg=#002090 guibg=#d0d0d0
+ highlight Directory guifg=#a030a0 guibg=NONE
+ highlight ErrorMsg guifg=fg guibg=#f0b090
+ highlight MoreMsg guifg=#489000 guibg=NONE
+ highlight Title guifg=#a030a0 guibg=NONE
+ highlight WarningMsg guifg=#b02000 guibg=NONE
+ highlight WildMenu guifg=fg guibg=#d0d090
+ highlight Folded guifg=NONE guibg=#b0e0b0
+ highlight FoldColumn guifg=fg guibg=#90e090
+ highlight DiffAdd guifg=NONE guibg=#b0b0e0
+ highlight DiffChange guifg=NONE guibg=#e0b0e0
+ highlight DiffDelete guifg=#002090 guibg=#d0d0d0
+ highlight DiffText guifg=NONE guibg=#c0e080
+ highlight SignColumn guifg=fg guibg=#90e090
+ highlight IncSearch guifg=#f0f0f0 guibg=#806060
+ highlight StatusLineNC guifg=fg guibg=#c0c0c0
+ highlight VertSplit guifg=fg guibg=#c0c0c0
+ highlight Underlined guifg=#6a5acd guibg=NONE gui=underline
+ highlight Ignore guifg=bg guibg=NONE
+ " NOTE THIS IS IN THE WARM SECTION
+ if v:version >= 700
+ if has('spell')
+ highlight SpellBad guifg=NONE guibg=NONE guisp=#c03000
+ highlight SpellCap guifg=NONE guibg=NONE guisp=#2060a8
+ highlight SpellRare guifg=NONE guibg=NONE guisp=#a030a0
+ highlight SpellLocal guifg=NONE guibg=NONE guisp=#007068
+ endif
+ highlight Pmenu guifg=fg guibg=#e0b0e0
+ highlight PmenuSel guifg=#f0f0f0 guibg=#806060
+ highlight PmenuSbar guifg=fg guibg=#c0c0c0
+ highlight PmenuThumb guifg=fg guibg=#c0e080
+ highlight TabLine guifg=fg guibg=#c0c0c0 gui=underline
+ highlight TabLineFill guifg=fg guibg=#c0c0c0 gui=underline
+ highlight TabLineSel guifg=fg guibg=NONE
+ highlight CursorColumn guifg=NONE guibg=#f0b090
+ highlight CursorLine guifg=NONE guibg=NONE gui=underline
+ highlight MatchParen guifg=NONE guibg=#c0e080
+ endif
+
+ " LIGHT COLOR DEFINE END
+ " }}}2
+elseif s:style=='cool'
+ " Cool style for gui here {{{2
+ " DARK COLOR DEFINE START
+
+ highlight Normal guifg=#d0d0d0 guibg=#202020
+ highlight Comment guifg=#d0d090 guibg=NONE
+ highlight Constant guifg=#80c0e0 guibg=NONE
+ highlight Number guifg=#e0c060 guibg=NONE
+ highlight Identifier guifg=#f0c0f0 guibg=NONE
+ if s:statement_different_from_type==1
+ highlight Statement guifg=#98a8f0 guibg=NONE
+ else
+ highlight Statement guifg=#c0d8f8 guibg=NONE
+ endif
+ highlight PreProc guifg=#60f080 guibg=NONE
+ highlight Type guifg=#b0d0f0 guibg=NONE
+ highlight Special guifg=#e0c060 guibg=NONE
+ highlight Error guifg=#f08060 guibg=NONE
+ if s:inversed_todo==1
+ highlight Todo guifg=#d0d090 guibg=#000080
+ else
+ highlight Todo guifg=#800000 guibg=#d0d090
+ endif
+ highlight Search guifg=NONE guibg=#800000
+ highlight Visual guifg=#000000 guibg=#a6caf0
+ highlight Cursor guifg=#000000 guibg=#00f000
+ " NOTE THIS IS IN THE COOL SECTION
+ " highlight CursorIM guifg=#000000 guibg=#f000f0
+ highlight StatusLine guifg=#000000 guibg=#a6caf0
+ highlight LineNr guifg=#b0b0b0 guibg=NONE
+ highlight Question guifg=#000000 guibg=#d0d090
+ highlight ModeMsg guifg=fg guibg=#000080
+ highlight VisualNOS guifg=fg guibg=#000080
+ highlight SpecialKey guifg=#b0d0f0 guibg=NONE
+ highlight NonText guifg=#6080f0 guibg=#101010
+ highlight Directory guifg=#80c0e0 guibg=NONE
+ highlight ErrorMsg guifg=#d0d090 guibg=#800000
+ highlight MoreMsg guifg=#c0e080 guibg=NONE
+ highlight Title guifg=#f0c0f0 guibg=NONE
+ highlight WarningMsg guifg=#f08060 guibg=NONE
+ highlight WildMenu guifg=#000000 guibg=#d0d090
+ highlight Folded guifg=NONE guibg=#004000
+ highlight FoldColumn guifg=#e0e0e0 guibg=#008000
+ highlight DiffAdd guifg=NONE guibg=#000080
+ highlight DiffChange guifg=NONE guibg=#800080
+ highlight DiffDelete guifg=#6080f0 guibg=#202020
+ highlight DiffText guifg=#000000 guibg=#c0e080
+ highlight SignColumn guifg=#e0e0e0 guibg=#008000
+ highlight IncSearch guifg=#000000 guibg=#d0d0d0
+ highlight StatusLineNC guifg=#000000 guibg=#c0c0c0
+ highlight VertSplit guifg=#000000 guibg=#c0c0c0
+ highlight Underlined guifg=#80a0ff guibg=NONE gui=underline
+ highlight Ignore guifg=#000000 guibg=NONE
+ " NOTE THIS IS IN THE COOL SECTION
+ if v:version >= 700
+ if has('spell')
+ highlight SpellBad guifg=NONE guibg=NONE guisp=#f08060
+ highlight SpellCap guifg=NONE guibg=NONE guisp=#6080f0
+ highlight SpellRare guifg=NONE guibg=NONE guisp=#f0c0f0
+ highlight SpellLocal guifg=NONE guibg=NONE guisp=#c0d8f8
+ endif
+ highlight Pmenu guifg=fg guibg=#800080
+ highlight PmenuSel guifg=#000000 guibg=#d0d0d0
+ highlight PmenuSbar guifg=fg guibg=#000080
+ highlight PmenuThumb guifg=fg guibg=#008000
+ highlight TabLine guifg=fg guibg=#008000 gui=underline
+ highlight TabLineFill guifg=fg guibg=#008000 gui=underline
+ highlight TabLineSel guifg=fg guibg=NONE
+ highlight CursorColumn guifg=NONE guibg=#800000
+ highlight CursorLine guifg=NONE guibg=NONE gui=underline
+ highlight MatchParen guifg=NONE guibg=#800080
+ endif
+
+ " DARK COLOR DEFINE END
+ " }}}2
+elseif s:style=='defdark'
+ highlight Normal guifg=#f0f0f0 guibg=#000000
+endif
+
+" Take NT gui for example, If you want to use a console font such as
+" Lucida_Console with font size larger than 14, the font looks already thick,
+" and the bold font for that will be too thick, you may not want it be bold.
+" The following code does this.
+"
+" All of the bold font may be disabled, since continuously switching between
+" bold and plain font hurts consistency and will inevitably fatigue your eye!
+
+" Maximum 20 parameters for vim script function
+"
+MultiHi gui=NONE ModeMsg Search Cursor Special Comment Constant Number LineNr Question PreProc Statement Type Todo Error Identifier Normal
+
+MultiHi gui=NONE VisualNOS SpecialKey NonText Directory ErrorMsg MoreMsg Title WarningMsg WildMenu Folded FoldColumn DiffAdd DiffChange DiffDelete DiffText SignColumn
+
+" Vim 7 added stuffs
+if v:version >= 700
+ MultiHi gui=NONE Ignore PmenuSel PmenuSel PmenuSbar PmenuThumb TabLine TabLineFill TabLineSel
+
+ " the gui=undercurl guisp could only support in Vim 7
+ if has('spell')
+ MultiHi gui=undercurl SpellBad SpellCap SpellRare SpellLocal
+ endif
+ if s:style=="cool" || s:style=="warm"
+ MultiHi gui=underline TabLine TabLineFill Underlined CursorLine
+ else
+ MultiHi gui=underline TabLine Underlined
+ endif
+endif
+
+" For reversed stuffs
+MultiHi gui=NONE IncSearch StatusLine StatusLineNC VertSplit Visual
+
+if s:style=="cool" || s:style=="warm"
+ if s:fontface=="mixed"
+ MultiHi gui=bold IncSearch StatusLine StatusLineNC VertSplit Visual
+ endif
+else
+ if s:fontface=="mixed"
+ hi StatusLine gui=bold,reverse
+ else
+ hi StatusLine gui=reverse
+ endif
+ MultiHi gui=reverse IncSearch StatusLineNC VertSplit Visual
+endif
+
+" Enable the bold style
+if s:fontface=="mixed"
+ MultiHi gui=bold Question DiffText Statement Type MoreMsg ModeMsg NonText Title VisualNOS DiffDelete TabLineSel
+endif
+
+
+
+
+" Color Term:
+
+" It's not quite possible to support 'cool' and 'warm' simultaneously, since
+" we cannot expect a terminal to have more than 16 color names.
+"
+
+" I assume Vim will never go to cterm mode when has("gui_running") returns 1,
+" Please enlighten me if I am wrong.
+"
+if !has('gui_running')
+ " cterm settings {{{1
+ if s:cterm_style=='cool'
+
+ if s:cterm_transparent
+ highlight Normal ctermfg=LightGrey ctermbg=NONE
+ highlight Special ctermfg=Yellow ctermbg=NONE
+ highlight Comment ctermfg=DarkYellow ctermbg=NONE
+ highlight Constant ctermfg=Blue ctermbg=NONE
+ highlight Number ctermfg=Yellow ctermbg=NONE
+ highlight LineNr ctermfg=DarkGrey ctermbg=NONE
+ highlight PreProc ctermfg=Green ctermbg=NONE
+ highlight Statement ctermfg=Cyan ctermbg=NONE
+ highlight Type ctermfg=Cyan ctermbg=NONE
+ highlight Error ctermfg=Red ctermbg=NONE
+ highlight Identifier ctermfg=Magenta ctermbg=NONE
+ highlight SpecialKey ctermfg=Cyan ctermbg=NONE
+ highlight NonText ctermfg=Blue ctermbg=NONE
+ highlight Directory ctermfg=Blue ctermbg=NONE
+ highlight MoreMsg ctermfg=Green ctermbg=NONE
+ highlight Title ctermfg=Magenta ctermbg=NONE
+ highlight WarningMsg ctermfg=Red ctermbg=NONE
+ highlight DiffDelete ctermfg=Blue ctermbg=NONE
+ else
+ highlight Normal ctermfg=LightGrey ctermbg=Black
+ highlight Special ctermfg=Yellow ctermbg=bg
+ highlight Comment ctermfg=DarkYellow ctermbg=bg
+ highlight Constant ctermfg=Blue ctermbg=bg
+ highlight Number ctermfg=Yellow ctermbg=bg
+ highlight LineNr ctermfg=DarkGrey ctermbg=bg
+ highlight PreProc ctermfg=Green ctermbg=bg
+ highlight Statement ctermfg=Cyan ctermbg=bg
+ highlight Type ctermfg=Cyan ctermbg=bg
+ highlight Error ctermfg=Red ctermbg=bg
+ highlight Identifier ctermfg=Magenta ctermbg=bg
+ highlight SpecialKey ctermfg=Cyan ctermbg=bg
+ highlight NonText ctermfg=Blue ctermbg=bg
+ highlight Directory ctermfg=Blue ctermbg=bg
+ highlight MoreMsg ctermfg=Green ctermbg=bg
+ highlight Title ctermfg=Magenta ctermbg=bg
+ highlight WarningMsg ctermfg=Red ctermbg=bg
+ highlight DiffDelete ctermfg=Blue ctermbg=bg
+ endif
+ highlight Search ctermfg=NONE ctermbg=DarkRed
+ highlight Visual ctermfg=Black ctermbg=DarkCyan
+ highlight Cursor ctermfg=Black ctermbg=Green
+ highlight StatusLine ctermfg=Black ctermbg=DarkCyan
+ highlight Question ctermfg=Black ctermbg=DarkYellow
+ if s:inversed_todo==0
+ highlight Todo ctermfg=DarkRed ctermbg=DarkYellow
+ else
+ highlight Todo ctermfg=DarkYellow ctermbg=DarkBlue
+ endif
+ highlight Folded ctermfg=White ctermbg=DarkGreen
+ highlight ModeMsg ctermfg=Grey ctermbg=DarkBlue
+ highlight VisualNOS ctermfg=Grey ctermbg=DarkBlue
+ highlight ErrorMsg ctermfg=DarkYellow ctermbg=DarkRed
+ highlight WildMenu ctermfg=Black ctermbg=DarkYellow
+ highlight FoldColumn ctermfg=White ctermbg=DarkGreen
+ highlight SignColumn ctermfg=White ctermbg=DarkGreen
+ highlight DiffText ctermfg=Black ctermbg=DarkYellow
+
+ if v:version >= 700
+ if has('spell')
+ highlight SpellBad ctermfg=NONE ctermbg=DarkRed
+ highlight SpellCap ctermfg=NONE ctermbg=DarkBlue
+ highlight SpellRare ctermfg=NONE ctermbg=DarkMagenta
+ highlight SpellLocal ctermfg=NONE ctermbg=DarkGreen
+ endif
+ highlight Pmenu ctermfg=fg ctermbg=DarkMagenta
+ highlight PmenuSel ctermfg=Black ctermbg=fg
+ highlight PmenuSbar ctermfg=fg ctermbg=DarkBlue
+ highlight PmenuThumb ctermfg=fg ctermbg=DarkGreen
+ highlight TabLine ctermfg=fg ctermbg=DarkGreen cterm=underline
+ highlight TabLineFill ctermfg=fg ctermbg=DarkGreen cterm=underline
+ highlight CursorColumn ctermfg=NONE ctermbg=DarkRed
+ if s:cterm_transparent
+ highlight TabLineSel ctermfg=fg ctermbg=NONE
+ highlight CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
+ else
+ highlight TabLineSel ctermfg=fg ctermbg=bg
+ highlight CursorLine ctermfg=NONE ctermbg=bg cterm=underline
+ endif
+ highlight MatchParen ctermfg=NONE ctermbg=DarkMagenta
+ endif
+ if &t_Co==8
+ " 8 colour terminal support, this assumes 16 colour is available through
+ " setting the 'bold' attribute, will get bright foreground colour.
+ " However, the bright background color is not available for 8-color terms.
+ "
+ " You can manually set t_Co=16 in your .vimrc to see if your terminal
+ " supports 16 colours,
+ MultiHi cterm=none DiffText Visual Cursor Comment Todo StatusLine Question DiffChange ModeMsg VisualNOS ErrorMsg WildMenu DiffAdd Folded DiffDelete Normal PmenuThumb
+ MultiHi cterm=bold Search Special Constant Number LineNr PreProc Statement Type Error Identifier SpecialKey NonText MoreMsg Title WarningMsg FoldColumn SignColumn Directory DiffDelete
+
+ else
+ " Background > 7 is only available with 16 or more colors
+
+ " Only use the s:fontface option when there is 16-colour(or more)
+ " terminal support
+
+ MultiHi cterm=none WarningMsg Search Visual Cursor Special Comment Constant Number LineNr PreProc Todo Error Identifier Folded SpecialKey Directory ErrorMsg Normal PmenuThumb
+ MultiHi cterm=none WildMenu FoldColumn SignColumn DiffAdd DiffChange Question StatusLine DiffText
+ MultiHi cterm=reverse IncSearch StatusLineNC VertSplit
+
+ " Well, well, bold font with color 0-7 is not possible.
+ " So, the Question, StatusLine, DiffText cannot act as expected.
+
+ call s:multi_hi("cterm=".((s:fontface=="plain") ? "none" : "bold"), "Statement", "Type", "MoreMsg", "ModeMsg", "NonText", "Title", "VisualNOS", "DiffDelete", "TabLineSel")
+
+ endif
+
+ elseif s:cterm_style=='defdark'
+ highlight Normal ctermfg=LightGrey ctermbg=NONE
+ endif
+ " }}}1
+endif
+
+
+" Term:
+" For console with only 4 colours (term, not cterm), we'll use the default.
+" ...
+" The default colorscheme is good enough for terms with no more than 4 colours
+"
+
+
+" Links:
+"
+if (s:style=='cool') || (s:style == 'warm')
+ " COLOR LINKS DEFINE START
+
+ highlight link String Constant
+ " Character must be different from strings because in many languages
+ " (especially C, C++) a 'char' variable is scalar while 'string' is pointer,
+ " mistaken a 'char' for a 'string' will cause disaster!
+ highlight link Character Number
+ highlight link SpecialChar LineNr
+ highlight link Tag Identifier
+ " The following are not standard hi links,
+ " these are used by DrChip
+ highlight link Warning MoreMsg
+ highlight link Notice Constant
+ " these are used by Calendar
+ highlight link CalToday PreProc
+ " these are used by TagList
+ highlight link MyTagListTagName IncSearch
+ highlight link MyTagListTagScope Constant
+
+ " COLOR LINKS DEFINE END
+endif
+
+
+" Clean:
+" these clean stuffs are proved to have problem, so I removed them.
+delcommand InitOpt
+delcommand MultiHi
+" delfunction init_option
+" delfunction multi_hi
+
+" vim:et:nosta:sw=2:ts=8:
+" vim600:fdm=marker:fdl=1:
diff --git a/.vim/colors/solarized.vim b/.vim/colors/solarized.vim
new file mode 100644
index 0000000..70f5223
--- /dev/null
+++ b/.vim/colors/solarized.vim
@@ -0,0 +1,1117 @@
+" Name: Solarized vim colorscheme
+" Author: Ethan Schoonover
+" URL: http://ethanschoonover.com/solarized
+" (see this url for latest release & screenshots)
+" License: OSI approved MIT license (see end of this file)
+" Created: In the middle of the night
+" Modified: 2011 May 05
+"
+" Usage "{{{
+"
+" ---------------------------------------------------------------------
+" ABOUT:
+" ---------------------------------------------------------------------
+" Solarized is a carefully designed selective contrast colorscheme with dual
+" light and dark modes that runs in both GUI, 256 and 16 color modes.
+"
+" See the homepage above for screenshots and details.
+"
+" ---------------------------------------------------------------------
+" OPTIONS:
+" ---------------------------------------------------------------------
+" See the "solarized.txt" help file included with this colorscheme (in the
+" "doc" subdirectory) for information on options, usage, the Toggle Background
+" function and more. If you have already installed Solarized, this is available
+" from the Solarized menu and command line as ":help solarized"
+"
+" ---------------------------------------------------------------------
+" INSTALLATION:
+" ---------------------------------------------------------------------
+" Two options for installation: manual or pathogen
+"
+" MANUAL INSTALLATION OPTION:
+" ---------------------------------------------------------------------
+"
+" 1. Download the solarized distribution (available on the homepage above)
+" and unarchive the file.
+" 2. Move `solarized.vim` to your `.vim/colors` directory.
+" 3. Move each of the files in each subdirectories to the corresponding .vim
+" subdirectory (e.g. autoload/togglebg.vim goes into your .vim/autoload
+" directory as .vim/autoload/togglebg.vim).
+"
+" RECOMMENDED PATHOGEN INSTALLATION OPTION:
+" ---------------------------------------------------------------------
+"
+" 1. Download and install Tim Pope's Pathogen from:
+" https://github.com/tpope/vim-pathogen
+"
+" 2. Next, move or clone the `vim-colors-solarized` directory so that it is
+" a subdirectory of the `.vim/bundle` directory.
+"
+" a. **clone with git:**
+"
+" $ cd ~/.vim/bundle
+" $ git clone git://github.com/altercation/vim-colors-solarized.git
+"
+" b. **or move manually into the pathogen bundle directory:**
+" In the parent directory of vim-colors-solarized:
+"
+" $ mv vim-colors-solarized ~/.vim/bundle/
+"
+" MODIFY VIMRC:
+"
+" After either Option 1 or Option 2 above, put the following two lines in your
+" .vimrc:
+"
+" syntax enable
+" set background=dark
+" colorscheme solarized
+"
+" or, for the light background mode of Solarized:
+"
+" syntax enable
+" set background=light
+" colorscheme solarized
+"
+" I like to have a different background in GUI and terminal modes, so I can use
+" the following if-then. However, I find vim's background autodetection to be
+" pretty good and, at least with MacVim, I can leave this background value
+" assignment out entirely and get the same results.
+"
+" if has('gui_running')
+" set background=light
+" else
+" set background=dark
+" endif
+"
+" See the Solarized homepage at http://ethanschoonover.com/solarized for
+" screenshots which will help you select either the light or dark background.
+"
+" ---------------------------------------------------------------------
+" COLOR VALUES
+" ---------------------------------------------------------------------
+" Download palettes and files from: http://ethanschoonover.com/solarized
+"
+" L\*a\*b values are canonical (White D65, Reference D50), other values are
+" matched in sRGB space.
+"
+" SOLARIZED HEX 16/8 TERMCOL XTERM/HEX L*A*B sRGB HSB
+" --------- ------- ---- ------- ----------- ---------- ----------- -----------
+" base03 #002b36 8/4 brblack 234 #1c1c1c 15 -12 -12 0 43 54 193 100 21
+" base02 #073642 0/4 black 235 #262626 20 -12 -12 7 54 66 192 90 26
+" base01 #586e75 10/7 brgreen 240 #4e4e4e 45 -07 -07 88 110 117 194 25 46
+" base00 #657b83 11/7 bryellow 241 #585858 50 -07 -07 101 123 131 195 23 51
+" base0 #839496 12/6 brblue 244 #808080 60 -06 -03 131 148 150 186 13 59
+" base1 #93a1a1 14/4 brcyan 245 #8a8a8a 65 -05 -02 147 161 161 180 9 63
+" base2 #eee8d5 7/7 white 254 #d7d7af 92 -00 10 238 232 213 44 11 93
+" base3 #fdf6e3 15/7 brwhite 230 #ffffd7 97 00 10 253 246 227 44 10 99
+" yellow #b58900 3/3 yellow 136 #af8700 60 10 65 181 137 0 45 100 71
+" orange #cb4b16 9/3 brred 166 #d75f00 50 50 55 203 75 22 18 89 80
+" red #dc322f 1/1 red 160 #d70000 50 65 45 220 50 47 1 79 86
+" magenta #d33682 5/5 magenta 125 #af005f 50 65 -05 211 54 130 331 74 83
+" violet #6c71c4 13/5 brmagenta 61 #5f5faf 50 15 -45 108 113 196 237 45 77
+" blue #268bd2 4/4 blue 33 #0087ff 55 -10 -45 38 139 210 205 82 82
+" cyan #2aa198 6/6 cyan 37 #00afaf 60 -35 -05 42 161 152 175 74 63
+" green #859900 2/2 green 64 #5f8700 60 -20 65 133 153 0 68 100 60
+"
+" ---------------------------------------------------------------------
+" COLORSCHEME HACKING
+" ---------------------------------------------------------------------
+"
+" Useful commands for testing colorschemes:
+" :source $VIMRUNTIME/syntax/hitest.vim
+" :help highlight-groups
+" :help cterm-colors
+" :help group-name
+"
+" Useful links for developing colorschemes:
+" http://www.vim.org/scripts/script.php?script_id=2937
+" http://vimcasts.org/episodes/creating-colorschemes-for-vim/
+" http://www.frexx.de/xterm-256-notes/"
+"
+" }}}
+" Environment Specific Overrides "{{{
+" Allow or disallow certain features based on current terminal emulator or
+" environment.
+
+" Terminals that support italics
+let s:terms_italic=[
+ \"rxvt",
+ \"gnome-terminal"
+ \]
+" For reference only, terminals are known to be incomptible.
+" Terminals that are in neither list need to be tested.
+let s:terms_noitalic=[
+ \"iTerm.app",
+ \"Apple_Terminal"
+ \]
+if has("gui_running")
+ let s:terminal_italic=1 " TODO: could refactor to not require this at all
+else
+ let s:terminal_italic=0 " terminals will be guilty until proven compatible
+ for term in s:terms_italic
+ if $TERM_PROGRAM =~ term
+ let s:terminal_italic=1
+ endif
+ endfor
+endif
+
+" }}}
+" Default option values"{{{
+" ---------------------------------------------------------------------
+" s:options_list is used to autogenerate a list of all non-default options
+" using "call SolarizedOptions()" or with the "Generate .vimrc commands"
+" Solarized menu option. See the "Menus" section below for the function itself.
+let s:options_list=[
+ \'" this block of commands has been autogenerated by solarized.vim and',
+ \'" includes the current, non-default Solarized option values.',
+ \'" To use, place these commands in your .vimrc file (replacing any',
+ \'" existing colorscheme commands). See also ":help solarized"',
+ \'',
+ \'" ------------------------------------------------------------------',
+ \'" Solarized Colorscheme Config',
+ \'" ------------------------------------------------------------------',
+ \]
+let s:colorscheme_list=[
+ \'syntax enable',
+ \'set background='.&background,
+ \'colorscheme solarized',
+ \]
+let s:defaults_list=[
+ \'" ------------------------------------------------------------------',
+ \'',
+ \'" The following items are available options, but do not need to be',
+ \'" included in your .vimrc as they are currently set to their defaults.',
+ \''
+ \]
+let s:lazycat_list=[
+ \'" lazy method of appending this onto your .vimrc ":w! >> ~/.vimrc"',
+ \'" ------------------------------------------------------------------',
+ \]
+
+function! s:SetOption(name,default)
+ if type(a:default) == type(0)
+ let l:wrap=''
+ let l:ewrap=''
+ else
+ let l:wrap='"'
+ let l:ewrap='\"'
+ endif
+ if !exists("g:solarized_".a:name) || g:solarized_{a:name}==a:default
+ exe 'let g:solarized_'.a:name.'='.l:wrap.a:default.l:wrap.'"'
+ exe 'call add(s:defaults_list, "\" let g:solarized_'.a:name.'='.l:ewrap.g:solarized_{a:name}.l:ewrap.'")'
+ else
+ exe 'call add(s:options_list, "let g:solarized_'.a:name.'='.l:ewrap.g:solarized_{a:name}.l:ewrap.' \"default value is '.a:default.'")'
+ endif
+endfunction
+
+if ($TERM_PROGRAM ==? "apple_terminal" && &t_Co < 256)
+ let s:solarized_termtrans_default = 1
+else
+ let s:solarized_termtrans_default = 0
+endif
+call s:SetOption("termtrans",s:solarized_termtrans_default)
+call s:SetOption("degrade",0)
+call s:SetOption("bold",1)
+call s:SetOption("underline",1)
+call s:SetOption("italic",1) " note that we need to override this later if the terminal doesn't support
+call s:SetOption("termcolors",16)
+call s:SetOption("contrast","normal")
+call s:SetOption("visibility","normal")
+call s:SetOption("diffmode","normal")
+call s:SetOption("hitrail",0)
+call s:SetOption("menu",1)
+
+"}}}
+" Colorscheme initialization "{{{
+" ---------------------------------------------------------------------
+hi clear
+if exists("syntax_on")
+ syntax reset
+endif
+let colors_name = "solarized"
+
+"}}}
+" GUI & CSApprox hexadecimal palettes"{{{
+" ---------------------------------------------------------------------
+"
+" Set both gui and terminal color values in separate conditional statements
+" Due to possibility that CSApprox is running (though I suppose we could just
+" leave the hex values out entirely in that case and include only cterm colors)
+" We also check to see if user has set solarized (force use of the
+" neutral gray monotone palette component)
+if (has("gui_running") && g:solarized_degrade == 0)
+ let s:vmode = "gui"
+ let s:base03 = "#002b36"
+ let s:base02 = "#073642"
+ let s:base01 = "#586e75"
+ let s:base00 = "#657b83"
+ let s:base0 = "#839496"
+ let s:base1 = "#93a1a1"
+ let s:base2 = "#eee8d5"
+ let s:base3 = "#fdf6e3"
+ let s:yellow = "#b58900"
+ let s:orange = "#cb4b16"
+ let s:red = "#dc322f"
+ let s:magenta = "#d33682"
+ let s:violet = "#6c71c4"
+ let s:blue = "#268bd2"
+ let s:cyan = "#2aa198"
+ "let s:green = "#859900" "original
+ let s:green = "#719e07" "experimental
+elseif (has("gui_running") && g:solarized_degrade == 1)
+ " These colors are identical to the 256 color mode. They may be viewed
+ " while in gui mode via "let g:solarized_degrade=1", though this is not
+ " recommened and is for testing only.
+ let s:vmode = "gui"
+ let s:base03 = "#1c1c1c"
+ let s:base02 = "#262626"
+ let s:base01 = "#4e4e4e"
+ let s:base00 = "#585858"
+ let s:base0 = "#808080"
+ let s:base1 = "#8a8a8a"
+ let s:base2 = "#d7d7af"
+ let s:base3 = "#ffffd7"
+ let s:yellow = "#af8700"
+ let s:orange = "#d75f00"
+ let s:red = "#af0000"
+ let s:magenta = "#af005f"
+ let s:violet = "#5f5faf"
+ let s:blue = "#0087ff"
+ let s:cyan = "#00afaf"
+ let s:green = "#5f8700"
+elseif g:solarized_termcolors != 256 && &t_Co >= 16
+ let s:vmode = "cterm"
+ let s:base03 = "8"
+ let s:base02 = "0"
+ let s:base01 = "10"
+ let s:base00 = "11"
+ let s:base0 = "12"
+ let s:base1 = "14"
+ let s:base2 = "7"
+ let s:base3 = "15"
+ let s:yellow = "3"
+ let s:orange = "9"
+ let s:red = "1"
+ let s:magenta = "5"
+ let s:violet = "13"
+ let s:blue = "4"
+ let s:cyan = "6"
+ let s:green = "2"
+elseif g:solarized_termcolors == 256
+ let s:vmode = "cterm"
+ let s:base03 = "234"
+ let s:base02 = "235"
+ let s:base01 = "239"
+ let s:base00 = "240"
+ let s:base0 = "244"
+ let s:base1 = "245"
+ let s:base2 = "187"
+ let s:base3 = "230"
+ let s:yellow = "136"
+ let s:orange = "166"
+ let s:red = "124"
+ let s:magenta = "125"
+ let s:violet = "61"
+ let s:blue = "33"
+ let s:cyan = "37"
+ let s:green = "64"
+else
+ let s:vmode = "cterm"
+ let s:bright = "* term=bold cterm=bold"
+" let s:base03 = "0".s:bright
+" let s:base02 = "0"
+" let s:base01 = "2".s:bright
+" let s:base00 = "3".s:bright
+" let s:base0 = "4".s:bright
+" let s:base1 = "6".s:bright
+" let s:base2 = "7"
+" let s:base3 = "7".s:bright
+" let s:yellow = "3"
+" let s:orange = "1".s:bright
+" let s:red = "1"
+" let s:magenta = "5"
+" let s:violet = "5".s:bright
+" let s:blue = "4"
+" let s:cyan = "6"
+" let s:green = "2"
+ let s:base03 = "DarkGray" " 0*
+ let s:base02 = "Black" " 0
+ let s:base01 = "LightGreen" " 2*
+ let s:base00 = "LightYellow" " 3*
+ let s:base0 = "LightBlue" " 4*
+ let s:base1 = "LightCyan" " 6*
+ let s:base2 = "LightGray" " 7
+ let s:base3 = "White" " 7*
+ let s:yellow = "DarkYellow" " 3
+ let s:orange = "LightRed" " 1*
+ let s:red = "DarkRed" " 1
+ let s:magenta = "DarkMagenta" " 5
+ let s:violet = "LightMagenta" " 5*
+ let s:blue = "DarkBlue" " 4
+ let s:cyan = "DarkCyan" " 6
+ let s:green = "DarkGreen" " 2
+
+endif
+"}}}
+" Formatting options and null values for passthrough effect "{{{
+" ---------------------------------------------------------------------
+ let s:none = "NONE"
+ let s:none = "NONE"
+ let s:t_none = "NONE"
+ let s:n = "NONE"
+ let s:c = ",undercurl"
+ let s:r = ",reverse"
+ let s:s = ",standout"
+ let s:ou = ""
+ let s:ob = ""
+"}}}
+" Background value based on termtrans setting "{{{
+" ---------------------------------------------------------------------
+if (has("gui_running") || g:solarized_termtrans == 0)
+ let s:back = s:base03
+else
+ let s:back = "NONE"
+endif
+"}}}
+" Alternate light scheme "{{{
+" ---------------------------------------------------------------------
+if &background == "light"
+ let s:temp03 = s:base03
+ let s:temp02 = s:base02
+ let s:temp01 = s:base01
+ let s:temp00 = s:base00
+ let s:base03 = s:base3
+ let s:base02 = s:base2
+ let s:base01 = s:base1
+ let s:base00 = s:base0
+ let s:base0 = s:temp00
+ let s:base1 = s:temp01
+ let s:base2 = s:temp02
+ let s:base3 = s:temp03
+ if (s:back != "NONE")
+ let s:back = s:base03
+ endif
+endif
+"}}}
+" Optional contrast schemes "{{{
+" ---------------------------------------------------------------------
+if g:solarized_contrast == "high"
+ let s:base01 = s:base00
+ let s:base00 = s:base0
+ let s:base0 = s:base1
+ let s:base1 = s:base2
+ let s:base2 = s:base3
+ let s:back = s:back
+endif
+if g:solarized_contrast == "low"
+ let s:back = s:base02
+ let s:ou = ",underline"
+endif
+"}}}
+" Overrides dependent on user specified values and environment "{{{
+" ---------------------------------------------------------------------
+if (g:solarized_bold == 0 || &t_Co == 8 )
+ let s:b = ""
+ let s:bb = ",bold"
+else
+ let s:b = ",bold"
+ let s:bb = ""
+endif
+
+if g:solarized_underline == 0
+ let s:u = ""
+else
+ let s:u = ",underline"
+endif
+
+if g:solarized_italic == 0 || s:terminal_italic == 0
+ let s:i = ""
+else
+ let s:i = ",italic"
+endif
+"}}}
+" Highlighting primitives"{{{
+" ---------------------------------------------------------------------
+
+exe "let s:bg_none = ' ".s:vmode."bg=".s:none ."'"
+exe "let s:bg_back = ' ".s:vmode."bg=".s:back ."'"
+exe "let s:bg_base03 = ' ".s:vmode."bg=".s:base03 ."'"
+exe "let s:bg_base02 = ' ".s:vmode."bg=".s:base02 ."'"
+exe "let s:bg_base01 = ' ".s:vmode."bg=".s:base01 ."'"
+exe "let s:bg_base00 = ' ".s:vmode."bg=".s:base00 ."'"
+exe "let s:bg_base0 = ' ".s:vmode."bg=".s:base0 ."'"
+exe "let s:bg_base1 = ' ".s:vmode."bg=".s:base1 ."'"
+exe "let s:bg_base2 = ' ".s:vmode."bg=".s:base2 ."'"
+exe "let s:bg_base3 = ' ".s:vmode."bg=".s:base3 ."'"
+exe "let s:bg_green = ' ".s:vmode."bg=".s:green ."'"
+exe "let s:bg_yellow = ' ".s:vmode."bg=".s:yellow ."'"
+exe "let s:bg_orange = ' ".s:vmode."bg=".s:orange ."'"
+exe "let s:bg_red = ' ".s:vmode."bg=".s:red ."'"
+exe "let s:bg_magenta = ' ".s:vmode."bg=".s:magenta."'"
+exe "let s:bg_violet = ' ".s:vmode."bg=".s:violet ."'"
+exe "let s:bg_blue = ' ".s:vmode."bg=".s:blue ."'"
+exe "let s:bg_cyan = ' ".s:vmode."bg=".s:cyan ."'"
+
+exe "let s:fg_none = ' ".s:vmode."fg=".s:none ."'"
+exe "let s:fg_back = ' ".s:vmode."fg=".s:back ."'"
+exe "let s:fg_base03 = ' ".s:vmode."fg=".s:base03 ."'"
+exe "let s:fg_base02 = ' ".s:vmode."fg=".s:base02 ."'"
+exe "let s:fg_base01 = ' ".s:vmode."fg=".s:base01 ."'"
+exe "let s:fg_base00 = ' ".s:vmode."fg=".s:base00 ."'"
+exe "let s:fg_base0 = ' ".s:vmode."fg=".s:base0 ."'"
+exe "let s:fg_base1 = ' ".s:vmode."fg=".s:base1 ."'"
+exe "let s:fg_base2 = ' ".s:vmode."fg=".s:base2 ."'"
+exe "let s:fg_base3 = ' ".s:vmode."fg=".s:base3 ."'"
+exe "let s:fg_green = ' ".s:vmode."fg=".s:green ."'"
+exe "let s:fg_yellow = ' ".s:vmode."fg=".s:yellow ."'"
+exe "let s:fg_orange = ' ".s:vmode."fg=".s:orange ."'"
+exe "let s:fg_red = ' ".s:vmode."fg=".s:red ."'"
+exe "let s:fg_magenta = ' ".s:vmode."fg=".s:magenta."'"
+exe "let s:fg_violet = ' ".s:vmode."fg=".s:violet ."'"
+exe "let s:fg_blue = ' ".s:vmode."fg=".s:blue ."'"
+exe "let s:fg_cyan = ' ".s:vmode."fg=".s:cyan ."'"
+
+exe "let s:fmt_none = ' ".s:vmode."=NONE". " term=NONE". "'"
+exe "let s:fmt_bold = ' ".s:vmode."=NONE".s:b. " term=NONE".s:b."'"
+exe "let s:fmt_bldi = ' ".s:vmode."=NONE".s:b. " term=NONE".s:b."'"
+exe "let s:fmt_undr = ' ".s:vmode."=NONE".s:u. " term=NONE".s:u."'"
+exe "let s:fmt_undb = ' ".s:vmode."=NONE".s:u.s:b. " term=NONE".s:u.s:b."'"
+exe "let s:fmt_undi = ' ".s:vmode."=NONE".s:u. " term=NONE".s:u."'"
+exe "let s:fmt_uopt = ' ".s:vmode."=NONE".s:ou. " term=NONE".s:ou."'"
+exe "let s:fmt_curl = ' ".s:vmode."=NONE".s:c. " term=NONE".s:c."'"
+exe "let s:fmt_ital = ' ".s:vmode."=NONE".s:i. " term=NONE".s:i."'"
+exe "let s:fmt_stnd = ' ".s:vmode."=NONE".s:s. " term=NONE".s:s."'"
+exe "let s:fmt_revr = ' ".s:vmode."=NONE".s:r. " term=NONE".s:r."'"
+exe "let s:fmt_revb = ' ".s:vmode."=NONE".s:r.s:b. " term=NONE".s:r.s:b."'"
+" revbb (reverse bold for bright colors) is only set to actual bold in low
+" color terminals (t_co=8, such as OS X Terminal.app) and should only be used
+" with colors 8-15.
+exe "let s:fmt_revbb = ' ".s:vmode."=NONE".s:r.s:bb. " term=NONE".s:r.s:bb."'"
+exe "let s:fmt_revbbu = ' ".s:vmode."=NONE".s:r.s:bb.s:u." term=NONE".s:r.s:bb.s:u."'"
+
+if has("gui_running")
+ exe "let s:sp_none = ' guisp=".s:none ."'"
+ exe "let s:sp_back = ' guisp=".s:back ."'"
+ exe "let s:sp_base03 = ' guisp=".s:base03 ."'"
+ exe "let s:sp_base02 = ' guisp=".s:base02 ."'"
+ exe "let s:sp_base01 = ' guisp=".s:base01 ."'"
+ exe "let s:sp_base00 = ' guisp=".s:base00 ."'"
+ exe "let s:sp_base0 = ' guisp=".s:base0 ."'"
+ exe "let s:sp_base1 = ' guisp=".s:base1 ."'"
+ exe "let s:sp_base2 = ' guisp=".s:base2 ."'"
+ exe "let s:sp_base3 = ' guisp=".s:base3 ."'"
+ exe "let s:sp_green = ' guisp=".s:green ."'"
+ exe "let s:sp_yellow = ' guisp=".s:yellow ."'"
+ exe "let s:sp_orange = ' guisp=".s:orange ."'"
+ exe "let s:sp_red = ' guisp=".s:red ."'"
+ exe "let s:sp_magenta = ' guisp=".s:magenta."'"
+ exe "let s:sp_violet = ' guisp=".s:violet ."'"
+ exe "let s:sp_blue = ' guisp=".s:blue ."'"
+ exe "let s:sp_cyan = ' guisp=".s:cyan ."'"
+else
+ let s:sp_none = ""
+ let s:sp_back = ""
+ let s:sp_base03 = ""
+ let s:sp_base02 = ""
+ let s:sp_base01 = ""
+ let s:sp_base00 = ""
+ let s:sp_base0 = ""
+ let s:sp_base1 = ""
+ let s:sp_base2 = ""
+ let s:sp_base3 = ""
+ let s:sp_green = ""
+ let s:sp_yellow = ""
+ let s:sp_orange = ""
+ let s:sp_red = ""
+ let s:sp_magenta = ""
+ let s:sp_violet = ""
+ let s:sp_blue = ""
+ let s:sp_cyan = ""
+endif
+
+"}}}
+" Basic highlighting"{{{
+" ---------------------------------------------------------------------
+" note that link syntax to avoid duplicate configuration doesn't work with the
+" exe compiled formats
+
+exe "hi! Normal" .s:fmt_none .s:fg_base0 .s:bg_back
+
+exe "hi! Comment" .s:fmt_ital .s:fg_base01 .s:bg_none
+" *Comment any comment
+
+exe "hi! Constant" .s:fmt_none .s:fg_cyan .s:bg_none
+" *Constant any constant
+" String a string constant: "this is a string"
+" Character a character constant: 'c', '\n'
+" Number a number constant: 234, 0xff
+" Boolean a boolean constant: TRUE, false
+" Float a floating point constant: 2.3e10
+
+exe "hi! Identifier" .s:fmt_none .s:fg_blue .s:bg_none
+" *Identifier any variable name
+" Function function name (also: methods for classes)
+"
+exe "hi! Statement" .s:fmt_none .s:fg_green .s:bg_none
+" *Statement any statement
+" Conditional if, then, else, endif, switch, etc.
+" Repeat for, do, while, etc.
+" Label case, default, etc.
+" Operator "sizeof", "+", "*", etc.
+" Keyword any other keyword
+" Exception try, catch, throw
+
+exe "hi! PreProc" .s:fmt_none .s:fg_orange .s:bg_none
+" *PreProc generic Preprocessor
+" Include preprocessor #include
+" Define preprocessor #define
+" Macro same as Define
+" PreCondit preprocessor #if, #else, #endif, etc.
+
+exe "hi! Type" .s:fmt_none .s:fg_yellow .s:bg_none
+" *Type int, long, char, etc.
+" StorageClass static, register, volatile, etc.
+" Structure struct, union, enum, etc.
+" Typedef A typedef
+
+exe "hi! Special" .s:fmt_none .s:fg_red .s:bg_none
+" *Special any special symbol
+" SpecialChar special character in a constant
+" Tag you can use CTRL-] on this
+" Delimiter character that needs attention
+" SpecialComment special things inside a comment
+" Debug debugging statements
+
+exe "hi! Underlined" .s:fmt_none .s:fg_violet .s:bg_none
+" *Underlined text that stands out, HTML links
+
+exe "hi! Ignore" .s:fmt_none .s:fg_none .s:bg_none
+" *Ignore left blank, hidden |hl-Ignore|
+
+exe "hi! Error" .s:fmt_bold .s:fg_red .s:bg_none
+" *Error any erroneous construct
+
+exe "hi! Todo" .s:fmt_bold .s:fg_magenta.s:bg_none
+" *Todo anything that needs extra attention; mostly the
+" keywords TODO FIXME and XXX
+"
+"}}}
+" Extended highlighting "{{{
+" ---------------------------------------------------------------------
+if (g:solarized_visibility=="high")
+ exe "hi! SpecialKey" .s:fmt_revr .s:fg_red .s:bg_none
+ exe "hi! NonText" .s:fmt_bold .s:fg_red .s:bg_none
+elseif (g:solarized_visibility=="low")
+ exe "hi! SpecialKey" .s:fmt_bold .s:fg_base02 .s:bg_none
+ exe "hi! NonText" .s:fmt_bold .s:fg_base02 .s:bg_none
+else
+ exe "hi! SpecialKey" .s:fmt_bold .s:fg_base00 .s:bg_base02
+ exe "hi! NonText" .s:fmt_bold .s:fg_base00 .s:bg_none
+endif
+exe "hi! StatusLine" .s:fmt_none .s:fg_base1 .s:bg_base02 .s:fmt_revbb
+exe "hi! StatusLineNC" .s:fmt_none .s:fg_base00 .s:bg_base02 .s:fmt_revbb
+exe "hi! Visual" .s:fmt_none .s:fg_base01 .s:bg_base03 .s:fmt_revbb
+exe "hi! Directory" .s:fmt_none .s:fg_blue .s:bg_none
+exe "hi! ErrorMsg" .s:fmt_revr .s:fg_red .s:bg_none
+exe "hi! IncSearch" .s:fmt_stnd .s:fg_orange .s:bg_none
+exe "hi! Search" .s:fmt_revr .s:fg_yellow .s:bg_none
+exe "hi! MoreMsg" .s:fmt_none .s:fg_blue .s:bg_none
+exe "hi! ModeMsg" .s:fmt_none .s:fg_blue .s:bg_none
+exe "hi! LineNr" .s:fmt_none .s:fg_base01 .s:bg_base02
+exe "hi! Question" .s:fmt_bold .s:fg_cyan .s:bg_none
+if ( has("gui_running") || &t_Co > 8 )
+ exe "hi! VertSplit" .s:fmt_none .s:fg_base00 .s:bg_base00
+else
+ exe "hi! VertSplit" .s:fmt_revbb .s:fg_base00 .s:bg_base02
+endif
+exe "hi! Title" .s:fmt_bold .s:fg_orange .s:bg_none
+exe "hi! VisualNOS" .s:fmt_stnd .s:fg_none .s:bg_base02 .s:fmt_revbb
+exe "hi! WarningMsg" .s:fmt_bold .s:fg_red .s:bg_none
+exe "hi! WildMenu" .s:fmt_none .s:fg_base2 .s:bg_base02 .s:fmt_revbb
+exe "hi! Folded" .s:fmt_undb .s:fg_base0 .s:bg_base02 .s:sp_base03
+exe "hi! FoldColumn" .s:fmt_none .s:fg_base0 .s:bg_base02
+if (g:solarized_diffmode=="high")
+exe "hi! DiffAdd" .s:fmt_revr .s:fg_green .s:bg_none
+exe "hi! DiffChange" .s:fmt_revr .s:fg_yellow .s:bg_none
+exe "hi! DiffDelete" .s:fmt_revr .s:fg_red .s:bg_none
+exe "hi! DiffText" .s:fmt_revr .s:fg_blue .s:bg_none
+elseif (g:solarized_diffmode=="low")
+exe "hi! DiffAdd" .s:fmt_undr .s:fg_green .s:bg_none .s:sp_green
+exe "hi! DiffChange" .s:fmt_undr .s:fg_yellow .s:bg_none .s:sp_yellow
+exe "hi! DiffDelete" .s:fmt_bold .s:fg_red .s:bg_none
+exe "hi! DiffText" .s:fmt_undr .s:fg_blue .s:bg_none .s:sp_blue
+else " normal
+ if has("gui_running")
+exe "hi! DiffAdd" .s:fmt_bold .s:fg_green .s:bg_base02 .s:sp_green
+exe "hi! DiffChange" .s:fmt_bold .s:fg_yellow .s:bg_base02 .s:sp_yellow
+exe "hi! DiffDelete" .s:fmt_bold .s:fg_red .s:bg_base02
+exe "hi! DiffText" .s:fmt_bold .s:fg_blue .s:bg_base02 .s:sp_blue
+ else
+exe "hi! DiffAdd" .s:fmt_none .s:fg_green .s:bg_base02 .s:sp_green
+exe "hi! DiffChange" .s:fmt_none .s:fg_yellow .s:bg_base02 .s:sp_yellow
+exe "hi! DiffDelete" .s:fmt_none .s:fg_red .s:bg_base02
+exe "hi! DiffText" .s:fmt_none .s:fg_blue .s:bg_base02 .s:sp_blue
+ endif
+endif
+exe "hi! SignColumn" .s:fmt_none .s:fg_base0
+exe "hi! Conceal" .s:fmt_none .s:fg_blue .s:bg_none
+exe "hi! SpellBad" .s:fmt_curl .s:fg_none .s:bg_none .s:sp_red
+exe "hi! SpellCap" .s:fmt_curl .s:fg_none .s:bg_none .s:sp_violet
+exe "hi! SpellRare" .s:fmt_curl .s:fg_none .s:bg_none .s:sp_cyan
+exe "hi! SpellLocal" .s:fmt_curl .s:fg_none .s:bg_none .s:sp_yellow
+exe "hi! Pmenu" .s:fmt_none .s:fg_base0 .s:bg_base02 .s:fmt_revbb
+exe "hi! PmenuSel" .s:fmt_none .s:fg_base01 .s:bg_base2 .s:fmt_revbb
+exe "hi! PmenuSbar" .s:fmt_none .s:fg_base2 .s:bg_base0 .s:fmt_revbb
+exe "hi! PmenuThumb" .s:fmt_none .s:fg_base0 .s:bg_base03 .s:fmt_revbb
+exe "hi! TabLine" .s:fmt_undr .s:fg_base0 .s:bg_base02 .s:sp_base0
+exe "hi! TabLineFill" .s:fmt_undr .s:fg_base0 .s:bg_base02 .s:sp_base0
+exe "hi! TabLineSel" .s:fmt_undr .s:fg_base01 .s:bg_base2 .s:sp_base0 .s:fmt_revbbu
+exe "hi! CursorColumn" .s:fmt_none .s:fg_none .s:bg_base02
+exe "hi! CursorLine" .s:fmt_uopt .s:fg_none .s:bg_base02 .s:sp_base1
+exe "hi! ColorColumn" .s:fmt_none .s:fg_none .s:bg_base02
+exe "hi! Cursor" .s:fmt_none .s:fg_base03 .s:bg_base0
+hi! link lCursor Cursor
+exe "hi! MatchParen" .s:fmt_bold .s:fg_red .s:bg_base01
+
+"}}}
+" vim syntax highlighting "{{{
+" ---------------------------------------------------------------------
+"exe "hi! vimLineComment" . s:fg_base01 .s:bg_none .s:fmt_ital
+"hi! link vimComment Comment
+"hi! link vimLineComment Comment
+hi! link vimVar Identifier
+hi! link vimFunc Function
+hi! link vimUserFunc Function
+hi! link helpSpecial Special
+hi! link vimSet Normal
+hi! link vimSetEqual Normal
+exe "hi! vimCommentString" .s:fmt_none .s:fg_violet .s:bg_none
+exe "hi! vimCommand" .s:fmt_none .s:fg_yellow .s:bg_none
+exe "hi! vimCmdSep" .s:fmt_bold .s:fg_blue .s:bg_none
+exe "hi! helpExample" .s:fmt_none .s:fg_base1 .s:bg_none
+exe "hi! helpOption" .s:fmt_none .s:fg_cyan .s:bg_none
+exe "hi! helpNote" .s:fmt_none .s:fg_magenta.s:bg_none
+exe "hi! helpVim" .s:fmt_none .s:fg_magenta.s:bg_none
+exe "hi! helpHyperTextJump" .s:fmt_undr .s:fg_blue .s:bg_none
+exe "hi! helpHyperTextEntry".s:fmt_none .s:fg_green .s:bg_none
+exe "hi! vimIsCommand" .s:fmt_none .s:fg_base00 .s:bg_none
+exe "hi! vimSynMtchOpt" .s:fmt_none .s:fg_yellow .s:bg_none
+exe "hi! vimSynType" .s:fmt_none .s:fg_cyan .s:bg_none
+exe "hi! vimHiLink" .s:fmt_none .s:fg_blue .s:bg_none
+exe "hi! vimHiGroup" .s:fmt_none .s:fg_blue .s:bg_none
+exe "hi! vimGroup" .s:fmt_undb .s:fg_blue .s:bg_none
+"}}}
+" diff highlighting "{{{
+" ---------------------------------------------------------------------
+hi! link diffAdded Statement
+hi! link diffLine Identifier
+"}}}
+" git & gitcommit highlighting "{{{
+"git
+"exe "hi! gitDateHeader"
+"exe "hi! gitIdentityHeader"
+"exe "hi! gitIdentityKeyword"
+"exe "hi! gitNotesHeader"
+"exe "hi! gitReflogHeader"
+"exe "hi! gitKeyword"
+"exe "hi! gitIdentity"
+"exe "hi! gitEmailDelimiter"
+"exe "hi! gitEmail"
+"exe "hi! gitDate"
+"exe "hi! gitMode"
+"exe "hi! gitHashAbbrev"
+"exe "hi! gitHash"
+"exe "hi! gitReflogMiddle"
+"exe "hi! gitReference"
+"exe "hi! gitStage"
+"exe "hi! gitType"
+"exe "hi! gitDiffAdded"
+"exe "hi! gitDiffRemoved"
+"gitcommit
+"exe "hi! gitcommitSummary"
+exe "hi! gitcommitComment" .s:fmt_ital .s:fg_base01 .s:bg_none
+hi! link gitcommitUntracked gitcommitComment
+hi! link gitcommitDiscarded gitcommitComment
+hi! link gitcommitSelected gitcommitComment
+exe "hi! gitcommitUnmerged" .s:fmt_bold .s:fg_green .s:bg_none
+exe "hi! gitcommitOnBranch" .s:fmt_bold .s:fg_base01 .s:bg_none
+exe "hi! gitcommitBranch" .s:fmt_bold .s:fg_magenta .s:bg_none
+hi! link gitcommitNoBranch gitcommitBranch
+exe "hi! gitcommitDiscardedType".s:fmt_none .s:fg_red .s:bg_none
+exe "hi! gitcommitSelectedType" .s:fmt_none .s:fg_green .s:bg_none
+"exe "hi! gitcommitUnmergedType"
+"exe "hi! gitcommitType"
+"exe "hi! gitcommitNoChanges"
+"exe "hi! gitcommitHeader"
+exe "hi! gitcommitHeader" .s:fmt_none .s:fg_base01 .s:bg_none
+exe "hi! gitcommitUntrackedFile".s:fmt_bold .s:fg_cyan .s:bg_none
+exe "hi! gitcommitDiscardedFile".s:fmt_bold .s:fg_red .s:bg_none
+exe "hi! gitcommitSelectedFile" .s:fmt_bold .s:fg_green .s:bg_none
+exe "hi! gitcommitUnmergedFile" .s:fmt_bold .s:fg_yellow .s:bg_none
+exe "hi! gitcommitFile" .s:fmt_bold .s:fg_base0 .s:bg_none
+hi! link gitcommitDiscardedArrow gitcommitDiscardedFile
+hi! link gitcommitSelectedArrow gitcommitSelectedFile
+hi! link gitcommitUnmergedArrow gitcommitUnmergedFile
+"exe "hi! gitcommitArrow"
+"exe "hi! gitcommitOverflow"
+"exe "hi! gitcommitBlank"
+" }}}
+" html highlighting "{{{
+" ---------------------------------------------------------------------
+exe "hi! htmlTag" .s:fmt_none .s:fg_base01 .s:bg_none
+exe "hi! htmlEndTag" .s:fmt_none .s:fg_base01 .s:bg_none
+exe "hi! htmlTagN" .s:fmt_bold .s:fg_base1 .s:bg_none
+exe "hi! htmlTagName" .s:fmt_bold .s:fg_blue .s:bg_none
+exe "hi! htmlSpecialTagName".s:fmt_ital .s:fg_blue .s:bg_none
+exe "hi! htmlArg" .s:fmt_none .s:fg_base00 .s:bg_none
+exe "hi! javaScript" .s:fmt_none .s:fg_yellow .s:bg_none
+"}}}
+" perl highlighting "{{{
+" ---------------------------------------------------------------------
+exe "hi! perlHereDoc" . s:fg_base1 .s:bg_back .s:fmt_none
+exe "hi! perlVarPlain" . s:fg_yellow .s:bg_back .s:fmt_none
+exe "hi! perlStatementFileDesc". s:fg_cyan.s:bg_back.s:fmt_none
+
+"}}}
+" tex highlighting "{{{
+" ---------------------------------------------------------------------
+exe "hi! texStatement" . s:fg_cyan .s:bg_back .s:fmt_none
+exe "hi! texMathZoneX" . s:fg_yellow .s:bg_back .s:fmt_none
+exe "hi! texMathMatcher" . s:fg_yellow .s:bg_back .s:fmt_none
+exe "hi! texMathMatcher" . s:fg_yellow .s:bg_back .s:fmt_none
+exe "hi! texRefLabel" . s:fg_yellow .s:bg_back .s:fmt_none
+"}}}
+" ruby highlighting "{{{
+" ---------------------------------------------------------------------
+exe "hi! rubyDefine" . s:fg_base1 .s:bg_back .s:fmt_bold
+"rubyInclude
+"rubySharpBang
+"rubyAccess
+"rubyPredefinedVariable
+"rubyBoolean
+"rubyClassVariable
+"rubyBeginEnd
+"rubyRepeatModifier
+"hi! link rubyArrayDelimiter Special " [ , , ]
+"rubyCurlyBlock { , , }
+
+"hi! link rubyClass Keyword
+"hi! link rubyModule Keyword
+"hi! link rubyKeyword Keyword
+"hi! link rubyOperator Operator
+"hi! link rubyIdentifier Identifier
+"hi! link rubyInstanceVariable Identifier
+"hi! link rubyGlobalVariable Identifier
+"hi! link rubyClassVariable Identifier
+"hi! link rubyConstant Type
+"}}}
+" haskell syntax highlighting"{{{
+" ---------------------------------------------------------------------
+" For use with syntax/haskell.vim : Haskell Syntax File
+" http://www.vim.org/scripts/script.php?script_id=3034
+" See also Steffen Siering's github repository:
+" http://github.com/urso/dotrc/blob/master/vim/syntax/haskell.vim
+" ---------------------------------------------------------------------
+"
+" Treat True and False specially, see the plugin referenced above
+let hs_highlight_boolean=1
+" highlight delims, see the plugin referenced above
+let hs_highlight_delimiters=1
+
+exe "hi! cPreCondit". s:fg_orange.s:bg_none .s:fmt_none
+
+exe "hi! VarId" . s:fg_blue .s:bg_none .s:fmt_none
+exe "hi! ConId" . s:fg_yellow .s:bg_none .s:fmt_none
+exe "hi! hsImport" . s:fg_magenta.s:bg_none .s:fmt_none
+exe "hi! hsString" . s:fg_base00 .s:bg_none .s:fmt_none
+
+exe "hi! hsStructure" . s:fg_cyan .s:bg_none .s:fmt_none
+exe "hi! hs_hlFunctionName" . s:fg_blue .s:bg_none
+exe "hi! hsStatement" . s:fg_cyan .s:bg_none .s:fmt_none
+exe "hi! hsImportLabel" . s:fg_cyan .s:bg_none .s:fmt_none
+exe "hi! hs_OpFunctionName" . s:fg_yellow .s:bg_none .s:fmt_none
+exe "hi! hs_DeclareFunction" . s:fg_orange .s:bg_none .s:fmt_none
+exe "hi! hsVarSym" . s:fg_cyan .s:bg_none .s:fmt_none
+exe "hi! hsType" . s:fg_yellow .s:bg_none .s:fmt_none
+exe "hi! hsTypedef" . s:fg_cyan .s:bg_none .s:fmt_none
+exe "hi! hsModuleName" . s:fg_green .s:bg_none .s:fmt_undr
+exe "hi! hsModuleStartLabel" . s:fg_magenta.s:bg_none .s:fmt_none
+hi! link hsImportParams Delimiter
+hi! link hsDelimTypeExport Delimiter
+hi! link hsModuleStartLabel hsStructure
+hi! link hsModuleWhereLabel hsModuleStartLabel
+
+" following is for the haskell-conceal plugin
+" the first two items don't have an impact, but better safe
+exe "hi! hsNiceOperator" . s:fg_cyan .s:bg_none .s:fmt_none
+exe "hi! hsniceoperator" . s:fg_cyan .s:bg_none .s:fmt_none
+
+"}}}
+" pandoc markdown syntax highlighting "{{{
+" ---------------------------------------------------------------------
+
+"PandocHiLink pandocNormalBlock
+exe "hi! pandocTitleBlock" .s:fg_blue .s:bg_none .s:fmt_none
+exe "hi! pandocTitleBlockTitle" .s:fg_blue .s:bg_none .s:fmt_bold
+exe "hi! pandocTitleComment" .s:fg_blue .s:bg_none .s:fmt_bold
+exe "hi! pandocComment" .s:fg_base01 .s:bg_none .s:fmt_ital
+exe "hi! pandocVerbatimBlock" .s:fg_yellow .s:bg_none .s:fmt_none
+hi! link pandocVerbatimBlockDeep pandocVerbatimBlock
+hi! link pandocCodeBlock pandocVerbatimBlock
+hi! link pandocCodeBlockDelim pandocVerbatimBlock
+exe "hi! pandocBlockQuote" .s:fg_blue .s:bg_none .s:fmt_none
+exe "hi! pandocBlockQuoteLeader1" .s:fg_blue .s:bg_none .s:fmt_none
+exe "hi! pandocBlockQuoteLeader2" .s:fg_cyan .s:bg_none .s:fmt_none
+exe "hi! pandocBlockQuoteLeader3" .s:fg_yellow .s:bg_none .s:fmt_none
+exe "hi! pandocBlockQuoteLeader4" .s:fg_red .s:bg_none .s:fmt_none
+exe "hi! pandocBlockQuoteLeader5" .s:fg_base0 .s:bg_none .s:fmt_none
+exe "hi! pandocBlockQuoteLeader6" .s:fg_base01 .s:bg_none .s:fmt_none
+exe "hi! pandocListMarker" .s:fg_magenta.s:bg_none .s:fmt_none
+exe "hi! pandocListReference" .s:fg_magenta.s:bg_none .s:fmt_undr
+
+" Definitions
+" ---------------------------------------------------------------------
+let s:fg_pdef = s:fg_violet
+exe "hi! pandocDefinitionBlock" .s:fg_pdef .s:bg_none .s:fmt_none
+exe "hi! pandocDefinitionTerm" .s:fg_pdef .s:bg_none .s:fmt_stnd
+exe "hi! pandocDefinitionIndctr" .s:fg_pdef .s:bg_none .s:fmt_bold
+exe "hi! pandocEmphasisDefinition" .s:fg_pdef .s:bg_none .s:fmt_ital
+exe "hi! pandocEmphasisNestedDefinition" .s:fg_pdef .s:bg_none .s:fmt_bldi
+exe "hi! pandocStrongEmphasisDefinition" .s:fg_pdef .s:bg_none .s:fmt_bold
+exe "hi! pandocStrongEmphasisNestedDefinition" .s:fg_pdef.s:bg_none.s:fmt_bldi
+exe "hi! pandocStrongEmphasisEmphasisDefinition" .s:fg_pdef.s:bg_none.s:fmt_bldi
+exe "hi! pandocStrikeoutDefinition" .s:fg_pdef .s:bg_none .s:fmt_revr
+exe "hi! pandocVerbatimInlineDefinition" .s:fg_pdef .s:bg_none .s:fmt_none
+exe "hi! pandocSuperscriptDefinition" .s:fg_pdef .s:bg_none .s:fmt_none
+exe "hi! pandocSubscriptDefinition" .s:fg_pdef .s:bg_none .s:fmt_none
+
+" Tables
+" ---------------------------------------------------------------------
+let s:fg_ptable = s:fg_blue
+exe "hi! pandocTable" .s:fg_ptable.s:bg_none .s:fmt_none
+exe "hi! pandocTableStructure" .s:fg_ptable.s:bg_none .s:fmt_none
+hi! link pandocTableStructureTop pandocTableStructre
+hi! link pandocTableStructureEnd pandocTableStructre
+exe "hi! pandocTableZebraLight" .s:fg_ptable.s:bg_base03.s:fmt_none
+exe "hi! pandocTableZebraDark" .s:fg_ptable.s:bg_base02.s:fmt_none
+exe "hi! pandocEmphasisTable" .s:fg_ptable.s:bg_none .s:fmt_ital
+exe "hi! pandocEmphasisNestedTable" .s:fg_ptable.s:bg_none .s:fmt_bldi
+exe "hi! pandocStrongEmphasisTable" .s:fg_ptable.s:bg_none .s:fmt_bold
+exe "hi! pandocStrongEmphasisNestedTable" .s:fg_ptable.s:bg_none .s:fmt_bldi
+exe "hi! pandocStrongEmphasisEmphasisTable" .s:fg_ptable.s:bg_none .s:fmt_bldi
+exe "hi! pandocStrikeoutTable" .s:fg_ptable.s:bg_none .s:fmt_revr
+exe "hi! pandocVerbatimInlineTable" .s:fg_ptable.s:bg_none .s:fmt_none
+exe "hi! pandocSuperscriptTable" .s:fg_ptable.s:bg_none .s:fmt_none
+exe "hi! pandocSubscriptTable" .s:fg_ptable.s:bg_none .s:fmt_none
+
+" Headings
+" ---------------------------------------------------------------------
+let s:fg_phead = s:fg_orange
+exe "hi! pandocHeading" .s:fg_phead .s:bg_none.s:fmt_bold
+exe "hi! pandocHeadingMarker" .s:fg_yellow.s:bg_none.s:fmt_bold
+exe "hi! pandocEmphasisHeading" .s:fg_phead .s:bg_none.s:fmt_bldi
+exe "hi! pandocEmphasisNestedHeading" .s:fg_phead .s:bg_none.s:fmt_bldi
+exe "hi! pandocStrongEmphasisHeading" .s:fg_phead .s:bg_none.s:fmt_bold
+exe "hi! pandocStrongEmphasisNestedHeading" .s:fg_phead .s:bg_none.s:fmt_bldi
+exe "hi! pandocStrongEmphasisEmphasisHeading".s:fg_phead .s:bg_none.s:fmt_bldi
+exe "hi! pandocStrikeoutHeading" .s:fg_phead .s:bg_none.s:fmt_revr
+exe "hi! pandocVerbatimInlineHeading" .s:fg_phead .s:bg_none.s:fmt_bold
+exe "hi! pandocSuperscriptHeading" .s:fg_phead .s:bg_none.s:fmt_bold
+exe "hi! pandocSubscriptHeading" .s:fg_phead .s:bg_none.s:fmt_bold
+
+" Links
+" ---------------------------------------------------------------------
+exe "hi! pandocLinkDelim" .s:fg_base01 .s:bg_none .s:fmt_none
+exe "hi! pandocLinkLabel" .s:fg_blue .s:bg_none .s:fmt_undr
+exe "hi! pandocLinkText" .s:fg_blue .s:bg_none .s:fmt_undb
+exe "hi! pandocLinkURL" .s:fg_base00 .s:bg_none .s:fmt_undr
+exe "hi! pandocLinkTitle" .s:fg_base00 .s:bg_none .s:fmt_undi
+exe "hi! pandocLinkTitleDelim" .s:fg_base01 .s:bg_none .s:fmt_undi .s:sp_base00
+exe "hi! pandocLinkDefinition" .s:fg_cyan .s:bg_none .s:fmt_undr .s:sp_base00
+exe "hi! pandocLinkDefinitionID" .s:fg_blue .s:bg_none .s:fmt_bold
+exe "hi! pandocImageCaption" .s:fg_violet .s:bg_none .s:fmt_undb
+exe "hi! pandocFootnoteLink" .s:fg_green .s:bg_none .s:fmt_undr
+exe "hi! pandocFootnoteDefLink" .s:fg_green .s:bg_none .s:fmt_bold
+exe "hi! pandocFootnoteInline" .s:fg_green .s:bg_none .s:fmt_undb
+exe "hi! pandocFootnote" .s:fg_green .s:bg_none .s:fmt_none
+exe "hi! pandocCitationDelim" .s:fg_magenta.s:bg_none .s:fmt_none
+exe "hi! pandocCitation" .s:fg_magenta.s:bg_none .s:fmt_none
+exe "hi! pandocCitationID" .s:fg_magenta.s:bg_none .s:fmt_undr
+exe "hi! pandocCitationRef" .s:fg_magenta.s:bg_none .s:fmt_none
+
+" Main Styles
+" ---------------------------------------------------------------------
+exe "hi! pandocStyleDelim" .s:fg_base01 .s:bg_none .s:fmt_none
+exe "hi! pandocEmphasis" .s:fg_base0 .s:bg_none .s:fmt_ital
+exe "hi! pandocEmphasisNested" .s:fg_base0 .s:bg_none .s:fmt_bldi
+exe "hi! pandocStrongEmphasis" .s:fg_base0 .s:bg_none .s:fmt_bold
+exe "hi! pandocStrongEmphasisNested" .s:fg_base0 .s:bg_none .s:fmt_bldi
+exe "hi! pandocStrongEmphasisEmphasis" .s:fg_base0 .s:bg_none .s:fmt_bldi
+exe "hi! pandocStrikeout" .s:fg_base01 .s:bg_none .s:fmt_revr
+exe "hi! pandocVerbatimInline" .s:fg_yellow .s:bg_none .s:fmt_none
+exe "hi! pandocSuperscript" .s:fg_violet .s:bg_none .s:fmt_none
+exe "hi! pandocSubscript" .s:fg_violet .s:bg_none .s:fmt_none
+
+exe "hi! pandocRule" .s:fg_blue .s:bg_none .s:fmt_bold
+exe "hi! pandocRuleLine" .s:fg_blue .s:bg_none .s:fmt_bold
+exe "hi! pandocEscapePair" .s:fg_red .s:bg_none .s:fmt_bold
+exe "hi! pandocCitationRef" .s:fg_magenta.s:bg_none .s:fmt_none
+exe "hi! pandocNonBreakingSpace" . s:fg_red .s:bg_none .s:fmt_revr
+hi! link pandocEscapedCharacter pandocEscapePair
+hi! link pandocLineBreak pandocEscapePair
+
+" Embedded Code
+" ---------------------------------------------------------------------
+exe "hi! pandocMetadataDelim" .s:fg_base01 .s:bg_none .s:fmt_none
+exe "hi! pandocMetadata" .s:fg_blue .s:bg_none .s:fmt_none
+exe "hi! pandocMetadataKey" .s:fg_blue .s:bg_none .s:fmt_none
+exe "hi! pandocMetadata" .s:fg_blue .s:bg_none .s:fmt_bold
+hi! link pandocMetadataTitle pandocMetadata
+
+"}}}
+" Utility autocommand "{{{
+" ---------------------------------------------------------------------
+" In cases where Solarized is initialized inside a terminal vim session and
+" then transferred to a gui session via the command `:gui`, the gui vim process
+" does not re-read the colorscheme (or .vimrc for that matter) so any `has_gui`
+" related code that sets gui specific values isn't executed.
+"
+" Currently, Solarized sets only the cterm or gui values for the colorscheme
+" depending on gui or terminal mode. It's possible that, if the following
+" autocommand method is deemed excessively poor form, that approach will be
+" used again and the autocommand below will be dropped.
+"
+" However it seems relatively benign in this case to include the autocommand
+" here. It fires only in cases where vim is transferring from terminal to gui
+" mode (detected with the script scope s:vmode variable). It also allows for
+" other potential terminal customizations that might make gui mode suboptimal.
+"
+autocmd GUIEnter * if (s:vmode != "gui") | exe "colorscheme " . g:colors_name | endif
+"}}}
+" Highlight Trailing Space {{{
+" Experimental: Different highlight when on cursorline
+function! s:SolarizedHiTrail()
+ if g:solarized_hitrail==0
+ hi! clear solarizedTrailingSpace
+ else
+ syn match solarizedTrailingSpace "\s*$"
+ exe "hi! solarizedTrailingSpace " .s:fmt_undr .s:fg_red .s:bg_none .s:sp_red
+ endif
+endfunction
+augroup SolarizedHiTrail
+ autocmd!
+ if g:solarized_hitrail==1
+ autocmd! Syntax * call s:SolarizedHiTrail()
+ autocmd! ColorScheme * if g:colors_name == "solarized" | call s:SolarizedHiTrail() | else | augroup! s:SolarizedHiTrail | endif
+ endif
+augroup END
+" }}}
+" Menus "{{{
+" ---------------------------------------------------------------------
+" Turn off Solarized menu by including the following assignment in your .vimrc:
+"
+" let g:solarized_menu=0
+
+function! s:SolarizedOptions()
+ new "new buffer
+ setf vim "vim filetype
+ let failed = append(0, s:defaults_list)
+ let failed = append(0, s:colorscheme_list)
+ let failed = append(0, s:options_list)
+ let failed = append(0, s:lazycat_list)
+ 0 "jump back to the top
+endfunction
+if !exists(":SolarizedOptions")
+ command SolarizedOptions :call s:SolarizedOptions()
+endif
+
+function! SolarizedMenu()
+ if exists("g:loaded_solarized_menu")
+ try
+ silent! aunmenu Solarized
+ endtry
+ endif
+ let g:loaded_solarized_menu = 1
+
+ if g:colors_name == "solarized" && g:solarized_menu != 0
+
+ amenu &Solarized.&Contrast.&Low\ Contrast :let g:solarized_contrast="low" \| colorscheme solarized
+ amenu &Solarized.&Contrast.&Normal\ Contrast :let g:solarized_contrast="normal" \| colorscheme solarized
+ amenu &Solarized.&Contrast.&High\ Contrast :let g:solarized_contrast="high" \| colorscheme solarized
+ an &Solarized.&Contrast.-sep-
+ amenu &Solarized.&Contrast.&Help:\ Contrast :help 'solarized_contrast'
+
+ amenu &Solarized.&Visibility.&Low\ Visibility :let g:solarized_visibility="low" \| colorscheme solarized
+ amenu &Solarized.&Visibility.&Normal\ Visibility :let g:solarized_visibility="normal" \| colorscheme solarized
+ amenu &Solarized.&Visibility.&High\ Visibility :let g:solarized_visibility="high" \| colorscheme solarized
+ an &Solarized.&Visibility.-sep-
+ amenu &Solarized.&Visibility.&Help:\ Visibility :help 'solarized_visibility'
+
+ amenu &Solarized.&Background.&Toggle\ Background :ToggleBG
+ amenu &Solarized.&Background.&Dark\ Background :set background=dark \| colorscheme solarized
+ amenu &Solarized.&Background.&Light\ Background :set background=light \| colorscheme solarized
+ an &Solarized.&Background.-sep-
+ amenu &Solarized.&Background.&Help:\ ToggleBG :help togglebg
+
+ if g:solarized_bold==0 | let l:boldswitch="On" | else | let l:boldswitch="Off" | endif
+ exe "amenu &Solarized.&Styling.&Turn\\ Bold\\ ".l:boldswitch." :let g:solarized_bold=(abs(g:solarized_bold-1)) \\| colorscheme solarized"
+ if g:solarized_italic==0 | let l:italicswitch="On" | else | let l:italicswitch="Off" | endif
+ exe "amenu &Solarized.&Styling.&Turn\\ Italic\\ ".l:italicswitch." :let g:solarized_italic=(abs(g:solarized_italic-1)) \\| colorscheme solarized"
+ if g:solarized_underline==0 | let l:underlineswitch="On" | else | let l:underlineswitch="Off" | endif
+ exe "amenu &Solarized.&Styling.&Turn\\ Underline\\ ".l:underlineswitch." :let g:solarized_underline=(abs(g:solarized_underline-1)) \\| colorscheme solarized"
+
+ amenu &Solarized.&Diff\ Mode.&Low\ Diff\ Mode :let g:solarized_diffmode="low" \| colorscheme solarized
+ amenu &Solarized.&Diff\ Mode.&Normal\ Diff\ Mode :let g:solarized_diffmode="normal" \| colorscheme solarized
+ amenu &Solarized.&Diff\ Mode.&High\ Diff\ Mode :let g:solarized_diffmode="high" \| colorscheme solarized
+
+ if g:solarized_hitrail==0 | let l:hitrailswitch="On" | else | let l:hitrailswitch="Off" | endif
+ exe "amenu &Solarized.&Experimental.&Turn\\ Highlight\\ Trailing\\ Spaces\\ ".l:hitrailswitch." :let g:solarized_hitrail=(abs(g:solarized_hitrail-1)) \\| colorscheme solarized"
+ an &Solarized.&Experimental.-sep-
+ amenu &Solarized.&Experimental.&Help:\ HiTrail :help 'solarized_hitrail'
+
+ an &Solarized.-sep1-
+
+ amenu &Solarized.&Autogenerate\ options :SolarizedOptions
+
+ an &Solarized.-sep2-
+
+ amenu &Solarized.&Help.&Solarized\ Help :help solarized
+ amenu &Solarized.&Help.&Toggle\ Background\ Help :help togglebg
+ amenu &Solarized.&Help.&Removing\ This\ Menu :help solarized-menu
+
+ an 9999.77 &Help.&Solarized\ Colorscheme :help solarized
+ an 9999.78 &Help.&Toggle\ Background :help togglebg
+ an 9999.79 &Help.-sep3-
+
+ endif
+endfunction
+
+autocmd ColorScheme * if g:colors_name != "solarized" | silent! aunmenu Solarized | else | call SolarizedMenu() | endif
+
+"}}}
+" License "{{{
+" ---------------------------------------------------------------------
+"
+" Copyright (c) 2011 Ethan Schoonover
+"
+" Permission is hereby granted, free of charge, to any person obtaining a copy
+" of this software and associated documentation files (the "Software"), to deal
+" in the Software without restriction, including without limitation the rights
+" to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+" copies of the Software, and to permit persons to whom the Software is
+" furnished to do so, subject to the following conditions:
+"
+" The above copyright notice and this permission notice shall be included in
+" all copies or substantial portions of the Software.
+"
+" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+" OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+" THE SOFTWARE.
+"
+" vim:foldmethod=marker:foldlevel=0
+"}}}
diff --git a/.vim/doc/ps_color.txt b/.vim/doc/ps_color.txt
new file mode 100644
index 0000000..5195685
--- /dev/null
+++ b/.vim/doc/ps_color.txt
@@ -0,0 +1,657 @@
+*ps_color.txt* PSC For Vim version 7.0 Last change: 23 Oct 2006
+
+
+PERSONAL COLOUR SWITCHER *ps_colour* *pscolor*
+
+
+Author: Pan, Shi Zhu.
+
+==============================================================================
+CONTENTS *psc* *psc-contents*
+
+ 1. Contents.....................|psc-contents|
+ 2. PSC Overview.................|psc-overview|
+ 3. PSC Installation.............|psc-usage|
+ 4. PSC Options..................|psc-options|
+ 5. PSC under colour term .......|psc-cterm|
+ 6. PSC FAQ and Tips ............|psc-faq|
+ 7. PSC Release notes............|psc-release-notes|
+ 8. PSC Todo List................|psc-todo|
+
+For release notes, please see the header of ps_color.vim
+
+==============================================================================
+PSC FEATURES OVERVIEW *psc-features* *psc-overview*
+
+ Features ~
+
+ . PSC is firstly a color scheme which have both dark and light
+ background styles.
+ . It can have the same appearance in [cterm] as in [gui].
+ . It is designed with gentle color to minimize fatigue of eye.
+ . It also works with other color schemes.
+ . Default foreground and background can easily be changed, it is more
+ configurable than most other color schemes
+ . Works with the optional tool reloaded.vim, can change the whole
+ color scheme in Hue,Saturation,Luminance color space.
+
+ Design Concern ~
+
+ At the first glance this colour scheme may look pretty 'dull', don't be
+ afraid, this is quite normal. Bear in mind that a text editor is not
+ a photo album, if a text editor looks exciting you may not be able to
+ stare at it for a long time.
+
+ Predefined Vim Syntax highlighting can be too colourful or contrasted so
+ that many programmers prefer to switch off the syntax highlighting at
+ work. That is not a good idea because you will lost the advantages of
+ syntax high-lighting. It is often the case that we have to work for
+ 300+ minutes, then I decide to do-it-myself.
+
+ Many user-defined color schemes in vim.sf.net tend to achieve low
+ contrast by having a strong color-cast, i.e., looks blueish or
+ yellowish or reddish. This does look comfortable at first, however,
+ any type of color-cast will cause the eyes less sensitive for
+ particular color after a long-time work session, and that's no good to
+ health.
+
+ Efforts had been made to ensure no color-cast for this scheme, all
+ elementary colours like RGB and CYMK are evenly used. Like TeX,
+ 'consistency' is the principle this color scheme based on. Default
+ values which hurt consistency are amended according to the vim script
+ syntax/hitest.vim
+
+ There are 3 parameters to describe a color: Hue, Saturation and
+ Brightness. In this color scheme, the saturation is low and the
+ brightness are designed to be very close to each other in order not to
+ fatigue our eyes after a whole day's programming work.
+
+ Portability ~
+
+ Different monitor settings led to different look. In this color
+ scheme, it is assumed that the monitor adjust at 6500k color
+ temperature with a good gamma curve. If you have a 9300k monitor or
+ if the gamma curve is not optimal, the appearance may be less
+ comfortable, use adobe gamma loader or similar tools to adjust
+ your monitor if your monitor do not have the option to change color
+ temperature and/or gamma curve.
+
+ Needless to say, VI is an editor originally designed to do edit tasks
+ in a text terminal, and VIM is an improved version of VI. Its a shame
+ that a color scheme cannot have a satisfactory appearance in cterm.
+ The cterm compatibility should be considered high priority when
+ designing ViM color scheme.
+
+ I had made much attempt to make support for 8-color terminals,
+ however, 8 colours is not enough to represent a color scheme. Finally
+ I end up making the cterm support for 16-color terminal. Have to say
+ sorry if the color scheme sucks in your 8-color terminal, I had tried
+ my best. More details about cterm please see |psc-cterm|.
+
+ *psc-about-background*
+ About the Background ~
+
+ We have talked about off-white backgrounds, any background which is
+ not black, grey or white should be changed constantly in order not to
+ make the eyes less sensitive to particular color. i.e., you can use
+ blue background on Monday, red background on Tuesday, green background
+ on Wednesday, but if you use blue background everyday, that's no good
+ to your health.
+
+ Now we talk about the brightness of the background. Why dark
+ background is preferred over others? There are many reasons, such as,
+ the monitor emits lower radiation for black background. You may have
+ lots of similar reasons...
+
+ But I'll talk about something you may not know:
+>
+ It is easier to distinguish foreground colours on a dark background
+ than on a light background.
+
+ At the same time, it is easier to distinguish background colours on
+ a light background than on a dark background.
+
+ We will mainly change foreground colours for syntax highlighting.
+<
+ Hence, we can reduce the contrast and saturation of the color in
+ a dark-background scheme, while retain the readability. Schemes with
+ white background usually comes with higher contrast and saturation.
+ This is probably the most important reason that the color scheme is
+ designed to be dark-background instead of light one.
+
+ Now we came to know, that change the foreground color is enough to
+ emphasis text in a dark background, while for a white background, we
+ need to change the font shape (bold or italic, etc.), or change the
+ background color to effectively emphasis the text. This is probably
+ the reason Vim default scheme has bold properties for highlighting
+ groups, because the default scheme is a light background one.
+
+ No one knows what color scheme is best for you, except yourself. Try!
+
+==============================================================================
+PSC INSTALLATION *psc-usage*
+
+ Step 1, Enable the color scheme ~
+
+ To use PSC is simple, just put ps_color.vim into your
+ [runtimepath]/colors and append the line >
+
+ colorscheme ps_color
+<
+ to your |.vimrc|. The [runtimepath] can be any directory listed in
+ |vimfiles|, normally your $HOME/.vim in Unix or $HOME/vimfiles in
+ Windows.
+
+ Step 2, Install the help document ~
+
+ The help document will be automatically installed when the colorscheme
+ be sourced the first time. If it is not, type :colo ps_color now.
+
+ After successfully installed the help document, you can use >
+
+ :help psc-options
+<
+ to go to the following section.
+
+==============================================================================
+PSC OPTIONS *psc-options*
+
+ You can let these options in your ~/.vimrc, most options works for
+ both GUI and cterm, only some of them do not work for both.
+
+ Options set using the 'let' command must present [BEFORE] the color
+ scheme been sourced.
+
+ *psc_style*
+ Style ~
+>
+ let psc_style='cool'
+ let psc_style='warm'
+ let psc_style='default'
+ let psc_style='defdark'
+<
+ This selects between styles of colors,
+ The 'cool' is the default, dark background.
+ The 'warm' is the alternative, light background scheme.
+
+ See |psc-about-background| for more knowledge about the background,
+ and the differences of two style.
+
+ The 'default' and 'defdark' refers to Vim system default color scheme.
+ Which are provided only for reference.
+
+ Let psc_style to any string other than the above 4 will switch to the
+ specified color scheme. For example, let psc_style='desert' and then
+ activate the ps_color, the color scheme will be chosen according to
+ desert.vim color scheme.
+
+ *psc_cterm_style*
+ Color Term Style ~
+>
+ let psc_cterm_style='cool'
+<
+ This is exactly the same to psc_style, except that it only affects the
+ console version of vim in a color terminal, the 'warm' is not
+ available for cterm.
+ By default, it will be set to the same value as 'psc_style'. You can
+ change it if you want different style in cterm from gui.
+
+ *psc_cterm_transparent*
+ Color Term Transparent ~
+>
+ let psc_cterm_transparent=1
+<
+ If this is set, cterm will use the transparent background.
+ i.e. the background will be the same as your terminal.
+ When background=dark, you should have a dark background for your
+ terminal, otherwise will result in poor readability.
+
+ If this is reset (the default), cterm will use the Black background
+ anyway.
+
+ *psc_fontface*
+ Font face ~
+>
+ let psc_fontface='plain'
+ let psc_fontface='mixed'
+<
+ The Vim default behavior is the 'mixed', however, the mixed font style
+ in a dark colorscheme is not optimal. This color uses 'plain' for
+ 'cool' style, i.e. No texts are bold font. For 'warm', the default
+ is still 'mixed', If you want the mixed style in which the highlighted
+ statements are bold font, choose this. If you want all texts be
+ bold, choose 'plain' and specify a bold guifont or terminal font.
+
+ In GUI, this option also works for other color schemes. You can
+ disable the bold font and use your favorite color scheme. See
+ |psc-faq-ffothers| for detail.
+
+ *psc_inversed_todo*
+ Inversed Todo ~
+>
+ let psc_inversed_todo=1
+<
+ When set to 1, the TODO group will be dark background with light font,
+ Otherwise, the TODO group have light background with dark foreground.
+ Default is 0.
+
+ *psc_use_default_for_cterm*
+ Use default for cterm (obsoleted)~
+
+ This option is Obsoleted, retained only for backward compatibility,
+ see |psc_cterm_style| for alternative.
+
+ *psc_statement_different_from_type*
+ Statement different from type ~
+>
+ let psc_statement_different_from_type=1
+<
+ The Statement-group and Type-group are easy to distinguish, different
+ color for them are not necessary, I use similar color for S-group
+ & T-group in order not to make the screen too 'colorful', also this
+ saves a color name for cterm. But if you do want the Statement & Type
+ to be different color, try 'let statement_different_from_type=1' in
+ your .vimrc file, which is available only for GUI. Since the color
+ names in cterm is limited to 16 we cannot have too many different
+ colors in cterm.
+ Default is 0, i.e. they have very similar color.
+
+ *psc-change-background*
+ Changing the Background color ~
+
+ You may prefer a black background over the dark one, and it is
+ possible to customize it, this may make life more interesting. To do
+ this is quite straight forward for GUI, just define the Normal
+ highlight in your .gvimrc, [AFTER] the color scheme has been sourced.
+
+ For example:
+>
+ highlight Normal guibg=#000000
+<
+ The #103040 will give a taste similar to oceandeep, #152535 for
+ hhazure, #303030 for desert, #404040 for zenburn... Replace #103040
+ with any color you like. You can do the same to guifg foreground if
+ you are careful enough, remember this is only possible for GUI.
+
+ You can do this to the NonText group also, for example.
+>
+ highlight NonText guibg=#202020
+<
+ will give you a taste similar to most color schemes on vim.sf.net, in
+ which the NonText has a different background than Normal text.
+ However, this is only useful in GUI, in cterm, there are only
+ 8 background colors, so it is wise not to have a different color.
+
+ If you want more variations, please try the optional utility
+ reloaded.vim, this optional utility provides an amazing level of
+ customization.
+
+ Quick switching between warm and cold styles ~
+
+ Here is an example to define hot key of different style switching,
+ note that I had only given this example without actually define it.
+ You can choose to define it in .vimrc or anyway you prefer.
+>
+ nnoremap pc :let psc_style='cool':colo ps_color
+ nnoremap pw :let psc_style='warm':colo ps_color
+<
+ Alternatively, you can use the capitalized :Colo command, like
+ :Colo cool or :Colo warm
+
+==============================================================================
+PSC WITH CTERM *psc-cterm*
+
+ Colour Term ~
+
+ The cterm color is designed mainly in these terminals:
+>
+ 1. Cygwin bash shell in NT command prompt box
+ 2. XTERM and RXVT
+ 3. Other color terminals which have at least 16 colors
+<
+ *psc-cterm-nt*
+ In Windows NT Prompt console you can change the exact value of each
+ color, so you can have the same color with your GUI version of Vim,
+ for 'cool' color style you just change the color according to the
+ |psc-cterm-color-table|, for how to redefine the color of Windows NT
+ prompt console please see Windows Help.
+
+ NT Cygwin bash shell console supports 16 foreground colors by add bold
+ attribute to 8 color, the cterm=bold specifies which should be bright
+ color, so totally the 16 color foreground is available, but color
+ name DarkXXX and LightXXX are the same.
+
+ The pre-configured Cygwin.lnk is available for download on my web page
+ for Vim, but the site seems down, and the my site would not be on
+ recently, you may need to change colors in the Properties menu...
+
+ Cygwin is highly recommended for Vim user if you are using Windows NT
+ based systems (e.g. NT 4.0, Win2k, WinXP, Win2003, etc). But Cygwin is
+ not that versatile under Windows 95/98/ME. I'm not sure whether this
+ works for DOS DJGPP or Windows 95 console version of Vim because
+ I don't have the system, in case you encountered problem please
+ contact me, if you like.
+
+ *psc-cterm-xterm*
+ XTERM is a much more feature-rich terminal than Windows Console so the
+ support is much better. Normally, add the following recommend line
+ into your .Xdefaults and you can achieve the same color as in GUI
+ version, currently only works for XTERM and RXVT.
+
+ However, most modern GUI terminal emulators do not read .Xdefaults
+ at all, in that case you will have to set the color manually according
+ to |psc-cterm-color-table|.
+
+ In case your term supports .Xdefaults, Add the following in it:
+>
+ XTerm*color0: #000000
+ XTerm*color1: #800000
+ XTerm*color2: #008000
+ XTerm*color3: #d0d090
+ XTerm*color4: #000080
+ XTerm*color5: #800080
+ XTerm*color6: #a6caf0
+ XTerm*color7: #d0d0d0
+ XTerm*color8: #b0b0b0
+ XTerm*color9: #f08060
+ XTerm*color10: #60f080
+ XTerm*color11: #e0c060
+ XTerm*color12: #80c0e0
+ XTerm*color13: #f0c0f0
+ XTerm*color14: #c0d8f8
+ XTerm*color15: #e0e0e0
+ XTerm*cursorColor: #00f000
+
+ ! The following are recommended but optional
+ XTerm*reverseVideo: False
+ XTerm*background: #202020
+ XTerm*foreground: #d0d0d0
+ XTerm*boldMode: False
+<
+ There is an assumption that your RXVT or XTERM supports 16 colors,
+ most RXVTs and XTERMs support this, if yours do not, get a source of
+ RXVT and recompile it.
+
+ Sometimes the color mode are not recognized well, or you do not want
+ bright foreground be bold. If this is the case, add the following in
+ your .vimrc (before the color scheme been sourced)
+>
+ if &term=='xterm' " Change 'xterm' to your term name if necessary
+ set t_Co=16
+ endif
+<
+ If the t_Co=16 have problem, set t_Co=8 and :colo ps_color again.
+ and vice versa.
+
+ My rxvt works well with t_Co=16: >
+ Rxvt v2.7.10 - released: 26 MARCH 2003
+ Options:
+ XPM,transparent,utmp,menubar,frills,linespace,multichar_languages,
+ scrollbars=rxvt+NeXT+xterm,.Xdefaults
+< But I've know that my rxvt v2.6.4 in another machine has problem with
+ t_Co=16, if that is the case, set t_Co=8 instead.
+
+ *psc-cterm-others*
+ For other terminals, you can manually set the color according to the
+ following table
+
+ Hints for Manually set the color (for 'cool' style only):
+ *psc-cterm-color-table*
+ Color name Hex value Decimal value (r,g,b)~
+ 0 Black = #000000 0,0,0
+ 4 DarkBlue = #000080 0,0,128
+ 2 DarkGreen = #008000 0,128,0
+ 6 DarkCyan = #a6caf0 166,202,240
+ 1 DarkRed = #800000 128,0,0
+ 5 DarkMagenta = #800080 128,0,128
+ 3 DarkYellow = #d0d090 208,208,144
+ 7 Grey = #d0d0d0 208,208,208
+ 8 DarkGrey = #b0b0b0 176,176,176
+ 12 Blue = #80c0e0 128,192,224
+ 10 Green = #60f080 96,240,128
+ 14 Cyan = #c0d8f8 192,216,248
+ 9 Red = #f08060 240,128,96
+ 13 LMag. = #f0c0f0 240,192,240
+ 11 Yellow = #e0c060 224,192,96
+ 15 White = #e0e0e0 224,224,224
+
+ *psc-cterm-incompatible*
+ If your color terminal does only have 8 colors and cannot achieve 16
+ colors with cterm=bold, you may want to switch to other color schemes
+ to gain more readability. Anyway, you can specify in your .vimrc to
+ use different color scheme under different consoles and GUI.
+ For example:
+>
+ let psc_cterm_style = 'foobarcolor'
+ let psc_style = 'cool'
+ colo ps_color
+<
+ The 'foobarcolor' means the color scheme you want to choose, such as
+ 'desert', I recommend to try vim default schemes 'default' and
+ 'defdark' before experience others.
+
+==============================================================================
+PSC FAQ AND TIPS *psc-faq* *psc-tips*
+>
+ Q: What is meant by `PS' ?
+<
+ A: PS means: PostScript, PhotoShop, PerSonal, ..., or anything you can
+ imagine and anything you want it do be.
+>
+ Q: How to obtain the same appreance as gui in color term?
+<
+ A: This need some work around, see |psc-cterm| for details.
+ Generally speaking, you should ensure your color term has support
+ for 16 foreground colors, and each color is customizable.
+
+ *psc-faq-ffothers* >
+ Q: How to use psc_fontface with other colorschemes?
+<
+ A: Make sure you had sourced :colo ps_color in your .vimrc, then you
+ can use the Capitalized :Colo instead of :colo
+ e.g. you want to use 'murphy', just type :Colo murphy after you
+ sourced the ps_color, the 'defdark', 'cool', 'warm' can also be
+ used here.
+>
+ Q: I updated from v2.0 to v2.3 or above, why the cterm color scheme
+ for Comment is different?
+<
+ A: The color map of DarkYellow and Yellow have been exchanged,
+ You need to reconfigure your terminal to meet the change,
+ see |psc-cterm-color-table| for guide, or if you are using xterm
+ compatible terminal, just update the .XDefaults according to
+ |psc-cterm-xterm|.
+>
+ Q: What do you mean by 'Vanilla Windows'?
+<
+ A: People often argue that Windows is not a REAL operating system.
+ Well, I agree this, but only for vanilla windows. i.e. with no
+ plug-ins installed. Vanilla windows is a very limited platform,
+ since it is not POSIX compliant.
+
+ There are currently many working around to make Windows POSIX
+ Compliant, do you still mind which OS to use when it is POSIX
+ Compliant? I don't. If you installed Cygwin kernel in your
+ NT-based Windows, the Windows will be more or less POSIX compliant
+ and you can use it in the same way as you use any Unix, BSD,
+ Solaris, Linux, XWindow, etc... What is more, Cygwin is not the
+ only kernel which makes Windows POSIX Compliant, make a google
+ search and you will find many alternatives.
+>
+ Q: How to change the Normal background color? Why don't you use
+ different background for NonText group?
+<
+ A: This is for compatibility, since we have to use only 8 colors as
+ background in a color terminal. For GUI you can change this, see
+ |psc-change-background| for details.
+>
+ Q: I updated from 2.81- to 2.82+, why the default background changed?
+<
+ A: This is for Bram's guideline, that dark schemes with black
+ background has too much contrast.
+
+ However, you can change it back. See |psc-change-background| for
+ details.
+>
+ Q: Something changed/doesn't work on 3.00...
+<
+ A: See 3.00 Release note.
+
+==============================================================================
+PSC RELEASE NOTES *psc-release-notes*
+
+ 3.00 Release Note: ~
+
+ GUI: now we accept the &background instead of the "warm" and "cool"
+ style value. So the "warm" and "cool" for psc_style are silently
+ ignored, all users must set the 'background' option manually before
+ :colo ps_color.
+
+ Since this is an incompatible change, I bump the version to 3.00
+
+ CTERM: if psc_style set to 'warm', the v2.90 before will set the style
+ to 'cool', the 3.00 will set the style to 'default' since the
+ background change are eliminated in 3.00. So basically, if you had the
+ background=light in your color terminal, :color ps_color will have
+ little effect.
+
+ Since the background setting can be wrong in cterm, the transparent
+ background are not the default. We added |psc_cterm_background| option
+ to change the bahavior.
+
+ Checked spell with spelllang=en, changes in typos for document.
+
+ 2.95 Release Note: ~
+
+ GUI: Make many foregrounds and backgrounds transparent, in most cases you
+ will not notice any difference. But you may feel better in some rare
+ case.
+
+ CTERM: if your terminal has a transparent background, then we can have
+ the transparent background in vim. Note that the terminal color scheme
+ has to be dark-background for maximum portability. If you have
+ a light-background terminal emulator and want to use ps_color color
+ scheme, please keep v2.90, or change your terminal background color to
+ a dark one.
+
+ 2.90 Release Note: ~
+
+ Upon the release of Vim 7, many new highlight groups have been added.
+
+ A style has been tuned a little to increase contrast.
+
+
+ 2.83 Release Note: ~
+
+ This is an identical version, but my e-mail address changed.
+
+
+ 2.82 Release Note: ~
+
+ Fixed bug with the reversed group for the Vim default, or other
+ schemes.
+
+ Fixed bug with the Diff mode fg mistaken as fg.
+
+ Shrink the script a lot to improve load performance, moved the release
+ notes into document.
+
+ Change the default gui background color to #202020 (Dark Grey)
+
+
+ 2.81 Release Note: ~
+
+ Provided a separate utility reloaded.vim to fine tune the GUI color
+ scheme based on Hue, Saturation and Brightness(Luminance).
+
+ Added some groups to meet the need of reloaded.vim, no essential
+ change.
+
+ 2.8 Release Note: ~
+
+ Bugfix : when psc_style=='mixed', the visual got reversed wrong.
+
+ 'mixed' is now the default for 'warm' style.
+
+ changed the function name to lower case.
+
+ removed pre-2.0 compatibility, (the non-psc version of s-d-f-t).
+
+ Added variable psc_cterm_style, see |psc_cterm_style|
+
+ Added group Underline
+
+ Tuned the function call.
+
+ 2.7 Release Note: ~
+
+ Now it is possible to change the Background,
+ see :h psc-change-background for details.
+
+ Linked the Tag group to Identifier.
+
+ NonText as Notice is not good for 'warm', changed to Constant.
+
+ Added links for the most popular plug-ins: taglist, calendar
+
+ Tuned the 'Statement' color when different from Type (gui only).
+
+ Re-adjusted cterm scheme according to syntax/hitest.vim
+
+ The 'defdark' style for cterm is not functioning, fixed.
+
+ Many 'cosmetic' changes, makes no difference for functionality.
+
+ Use of DrChip's help extractor to auto-install help document.
+
+ Added command define, :Colo
+
+ 2.6 Release Note: ~
+
+ As stated in the v2.3, the only 'todo' thing seems to be the 'warm'
+ style, now in this version I had been working on it.
+
+ There also are some minor fixes for the document, to be more friendly
+ for new readers.
+
+ The 'StatusLine' of 'cold' style is modified by mistake in the v2.3,
+ this time the bug is fixed.
+
+ The 'Directory' in GUI 'cold' style is different from 'cterm' one,
+ now fixed.
+
+ 2.3 Release Note: ~
+
+ This is an incompatible update, main changes are in 'cterm'.
+ A new group 'SignColumn' had been added, new links added for engspchk
+ v52, hundreds of typos fixed in the document, thanks to the engspchk.
+
+ The support for 8-color cterm is slightly better now, but the mappings
+ of the DarkYellow and Yellow are exchanged, you need to update the
+ .Xdefaults or your terminal configuration before apply this update if
+ you are using v2.0. Guide for redefinition the color value is
+ available in the document, make sure you had updated the ps_color.txt,
+ then see |psc-cterm-color-table|
+
+ 2.0 Release Note: ~
+
+ There have been great enhancement since this version, so I'd choose to
+ bump the version number to 2. This version comes with Vim online help,
+ if you had installed ps_color.txt, you can see for details in
+ |pscolor|
+
+ n/a Release: ~
+
+ Initial upload, can be called as v1.8
+
+
+==============================================================================
+PSC TODO LIST *psc-todo*
+
+ . Fix the remain bugs.
+ . Follow the new Vim versions for new added highlighting group
+ . This cannot work in Vim Small and Tiny mode, and will never work!
+
+==============================================================================
+
+vim:tw=78:ts=8:noet:ft=help:fo+=t:norl:noet:
diff --git a/.vim/doc/tags b/.vim/doc/tags
new file mode 100644
index 0000000..fe1bf2c
--- /dev/null
+++ b/.vim/doc/tags
@@ -0,0 +1,29 @@
+ps_color.txt ps_color.txt /*ps_color.txt*
+ps_colour ps_color.txt /*ps_colour*
+psc ps_color.txt /*psc*
+psc-about-background ps_color.txt /*psc-about-background*
+psc-change-background ps_color.txt /*psc-change-background*
+psc-contents ps_color.txt /*psc-contents*
+psc-cterm ps_color.txt /*psc-cterm*
+psc-cterm-color-table ps_color.txt /*psc-cterm-color-table*
+psc-cterm-incompatible ps_color.txt /*psc-cterm-incompatible*
+psc-cterm-nt ps_color.txt /*psc-cterm-nt*
+psc-cterm-others ps_color.txt /*psc-cterm-others*
+psc-cterm-xterm ps_color.txt /*psc-cterm-xterm*
+psc-faq ps_color.txt /*psc-faq*
+psc-faq-ffothers ps_color.txt /*psc-faq-ffothers*
+psc-features ps_color.txt /*psc-features*
+psc-options ps_color.txt /*psc-options*
+psc-overview ps_color.txt /*psc-overview*
+psc-release-notes ps_color.txt /*psc-release-notes*
+psc-tips ps_color.txt /*psc-tips*
+psc-todo ps_color.txt /*psc-todo*
+psc-usage ps_color.txt /*psc-usage*
+psc_cterm_style ps_color.txt /*psc_cterm_style*
+psc_cterm_transparent ps_color.txt /*psc_cterm_transparent*
+psc_fontface ps_color.txt /*psc_fontface*
+psc_inversed_todo ps_color.txt /*psc_inversed_todo*
+psc_statement_different_from_type ps_color.txt /*psc_statement_different_from_type*
+psc_style ps_color.txt /*psc_style*
+psc_use_default_for_cterm ps_color.txt /*psc_use_default_for_cterm*
+pscolor ps_color.txt /*pscolor*
diff --git a/.vimrc b/.vimrc
new file mode 100644
index 0000000..b85f2d9
--- /dev/null
+++ b/.vimrc
@@ -0,0 +1,98 @@
+set encoding=utf-8
+
+set nocompatible
+execute pathogen#infect()
+filetype off
+set rtp+=~/.vim/bundle/Vundle.vim
+call vundle#begin()
+
+Plugin 'VundleVim/Vundle.vim'
+" Plugin 'tmhedberg/SimplylFold'
+Plugin 'vim-scripts/indentpython.vim'
+Bundle 'Valloric/YouCompleteMe'
+Plugin 'ctrlpvim/ctrlp.vim'
+Bundle 'https://github.com/gorodinskiy/vim-coloresque.git'
+Plugin 'airblade/vim-gitgutter'
+Plugin 'fatih/vim-go'
+
+
+
+call vundle#end()
+
+
+syntax on
+colorscheme solarized
+set tabstop=4
+set softtabstop=4
+set expandtab
+
+set number
+set showcmd
+set cursorline
+"filetype indent on
+set wildmenu
+set lazyredraw
+set showmatch
+set incsearch
+set hlsearch
+
+
+" this makes the search highlight dissapear if you type space or maybe ,space
+nnoremap :nohlsearch
+
+set foldenable
+set foldlevelstart=10
+
+set foldnestmax=10
+
+" space toggles folds
+nnoremap za
+
+"makes it so up and down go up and down even on wrapped lines
+
+nnoremap j gj
+nnoremap k gk
+
+
+
+
+
+" B moves to start of line E is end of line
+nnoremap B ^
+nnoremap E $
+
+
+
+" some ctrlp stuff i want to try out
+"let g:ctrlp_match_window = 'bottom,order:ttb'
+"let g:ctrlp_switch_buffer = 0
+"let g:ctrlp_working_path_mode = 0
+"let g:ctrlp_user_command = 'ag %s -l --nocolor --hidden -g ""'
+"
+"let g:powerline_pycmd = "py3"
+"set statusline+=%#warningmsg#
+"set statusline+=%{SyntasticStatusLineFlag()}
+"set statusline+=%*
+"
+"let g:syntastic_always_populate_loc_list = 1
+"let g:syntastic_auto_loc_list = 1
+"let g:syntastic_check_on_open = 1
+"let g:syntastic_check_on_wq = 0
+
+
+
+
+
+"#function! s:SwitchPSCStyle()
+"# if exists('g:psc_style')
+"# if g:psc_style == 'cool'
+"# let g:psc_style = 'warm'
+"# elseif g:psc_style == 'warm'
+"# let g:psc_style = 'cool'
+"# endif
+"# else
+"# let g:psc_style = 'warm'
+"# endif
+"# colorscheme ps_color
+"#endfunction
+"#map :call SwitchPSCStyle()
diff --git a/fish/functions/l.fish b/fish/functions/l.fish
index 6f018ca..2de548b 100644
--- a/fish/functions/l.fish
+++ b/fish/functions/l.fish
@@ -1,3 +1,3 @@
function l
- lsd
+ lsd $argv
end
diff --git a/fish/functions/la.fish b/fish/functions/la.fish
index 740a962..0a587b7 100644
--- a/fish/functions/la.fish
+++ b/fish/functions/la.fish
@@ -1,7 +1,3 @@
function la --description 'list all files'
- if count $argv > /dev/null
-lsd -a $argv
-else
-lsd -a
-end
+ lsd -a $argv
end
diff --git a/fish/functions/lla.fish b/fish/functions/lla.fish
index bf6efb1..899f23e 100644
--- a/fish/functions/lla.fish
+++ b/fish/functions/lla.fish
@@ -1,7 +1,3 @@
function lla --description 'like la but with a list view'
- if count $argv > /dev/null
-lsd -la $argv
-else
-lsd -la
-end
+ lsd -la $argv
end
diff --git a/fish/functions/lt.fish b/fish/functions/lt.fish
index 0f5dc9b..0f94c8d 100644
--- a/fish/functions/lt.fish
+++ b/fish/functions/lt.fish
@@ -1,7 +1,3 @@
function lt --description 'list all tree view'
- if count $argv > /dev/null
-lsd -a --tree $argv
-else
-lsd -a --tree
-end
+ lsd -a --tree $argv
end
diff --git a/init.sh b/init.sh
index 16c14df..bd7a723 100644
--- a/init.sh
+++ b/init.sh
@@ -40,5 +40,28 @@ fi
ln -s ./.fishrc ~/.fishrc
+if [ -d ~/.config/omf ]; then
+ mv ./.config/omf ~/.config/omfBACKUP
+fi
+ln -s ./omf ~/.config/omf
+
+if [ -d ~/.config/polybar ]; then
+ mv ./.config/polybar ~/.config/polybarBACKUP
+fi
+ln -s ./polybar ~/.config/polybar
+
+
+if [ -d ~/.config/ranger ]; then
+ mv ./.config/ranger ~/.config/rangerBACKUP
+fi
+ln -s ./ranger ~/.config/ranger
+
+
+if [ -d ~/.config/rofi ]; then
+ mv ./.config/rofi ~/.config/rofiBACKUP
+fi
+ln -s ./rofi ~/.config/rofi
+
+
diff --git a/omf/bundle b/omf/bundle
new file mode 100644
index 0000000..6e26ec3
--- /dev/null
+++ b/omf/bundle
@@ -0,0 +1,16 @@
+package sublime
+theme agnoster
+theme aight
+theme ays
+theme batman
+theme bira
+theme bobthefish
+theme default
+theme emoji-powerline
+theme idan
+theme jacaetevha
+theme johanson
+theme ocean
+theme sushi
+theme toaster
+theme zish
diff --git a/omf/channel b/omf/channel
new file mode 100644
index 0000000..2bf5ad0
--- /dev/null
+++ b/omf/channel
@@ -0,0 +1 @@
+stable
diff --git a/omf/theme b/omf/theme
new file mode 100644
index 0000000..e132d6a
--- /dev/null
+++ b/omf/theme
@@ -0,0 +1 @@
+jacaetevha
diff --git a/polybar/config b/polybar/config
new file mode 100644
index 0000000..9c23f9c
--- /dev/null
+++ b/polybar/config
@@ -0,0 +1,399 @@
+[colors]
+;background = ${xrdb:color0:#222}
+background = #222
+background-alt = #444
+;foreground = ${xrdb:color7:#222}
+foreground = #dfdfdf
+foreground-alt = #555
+primary = #ffb52a
+secondary = #e60053
+alert = #bd2c40
+
+
+[bar/statusbar]
+#monitor = ${env:MONITOR:DVI-I-1}
+#monitor = ${env:MONITOR:}
+width = 100%
+height = 27
+
+offset-x = 0%
+offset-y = 0%
+
+radius = 0.0
+fixed-center = true
+
+bottom = true
+
+background = ${colors.background}
+foreground = ${colors.foreground}
+
+line-size = 0
+line-color = #f00
+
+border-size = 0
+border-color = #00000000
+
+padding-left = 0
+padding-right = 0
+
+module-margin-left = 1
+module-margin-right = 1
+
+font-0 = Roboto Mono:pixelsize=9;1
+font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
+font-2 = FontAwesome:pixelsize=11;1
+
+modules-left = date time temperature xbacklight volume battery
+modules-center = xwindow
+modules-right = i3
+
+tray-position = right
+tray-padding = 6
+tray-background = #000000
+;tray-transparent = true
+
+;wm-restack = bspwm
+;wm-restack = i3
+
+;override-redirect = true
+
+;scroll-up = bspwm-desknext
+;scroll-down = bspwm-deskprev
+
+;scroll-up = i3wm-wsnext
+;scroll-down = i3wm-wsprev
+
+[module/xwindow]
+type = internal/xwindow
+label = [ %title:0:30:...% ]
+label-foreground = #f48aa3
+
+[module/xkeyboard]
+type = internal/xkeyboard
+blacklist-0 =
+
+format-prefix = " "
+format-prefix-foreground = ${colors.foreground-alt}
+format-prefix-underline = ${colors.secondary}
+
+label-layout = %layout%
+label-layout-underline = ${colors.secondary}
+
+label-indicator-padding = 2
+label-indicator-margin = 1
+label-indicator-background = ${colors.secondary}
+label-indicator-underline = ${colors.secondary}
+
+[module/filesystem]
+type = internal/fs
+interval = 25
+
+mount-0 = /
+
+label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
+label-unmounted = %mountpoint% not mounted
+label-unmounted-foreground = ${colors.foreground-alt}
+
+[module/bspwm]
+type = internal/bspwm
+
+label-focused = %index%
+label-focused-background = ${colors.background-alt}
+label-focused-underline = #fab1c3
+;label-focused-underline= ${colors.primary}
+label-focused-padding = 2
+
+label-occupied = %index%
+label-occupied-padding = 2
+
+label-urgent = %index%!
+label-urgent-background = ${colors.alert}
+label-urgent-padding = 2
+
+label-empty = %index%
+label-empty-foreground = ${colors.foreground-alt}
+label-empty-padding = 2
+
+[module/i3]
+type = internal/i3
+format =
+index-sort = true
+ws-icon-0 = 1;
+ws-icon-1 = 2;
+ws-icon-2 = 3;
+ws-icon-3 = 4;
+ws-icon-4 = 5;V
+ws-icon-5 = 6;VI
+ws-icon-6 = 7;
+ws-icon-7 = 8;
+ws-icon-8 = 9;
+ws-icon-9 = 10;
+ws-icon-default =
+
+;wrapping-scroll = false
+
+; Only show workspaces on the same output as the bar
+;pin-workspaces = true
+
+label-mode-padding = 0
+label-mode-foreground = #000
+label-mode-background = ${colors.primary}
+
+; focused = Active workspace on focused monitor
+;label-focused = %index%
+label-focused = %icon%
+label-focused-background = ${module/bspwm.label-focused-background}
+label-focused-underline = ${module/bspwm.label-focused-underline}
+label-focused-padding = ${module/bspwm.label-focused-padding}
+
+; unfocused = Inactive workspace on any monitor
+label-unfocused = %icon%
+label-unfocused-padding = ${module/bspwm.label-occupied-padding}
+
+; visible = Active workspace on unfocused monitor
+label-visible = %icon%
+label-visible-background = ${self.label-focused-background}
+label-visible-underline = ${self.label-focused-underline}
+label-visible-padding = ${self.label-focused-padding}
+
+; urgent = Workspace with urgency hint set
+label-urgent = %icon%
+label-urgent-background = ${module/bspwm.label-urgent-background}
+label-urgent-padding = ${module/bspwm.label-urgent-padding}
+
+[module/mpd]
+type = internal/mpd
+;format-online =
+format-online = -- [ ] --
+host = 127.0.0.1
+port = 6600
+interval = 2
+
+icon-prev =
+icon-stop =
+icon-play =
+icon-pause =
+icon-next =
+
+label-song-maxlen = 50
+label-song-ellipsis = true
+label-foreground = #f48aa3
+
+[module/xbacklight]
+type = internal/xbacklight
+
+format =