From fa63e29e5d1c9564e22a3788c81a908b8a7390a3 Mon Sep 17 00:00:00 2001 From: Sonny Bakker Date: Mon, 16 Oct 2017 21:27:49 +0200 Subject: [PATCH] Tmux vimstyle copy bindings --- scripts/ssh-forward | 2 +- tmux/.tmux.conf | 4 + vim/colors/angr.vim | 155 ++++++++++++++ vim/colors/breezy.vim | 200 ++++++++++++++++++ vim/colors/quantum.vim | 262 +++++++++++++++++++++++ vim/colors/zenburn.vim | 468 +++++++++++++++++++++++++++++++++++++++++ 6 files changed, 1090 insertions(+), 1 deletion(-) create mode 100644 vim/colors/angr.vim create mode 100644 vim/colors/breezy.vim create mode 100644 vim/colors/quantum.vim create mode 100644 vim/colors/zenburn.vim diff --git a/scripts/ssh-forward b/scripts/ssh-forward index c3f6bc0..9211812 100755 --- a/scripts/ssh-forward +++ b/scripts/ssh-forward @@ -3,4 +3,4 @@ #Hostname = $1 #Local port = $2 #Remote port = $3 -ssh $1 -L $2:localhost:$3 +ssh -L $2:127.0.0.1:$3 $1 diff --git a/tmux/.tmux.conf b/tmux/.tmux.conf index f1ca62a..606fcde 100644 --- a/tmux/.tmux.conf +++ b/tmux/.tmux.conf @@ -1,4 +1,8 @@ # split panes using | and - +setw -g mode-keys vi +bind-key -T copy-mode-vi 'v' send -X begin-selection # Begin selection in copy mode. +bind-key -T copy-mode-vi 'C-v' send -X rectangle-toggle # Begin selection in copy mode. +bind-key -T copy-mode-vi 'y' send -X copy-selection # Yank selection in copy mode. bind | split-window -h bind - split-window -v unbind '"' diff --git a/vim/colors/angr.vim b/vim/colors/angr.vim new file mode 100644 index 0000000..603677b --- /dev/null +++ b/vim/colors/angr.vim @@ -0,0 +1,155 @@ +" Plugin: https://github.com/zacanger/angr.vim +" Description: angr.vim theme +" Maintainer: zacanger + +" Heavily based on Janah and Ego + +set background=dark +hi clear + +if exists('syntax_on') + syntax reset +endif + +let g:colors_name = 'angr' + +hi Normal guifg=#e5e5e5 ctermfg=253 guibg=#262626 gui=NONE cterm=NONE + +" Misc {{{1 +hi Boolean guifg=#af97df ctermfg=98 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Character guifg=#9d7ff2 ctermfg=141 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Comment guifg=#585858 ctermfg=240 ctermbg=NONE gui=NONE cterm=NONE +hi Conditional guifg=#F6DA7B ctermfg=222 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Constant guifg=#87dfdf ctermfg=116 ctermbg=NONE gui=NONE cterm=NONE +hi Cursor guifg=#eeeeee ctermfg=15 ctermbg=247 gui=NONE guibg=#8DA1A1 +hi CursorIM guifg=#eeeeee ctermfg=15 ctermbg=247 gui=bold guibg=#8da1a1 cterm=NONE +hi Debug guifg=#55747c ctermfg=66 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Define guifg=#F6DA7B ctermfg=222 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Delimiter guifg=#55747c ctermfg=66 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Directory guifg=#ffaf87 ctermfg=216 ctermbg=NONE gui=NONE cterm=NONE +hi Exception guifg=#c67c48 ctermfg=173 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Float guifg=#87dfdf ctermfg=116 ctermbg=NONE gui=NONE cterm=NONE +hi Function guifg=#82c057 ctermfg=107 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Identifier guifg=#ffaf87 ctermfg=216 ctermbg=NONE gui=NONE cterm=NONE +hi Ignore guifg=#55747c ctermfg=66 +hi Include guifg=#c67c48 ctermfg=173 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Keyword guifg=#c67c48 ctermfg=173 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Label guifg=#F6DA7B ctermfg=222 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Macro guifg=#F6DA7B ctermfg=222 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi MatchParen guifg=#df005f ctermfg=161 ctermbg=NONE gui=bold cterm=bold +hi NonText guifg=#ff00af ctermfg=199 ctermbg=NONE gui=bold cterm=bold +hi Number guifg=#87dfdf ctermfg=116 ctermbg=NONE gui=NONE cterm=NONE +hi Operator guifg=#F6DA7B ctermfg=222 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi PreCondit guifg=#c67c48 ctermfg=173 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi PreProc guifg=#ffdfaf ctermfg=223 ctermbg=NONE gui=NONE cterm=NONE +hi Question guifg=#c98de6 ctermfg=102 ctermbg=NONE gui=bold guibg=bg cterm=NONE +hi Repeat guifg=#c67c48 ctermfg=173 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Scrollbar guibg=bg +hi Special guifg=#dfafaf ctermfg=181 ctermbg=NONE gui=NONE cterm=NONE +hi SpecialChar guifg=#55747c ctermfg=66 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi SpecialComment guifg=#55747c ctermfg=66 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi SpecialKey guifg=#3a3a3a ctermfg=237 ctermbg=NONE gui=NONE cterm=NONE +hi Statement guifg=#afdf87 ctermfg=150 ctermbg=NONE gui=NONE cterm=NONE +hi StorageClass guifg=#95d5f1 ctermfg=117 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi String guifg=#87afdf ctermfg=110 ctermbg=NONE gui=NONE cterm=NONE +hi Structure guifg=#95d5f1 ctermfg=117 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Tag guifg=#55747c ctermfg=66 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Title guifg=#9d7ff2 ctermfg=141 ctermbg=NONE gui=bold guibg=bg cterm=NONE +hi Todo guifg=#ffdfaf ctermfg=223 ctermbg=NONE gui=NONE cterm=NONE guibg=bg +hi Type guifg=#87dfaf ctermfg=115 ctermbg=NONE gui=NONE cterm=NONE +hi Typedef guifg=#95d5f1 ctermfg=117 ctermbg=NONE gui=NONE guibg=bg cterm=NONE +hi Underlined guifg=#c98de6 ctermfg=192 ctermbg=NONE gui=underline guibg=bg cterm=NONE +hi VertSplit guifg=#3a3a3a ctermfg=237 guibg=#3a3a3a ctermbg=237 gui=NONE cterm=NONE +hi WildMenu guifg=#101010 ctermfg=0 guibg=#f6da7b ctermbg=222 gui=bold cterm=NONE + +" Cursor lines {{{1 +hi CursorColumn ctermfg=NONE guibg=#303030 ctermbg=236 gui=NONE cterm=NONE +hi CursorLine ctermfg=NONE guibg=#303030 ctermbg=236 gui=NONE cterm=NONE + +" Tabline {{{1 +hi TabLine guifg=#808080 ctermfg=244 guibg=#303030 ctermbg=236 gui=NONE cterm=NONE +hi TabLineFill guifg=#dfdfaf ctermfg=187 guibg=#303030 ctermbg=236 gui=NONE cterm=NONE +hi TabLineSel guifg=#e4e4e4 ctermfg=254 guibg=#303030 ctermbg=236 gui=bold cterm=bold + +" Statusline {{{1 +hi StatusLine guifg=#e4e4e4 ctermfg=254 guibg=#3a3a3a ctermbg=237 gui=NONE cterm=NONE +hi StatusLineNC guifg=#808080 ctermfg=244 guibg=#3a3a3a ctermbg=237 gui=NONE cterm=NONE + +" Number column {{{1 +hi CursorLineNr guifg=#878787 ctermfg=102 guibg=#3a3a3a ctermbg=237 gui=NONE cterm=NONE +hi LineNr guifg=#878787 ctermfg=102 guibg=#3a3a3a ctermbg=237 gui=NONE cterm=NONE + +" Color column {{{1 +hi ColorColumn ctermfg=NONE guibg=#3a3a3a ctermbg=237 gui=NONE cterm=NONE + +" Diff & Signs {{{1 +hi DiffAdd guifg=#87ff5f ctermfg=119 ctermbg=NONE gui=NONE cterm=NONE +hi DiffChange guifg=#ffff5f ctermfg=227 ctermbg=NONE gui=NONE cterm=NONE +hi DiffDelete guifg=#df5f5f ctermfg=167 ctermbg=NONE gui=NONE cterm=NONE +hi DiffText guifg=#ff5f5f ctermfg=203 guibg=#5f0000 ctermbg=52 gui=bold cterm=bold +hi SignColumn ctermfg=NONE guibg=#3a3a3a ctermbg=237 gui=NONE cterm=NONE + +" Folds {{{1 +hi FoldColumn ctermfg=102 ctermbg=237 cterm=NONE guifg=#878787 guibg=#3a3a3a gui=NONE +hi Folded ctermfg=102 ctermbg=237 cterm=NONE guifg=#878787 guibg=#3a3a3a gui=NONE + +" Search {{{1 +hi IncSearch guifg=#c0c0c0 ctermfg=7 guibg=#005fff ctermbg=27 gui=NONE cterm=NONE +hi Search guifg=#c0c0c0 ctermfg=7 guibg=#df005f ctermbg=161 gui=NONE cterm=NONE + +" Messages {{{1 +hi Error guifg=#eeeeee ctermfg=255 guibg=#df005f ctermbg=161 gui=NONE cterm=NONE +hi ErrorMsg guifg=#eeeeee ctermfg=255 guibg=#df005f ctermbg=161 gui=NONE cterm=NONE +hi ModeMsg guifg=#afff87 ctermfg=156 ctermbg=NONE gui=bold cterm=bold +hi MoreMsg guifg=#c0c0c0 ctermfg=7 guibg=#005fdf ctermbg=26 gui=NONE cterm=NONE +hi WarningMsg guifg=#c0c0c0 ctermfg=7 guibg=#005fdf ctermbg=26 gui=NONE cterm=NONE + +" Visual {{{1 +hi Visual guifg=#c0c0c0 ctermfg=7 guibg=#005f87 ctermbg=24 gui=reverse cterm=NONE +hi VisualNOS guifg=#c0c0c0 ctermfg=7 guibg=#5f5f87 ctermbg=60 gui=reverse cterm=NONE + +" Pmenu {{{1 +hi Pmenu guifg=#e4e4e4 ctermfg=254 guibg=#262626 ctermbg=235 gui=NONE cterm=NONE +hi PmenuSbar ctermfg=NONE guibg=#444444 ctermbg=238 gui=NONE cterm=NONE +hi PmenuSel guifg=#df5f5f ctermfg=167 guibg=#444444 ctermbg=238 gui=bold cterm=bold +hi PmenuThumb ctermfg=NONE guibg=#df5f5f ctermbg=167 gui=NONE cterm=NONE + +" Spell {{{1 +hi SpellBad guifg=#c0c0c0 ctermfg=7 guibg=#df5f5f ctermbg=167 gui=NONE cterm=NONE +hi SpellCap guifg=#c0c0c0 ctermfg=7 guibg=#005fdf ctermbg=26 gui=NONE cterm=NONE +hi SpellLocal guifg=#c0c0c0 ctermfg=7 guibg=#8700af ctermbg=91 gui=NONE cterm=NONE +hi SpellRare guifg=#c0c0c0 ctermfg=7 guibg=#00875f ctermbg=29 gui=NONE cterm=NONE + +" Quickfix {{{1 +hi qfLineNr ctermfg=238 ctermbg=NONE cterm=NONE guifg=#444444 guibg=NONE gui=NONE +hi qfSeparator ctermfg=243 ctermbg=NONE cterm=NONE guifg=#767676 guibg=NONE gui=NONE + +" Plugin: vim-easymotion {{{1 +hi EasyMotionTarget guifg=#ffff5f ctermfg=227 ctermbg=NONE gui=bold cterm=bold +hi EasyMotionTarget2First guifg=#df005f ctermfg=161 ctermbg=NONE gui=NONE cterm=NONE +hi EasyMotionTarget2Second guifg=#ffff5f ctermfg=227 ctermbg=NONE gui=NONE cterm=NONE + +" Plugin: vim-signify {{{1 +hi SignifySignAdd guifg=#87ff5f ctermfg=119 guibg=#3a3a3a ctermbg=237 gui=bold cterm=bold +hi SignifySignChange guifg=#ffff5f ctermfg=227 guibg=#3a3a3a ctermbg=237 gui=bold cterm=bold +hi SignifySignDelete guifg=#df5f5f ctermfg=167 guibg=#3a3a3a ctermbg=237 gui=bold cterm=bold + +" Plugin: vim-startify {{{1 +hi StartifyBracket guifg=#585858 ctermfg=240 ctermbg=NONE gui=NONE cterm=NONE +hi StartifyFile guifg=#eeeeee ctermfg=255 ctermbg=NONE gui=NONE cterm=NONE +hi StartifyFooter guifg=#585858 ctermfg=240 ctermbg=NONE gui=NONE cterm=NONE +hi StartifyHeader guifg=#87df87 ctermfg=114 ctermbg=NONE gui=NONE cterm=NONE +hi StartifyNumber guifg=#ffaf5f ctermfg=215 ctermbg=NONE gui=NONE cterm=NONE +hi StartifyPath guifg=#8a8a8a ctermfg=245 ctermbg=NONE gui=NONE cterm=NONE +hi StartifySection guifg=#dfafaf ctermfg=181 ctermbg=NONE gui=NONE cterm=NONE +hi StartifySelect guifg=#5fdfff ctermfg=81 ctermbg=NONE gui=NONE cterm=NONE +hi StartifySlash guifg=#585858 ctermfg=240 ctermbg=NONE gui=NONE cterm=NONE +hi StartifySpecial guifg=#585858 ctermfg=240 ctermbg=NONE gui=NONE cterm=NONE + +" Neovim {{{1 +if has('nvim') + hi EndOfBuffer ctermfg=235 guifg=#262626 ctermbg=NONE gui=NONE cterm=NONE + hi TermCursor ctermfg=NONE guibg=#ff00af ctermbg=199 gui=NONE cterm=NONE + hi TermCursorNC ctermfg=NONE ctermbg=NONE gui=NONE cterm=NONE +endif + diff --git a/vim/colors/breezy.vim b/vim/colors/breezy.vim new file mode 100644 index 0000000..e793f70 --- /dev/null +++ b/vim/colors/breezy.vim @@ -0,0 +1,200 @@ +highlight clear +if exists('syntax_on') + syntax reset +endif + +let g:colors_name = 'breezy' + +if(&background == "dark") + hi Normal guibg=#000000 guifg=#cfcfc2 gui=NONE +else + hi Normal guibg=#232629 guifg=#cfcfc2 gui=NONE +endif + +hi LineNr guibg=#31363b guifg=#7a7c7d gui=NONE +hi FoldColumn guibg=#31363b guifg=#7a7c7d gui=NONE +hi Folded guibg=#31363b guifg=#7a7c7d gui=NONE +hi MatchParen guibg=#8e44ad guifg=#cfcfc2 gui=NONE +hi signColumn guibg=#31363b guifg=#7a7c7d gui=NONE + +hi Comment guibg=NONE guifg=#7a7c7d gui=NONE +hi Conceal guibg=NONE guifg=#cfcfc2 gui=NONE +hi Constant guibg=NONE guifg=#f67400 gui=NONE +hi Boolean guibg=NONE guifg=#27aeae gui=NONE +hi Debug guibg=NONE guifg=#a5a6a8 gui=bold +hi Error guibg=#4d1f24 guifg=#95da4c gui=bold +hi Identifier guibg=NONE guifg=#8e44ad gui=NONE +hi Ignore guibg=NONE guifg=NONE gui=NONE +hi Operator guibg=NONE guifg=NONE gui=bold +hi PreProc guibg=NONE guifg=#27ae60 gui=NONE +hi Special guibg=NONE guifg=#3daee9 gui=NONE +hi SpecialComment guibg=NONE guifg=#a5a6a8 gui=NONE +hi Statement guibg=NONE guifg=#fdbc4b gui=bold +hi String guibg=NONE guifg=#f44f4f gui=NONE +hi Todo guibg=#451e1a guifg=#ca9219 gui=NONE +hi Type guibg=NONE guifg=#2980b9 gui=NONE +hi Underlined guibg=NONE guifg=#27ae60 gui=underline + +hi NonText guibg=NONE guifg=#7a7c7d gui=NONE + +hi Pmenu guibg=#31363b guifg=#cfcfc2 gui=NONE +hi PmenuSbar guibg=#606365 guifg=NONE gui=NONE +hi PmenuSel guibg=#2d5c76 guifg=#cfcfc2 gui=NONE +hi PmenuThumb guibg=#a8a9ab guifg=#a8a9ab gui=NONE + +hi ErrorMsg guibg=#4d1f24 guifg=#95da4c gui=bold +hi ModeMsg guibg=NONE guifg=NONE gui=bold +hi MoreMsg guibg=NONE guifg=#fdbc4b gui=bold +hi Question guibg=NONE guifg=#fdbc4b gui=bold +hi WarningMsg guibg=NONE guifg=#ffffff gui=NONE + +hi TabLine guibg=#31363b guifg=#7a7c7d gui=NONE +hi TabLineFill guibg=#31363b guifg=NONE gui=NONE +hi TabLineSel guibg=#2d5c76 guifg=NONE gui=NONE + +hi Cursor guibg=NONE guifg=NONE gui=reverse +hi CursorColumn guibg=#2a2e32 guifg=NONE gui=NONE +hi CursorLineNr guibg=#31363b guifg=#a5a6a8 gui=NONE +hi CursorLine guibg=#2a2e32 guifg=NONE gui=NONE + +hi helpLeadBlank guibg=NONE guifg=NONE gui=NONE +hi helpNormal guibg=NONE guifg=NONE gui=NONE + +hi StatusLine guibg=#2d5c76 guifg=NONE gui=NONE +hi StatusLineNC guibg=#31363b guifg=#7a7c7d gui=NONE + +hi Visual guibg=#2d5c76 guifg=NONE gui=NONE +hi VisualNOS guibg=NONE guifg=NONE gui=underline + +hi VertSplit guibg=#2d5c76 guifg=#2d5c76 gui=NONE +hi WildMenu guibg=NONE guifg=NONE gui=NONE + +hi SpecialKey guibg=NONE guifg=#7a7c7d gui=NONE +hi Title guibg=NONE guifg=#ffffff gui=NONE + +hi DiffAdd guibg=#123723 guifg=NONE gui=NONE +hi DiffChange guibg=#424218 guifg=NONE gui=NONE +hi DiffDelete guibg=#4d1f24 guifg=NONE gui=NONE +hi DiffText guibg=NONE guifg=NONE gui=reverse + +hi IncSearch guibg=#808021 guifg=#cfcfc2 gui=NONE +hi Search guibg=#218058 guifg=#cfcfc2 gui=NONE + +hi Directory guibg=NONE guifg=#ffffff gui=NONE + +hi SpellBad guibg=NONE guifg=NONE gui=undercurl +hi SpellCap guibg=NONE guifg=NONE gui=undercurl +hi SpellLocal guibg=NONE guifg=NONE gui=undercurl +hi SpellRare guibg=NONE guifg=NONE gui=undercurl + +hi ColorColumn guibg=#2a2e32 guifg=NONE gui=NONE + +" general --------------------------------------------------------------------- + +hi link Character String +hi link Conditional Statement +hi link Define Type +hi link Delimiter Normal +hi link Exception Statement +hi link Float Number +hi link Function Normal +hi link HelpCommand Statement +hi link HelpExample Statement +hi link Include PreProc +hi link Keyword Operator +hi link Label Type +hi link Macro PreProc +hi link Number Constant +hi link PreCondit PreProc +hi link Repeat Statement +hi link SpecialChar Special +hi link StorageClass Type +hi link Structure Type +hi link Typedef Type + +" html ----------------------------------------------------------------------- + +hi link htmlBold Normal +hi link htmlItalic Normal +hi link htmlTag PreProc +hi link htmlEndTag PreProc +hi link htmlTagName Operator +hi link htmlTagN Operator +hi link htmlArg PreProc +hi link htmlEvent PreProc + +" CSS ------------------------------------------------------------------------ + +hi link cssClassName Type +hi link cssProp Operator +hi link cssDefinition Operator + +" Typescript ----------------------------------------------------------------- + +hi link typescriptImport PreProc +hi link typescriptExport PreProc +hi link typescriptDecorator Type +hi link typescriptMemberVariableDeclaration Type +hi link typescriptCall Type +hi link typescriptTypeReference Normal +hi link typescriptEndColons Normal + +" diff msgs ------------------------------------------------------------------ + +hi link diffBDiffer WarningMsg +hi link diffCommon WarningMsg +hi link diffDiffer WarningMsg +hi link diffIdentical WarningMsg +hi link diffIsA WarningMsg +hi link diffNoEOL WarningMsg +hi link diffOnly WarningMsg +hi link diffRemoved WarningMsg +hi link diffAdded String + +" markdown ------------------------------------------------------------------- +hi markdownH1 guibg=NONE guifg=#8e44ad gui=bold +hi markdownH2 guibg=NONE guifg=#8e44ad gui=bold +hi markdownH3 guibg=NONE guifg=#8e44ad gui=bold +hi markdownH4 guibg=NONE guifg=#8e44ad gui=bold +hi markdownH5 guibg=NONE guifg=#8e44ad gui=bold +hi markdownH6 guibg=NONE guifg=#8e44ad gui=bold +hi markdownLineBreak guibg=NONE guifg=#7a7c7d gui=underline +hi markdownItalic guibg=NONE guifg=NONE gui=italic +hi markdownBold guibg=NONE guifg=NONE gui=bold +hi markdownBoldItalic guibg=NONE guifg=NONE gui=bold,italic + +hi link markdownHeadingDelimiter Comment +hi link markdownLinkText PreProc +hi link markdownUrl PreProc +hi link markdownCode Constant +hi link markdownCodeBlock Constant +hi link markdownCodeDelimiter Comment +hi link markdownOrderedListMarker Statement +hi link markdownListMarker Statement +hi link markdownBlockquote Special +hi link markdownRule Special + +" python --------------------------------------------------------------------- +hi pythonBuiltin guibg=NONE guifg=#7f8c8d gui=NONE +hi link pythonImport PreProc +hi link pythonFunction Normal +hi link pythonExceptions PreProc + +" custom: +hi pythonMagic guibg=NONE guifg=#8e44ad gui=NONE +hi link pythonDef Operator +hi link pythonDocstring Comment +hi link pythonSpecial Boolean +hi link pythonDecorator Type +hi link pythonAs PreProc + +" c / cpp -------------------------------------------------------------------- + +hi link cppStatement Operator +hi link cIncluded cInclude + +" PLUGINS -------------------------------------------------------------------- + +hi AleErrorSign guibg=#31363b guifg=#f67400 gui=NONE +hi AleWarningSign guibg=#31363b guifg=#fdbc4b gui=NONE + diff --git a/vim/colors/quantum.vim b/vim/colors/quantum.vim new file mode 100644 index 0000000..df6df26 --- /dev/null +++ b/vim/colors/quantum.vim @@ -0,0 +1,262 @@ +" Quantum - A 24-bit Material color scheme for Vim +" Author: Brandon Siders +" License: MIT + +highlight clear + +if exists('syntax_on') + syntax reset +endif + +set background=dark +let g:colors_name = 'quantum' + +let g:quantum_italics = get(g:, 'quantum_italics', 0) +let g:quantum_black = get(g:, 'quantum_black', 0) + +" Color Palette +let s:gray1 = g:quantum_black ? '#212121' : '#263238' +let s:gray2 = g:quantum_black ? '#292929' : '#2c3a41' +let s:gray3 = g:quantum_black ? '#474646' : '#425762' +let s:gray4 = g:quantum_black ? '#6a6c6c' : '#658494' +let s:gray5 = g:quantum_black ? '#b7bdc0' : '#aebbc5' +let s:red = '#dd7186' +let s:green = '#87bb7c' +let s:yellow = '#d5b875' +let s:blue = '#70ace5' +let s:purple = '#a48add' +let s:cyan = '#69c5ce' +let s:orange = '#d7956e' +let s:indigo = '#7681de' + +function! s:HL(group, fg, bg, attr) + let l:attr = a:attr + if !g:quantum_italics && l:attr ==# 'italic' + let l:attr = 'none' + endif + + if !empty(a:fg) + exec 'hi ' . a:group . ' guifg=' . a:fg + endif + if !empty(a:bg) + exec 'hi ' . a:group . ' guibg=' . a:bg + endif + if !empty(a:attr) + exec 'hi ' . a:group . ' gui=' . l:attr . ' cterm=' . l:attr + endif +endfun + +" Vim Editor +call s:HL('ColorColumn', '', s:gray3, '') +call s:HL('Cursor', s:gray2, s:gray5, '') +call s:HL('CursorColumn', '', s:gray2, '') +call s:HL('CursorLine', '', s:gray2, 'none') +call s:HL('CursorLineNr', s:cyan, s:gray2, 'none') +call s:HL('Directory', s:blue, '', '') +call s:HL('DiffAdd', s:green, s:gray2, 'none') +call s:HL('DiffChange', s:yellow, s:gray2, 'none') +call s:HL('DiffDelete', s:red, s:gray2, 'none') +call s:HL('DiffText', s:blue, s:gray2, 'none') +call s:HL('ErrorMsg', s:red, s:gray1, 'bold') +call s:HL('FoldColumn', s:gray4, s:gray1, '') +call s:HL('Folded', s:gray3, s:gray1, '') +call s:HL('IncSearch', s:yellow, '', '') +call s:HL('LineNr', s:gray3, '', '') +call s:HL('MatchParen', s:gray4, s:cyan, 'bold') +call s:HL('ModeMsg', s:green, '', '') +call s:HL('MoreMsg', s:green, '', '') +call s:HL('NonText', s:gray4, '', 'none') +call s:HL('Normal', s:gray5, s:gray1, 'none') +call s:HL('Pmenu', s:gray5, s:gray3, '') +call s:HL('PmenuSbar', '', s:gray2, '') +call s:HL('PmenuSel', s:gray2, s:cyan, '') +call s:HL('PmenuThumb', '', s:gray4, '') +call s:HL('Question', s:blue, '', 'none') +call s:HL('Search', s:gray1, s:yellow, '') +call s:HL('SignColumn', s:gray5, s:gray1, '') +call s:HL('SpecialKey', s:gray4, '', '') +call s:HL('SpellCap', s:blue, s:gray2, 'undercurl') +call s:HL('SpellBad', s:red, s:gray2, 'undercurl') +call s:HL('StatusLine', s:gray5, s:gray3, 'none') +call s:HL('StatusLineNC', s:gray2, s:gray4, '') +call s:HL('TabLine', s:gray4, s:gray2, 'none') +call s:HL('TabLineFill', s:gray4, s:gray2, 'none') +call s:HL('TabLineSel', s:yellow, s:gray3, 'none') +call s:HL('Title', s:green, '', 'none') +call s:HL('VertSplit', s:gray4, s:gray1, 'none') +call s:HL('Visual', s:gray5, s:gray3, '') +call s:HL('WarningMsg', s:red, '', '') +call s:HL('WildMenu', s:gray2, s:cyan, '') + +" Standard Syntax +call s:HL('Comment', s:gray4, '', 'italic') +call s:HL('Constant', s:orange, '', '') +call s:HL('String', s:green, '', '') +call s:HL('Character', s:green, '', '') +call s:HL('Identifier', s:red, '', 'none') +call s:HL('Function', s:blue, '', '') +call s:HL('Statement', s:purple, '', 'none') +call s:HL('Operator', s:cyan, '', '') +call s:HL('PreProc', s:cyan, '', '') +call s:HL('Include', s:blue, '', '') +call s:HL('Define', s:purple, '', 'none') +call s:HL('Macro', s:purple, '', '') +call s:HL('Type', s:yellow, '', 'none') +call s:HL('Structure', s:cyan, '', '') +call s:HL('Special', s:indigo, '', '') +call s:HL('Underlined', s:blue, '', 'none') +call s:HL('Error', s:red, s:gray1, 'bold') +call s:HL('Todo', s:orange, s:gray1, 'bold') + +" CSS +call s:HL('cssAttrComma', s:gray5, '', '') +call s:HL('cssPseudoClassId', s:yellow, '', '') +call s:HL('cssBraces', s:gray5, '', '') +call s:HL('cssClassName', s:yellow, '', '') +call s:HL('cssClassNameDot', s:yellow, '', '') +call s:HL('cssFunctionName', s:blue, '', '') +call s:HL('cssImportant', s:cyan, '', '') +call s:HL('cssIncludeKeyword', s:purple, '', '') +call s:HL('cssTagName', s:red, '', '') +call s:HL('cssMediaType', s:orange, '', '') +call s:HL('cssProp', s:gray5, '', '') +call s:HL('cssSelectorOp', s:cyan, '', '') +call s:HL('cssSelectorOp2', s:cyan, '', '') + +" Commit Messages (Git) +call s:HL('gitcommitHeader', s:purple, '', '') +call s:HL('gitcommitUnmerged', s:green, '', '') +call s:HL('gitcommitSelectedFile', s:green, '', '') +call s:HL('gitcommitDiscardedFile', s:red, '', '') +call s:HL('gitcommitUnmergedFile', s:yellow, '', '') +call s:HL('gitcommitSelectedType', s:green, '', '') +call s:HL('gitcommitSummary', s:blue, '', '') +call s:HL('gitcommitDiscardedType', s:red, '', '') +hi link gitcommitNoBranch gitcommitBranch +hi link gitcommitUntracked gitcommitComment +hi link gitcommitDiscarded gitcommitComment +hi link gitcommitSelected gitcommitComment +hi link gitcommitDiscardedArrow gitcommitDiscardedFile +hi link gitcommitSelectedArrow gitcommitSelectedFile +hi link gitcommitUnmergedArrow gitcommitUnmergedFile + +" HTML +call s:HL('htmlEndTag', s:blue, '', '') +call s:HL('htmlLink', s:red, '', '') +call s:HL('htmlTag', s:blue, '', '') +call s:HL('htmlTitle', s:gray5, '', '') +call s:HL('htmlSpecialTagName', s:purple, '', '') + +" Javascript +call s:HL('javaScriptBraces', s:gray5, '', '') +call s:HL('javaScriptNull', s:orange, '', '') +call s:HL('javaScriptIdentifier', s:purple, '', '') +call s:HL('javaScriptNumber', s:orange, '', '') +call s:HL('javaScriptRequire', s:cyan, '', '') +call s:HL('javaScriptReserved', s:purple, '', '') +" pangloss/vim-javascript +call s:HL('jsArrowFunction', s:purple, '', '') +call s:HL('jsAsyncKeyword', s:purple, '', '') +call s:HL('jsExtendsKeyword', s:purple, '', '') +call s:HL('jsClassKeyword', s:purple, '', '') +call s:HL('jsDocParam', s:green, '', '') +call s:HL('jsDocTags', s:cyan, '', '') +call s:HL('jsForAwait', s:purple, '', '') +call s:HL('jsFlowArgumentDef', s:yellow, '', '') +call s:HL('jsFrom', s:purple, '', '') +call s:HL('jsImport', s:purple, '', '') +call s:HL('jsExport', s:purple, '', '') +call s:HL('jsExportDefault', s:purple, '', '') +call s:HL('jsFuncCall', s:blue, '', '') +call s:HL('jsFunction', s:purple, '', '') +call s:HL('jsGlobalObjects', s:yellow, '', '') +call s:HL('jsGlobalNodeObjects', s:yellow, '', '') +call s:HL('jsModuleAs', s:purple, '', '') +call s:HL('jsNull', s:orange, '', '') +call s:HL('jsStorageClass', s:purple, '', '') +call s:HL('jsTemplateBraces', s:red, '', '') +call s:HL('jsTemplateExpression', s:red, '', '') +call s:HL('jsThis', s:red, '', '') +call s:HL('jsUndefined', s:orange, '', '') + +" JSON +call s:HL('jsonBraces', s:gray5, '', '') + +" Less +call s:HL('lessAmpersand', s:red, '', '') +call s:HL('lessClassChar', s:yellow, '', '') +call s:HL('lessCssAttribute', s:gray5, '', '') +call s:HL('lessFunction', s:blue, '', '') +call s:HL('lessVariable', s:purple, '', '') + +" Markdown +call s:HL('markdownBold', s:yellow, '', 'bold') +call s:HL('markdownCode', s:cyan, '', '') +call s:HL('markdownCodeBlock', s:cyan, '', '') +call s:HL('markdownCodeDelimiter', s:cyan, '', '') +call s:HL('markdownHeadingDelimiter', s:green, '', '') +call s:HL('markdownHeadingRule', s:gray4, '', '') +call s:HL('markdownId', s:purple, '', '') +call s:HL('markdownItalic', s:blue, '', 'italic') +call s:HL('markdownListMarker', s:orange, '', '') +call s:HL('markdownOrderedListMarker', s:orange, '', '') +call s:HL('markdownRule', s:gray4, '', '') +call s:HL('markdownUrl', s:purple, '', '') +call s:HL('markdownUrlTitleDelimiter', s:green, '', '') + +" Ruby +call s:HL('rubyInterpolation', s:cyan, '', '') +call s:HL('rubyInterpolationDelimiter', s:indigo, '', '') +call s:HL('rubyRegexp', s:cyan, '', '') +call s:HL('rubyRegexpDelimiter', s:indigo, '', '') +call s:HL('rubyStringDelimiter', s:green, '', '') + +" Sass +call s:HL('sassAmpersand', s:red, '', '') +call s:HL('sassClassChar', s:yellow, '', '') +call s:HL('sassMixinName', s:blue, '', '') +call s:HL('sassVariable', s:purple, '', '') + +" Vim-Fugitive +call s:HL('diffAdded', s:green, '', '') +call s:HL('diffRemoved', s:red, '', '') + +" Vim-Gittgutter +call s:HL('GitGutterAdd', s:green, '', '') +call s:HL('GitGutterChange', s:yellow, '', '') +call s:HL('GitGutterChangeDelete', s:orange, '', '') +call s:HL('GitGutterDelete', s:red, '', '') + +" Vim-Signify +hi link SignifySignAdd GitGutterAdd +hi link SignifySignChange GitGutterChange +hi link SignifySignDelete GitGutterDelete + +" XML +call s:HL('xmlAttrib', s:yellow, '', '') +call s:HL('xmlEndTag', s:blue, '', '') +call s:HL('xmlTag', s:blue, '', '') +call s:HL('xmlTagName', s:blue, '', '') + +" Neovim terminal colors +if has('nvim') + let g:terminal_color_0 = s:gray1 + let g:terminal_color_1 = s:red + let g:terminal_color_2 = s:green + let g:terminal_color_3 = s:yellow + let g:terminal_color_4 = s:blue + let g:terminal_color_5 = s:purple + let g:terminal_color_6 = s:cyan + let g:terminal_color_7 = s:gray5 + let g:terminal_color_8 = s:gray3 + let g:terminal_color_9 = s:red + let g:terminal_color_10 = s:green + let g:terminal_color_11 = s:yellow + let g:terminal_color_12 = s:blue + let g:terminal_color_13 = s:purple + let g:terminal_color_14 = s:cyan + let g:terminal_color_15 = s:gray4 + let g:terminal_color_background = g:terminal_color_0 + let g:terminal_color_foreground = g:terminal_color_7 +endif + diff --git a/vim/colors/zenburn.vim b/vim/colors/zenburn.vim new file mode 100644 index 0000000..9792ee5 --- /dev/null +++ b/vim/colors/zenburn.vim @@ -0,0 +1,468 @@ +" Vim color file +" Maintainer: Jani Nurminen +" URL: http://kippura.org/zenburnpage/ +" License: GNU GPL +" +" Nothing too fancy, just some alien fruit salad to keep you in the zone. +" This syntax file was designed to be used with dark environments and +" low light situations. Of course, if it works during a daybright office, go +" ahead :) +" +" Owes heavily to other Vim color files! With special mentions +" to "BlackDust", "Camo" and "Desert". +" +" To install, copy to ~/.vim/colors directory. +" +" Alternatively, you can use Vimball installation: +" vim zenburn.vba +" :so % +" :q +" +" For details, see :help vimball +" +" After installation, use it with :colorscheme zenburn. +" See also :help syntax +" +" Credits: +" - Jani Nurminen - original Zenburn, maintainer +" - Steve Hall & Cream posse - higher-contrast Visual selection +" - Kurt Maier - 256 color console coloring, low and high contrast toggle, +" bug fixing +" - Charlie - spotted too bright StatusLine in non-high contrast mode +" - Pablo Castellazzi - CursorLine fix for 256 color mode +" - Tim Smith - force dark background +" - John Gabriele - spotted bad Ignore-group handling +" - Zac Thompson - spotted invisible NonText in low contrast mode +" - Christophe-Marie Duquesne - suggested making a Vimball, +" suggested support for ctags_highlighting.vim +" - Andrew Wagner - noted the CursorColumn bug (guifg was unintentionally set), +" unify CursorColumn colour +" - Martin Langasek - clarify the license, whitespace fixes +" - Marcin Szamotulski - support autocomplete for Zenburn configuration +" parameters +" - Clayton Parker (claytron) - Convinced by Kurt Maier to use Zenburn. Point +" out issues with LineNr, fix directory styles, and their usage in MacVim. +" - Paweł Piekarski - Spotted bad FoldColumn and TabLine. Made better +" FoldColumn colors, fixed TabLine colors. +" - Jim - Fix for missing Include group for terminal +" - Peter (Sakartu) - ColorColumn fixes +" - Please see git log for the others not listed here +" +" CONFIGURABLE PARAMETERS: +" +" You can use the default (don't set any parameters), or you can +" set some parameters to tweak the Zenburn colours. +" +" To use them, put them into your .vimrc file before loading the color scheme, +" example: +" let g:zenburn_high_Contrast=1 +" colors zenburn +" +" You can also do ":let g:zenburn" then hit Ctrl-d or Tab to scroll through the +" list of configurable parameters. +" +" * You can now set a darker background for bright environments. To activate, use: +" let g:zenburn_high_Contrast = 1 +" +" * For transparent terminals set the background to black with: +" let g:zenburn_transparent = 1 +" +" * For example, Vim help files uses the Ignore-group for the pipes in tags +" like "|somelink.txt|". By default, the pipes are not visible, as they +" map to Ignore group. If you wish to enable coloring of the Ignore group, +" set the following parameter to 1. Warning, it might make some syntax files +" look strange. +" +" let g:zenburn_color_also_Ignore = 1 +" +" * To get more contrast to the Visual selection, use +" +" let g:zenburn_alternate_Visual = 1 +" +" Note: this is enabled only if the old-style Visual +" if used, see g:zenburn_old_Visual +" +" * To use alternate colouring for Error message, use +" +" let g:zenburn_alternate_Error = 1 +" +" * The new default for Include is a duller orange. To use the original +" colouring for Include, use +" +" let g:zenburn_alternate_Include = 1 +" +" * To disable underlining for Labels, use +" +" let g:zenburn_disable_Label_underline = 1 +" +" * Work-around to a Vim bug, it seems to misinterpret ctermfg and 234 and 237 +" as light values, and sets background to light for some people. If you have +" this problem, use: +" +" let g:zenburn_force_dark_Background = 1 +" +" * By default the CursorColumn is of a lighter colour. I find it more readable +" that way, but some people may want to align it with the darker CursorLine +" color, for visual uniformity. To do so, use: +" +" let g:zenburn_unified_CursorColumn = 1 +" +" Note: you can ignore this unless you use +" ":set cursorline cursorcolumn", since otherwise the effect won't be +" seen. +" +" * New (dark) Visual coloring has been introduced. +" The dark Visual is more aligned with the rest of the colour scheme, +" especially if you use line numbers. If you wish to use the +" old Visual coloring, use +" +" let g:zenburn_old_Visual = 1 +" +" Default is to use the new Visual. +" +" * EXPERIMENTAL FEATURE: Zenburn would like to support TagHighlight +" (an evolved ctags-highlighter) by Al Budden (homepage: +" http://www.cgtk.co.uk/vim-scripts/taghighlight). +" Current support status is broken: there is no automatic detection of +" TagHighlight, no specific language support; however there is some basic +" support for Python. If you are a user of TagHighlight and want to help, +" please enable: +" +" let g:zenburn_enable_TagHighlight=1 +" +" and improve the corresponding block at the end of the file. +" +" NOTE: +" +" * To turn the parameter(s) back to defaults, use UNLET or set them to 0: +" +" unlet g:zenburn_alternate_Include +" or +" let g:zenburn_alternate_Include = 0 +" +" +" That's it, enjoy! +" +" TODO +" - Visual alternate color is broken? Try GVim >= 7.0.66 if you have trouble +" - IME colouring (CursorIM) + +" Finish if we are in a term lacking 256 color support +if ! has("gui_running") && &t_Co <= 255 + finish +endif + +" Set defaults, but keep any parameters already set by the user +if ! exists("g:zenburn_high_Contrast") + let g:zenburn_high_Contrast = 0 +endif + +if ! exists("g:zenburn_transparent") + let g:zenburn_transparent = 0 +endif + +if ! exists("g:zenburn_color_also_Ignore") + let g:zenburn_color_also_Ignore = 0 +endif + +if ! exists("g:zenburn_alternate_Error") + let g:zenburn_alternate_Error = 0 +endif + +if ! exists("g:zenburn_force_dark_Background") + let g:zenburn_force_dark_Background = 0 +endif + +if ! exists("g:zenburn_alternate_Visual") + let g:zenburn_alternate_Visual = 0 +endif + +if ! exists("g:zenburn_alternate_Include") + let g:zenburn_alternate_Include = 0 +endif + +if ! exists("g:zenburn_disable_Label_underline") + let g:zenburn_disable_Label_underline = 0 +endif + +if ! exists("g:zenburn_unified_CursorColumn") + let g:zenburn_unified_CursorColumn = 0 +endif + +if ! exists("g:zenburn_old_Visual") + let g:zenburn_old_Visual = 0 +endif + +if ! exists("g:zenburn_enable_TagHighlight") + let g:zenburn_enable_TagHighlight = 0 +endif + +" ----------------------------------------------- + +set background=dark + +hi clear +if exists("syntax_on") + syntax reset +endif +let g:colors_name="zenburn" + +hi Boolean guifg=#dca3a3 ctermfg=181 +hi Character guifg=#dca3a3 gui=bold ctermfg=181 cterm=bold +hi Comment guifg=#7f9f7f gui=italic ctermfg=108 +hi Conditional guifg=#f0dfaf gui=bold ctermfg=223 cterm=bold +hi Constant guifg=#dca3a3 gui=bold ctermfg=181 cterm=bold +hi Cursor guifg=#000d18 guibg=#8faf9f gui=bold ctermfg=233 ctermbg=109 cterm=bold +hi Debug guifg=#bca3a3 gui=bold ctermfg=181 cterm=bold +hi Define guifg=#ffcfaf gui=bold ctermfg=223 cterm=bold +hi Delimiter guifg=#8f8f8f ctermfg=245 +hi DiffAdd guifg=#709080 guibg=#313c36 gui=bold ctermfg=66 ctermbg=237 cterm=bold +hi DiffChange guibg=#333333 ctermbg=236 +hi DiffDelete guifg=#333333 guibg=#464646 ctermfg=236 ctermbg=238 +hi DiffText guifg=#ecbcbc guibg=#41363c gui=bold ctermfg=217 ctermbg=237 cterm=bold +hi Directory guifg=#9fafaf gui=bold ctermfg=109 cterm=bold +hi ErrorMsg guifg=#80d4aa guibg=#2f2f2f gui=bold ctermfg=115 ctermbg=236 cterm=bold +hi Exception guifg=#c3bf9f gui=bold ctermfg=249 cterm=bold +hi Float guifg=#c0bed1 ctermfg=251 +hi FoldColumn guifg=#93b3a3 guibg=#3f4040 +hi Folded guifg=#93b3a3 guibg=#3f4040 +hi Function guifg=#efef8f ctermfg=228 +hi Identifier guifg=#efdcbc ctermfg=223 cterm=none +hi IncSearch guifg=#f8f893 guibg=#385f38 ctermfg=228 ctermbg=23 +hi Keyword guifg=#f0dfaf gui=bold ctermfg=223 cterm=bold +hi Macro guifg=#ffcfaf gui=bold ctermfg=223 cterm=bold +hi ModeMsg guifg=#ffcfaf gui=none ctermfg=223 cterm=none +hi MoreMsg guifg=#ffffff gui=bold ctermfg=231 cterm=bold +hi Number guifg=#8cd0d3 ctermfg=116 +hi Operator guifg=#f0efd0 ctermfg=230 +hi PmenuSbar guibg=#2e3330 guifg=#000000 ctermfg=16 ctermbg=236 +hi PmenuThumb guibg=#a0afa0 guifg=#040404 ctermfg=232 ctermbg=151 +hi PreCondit guifg=#dfaf8f gui=bold ctermfg=180 cterm=bold +hi PreProc guifg=#ffcfaf gui=bold ctermfg=223 cterm=bold +hi Question guifg=#ffffff gui=bold ctermfg=231 cterm=bold +hi Repeat guifg=#ffd7a7 gui=bold ctermfg=223 cterm=bold +hi Search guifg=#ffffe0 guibg=#284f28 ctermfg=230 ctermbg=22 +hi SignColumn guifg=#9fafaf gui=bold ctermfg=109 cterm=bold +hi SpecialChar guifg=#dca3a3 gui=bold ctermfg=181 cterm=bold +hi SpecialComment guifg=#82a282 gui=bold ctermfg=108 cterm=bold +hi Special guifg=#cfbfaf ctermfg=181 +hi SpecialKey guifg=#9ece9e ctermfg=151 +hi Statement guifg=#e3ceab gui=none ctermfg=187 cterm=none +hi StatusLine guifg=#313633 guibg=#ccdc90 ctermfg=236 ctermbg=186 +hi StatusLineNC guifg=#2e3330 guibg=#88b090 ctermfg=235 ctermbg=108 +hi StorageClass guifg=#c3bf9f gui=bold ctermfg=249 cterm=bold +hi String guifg=#cc9393 ctermfg=174 +hi Structure guifg=#efefaf gui=bold ctermfg=229 cterm=bold +hi Tag guifg=#e89393 gui=bold ctermfg=181 cterm=bold +hi Title guifg=#efefef gui=bold ctermfg=255 ctermbg=NONE cterm=bold +hi Todo guifg=#dfdfdf guibg=NONE gui=bold ctermfg=254 ctermbg=NONE cterm=bold +hi Typedef guifg=#dfe4cf gui=bold ctermfg=253 cterm=bold +hi Type guifg=#dfdfbf gui=bold ctermfg=187 cterm=bold +hi Underlined guifg=#dcdccc gui=underline ctermfg=188 cterm=underline +hi VertSplit guifg=#2e3330 guibg=#688060 ctermfg=236 ctermbg=65 +hi VisualNOS guifg=#333333 guibg=#f18c96 gui=bold,underline ctermfg=236 ctermbg=210 cterm=bold +hi WarningMsg guifg=#ffffff guibg=#333333 gui=bold ctermfg=231 ctermbg=236 cterm=bold +hi WildMenu guifg=#cbecd0 guibg=#2c302d gui=underline ctermfg=194 ctermbg=236 cterm=underline + +" spellchecking, always "bright" term background +hi SpellBad guisp=#bc6c4c guifg=#dc8c6c ctermfg=209 ctermbg=237 +hi SpellCap guisp=#6c6c9c guifg=#8c8cbc ctermfg=103 ctermbg=237 +hi SpellRare guisp=#bc6c9c guifg=#bc8cbc ctermfg=139 ctermbg=237 +hi SpellLocal guisp=#7cac7c guifg=#9ccc9c ctermfg=151 ctermbg=237 + +if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast + " use new darker background + hi Normal guifg=#dcdccc guibg=#1f1f1f ctermfg=188 ctermbg=234 + hi ColorColumn guibg=#33332f ctermbg=235 + hi CursorLine guibg=#121212 gui=bold ctermbg=233 cterm=none + hi CursorLineNr guifg=#f2f3bb guibg=#161616 ctermfg=229 ctermbg=233 + if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn + hi CursorColumn guibg=#121212 gui=bold ctermbg=233 cterm=none + else + hi CursorColumn guibg=#2b2b2b ctermbg=235 cterm=none + endif + hi FoldColumn guibg=#161616 ctermbg=233 ctermfg=109 + hi Folded guibg=#161616 ctermbg=233 ctermfg=109 + hi LineNr guifg=#9fafaf guibg=#161616 ctermfg=248 ctermbg=233 + hi NonText guifg=#404040 gui=bold ctermfg=238 + hi Pmenu guibg=#242424 guifg=#ccccbc ctermfg=251 ctermbg=235 + hi PmenuSel guibg=#353a37 guifg=#ccdc90 gui=bold ctermfg=187 ctermbg=236 cterm=bold + hi MatchParen guifg=#f0f0c0 guibg=#383838 gui=bold ctermfg=229 ctermbg=237 cterm=bold + hi SignColumn guibg=#181818 ctermbg=233 + hi SpecialKey guibg=#242424 + hi TabLine guifg=#88b090 guibg=#313633 gui=none ctermbg=236 ctermfg=108 cterm=none + hi TabLineSel guifg=#ccd990 guibg=#222222 ctermbg=235 ctermfg=186 cterm=bold + hi TabLineFill guifg=#88b090 guibg=#313633 gui=none ctermbg=236 ctermfg=108 cterm=none +else + " Original, lighter background + hi Normal guifg=#dcdccc guibg=#3f3f3f ctermfg=188 ctermbg=237 + hi ColorColumn guibg=#484848 ctermbg=238 + hi CursorLine guibg=#434443 ctermbg=238 cterm=none + hi CursorLineNr guifg=#d2d39b guibg=#262626 ctermfg=230 ctermbg=235 + if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn + hi CursorColumn guibg=#434343 ctermbg=238 cterm=none + else + hi CursorColumn guibg=#4f4f4f ctermbg=239 cterm=none + endif + hi FoldColumn guibg=#333333 ctermbg=236 ctermfg=109 + hi Folded guibg=#333333 ctermbg=236 ctermfg=109 + hi LineNr guifg=#9fafaf guibg=#262626 ctermfg=248 ctermbg=235 + hi NonText guifg=#5b605e gui=bold ctermfg=240 + hi Pmenu guibg=#2c2e2e guifg=#9f9f9f ctermfg=248 ctermbg=235 + hi PmenuSel guibg=#242424 guifg=#d0d0a0 gui=bold ctermfg=187 ctermbg=235 cterm=bold + hi MatchParen guifg=#b2b2a0 guibg=#2e2e2e gui=bold ctermfg=145 ctermbg=236 cterm=bold + hi SignColumn guibg=#343434 ctermbg=236 + hi SpecialKey guibg=#444444 + hi TabLine guifg=#d0d0b8 guibg=#222222 gui=none ctermbg=235 ctermfg=187 cterm=none + hi TabLineSel guifg=#f0f0b0 guibg=#333333 gui=bold ctermbg=236 ctermfg=229 cterm=bold + hi TabLineFill guifg=#dccdcc guibg=#101010 gui=none ctermbg=233 ctermfg=188 cterm=none + + hi StatusLine ctermbg=144 +endif + +if exists("g:zenburn_force_dark_Background") && g:zenburn_force_dark_Background + " Force dark background, because of a bug in VIM: VIM sets background + " automatically during "hi Normal ctermfg=X"; it misinterprets the high + " value (234 or 237 above) as a light color, and wrongly sets background to + " light. See ":help highlight" for details. + set background=dark +endif + +if exists("g:zenburn_transparent") && g:zenburn_transparent + hi Normal ctermbg=0 guibg=#000000 + hi Statement ctermbg=NONE + hi Title ctermbg=NONE + hi Todo ctermbg=NONE + hi Underlined ctermbg=NONE + hi DiffAdd ctermbg=NONE + hi DiffText ctermbg=NONE + hi ErrorMsg ctermbg=NONE + hi LineNr ctermbg=NONE +endif + +if exists("g:zenburn_old_Visual") && g:zenburn_old_Visual + if exists("g:zenburn_alternate_Visual") && g:zenburn_alternate_Visual + " Visual with more contrast, thanks to Steve Hall & Cream posse + " gui=none fixes weird highlight problem in at least GVim 7.0.66, thanks to Kurt Maier + hi Visual guifg=#000000 guibg=#71d3b4 gui=none ctermfg=16 ctermbg=79 cterm=none + hi VisualNOS guifg=#000000 guibg=#71d3b4 gui=none ctermfg=16 ctermbg=79 cterm=none + else + " use default visual + hi Visual guifg=#233323 guibg=#71d3b4 gui=none ctermfg=235 ctermbg=79 cterm=none + hi VisualNOS guifg=#233323 guibg=#71d3b4 gui=none ctermfg=235 ctermbg=79 cterm=none + endif +else + " new Visual style + if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast + " high contrast + "hi Visual guibg=#304a3d + "hi VisualNos guibg=#304a3d + "TODO no nice greenish in console, 65 is closest. use full black instead, + "although i like the green..! + hi Visual guibg=#0f0f0f ctermbg=232 + hi VisualNOS guibg=#0f0f0f ctermbg=232 + if exists("g:zenburn_transparent") && g:zenburn_transparent + hi Visual ctermbg=235 + endif + else + " low contrast + hi Visual guibg=#2f2f2f ctermbg=235 + hi VisualNOS guibg=#2f2f2f ctermbg=235 + endif +endif + +if exists("g:zenburn_alternate_Error") && g:zenburn_alternate_Error + " use more jumpy Error + hi Error guifg=#e37170 guibg=#664040 gui=bold ctermfg=210 ctermbg=52 cterm=bold +else + " default is something more zenburn-compatible + hi Error guifg=#e37170 guibg=#3d3535 gui=bold ctermfg=167 ctermbg=236 cterm=bold +endif + +if exists("g:zenburn_alternate_Include") && g:zenburn_alternate_Include + " original setting + hi Include guifg=#ffcfaf gui=bold ctermfg=223 cterm=bold +else + " new, less contrasted one + hi Include guifg=#dfaf8f gui=bold ctermfg=180 cterm=bold +endif + +if exists("g:zenburn_disable_Label_underline") && g:zenburn_disable_Label_underline + hi Label guifg=#dfcfaf ctermfg=187 +else + hi Label guifg=#dfcfaf gui=underline ctermfg=187 cterm=underline +endif + +if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore + " color the Ignore groups + " note: if you get strange coloring for your files, turn this off (unlet) + if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast + hi Ignore ctermfg=238 + else + hi Ignore guifg=#545a4f ctermfg=240 + endif +endif + +" EXPERIMENTAL TagHighlight support +" link/set sensible defaults here; +" +" For now I mostly link to subset of Zenburn colors, the linkage is based +" on appearance, not semantics. In later versions I might define more new colours. +" +" HELP NEEDED to make this work properly. + +if exists("g:zenburn_enable_TagHighlight") && g:zenburn_enable_TagHighlight + " CTag support may vary, but the first step is to start using it so + " we can fix it! + " + " Consult /plugin/TagHighlight/data/kinds.txt for info on your + " language and what's been defined. + " + " There is potential for language indepedent features here. (Acutally, + " seems it may be required for this to be useful...) This way we can + " implement features depending on how well CTags are currently implemented + " for the language. ie. Global problem for python is annoying. Special + " colors are defined for special language features, etc.. + " + " For now all I care about is python supported features: + " c:CTagsClass + " f:CTagsFunction + " i:CTagsImport + " m:CTagsMember + " v:CTagsGlobalVariable + " + " Note: TagHighlight defaults to setting new tags to Keyword + " highlighting. + + " TODO conditionally run each section + " BEGIN Python Section + hi link Class Function + hi link Import PythonInclude + hi link Member Function + "Note: Function is already defined + + " Highlighter seems to think a lot of things are global variables even + " though they're not. Example: python method-local variable is + " coloured as a global variable. They should not be global, since + " they're not visible outside the method. + " If this is some very bright colour group then things look bad. + " hi link GlobalVariable Identifier + + " Because of this problem I am disabling the feature by setting it to + " Normal instead + hi link GlobalVariable Normal + " END Python Section + + " Starting point for other languages. + hi link GlobalConstant Constant + hi link EnumerationValue Float + hi link EnumerationName Identifier + hi link DefinedName WarningMsg + hi link LocalVariable WarningMsg + hi link Structure WarningMsg + hi link Union WarningMsg +endif + +" TODO check for more obscure syntax groups that they're ok + +