aboutsummaryrefslogtreecommitdiffstats
path: root/.vim
diff options
context:
space:
mode:
authorMathias Bynens <mathias@qiwi.be>2014-06-07 23:16:52 +0200
committerMathias Bynens <mathias@qiwi.be>2014-06-07 23:16:52 +0200
commit7d16e8c7d3d5dfcbb0863ccb05353a9217ffc5ec (patch)
tree6e19de8c200faf680b8336450514b0bf712196bc /.vim
parentcaa3964b343d5b5b969bbfeefe44f55aaba173bf (diff)
downloaddotfiles-7d16e8c7d3d5dfcbb0863ccb05353a9217ffc5ec.tar.gz
dotfiles-7d16e8c7d3d5dfcbb0863ccb05353a9217ffc5ec.tar.bz2
dotfiles-7d16e8c7d3d5dfcbb0863ccb05353a9217ffc5ec.zip
Enable Solarized Dark theme in Vim
Diffstat (limited to '.vim')
-rw-r--r--.vim/colors/molokai.vim273
-rw-r--r--.vim/colors/railscat.vim133
-rw-r--r--.vim/colors/solarized.vim969
3 files changed, 969 insertions, 406 deletions
diff --git a/.vim/colors/molokai.vim b/.vim/colors/molokai.vim
deleted file mode 100644
index 45138ef..0000000
--- a/.vim/colors/molokai.vim
+++ /dev/null
@@ -1,273 +0,0 @@
-" Vim color file
-"
-" Author: Tomas Restrepo <tomas@winterdom.com>
-" https://github.com/tomasr/molokai
-"
-" Note: Based on the Monokai theme for TextMate
-" by Wimer Hazenberg and its darker variant
-" by Hamish Stuart Macpherson
-"
-
-hi clear
-
-set background=dark
-if version > 580
- " no guarantees for version 5.8 and below, but this makes it stop
- " complaining
- hi clear
- if exists("syntax_on")
- syntax reset
- endif
-endif
-let g:colors_name="molokai"
-
-if exists("g:molokai_original")
- let s:molokai_original = g:molokai_original
-else
- let s:molokai_original = 0
-endif
-
-
-hi Boolean guifg=#AE81FF
-hi Character guifg=#E6DB74
-hi Number guifg=#AE81FF
-hi String guifg=#E6DB74
-hi Conditional guifg=#F92672 gui=bold
-hi Constant guifg=#AE81FF gui=bold
-hi Cursor guifg=#000000 guibg=#F8F8F0
-hi iCursor guifg=#000000 guibg=#F8F8F0
-hi Debug guifg=#BCA3A3 gui=bold
-hi Define guifg=#66D9EF
-hi Delimiter guifg=#8F8F8F
-hi DiffAdd guibg=#13354A
-hi DiffChange guifg=#89807D guibg=#4C4745
-hi DiffDelete guifg=#960050 guibg=#1E0010
-hi DiffText guibg=#4C4745 gui=italic,bold
-
-hi Directory guifg=#A6E22E gui=bold
-hi Error guifg=#E6DB74 guibg=#1E0010
-hi ErrorMsg guifg=#F92672 guibg=#232526 gui=bold
-hi Exception guifg=#A6E22E gui=bold
-hi Float guifg=#AE81FF
-hi FoldColumn guifg=#465457 guibg=#000000
-hi Folded guifg=#465457 guibg=#000000
-hi Function guifg=#A6E22E
-hi Identifier guifg=#FD971F
-hi Ignore guifg=#808080 guibg=bg
-hi IncSearch guifg=#C4BE89 guibg=#000000
-
-hi Keyword guifg=#F92672 gui=bold
-hi Label guifg=#E6DB74 gui=none
-hi Macro guifg=#C4BE89 gui=italic
-hi SpecialKey guifg=#66D9EF gui=italic
-
-hi MatchParen guifg=#000000 guibg=#FD971F gui=bold
-hi ModeMsg guifg=#E6DB74
-hi MoreMsg guifg=#E6DB74
-hi Operator guifg=#F92672
-
-" complete menu
-hi Pmenu guifg=#66D9EF guibg=#000000
-hi PmenuSel guibg=#808080
-hi PmenuSbar guibg=#080808
-hi PmenuThumb guifg=#66D9EF
-
-hi PreCondit guifg=#A6E22E gui=bold
-hi PreProc guifg=#A6E22E
-hi Question guifg=#66D9EF
-hi Repeat guifg=#F92672 gui=bold
-hi Search guifg=#FFFFFF guibg=#455354
-" marks
-hi SignColumn guifg=#A6E22E guibg=#232526
-hi SpecialChar guifg=#F92672 gui=bold
-hi SpecialComment guifg=#7E8E91 gui=bold
-hi Special guifg=#66D9EF guibg=bg gui=italic
-if has("spell")
- hi SpellBad guisp=#FF0000 gui=undercurl
- hi SpellCap guisp=#7070F0 gui=undercurl
- hi SpellLocal guisp=#70F0F0 gui=undercurl
- hi SpellRare guisp=#FFFFFF gui=undercurl
-endif
-hi Statement guifg=#F92672 gui=bold
-hi StatusLine guifg=#455354 guibg=fg
-hi StatusLineNC guifg=#808080 guibg=#080808
-hi StorageClass guifg=#FD971F gui=italic
-hi Structure guifg=#66D9EF
-hi Tag guifg=#F92672 gui=italic
-hi Title guifg=#ef5939
-hi Todo guifg=#FFFFFF guibg=bg gui=bold
-
-hi Typedef guifg=#66D9EF
-hi Type guifg=#66D9EF gui=none
-hi Underlined guifg=#808080 gui=underline
-
-hi VertSplit guifg=#808080 guibg=#080808 gui=bold
-hi VisualNOS guibg=#403D3D
-hi Visual guibg=#403D3D
-hi WarningMsg guifg=#FFFFFF guibg=#333333 gui=bold
-hi WildMenu guifg=#66D9EF guibg=#000000
-
-hi TabLineFill guifg=#1B1D1E guibg=#1B1D1E
-hi TabLine guibg=#1B1D1E guifg=#808080 gui=none
-
-if s:molokai_original == 1
- hi Normal guifg=#F8F8F2 guibg=#272822
- hi Comment guifg=#75715E
- hi CursorLine guibg=#3E3D32
- hi CursorLineNr guifg=#FD971F gui=none
- hi CursorColumn guibg=#3E3D32
- hi ColorColumn guibg=#3B3A32
- hi LineNr guifg=#BCBCBC guibg=#3B3A32
- hi NonText guifg=#75715E
- hi SpecialKey guifg=#75715E
-else
- hi Normal guifg=#F8F8F2 guibg=#1B1D1E
- hi Comment guifg=#7E8E91
- hi CursorLine guibg=#293739
- hi CursorLineNr guifg=#FD971F gui=none
- hi CursorColumn guibg=#293739
- hi ColorColumn guibg=#232526
- hi LineNr guifg=#465457 guibg=#232526
- hi NonText guifg=#465457
- hi SpecialKey guifg=#465457
-end
-
-"
-" Support for 256-color terminal
-"
-if &t_Co > 255
- if s:molokai_original == 1
- hi Normal ctermbg=234
- hi CursorLine ctermbg=235 cterm=none
- hi CursorLineNr ctermfg=208 cterm=none
- else
- hi Normal ctermfg=252 ctermbg=233
- hi CursorLine ctermbg=234 cterm=none
- hi CursorLineNr ctermfg=208 cterm=none
- endif
- hi Boolean ctermfg=135
- hi Character ctermfg=144
- hi Number ctermfg=135
- hi String ctermfg=144
- hi Conditional ctermfg=161 cterm=bold
- hi Constant ctermfg=135 cterm=bold
- hi Cursor ctermfg=16 ctermbg=253
- hi Debug ctermfg=225 cterm=bold
- hi Define ctermfg=81
- hi Delimiter ctermfg=241
-
- hi DiffAdd ctermbg=24
- hi DiffChange ctermfg=181 ctermbg=239
- hi DiffDelete ctermfg=162 ctermbg=53
- hi DiffText ctermbg=102 cterm=bold
-
- hi Directory ctermfg=118 cterm=bold
- hi Error ctermfg=219 ctermbg=89
- hi ErrorMsg ctermfg=199 ctermbg=16 cterm=bold
- hi Exception ctermfg=118 cterm=bold
- hi Float ctermfg=135
- hi FoldColumn ctermfg=67 ctermbg=16
- hi Folded ctermfg=67 ctermbg=16
- hi Function ctermfg=118
- hi Identifier ctermfg=208 cterm=none
- hi Ignore ctermfg=244 ctermbg=232
- hi IncSearch ctermfg=193 ctermbg=16
-
- hi keyword ctermfg=161 cterm=bold
- hi Label ctermfg=229 cterm=none
- hi Macro ctermfg=193
- hi SpecialKey ctermfg=81
-
- hi MatchParen ctermfg=208 ctermbg=233 cterm=bold
- hi ModeMsg ctermfg=229
- hi MoreMsg ctermfg=229
- hi Operator ctermfg=161
-
- " complete menu
- hi Pmenu ctermfg=81 ctermbg=16
- hi PmenuSel ctermfg=81 ctermbg=244
- hi PmenuSbar ctermbg=232
- hi PmenuThumb ctermfg=81
-
- hi PreCondit ctermfg=118 cterm=bold
- hi PreProc ctermfg=118
- hi Question ctermfg=81
- hi Repeat ctermfg=161 cterm=bold
- hi Search ctermfg=253 ctermbg=66
-
- " marks column
- hi SignColumn ctermfg=118 ctermbg=235
- hi SpecialChar ctermfg=161 cterm=bold
- hi SpecialComment ctermfg=245 cterm=bold
- hi Special ctermfg=81
- if has("spell")
- hi SpellBad ctermbg=52
- hi SpellCap ctermbg=17
- hi SpellLocal ctermbg=17
- hi SpellRare ctermfg=none ctermbg=none cterm=reverse
- endif
- hi Statement ctermfg=161 cterm=bold
- hi StatusLine ctermfg=238 ctermbg=253
- hi StatusLineNC ctermfg=244 ctermbg=232
- hi StorageClass ctermfg=208
- hi Structure ctermfg=81
- hi Tag ctermfg=161
- hi Title ctermfg=166
- hi Todo ctermfg=231 ctermbg=232 cterm=bold
-
- hi Typedef ctermfg=81
- hi Type ctermfg=81 cterm=none
- hi Underlined ctermfg=244 cterm=underline
-
- hi VertSplit ctermfg=244 ctermbg=232 cterm=bold
- hi VisualNOS ctermbg=238
- hi Visual ctermbg=235
- hi WarningMsg ctermfg=231 ctermbg=238 cterm=bold
- hi WildMenu ctermfg=81 ctermbg=16
-
- hi Comment ctermfg=59
- hi CursorColumn ctermbg=236
- hi ColorColumn ctermbg=236
- hi LineNr ctermfg=250 ctermbg=236
- hi NonText ctermfg=59
-
- hi SpecialKey ctermfg=59
-
- if exists("g:rehash256") && g:rehash256 == 1
- hi Normal ctermfg=252 ctermbg=234
- hi CursorLine ctermbg=236 cterm=none
- hi CursorLineNr ctermfg=208 cterm=none
-
- hi Boolean ctermfg=141
- hi Character ctermfg=222
- hi Number ctermfg=141
- hi String ctermfg=222
- hi Conditional ctermfg=197 cterm=bold
- hi Constant ctermfg=141 cterm=bold
-
- hi DiffDelete ctermfg=125 ctermbg=233
-
- hi Directory ctermfg=154 cterm=bold
- hi Error ctermfg=222 ctermbg=233
- hi Exception ctermfg=154 cterm=bold
- hi Float ctermfg=141
- hi Function ctermfg=154
- hi Identifier ctermfg=208
-
- hi Keyword ctermfg=197 cterm=bold
- hi Operator ctermfg=197
- hi PreCondit ctermfg=154 cterm=bold
- hi PreProc ctermfg=154
- hi Repeat ctermfg=197 cterm=bold
-
- hi Statement ctermfg=197 cterm=bold
- hi Tag ctermfg=197
- hi Title ctermfg=203
- hi Visual ctermbg=238
-
- hi Comment ctermfg=244
- hi LineNr ctermfg=239 ctermbg=235
- hi NonText ctermfg=239
- hi SpecialKey ctermfg=239
- endif
-end
diff --git a/.vim/colors/railscat.vim b/.vim/colors/railscat.vim
deleted file mode 100644
index a9e85c8..0000000
--- a/.vim/colors/railscat.vim
+++ /dev/null
@@ -1,133 +0,0 @@
-" Vim color scheme
-"
-" Name: railscat.vim
-" Maintainer: Jeff Kreeftmeijer
-" License: public domain
-" URL: https://gist.github.com/1523432
-"
-" A GUI only extended version of the Railscasts+ theme, that comes with
-" Janus [1] and is, in turn, an extension to the original Railscasts theme
-" [2], which is a port of the RailsCasts TextMate theme [3] to Vim.
-"
-" [1] https://github.com/carlhuda/janus
-" [2] http://www.vim.org/scripts/script.php?script_id=2175
-" [3] http://railscasts.com/about
-
-set background=dark
-hi clear
-if exists("syntax_on")
- syntax reset
-endif
-let g:colors_name = "railscat"
-
-" Colors
-" Brown #BC9458
-" Dark Blue #6D9CBE
-" Dark Green #519F50
-" Dark Orange #CC7833
-" Light Blue #D0D0FF
-" Light Green #A5C261
-" Tan #FFC66D
-
-hi Normal guifg=#E6E1DC guibg=#2B2B2B
-hi Cursor guibg=#FFFFFF
-hi Search guibg=#5A647E
-hi Visual guibg=#5A647E
-
-" Folds
-" -----
-" line used for closed folds
-hi Folded guifg=#F6F3E8 guibg=#444444 gui=NONE
-
-" Misc
-" ----
-" directory names and other special names in listings
-hi Directory guifg=#A5C261 gui=NONE
-
-" Popup Menu
-" ----------
-" normal item in popup
-hi Pmenu guifg=#F6F3E8 guibg=#444444 gui=NONE
-" selected item in popup
-hi PmenuSel guifg=#000000 guibg=#A5C261 gui=NONE
-" scrollbar in popup
-hi PMenuSbar guibg=#5A647E gui=NONE
-" thumb of the scrollbar in the popup
-hi PMenuThumb guibg=#AAAAAA gui=NONE
-
-"rubyComment
-hi Comment guifg=#BC9458 gui=italic
-hi Todo guifg=#BC9458 guibg=NONE gui=italic
-
-"rubyPseudoVariable
-"nil, self, symbols, etc
-hi Constant guifg=#6D9CBE
-
-"rubyClass, rubyModule, rubyDefine
-"def, end, include, etc
-hi Define guifg=#CC7833
-
-"rubyInterpolation
-hi Delimiter guifg=#519F50
-
-"rubyError, rubyInvalidVariable
-hi Error guifg=#FFFFFF guibg=#990000
-
-"rubyFunction
-hi Function guifg=#FFC66D gui=NONE
-
-"rubyIdentifier
-"@var, @@var, $var, etc
-hi Identifier guifg=#D0D0FF gui=NONE
-
-"rubyInclude
-"include, autoload, extend, load, require
-hi Include guifg=#CC7833 gui=NONE
-
-"rubyKeyword, rubyKeywordAsMethod
-"alias, undef, super, yield, callcc, caller, lambda, proc
-hi Keyword guifg=#CC7833
-
-" same as define
-hi Macro guifg=#CC7833 gui=NONE
-
-"rubyInteger
-hi Number guifg=#A5C261
-
-" #if, #else, #endif
-hi PreCondit guifg=#CC7833 gui=NONE
-
-" generic preprocessor
-hi PreProc guifg=#CC7833 gui=NONE
-
-"rubyControl, rubyAccess, rubyEval
-"case, begin, do, for, if unless, while, until else, etc.
-hi Statement guifg=#CC7833 gui=NONE
-
-"rubyString
-hi String guifg=#A5C261
-
-hi Title guifg=#FFFFFF
-
-"rubyConstant
-hi Type guifg=#DA4939 gui=NONE
-
-hi DiffAdd guifg=#E6E1DC guibg=#144212
-hi DiffDelete guifg=#E6E1DC guibg=#660000
-
-hi link htmlTag xmlTag
-hi link htmlTagName xmlTagName
-hi link htmlEndTag xmlEndTag
-
-hi xmlTag guifg=#E8BF6A
-hi xmlTagName guifg=#E8BF6A
-hi xmlEndTag guifg=#E8BF6A
-
-hi StatusLine guibg=#cccccc guifg=#000000
-hi StatusLineNC guibg=#666666 guifg=#333333
-hi CursorLine guibg=#262626
-hi VertSplit guifg=#262626
-hi ColorColumn guibg=#262626
-hi LineNr guifg=#666666 guibg=#333333
-hi NonText guifg=#666666
-hi SignColumn guibg=#666666
diff --git a/.vim/colors/solarized.vim b/.vim/colors/solarized.vim
new file mode 100644
index 0000000..ee46b17
--- /dev/null
+++ b/.vim/colors/solarized.vim
@@ -0,0 +1,969 @@
+" Name: Solarized vim colorscheme
+" Author: Ethan Schoonover <es@ethanschoonover.com>
+" 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 Apr 14
+"
+" 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.
+"
+" ---------------------------------------------------------------------
+" INSTALLATION:
+" ---------------------------------------------------------------------
+"
+" Two options for installation: manual or pathogen
+"
+" MANUAL INSTALLATION OPTION:
+" ---------------------------------------------------------------------
+"
+" 1. Put the files in the right place!
+" 2. Move `solarized.vim` to your `.vim/colors` directory.
+"
+" 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.
+"
+" Other options are detailed below.
+"
+" IMPORTANT NOTE FOR TERMINAL USERS:
+"
+" If you are going to use Solarized in Terminal mode (i.e. not in a GUI version
+" like gvim or macvim), **please please please** consider setting your terminal
+" emulator's colorscheme to used the Solarized palette. I've included palettes
+" for some popular terminal emulator as well as Xdefaults in the official
+" Solarized download available from [Solarized homepage]. If you use
+" Solarized *without* these colors, Solarized will need to be told to degrade
+" its colorscheme to a set compatible with the limited 256 terminal palette
+" (whereas by using the terminal's 16 ansi color values, you can set the
+" correct, specific values for the Solarized palette).
+"
+" If you do use the custom terminal colors, solarized.vim should work out of
+" the box for you. If you are using a terminal emulator that supports 256
+" colors and don't want to use the custom Solarized terminal colors, you will
+" need to use the degraded 256 colorscheme. To do so, simply add the following
+" line *before* the `colorschem solarized` line:
+"
+" let g:solarized_termcolors=256
+"
+" Again, I recommend just changing your terminal colors to Solarized values
+" either manually or via one of the many terminal schemes available for import.
+"
+" ---------------------------------------------------------------------
+" TOGGLE BACKGROUND FUNCTION:
+" ---------------------------------------------------------------------
+"
+" Solarized comes with a Toggle Background plugin that by default will map to
+" <F5> if that mapping is available. If it is not available you will need to
+" either map the function manually or change your current <F5> mapping to
+" something else. If you wish to map the function manually, enter the following
+" lines in your .vimrc:
+"
+" nmap <unique> <F5> <Plug>ToggleBackground
+" imap <unique> <F5> <Plug>ToggleBackground
+" vmap <unique> <F5> <Plug>ToggleBackground
+"
+" Note that it is important to *not* use the noremap map variants. The plugin
+" uses noremap internally. You may run `:help togglebg` for more information.
+"
+" ---------------------------------------------------------------------
+" OPTIONS
+" ---------------------------------------------------------------------
+"
+" Set these in your vimrc file prior to calling the colorscheme.
+"
+" option name default optional
+" ------------------------------------------------
+" g:solarized_termcolors= 16 | 256
+" g:solarized_termtrans = 0 | 1
+" g:solarized_degrade = 0 | 1
+" g:solarized_bold = 1 | 0
+" g:solarized_underline = 1 | 0
+" g:solarized_italic = 1 | 0
+" g:solarized_contrast = "normal"| "high" or "low"
+" g:solarized_visibility= "normal"| "high" or "low"
+" ------------------------------------------------
+"
+" OPTION DETAILS
+"
+" ------------------------------------------------
+" g:solarized_termcolors= 256 | 16
+" ------------------------------------------------
+" The most important option if you are using vim in terminal (non gui) mode!
+" This tells Solarized to use the 256 degraded color mode if running in a 256
+" color capable terminal. Otherwise, if set to `16` it will use the terminal
+" emulators colorscheme (best option as long as you've set the emulators colors
+" to the Solarized palette).
+"
+" If you are going to use Solarized in Terminal mode (i.e. not in a GUI
+" version like gvim or macvim), **please please please** consider setting your
+" terminal emulator's colorscheme to used the Solarized palette. I've included
+" palettes for some popular terminal emulator as well as Xdefaults in the
+" official Solarized download available from:
+" http://ethanschoonover.com/solarized . If you use Solarized without these
+" colors, Solarized will by default use an approximate set of 256 colors. It
+" isn't bad looking and has been extensively tweaked, but it's still not quite
+" the real thing.
+"
+" ------------------------------------------------
+" g:solarized_termtrans = 0 | 1
+" ------------------------------------------------
+" If you use a terminal emulator with a transparent background and Solarized
+" isn't displaying the background color transparently, set this to 1 and
+" Solarized will use the default (transparent) background of the terminal
+" emulator. *urxvt* required this in my testing; iTerm2 did not.
+"
+" Note that on Mac OS X Terminal.app, solarized_termtrans is set to 1 by
+" default as this is almost always the best option. The only exception to this
+" is if the working terminfo file supports 256 colors (xterm-256color).
+"
+" ------------------------------------------------
+" g:solarized_degrade = 0 | 1
+" ------------------------------------------------
+" For test purposes only; forces Solarized to use the 256 degraded color mode
+" to test the approximate color values for accuracy.
+"
+" ------------------------------------------------
+" g:solarized_bold = 1 | 0
+" ------------------------------------------------
+" ------------------------------------------------
+" g:solarized_underline = 1 | 0
+" ------------------------------------------------
+" ------------------------------------------------
+" g:solarized_italic = 1 | 0
+" ------------------------------------------------
+" If you wish to stop Solarized from displaying bold, underlined or
+" italicized typefaces, simply assign a zero value to the appropriate
+" variable, for example: `let g:solarized_italic=0`
+"
+" ------------------------------------------------
+" g:solarized_contrast = "normal"| "high" or "low"
+" ------------------------------------------------
+" Stick with normal! It's been carefully tested. Setting this option to high
+" or low does use the same Solarized palette but simply shifts some values up
+" or down in order to expand or compress the tonal range displayed.
+"
+" ------------------------------------------------
+" g:solarized_visibility = "normal"| "high" or "low"
+" ------------------------------------------------
+" Special characters such as trailing whitespace, tabs, newlines, when
+" displayed using ":set list" can be set to one of three levels depending on
+" your needs.
+"
+" ---------------------------------------------------------------------
+" 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/"
+"
+"
+" }}}
+" Default option values"{{{
+" ---------------------------------------------------------------------
+if !exists("g:solarized_termtrans")
+ if ($TERM_PROGRAM ==? "apple_terminal" && &t_Co < 256)
+ let g:solarized_termtrans = 1
+ else
+ let g:solarized_termtrans = 0
+ endif
+endif
+if !exists("g:solarized_degrade")
+ let g:solarized_degrade = 0
+endif
+if !exists("g:solarized_bold")
+ let g:solarized_bold = 1
+endif
+if !exists("g:solarized_underline")
+ let g:solarized_underline = 1
+endif
+if !exists("g:solarized_italic")
+ let g:solarized_italic = 1
+endif
+if !exists("g:solarized_termcolors")
+ let g:solarized_termcolors = 16
+endif
+if !exists("g:solarized_contrast")
+ let g:solarized_contrast = "normal"
+endif
+if !exists("g:solarized_visibility")
+ let g:solarized_visibility = "normal"
+endif
+"}}}
+" 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"
+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 = "13"
+ let s:blue = "4"
+ let s:cyan = "6"
+ let s:green = "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"{{{
+" ---------------------------------------------------------------------
+if g:solarized_bold == 1
+ let s:b = ",bold"
+else
+ let s:b = ""
+endif
+
+if g:solarized_underline == 1
+ let s:u = ",underline"
+else
+ let s:u = ""
+endif
+
+if g:solarized_italic == 1
+ let s:i = ",italic"
+else
+ let s:i = ""
+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". " term=NONE". "'"
+exe "let s:fmt_revr = ' ".s:vmode."=NONE".s:r. " term=NONE".s:r."'"
+exe "let s:fmt_stnd = ' ".s:vmode."=NONE".s:s. " term=NONE".s:s."'"
+
+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_base1 .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_red .s:bg_none
+ exe "hi! NonText" .s:fmt_bold .s:fg_base01 .s:bg_none
+endif
+if (has("gui_running")) || &t_Co > 8
+ exe "hi! StatusLine" .s:fmt_none .s:fg_base02 .s:bg_base1
+ exe "hi! StatusLineNC" .s:fmt_none .s:fg_base02 .s:bg_base00
+ "exe "hi! Visual" .s:fmt_stnd .s:fg_none .s:bg_base02
+ exe "hi! Visual" .s:fmt_none .s:fg_base03 .s:bg_base01
+else
+ exe "hi! StatusLine" .s:fmt_none .s:fg_base02 .s:bg_base2
+ exe "hi! StatusLineNC" .s:fmt_none .s:fg_base02 .s:bg_base2
+ exe "hi! Visual" .s:fmt_none .s:fg_none .s:bg_base2
+endif
+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
+exe "hi! VertSplit" .s:fmt_bold .s:fg_base00 .s:bg_base00
+exe "hi! Title" .s:fmt_bold .s:fg_orange .s:bg_none
+exe "hi! VisualNOS" .s:fmt_stnd .s:fg_none .s:bg_base02
+exe "hi! WarningMsg" .s:fmt_bold .s:fg_red .s:bg_none
+exe "hi! WildMenu" .s:fmt_none .s:fg_base2 .s:bg_base02
+exe "hi! Folded" .s:fmt_undb .s:fg_base0 .s:bg_base02 .s:sp_base03
+exe "hi! FoldColumn" .s:fmt_bold .s:fg_base0 .s:bg_base02
+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
+exe "hi! SignColumn" .s:fmt_none .s:fg_base0 .s:bg_base02
+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
+exe "hi! PmenuSel" .s:fmt_none .s:fg_base2 .s:bg_base01
+exe "hi! PmenuSbar" .s:fmt_none .s:fg_base0 .s:bg_base2
+exe "hi! PmenuThumb" .s:fmt_none .s:fg_base03 .s:bg_base0
+exe "hi! TabLine" .s:fmt_undr .s:fg_base0 .s:bg_base02 .s:sp_base0
+exe "hi! TabLineSel" .s:fmt_undr .s:fg_base2 .s:bg_base01 .s:sp_base0
+exe "hi! TabLineFill" .s:fmt_undr .s:fg_base0 .s:bg_base02 .s:sp_base0
+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
+exe "hi! vimCommentString".s:fg_violet .s:bg_none .s:fmt_none
+hi! link vimVar Identifier
+hi! link vimFunc Function
+hi! link vimUserFunc Function
+exe "hi! vimCommand" . s:fg_yellow .s:bg_none .s:fmt_none
+exe "hi! vimCmdSep" . s:fg_blue .s:bg_none .s:fmt_bold
+exe "hi! helpExample" . s:fg_base1 .s:bg_none .s:fmt_none
+hi! link helpSpecial Special
+exe "hi! helpOption" . s:fg_cyan .s:bg_none .s:fmt_none
+exe "hi! helpNote" . s:fg_magenta.s:bg_none .s:fmt_none
+exe "hi! helpVim" . s:fg_magenta.s:bg_none .s:fmt_none
+exe "hi! helpHyperTextJump" .s:fg_blue .s:bg_none .s:fmt_undr
+exe "hi! helpHyperTextEntry".s:fg_green .s:bg_none .s:fmt_none
+exe "hi! vimIsCommand" . s:fg_base00 .s:bg_none .s:fmt_none
+exe "hi! vimSynMtchOpt" . s:fg_yellow .s:bg_none .s:fmt_none
+exe "hi! vimSynType" . s:fg_cyan .s:bg_none .s:fmt_none
+exe "hi! vimHiLink" . s:fg_blue .s:bg_none .s:fmt_none
+exe "hi! vimHiGroup" . s:fg_blue .s:bg_none .s:fmt_none
+exe "hi! vimGroup" . s:fg_blue .s:bg_none .s:fmt_undb
+"}}}
+" html highlighting "{{{
+" ---------------------------------------------------------------------
+exe "hi! htmlTag" . s:fg_base01 .s:bg_none .s:fmt_none
+exe "hi! htmlEndTag" . s:fg_base01 .s:bg_none .s:fmt_none
+exe "hi! htmlTagN" . s:fg_base1 .s:bg_none .s:fmt_bold
+exe "hi! htmlTagName" . s:fg_blue .s:bg_none .s:fmt_bold
+exe "hi! htmlSpecialTagName". s:fg_blue .s:bg_none .s:fmt_ital
+exe "hi! htmlArg" . s:fg_base00 .s:bg_none .s:fmt_none
+exe "hi! javaScript" . s:fg_yellow .s:bg_none .s:fmt_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
+"}}}
+" 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
+"}}}