From ae08e2be29a9b09cba866b6c6cdc1700364270f5 Mon Sep 17 00:00:00 2001 From: Elliott Pardee Date: Sat, 6 Jun 2015 18:01:22 -0400 Subject: [PATCH] update --- .Xresources | 48 +- .mkshrc | 18 +- .sxhkdrc | 45 +- .vim/.netrwhist | 8 +- .vim/colors/elda.vim | 183 ++ .vim/colors/flattr.vim | 100 - .vim/colors/lucius.vim | 774 ++++++ .vim/colors/mirodark.vim | 613 +++++ .vim/colors/miromiro.vim | 113 + .vim/colors/neonwave.vim | 129 + .vim/colors/pencil.vim | 374 +++ .vim/colors/shblah.vim | 125 + .vim/colors/term.vim | 46 + .vim/colors/wolfpack.vim | 121 + .vim/plugin/auto-pairs.vim | 527 ---- .vim/plugin/taglist.vim | 4677 ------------------------------------ .vimrc | 19 +- .xinitrc | 6 +- README.md | 0 swmconfig.h | 8 +- 20 files changed, 2565 insertions(+), 5369 deletions(-) mode change 100644 => 100755 .vim/.netrwhist create mode 100644 .vim/colors/elda.vim mode change 100644 => 100755 .vim/colors/flattr.vim create mode 100644 .vim/colors/lucius.vim create mode 100644 .vim/colors/mirodark.vim create mode 100644 .vim/colors/miromiro.vim create mode 100644 .vim/colors/neonwave.vim create mode 100644 .vim/colors/pencil.vim create mode 100644 .vim/colors/shblah.vim create mode 100644 .vim/colors/term.vim create mode 100644 .vim/colors/wolfpack.vim delete mode 100644 .vim/plugin/auto-pairs.vim delete mode 100644 .vim/plugin/taglist.vim mode change 100644 => 100755 README.md diff --git a/.Xresources b/.Xresources index 3e26c163..5f422449 100755 --- a/.Xresources +++ b/.Xresources @@ -1,56 +1,62 @@ -*background: #313131 -*foreground: #d9e6f2 +! --- special colors --- + +*background: #272727 +*foreground: #d8d8d8 + +! --- standard colors --- ! black -*color0: #313131 +*color0: #393939 ! bright_black -*color8: #5c5c5c +*color8: #5b5b5b ! red -*color1: #dc6a3d +*color1: #f42d6c ! bright_red -*color9: #eaa88e +*color9: #fa9fbb ! green -*color2: #3ddc6a +*color2: #6cf42d ! bright_green -*color10: #8eeaa8 +*color10: #bbfa9f ! yellow -*color3: #afdc3d +*color3: #f4b52d ! bright_yellow -*color11: #d0ea8e +*color11: #fadd9f ! blue -*color4: #3dafdc +*color4: #2d8af4 ! bright_blue -*color12: #8ed0ea +*color12: #9ec9fa ! magenta -*color5: #dc3daf +*color5: #b52df4 ! bright_magenta -*color13: #ea8ed0 +*color13: #dd9ffa ! cyan -*color6: #3dafdc +*color6: #2df4b5 ! bright_cyan -*color14: #8ed0ea +*color14: #9ffadd ! white -*color7: #d6d6d6 +*color7: #d8d8d8 ! bright_white *color15: #ffffff - URxvt.scrollBar: false -URxvt.perl-ext-common: default,clipboard -URxvt.font: -*-neep-medium-*-semicondensed-*-11-*-*-*-*-*-*-* -URxvt.boldFont: -*-neep-medium-*-semicondensed-*-11-*-*-*-*-*-*-* +URxvt.perl-lib: ~/.urxvt/perls +URxvt.perl-ext-common: default,clipboard,url-select +URxvt.keysym.M-u: perl:url-select:select_next +URxvt.font: -jmk-dweep-medium-r-semicondensed--11-100-75-75-c-50-iso8859-1 +URxvt.boldFont: -jmk-dweep-medium-r-semicondensed--11-100-75-75-c-50-iso8859-1 +#URxvt.letterSpace: -1 diff --git a/.mkshrc b/.mkshrc index 0cda23ac..3d068c3e 100755 --- a/.mkshrc +++ b/.mkshrc @@ -1,24 +1,14 @@ export PATH=$HOME/.go/bin:$HOME/bin:$PATH + export GOPATH=$HOME/.go export GOBIN=$GOPATH/bin + export PS1="─── " -export CC=egcc export EDITOR="vim" export VISUAL="vim" export MAIL=$HOME/mail/inbox -export PKG_PATH=ftp://ftp.openbsd.org/pub/OpenBSD/5.6/packages/amd64/ -export LC_CTYPE=en_US.UTF-8 -export GTK_IM_MODULE=xim -export LESSCHARSET=utf-8 - -alias scrot="scrot" -alias gcc="egcc" -alias git=hub -alias java="/usr/local/jdk-1.7.0/bin/java" -alias shutdown="sudo shutdown -hp now" -alias colors="python ~/bin/colors" +alias ls="ls --color=auto" +alias git="hub" alias ncmpc="ncmpc -c" -alias screenfetch="screenfetch -c 11,12" alias sprunge="curl -F 'sprunge=<-' http://sprunge.us" -alias vpn="openvpn /home/vypr/doc/ipredator.ovpn &" diff --git a/.sxhkdrc b/.sxhkdrc index 1143af08..25282daa 100755 --- a/.sxhkdrc +++ b/.sxhkdrc @@ -1,16 +1,11 @@ -mod4 + q +super + q killw $(pfw) - -mod4 + s +super + s urxvt - -mod4 + d +super + d dmenu_run -mod4 + h - mapw -u $(pfw) - -mod4 + Down +super + Down wmv 0 40 $(pfw) super + Up wmv 0 -40 $(pfw) @@ -46,13 +41,29 @@ super + shift + ctrl + Up super + shift + ctrl + Down wrs 0 1 $(pfw) -super + u - xbacklight -inc 10 -super + j - xbacklight -dec 10 +ctrl + Up + changeworkspace 1 +ctrl + Down + changeworkspace 2 +ctrl + Left + changeworkspace 3 +ctrl + Right + changeworkspace 4 -ctrl + m - dmenu_run +ctrl + shift + Up + groaw -a 1 +ctrl + shift + Down + groaw -a 2 +ctrl + shift + Left + groaw -a 3 +ctrl + shift + Right + groaw -a 4 -super + f - sh ~/code/wmutils/contrib/fullscreen.sh +ctrl + tab + Up + groaw -d 1 +ctrl + tab + Down + groaw -d 2 +ctrl + tab + Left + groaw -d 3 +ctrl + tab + Right + groaw -d 4 diff --git a/.vim/.netrwhist b/.vim/.netrwhist old mode 100644 new mode 100755 index b7f7443b..93ad7799 --- a/.vim/.netrwhist +++ b/.vim/.netrwhist @@ -1,3 +1,7 @@ let g:netrw_dirhistmax =10 -let g:netrw_dirhist_cnt =1 -let g:netrw_dirhist_1='/home/vypr/code/swm' +let g:netrw_dirhist_cnt =5 +let g:netrw_dirhist_1='/home/vypr/code/startpage' +let g:netrw_dirhist_2='/usr/home/vypr/.offlineimap' +let g:netrw_dirhist_3='/usr/home/vypr/code' +let g:netrw_dirhist_4='/home/vypr/bin' +let g:netrw_dirhist_5='/home/vypr/.offlineimap' diff --git a/.vim/colors/elda.vim b/.vim/colors/elda.vim new file mode 100644 index 00000000..a3bce4b6 --- /dev/null +++ b/.vim/colors/elda.vim @@ -0,0 +1,183 @@ +" Vim color file -- Elda +" Maintainer: Luinnar +" Last Change: 09-Jan-14 + +set background=dark +highlight clear + +if exists("syntax_on") + syntax reset +endif + +let g:colors_name="elda" + +let save_cpo = &cpo +set cpo&vim + +if !has('gui_running') + set t_Co=256 +end + +let s:rgb_map = { + \ 'NONE': 'NONE', + \ 16: "#000000", 17: "#0C0077", 18: "#14009F", 19: "#1B00C5", 20: "#2200E8", + \ 21: "#2900FF", 22: "#007600", 23: "#007475", 24: "#00739E", 25: "#0071C3", + \ 26: "#006EE7", 27: "#006BFF", 28: "#009E00", 29: "#009D72", 30: "#009C9C", + \ 31: "#009AC2", 32: "#0098E6", 33: "#0096FF", 34: "#00C300", 35: "#00C26F", + \ 36: "#00C19A", 37: "#00C0C1", 38: "#00BFE5", 39: "#00BDFF", 40: "#00E600", + \ 41: "#00E56B", 42: "#00E497", 43: "#00E3BF", 44: "#00E2E3", 45: "#00E1FF", + \ 46: "#00FF00", 47: "#00FF66", 48: "#00FF94", 49: "#00FFBC", 50: "#00FFE1", + \ 51: "#00FFFF", 52: "#7F0000", 53: "#800075", 54: "#81009E", 55: "#8200C3", + \ 56: "#8300E7", 57: "#8500FF", 58: "#717400", 59: "#727272", 60: "#73709C", + \ 61: "#746EC2", 62: "#766CE6", 63: "#7868FF", 64: "#629C00", 65: "#639B6F", + \ 66: "#649A9A", 67: "#6698C1", 68: "#6897E5", 69: "#6A95FF", 70: "#49C200", + \ 71: "#4BC16C", 72: "#4DC098", 73: "#4FBFBF", 74: "#52BDE3", 75: "#54BCFF", + \ 76: "#07E500", 77: "#12E468", 78: "#18E395", 79: "#1EE2BD", 80: "#25E1E2", + \ 81: "#2BE0FF", 82: "#00FF00", 83: "#00FF63", 84: "#00FF92", 85: "#00FFBB", + \ 86: "#00FFE0", 87: "#00FFFF", 88: "#AA0000", 89: "#AA0072", 90: "#AB009C", + \ 91: "#AC00C2", 92: "#AD00E6", 93: "#AE00FF", 94: "#A07200", 95: "#A1706F", + \ 96: "#A16E9A", 97: "#A26CC1", 98: "#A369E5", 99: "#A566FF", 100: "#979B00", + \ 101: "#989A6D", 102: "#989898", 103: "#9997BF", 104: "#9A95E4", 105: "#9C93FF", + \ 106: "#8AC000", 107: "#8BC06A", 108: "#8CBF96", 109: "#8DBEBE", 110: "#8EBCE2", + \ 111: "#90BBFF", 112: "#79E400", 113: "#7AE365", 114: "#7BE294", 115: "#7CE1BC", + \ 116: "#7DE0E1", 117: "#7FDFFF", 118: "#5FFF00", 119: "#60FF60", 120: "#62FF90", + \ 121: "#63FFBA", 122: "#65FFDF", 123: "#67FFFF", 124: "#D10000", 125: "#D2006F", + \ 126: "#D2009A", 127: "#D300C1", 128: "#D300E5", 129: "#D400FF", 130: "#CA6F00", + \ 131: "#CA6D6C", 132: "#CB6B98", 133: "#CC69BF", 134: "#CC66E3", 135: "#CD63FF", + \ 136: "#C39900", 137: "#C4986A", 138: "#C49796", 139: "#C595BE", 140: "#C693E2", + \ 141: "#C791FF", 142: "#BABF00", 143: "#BBBE66", 144: "#BCBD94", 145: "#BCBCBC", + \ 146: "#BDBBE1", 147: "#BEB9FF", 148: "#AFE300", 149: "#B0E262", 150: "#B0E191", + \ 151: "#B1E0BA", 152: "#B2DFE0", 153: "#B3DEFF", 154: "#A0FF00", 155: "#A1FF5C", + \ 156: "#A2FF8E", 157: "#A2FFB8", 158: "#A3FFDE", 159: "#A5FFFF", 160: "#F60000", + \ 161: "#F7006B", 162: "#F70097", 163: "#F800BF", 164: "#F800E3", 165: "#F900FF", + \ 166: "#F16C00", 167: "#F16A68", 168: "#F16895", 169: "#F265BD", 170: "#F363E2", + \ 171: "#F35FFF", 172: "#EB9700", 173: "#EC9565", 174: "#EC9494", 175: "#ED93BC", + \ 176: "#ED91E1", 177: "#EE8FFF", 178: "#E4BD00", 179: "#E5BC62", 180: "#E5BC91", + \ 181: "#E6BBBA", 182: "#E7B9E0", 183: "#E7B8FF", 184: "#DCE100", 185: "#DCE15D", + \ 186: "#DDE08F", 187: "#DDDFB8", 188: "#DEDEDE", 189: "#DFDDFF", 190: "#D1FF00", + \ 191: "#D2FF57", 192: "#D2FF8B", 193: "#D3FFB6", 194: "#D4FFDC", 195: "#D4FFFF", + \ 196: "#FF0000", 197: "#FF0066", 198: "#FF0094", 199: "#FF00BC", 200: "#FF00E1", + \ 201: "#FF00FF", 202: "#FF6700", 203: "#FF6563", 204: "#FF6392", 205: "#FF61BB", + \ 206: "#FF5EE0", 207: "#FF5AFF", 208: "#FF9400", 209: "#FF9360", 210: "#FF9291", + \ 211: "#FF90BA", 212: "#FF8EDF", 213: "#FF8CFF", 214: "#FFBB00", 215: "#FFBA5C", + \ 216: "#FFBA8E", 217: "#FFB9B8", 218: "#FFB7DE", 219: "#FFB6FF", 220: "#FFE000", + \ 221: "#FFDF57", 222: "#FFDE8B", 223: "#FFDDB6", 224: "#FFDCDC", 225: "#FFDBFF", + \ 226: "#FCFF00", 227: "#FCFF51", 228: "#FDFF88", 229: "#FDFFB4", 230: "#FEFFDA", + \ 231: "#FEFEFE", 232: "#060606", 233: "#171717", 234: "#252525", 235: "#323232", + \ 236: "#3F3F3F", 237: "#4A4A4A", 238: "#565656", 239: "#606060", 240: "#6B6B6B", + \ 241: "#757575", 242: "#7F7F7F", 243: "#888888", 244: "#929292", 245: "#9B9B9B", + \ 246: "#A4A4A4", 247: "#ADADAD", 248: "#B6B6B6", 249: "#BFBFBF", 250: "#C7C7C7", + \ 251: "#D0D0D0", 252: "#D8D8D8", 253: "#E0E0E0", 254: "#E9E9E9", 255: "#F1F1F1" +\ } + +function! s:hi(item, fg, bg, style) + let s:cmd = "hi ".a:item + if !empty(a:bg) + let s:cmd = s:cmd." ctermbg=".a:bg." guibg=".s:rgb_map[a:bg] + endif + if !empty(a:fg) + let s:cmd = s:cmd." ctermfg=".a:fg." guifg=".s:rgb_map[a:fg] + endif + if !empty(a:style) + let s:cmd = s:.cmd." gui=".a:style." cterm=".a:style + endif + exec s:cmd +endfunction + + +let s:bg = 233 "|234 +let s:fg = 38 +let s:const = 35 +let s:func = 33 +let s:white = 252 +let s:macro = 29 +let s:red = 124 +let s:diff = 202 +let s:diff_bg = 233 + + +" basic highlight groups (:help highlight-groups) + +" text + +call s:hi('Normal', s:fg, s:bg, '') +call s:hi('DiffChange', '', s:diff_bg, '') +call s:hi('DiffAdd', s:diff, s:diff_bg, '') +call s:hi('DiffText', s:diff, s:diff_bg, 'NONE') +call s:hi('DiffDelete', '243', s:diff_bg, 'NONE') +call s:hi('Folded', '249', s:bg, 'underline') +call s:hi('LineNr', '242', s:bg, '') +call s:hi('Directory', '39', s:bg, '') +call s:hi('NonText', '229', s:bg, 'bold') +call s:hi('SpecialKey', '229', s:bg, '') +exe 'hi SpellBad guifg=NONE ctermfg=NONE ctermbg=52' +exe 'hi SpellCap guifg=NONE ctermfg=NONE ctermbg=52' +exe 'hi SpellLocal guifg=NONE ctermfg=NONE ctermbg=52' +exe 'hi SpellRare guifg=NONE ctermfg=NONE ctermbg=53' + +" borders / separators / menus + +call s:hi('FoldColumn', 248, s:bg, 'bold') +call s:hi('SignColumn', 248, s:bg, 'bold') +call s:hi('Pmenu', 244, s:bg, '') +call s:hi('PmenuSel', s:white, 240, '') +exe 'hi PmenuSbar guifg=NONE guibg=#555555 ctermfg='.s:bg.' ctermbg='.s:bg +exe 'hi PmenuThumb guifg=NONE guibg=#cccccc ctermfg=gray ctermbg=gray' +call s:hi('WildMenu', s:white, 17, 'bold') +call s:hi('VertSplit', 236, 245, '') +call s:hi('TabLine', 230, 236, 'NONE') +call s:hi('TabLineSel', 226, 238, 'bold') +call s:hi('TabLineFill', s:bg, s:bg, '') +call s:hi('StatusLine', 252, 236, 'NONE') +call s:hi('StatusLineNC', 243, 235, 'NONE') + +"hi Menu +"hi Scrollbar +"hi Tooltip + +" cursor / dynamic / other + +call s:hi('Cursor', s:bg, s:fg, '') +"call s:hi('CursorIM', s:bg, s:white, 'reverse') +call s:hi('CursorLine', '', 235, 'NONE') +call s:hi('CursorColumn', '', 235, 'NONE') +call s:hi('DebugStop', '', 235, 'NONE') +call s:hi('Visual', '', 236, '') +call s:hi('Search', '', 24, '') +call s:hi('MatchParen', '', 24, '') + +"hi IncSearch +"hi VisualNOS + +" listings / messages + +call s:hi('Title', s:red, s:bg, 'bold') +call s:hi('ErrorMsg', 255, s:red, 'bold') +call s:hi('ModeMsg', 229, '', '') +call s:hi('Question', 28, s:bg, '') +call s:hi('MoreMsg', 28, s:bg, '') +call s:hi('WarningMsg', 229, s:bg, 'bold') + +" syntax highlighting groups (:help group-name) + +call s:hi('Comment', 248, s:bg, '') +call s:hi('Statement', s:white, s:bg, 'bold') +call s:hi('Identifier', s:white, s:bg, 'NONE') +call s:hi('Keyword', s:white, s:bg, '') +call s:hi('Operator', s:white, s:bg, '') +call s:hi('Delimiter', s:white, s:bg, '') +call s:hi('Error', s:white, s:red, '') +call s:hi('Function', s:func, s:bg, '') +call s:hi('Todo', s:diff, s:bg, 'bold') +call s:hi('Underlined', s:fg, s:bg, 'underline') +call s:hi('Ignore', 238, s:bg, '') +call s:hi('Constant', s:const, s:bg, '') +call s:hi('Number', s:const, s:bg, '') +call s:hi('Special', 229, s:bg, '') +call s:hi('PreProc', s:macro, s:bg, '') +call s:hi('Macro', s:macro, s:bg, '') +call s:hi('StorageClass', s:white, s:bg, 'bold') +call s:hi('Structure', s:white, s:bg, 'bold') +call s:hi('Type', s:white, s:bg, 'NONE') + +let &cpo = save_cpo diff --git a/.vim/colors/flattr.vim b/.vim/colors/flattr.vim old mode 100644 new mode 100755 index 28c315f3..e69de29b --- a/.vim/colors/flattr.vim +++ b/.vim/colors/flattr.vim @@ -1,100 +0,0 @@ -hi clear -if version > 580 -hi clear - if exists("syntax_on") - syntax reset - endif -endif -let g:colors_name="flattr" -hi Boolean guifg=#8DEFB5 ctermfg=121 -hi Character guifg=#FFF382 ctermfg=228 -hi ColorColumn guibg=#232526 ctermbg=235 -hi Conditional guifg=#FF8A3C ctermfg=209 gui=bold -hi Conceal guifg=#BA7FFA ctermfg=141 guibg=#1B1D1E ctermbg=234 gui=bold -hi Constant guifg=#A1DD63 ctermfg=149 gui=bold -hi Comment guifg=#5C5C5C ctermfg=59 -hi CursorLine guibg=#293739 ctermbg=236 -hi CursorLineNr guifg=#FFB761 ctermfg=215 gui=none -hi CursorColumn guibg=#293739 ctermbg=236 -hi Cursor guifg=#000000 ctermfg=0 guibg=#F8F8F0 ctermbg=15 -hi Debug guifg=#FF154A ctermfg=197 gui=bold -hi Define guifg=#FF9E56 ctermfg=215 -hi Delimiter guifg=#8F8F8F ctermfg=245 -hi DiffAdd guifg=#000000 ctermfg=0 guibg=#7EC4EF ctermbg=117 -hi DiffChange guifg=#4EDC44 ctermfg=77 guibg=#4C4745 ctermbg=238 -hi DiffDelete guifg=#FF311D ctermfg=202 guibg=#4F4F4F ctermbg=239 -hi DiffText guibg=#4C4745 ctermbg=238 gui=italic,bold -hi Directory guifg=#45E22E ctermfg=76 gui=bold -hi Error guifg=#E6DB74 ctermfg=186 guibg=#555555 ctermbg=240 -hi ErrorMsg guifg=#F94226 ctermfg=202 guibg=#232526 ctermbg=235 gui=bold -hi Exception guifg=#8ABD25 ctermfg=106 gui=bold -hi Float guifg=#ECE352 ctermfg=221 -hi FoldColumn guifg=#465457 ctermfg=239 guibg=#000000 ctermbg=234 -hi Folded guifg=#465457 ctermfg=239 guibg=#000000 ctermbg=234 -hi Function guifg=#FFB792 ctermfg=216 -hi helpExample guifg=#65AE8D ctermfg=79 -hi iCursor guifg=#000000 ctermfg=0 guibg=#F8F8F0 ctermbg=15 -hi Identifier guifg=#F9A33D ctermfg=215 -hi Ignore guifg=#656565 ctermfg=241 guibg=bg -hi IncSearch guifg=#DCCA2D ctermfg=184 guibg=#000000 ctermbg=234 -hi Keyword guifg=#78D3F4 ctermfg=117 gui=bold -hi Label guifg=#FFD554 ctermfg=221 gui=none -hi LineNr guifg=#465457 ctermfg=239 guibg=#232526 ctermbg=235 -hi Macro guifg=#CF8BA8 ctermfg=175 gui=italic -hi MatchParen guifg=#000000 ctermfg=0 guibg=#FFAE4F ctermbg=215 gui=bold -hi ModeMsg guifg=#3DFBA5 ctermfg=85 -hi MoreMsg guifg=#8EFCCD ctermfg=122 -hi NonText guifg=#465457 ctermfg=239 -hi Normal guifg=#E5E5E5 ctermfg=250 guibg=#1B1D1E ctermbg=0 -hi Number guifg=#8DEFB5 ctermfg=121 -hi Operator guifg=#F92672 ctermfg=197 -" complete menu -hi Pmenu guifg=#66D9EF ctermfg=81 guibg=#000000 ctermbg=234 -hi PmenuSel guibg=#808080 ctermbg=236 -hi PmenuSbar guibg=#080808 ctermbg=0 -hi PmenuThumb guifg=#66D9EF ctermfg=81 -hi PreCondit guifg=#C6F961 ctermfg=191 gui=bold -hi PreProc guifg=#1DFFB0 ctermfg=49 -hi Question guifg=#8D8FF8 ctermfg=105 -hi Repeat guifg=#FF7499 ctermfg=210 gui=bold -hi Search guifg=#000000 ctermfg=0 guibg=#F3C82F ctermbg=220 -" marks -hi SignColumn guifg=#C2FF46 ctermfg=155 guibg=#232526 ctermbg=235 -hi Special guifg=#94DBE9 ctermfg=116 guibg=bg gui=italic -hi SpecialChar guifg=#85D99A ctermfg=114 gui=bold -hi SpecialComment guifg=#6A6E6F ctermfg=242 gui=bold -hi SpecialKey guifg=#D466EF ctermfg=171 gui=italic -if has("spell") - hi SpellBad guisp=#FF976D gui=undercurl - hi SpellCap guisp=#9999FD gui=undercurl - hi SpellLocal guisp=#5CD8F5 gui=undercurl - hi SpellRare guisp=#E5CBCB gui=undercurl -endif -hi Statement guifg=#61D1FD ctermfg=81 gui=bold -hi StorageClass guifg=#ECA756 ctermfg=215 gui=italic -hi String guifg=#FFF382 ctermfg=228 -hi Structure guifg=#7CC3F6 ctermfg=111 -hi Tabline guifg=#000000 ctermfg=016 guibg=#888888 ctermbg=14 -hi Tag guifg=#F7547C ctermfg=204 gui=italic -hi Title guifg=#ef5939 ctermfg=203 -hi Todo guifg=#E962FB ctermfg=171 guibg=bg ctermbg=0 gui=bold -hi Typedef guifg=#F6D94B ctermfg=221 -hi Type guifg=#BEEF66 ctermfg=155 gui=none -hi Underlined guifg=#808080 ctermfg=244 gui=underline -hi VertSplit guifg=#808080 ctermfg=244 guibg=#080808 ctermbg=0 gui=bold -hi VisualNOS guibg=#403D3D ctermbg=237 -hi Visual guibg=#403D3D ctermbg=237 -hi WarningMsg guifg=#FF914C ctermfg=209 guibg=#333333 ctermbg=236 gui=bold -hi WildMenu guifg=#ABBAFF ctermfg=147 guibg=#000000 ctermbg=234 -" for TagHighlight -hi Class guifg=#18E28D ctermfg=42 -hi DefinedName guifg=#838ED7 ctermfg=104 -hi Enumerator guifg=#F5A281 ctermfg=216 -hi EnumeratorName guifg=#FD6161 ctermfg=203 -hi Member guifg=#66C1FF ctermfg=75 -hi Structure guifg=#90B4B7 ctermfg=109 -hi Union guifg=#F1C40F ctermfg=220 -hi GlobalConstant guifg=#16A085 ctermfg=36 -hi GlobalVariable guifg=#1ABC9C ctermfg=37 -hi LocalVariable guifg=#2ECC71 ctermfg=41 -set background=dark diff --git a/.vim/colors/lucius.vim b/.vim/colors/lucius.vim new file mode 100644 index 00000000..792e793e --- /dev/null +++ b/.vim/colors/lucius.vim @@ -0,0 +1,774 @@ +" ============================================================================ +" Name: Lucius vim color scheme +" Author: Jonathan Filip +" Version: 8.1.7 +" ---------------------------------------------------------------------------- +" +" Light and dark color scheme for GUI and 256 color terminal. +" +" There are several options available to customize the color scheme to your +" own tastes. This is particularly useful when you have to work in different +" environments at different times (home, work, day, night, etc). +" +" The GUI and 256 color terminal versions of this color scheme are identical. +" +" You can set up the color scheme by manually setting the options you want or +" by choosing one of the presets defined. These presets are loaded after you +" first source the color scheme file and are all commands that start with +" 'Lucius'. +" +" I have also started to create color schemes for different applications. I +" have been using them for PuTTY, iTerm2, and Visual Studio, but will keep +" adding more as I go along. You can find the files for these on Github: +" +" https://github.com/jonathanfilip/lucius +" +" You can also clone the following repository if you use Pathogen or something +" similar. It holds the vim color scheme in a 'colors' directory: +" +" https://github.com/jonathanfilip/vim-lucius +" +" +" +" Presets: +" +" There are several presets available that will set all the options for you. +" There are screenshots of each preset below: +" +" * LuciusDark (dark default): http://i.imgur.com/LsZbF.png +" * LuciusDarkHighContrast: http://i.imgur.com/e70i9.png +" * LuciusDarkLowContrast: http://i.imgur.com/Hmw8s.png +" * LuciusBlack: http://i.imgur.com/iD4ri.png +" * LuciusBlackHighContrast: http://i.imgur.com/lHvTJ.png +" * LuciusBlackLowContrast: http://i.imgur.com/oZLkg.png +" +" * LuciusLight (light default): http://i.imgur.com/soYD8.png +" * LuciusLightLowContrast: http://i.imgur.com/95I86.png +" * LuciusWhite: http://i.imgur.com/wDzkz.png +" * LuciusWhiteLowContrast: http://i.imgur.com/jlUf4.png +" +" To use the presets, you just need to set the color scheme first. In your +" vimrc, you can just do this: +" +" colorscheme lucius +" LuciusBlack +" +" You can still just set the background variable and then set the color +" scheme. This will default to LuciusDark for 'dark' and LuciusLight for +" 'light'. +" +" +" Options: +" +" The presets available cover most of the options. You can, however, customize +" things by setting the following variables yourself: +" +" g:lucius_style (default: 'dark') +" +" Set this option to either 'light' or 'dark' for your desired color scheme. +" It has the same effect as setting the background. +" +" g:lucius_contrast (default: 'normal') +" +" This option determines the contrast to use for text/ui elements. It can be +" set to 'low', 'normal', or 'high'. At this time there is no 'high' for the +" light scheme. +" +" g:lucius_contrast_bg (default: 'normal') +" +" Setting this option makes the background a higher contrast. Current settings +" are 'normal' and 'high'. +" +" g:lucius_use_bold (default: 1) +" +" Setting this will cause the color scheme to use bold fonts for some items. +" +" g:lucius_use_underline (default: 1) +" +" Setting this will cause the color scheme to use underlined fonts for some +" items. +" +" g:lucius_no_term_bg (default: 0) +" +" Setting this will cause the color scheme to not set a background color in +" the terminal (useful for transparency or terminals with different background +" colors). +" +" ============================================================================ + + + +" ============================================================================ +" Options: +" ============================================================================ + +unlet! g:colors_name +hi clear +if exists("syntax_on") + syntax reset +endif + +if exists("g:lucius_style") + let s:style = g:lucius_style +else + let s:style = &background +endif + +if exists("g:lucius_contrast") + let s:contrast = g:lucius_contrast +else + let s:contrast = "normal" +endif + +if exists("g:lucius_contrast_bg") + let s:contrast_bg = g:lucius_contrast_bg +else + let s:contrast_bg = "normal" +endif + +if exists("g:lucius_use_bold") + let s:use_bold = g:lucius_use_bold +else + let s:use_bold = 1 +endif + +if exists("g:lucius_use_underline") + let s:use_underline = g:lucius_use_underline +else + let s:use_underline = 1 +endif + +if exists("g:lucius_no_term_bg") + let s:no_term_bg = g:lucius_no_term_bg +else + let s:no_term_bg = 0 +endif + + +" ============================================================================ +" Color Map: +" ============================================================================ + +let s:color_map = { + \ 'bg': 'bg', 'fg': 'fg', 'NONE': 'NONE', + \ '#000000': '16', '#00005f': '17', '#000087': '18', '#0000af': '19', + \ '#0000d7': '20', '#0000ff': '21', '#005f00': '22', '#005f5f': '23', + \ '#005f87': '24', '#005faf': '25', '#005fd7': '26', '#005fff': '27', + \ '#008700': '28', '#00875f': '29', '#008787': '30', '#0087af': '31', + \ '#0087d7': '32', '#0087ff': '33', '#00af00': '34', '#00af5f': '35', + \ '#00af87': '36', '#00afaf': '37', '#00afd7': '38', '#00afff': '39', + \ '#00d700': '40', '#00d75f': '41', '#00d787': '42', '#00d7af': '43', + \ '#00d7d7': '44', '#00d7ff': '45', '#00ff00': '46', '#00ff5f': '47', + \ '#00ff87': '48', '#00ffaf': '49', '#00ffd7': '50', '#00ffff': '51', + \ '#5f0000': '52', '#5f005f': '53', '#5f0087': '54', '#5f00af': '55', + \ '#5f00d7': '56', '#5f00ff': '57', '#5f5f00': '58', '#5f5f5f': '59', + \ '#5f5f87': '60', '#5f5faf': '61', '#5f5fd7': '62', '#5f5fff': '63', + \ '#5f8700': '64', '#5f875f': '65', '#5f8787': '66', '#5f87af': '67', + \ '#5f87d7': '68', '#5f87ff': '69', '#5faf00': '70', '#5faf5f': '71', + \ '#5faf87': '72', '#5fafaf': '73', '#5fafd7': '74', '#5fafff': '75', + \ '#5fd700': '76', '#5fd75f': '77', '#5fd787': '78', '#5fd7af': '79', + \ '#5fd7d7': '80', '#5fd7ff': '81', '#5fff00': '82', '#5fff5f': '83', + \ '#5fff87': '84', '#5fffaf': '85', '#5fffd7': '86', '#5fffff': '87', + \ '#870000': '88', '#87005f': '89', '#870087': '90', '#8700af': '91', + \ '#8700d7': '92', '#8700ff': '93', '#875f00': '94', '#875f5f': '95', + \ '#875f87': '96', '#875faf': '97', '#875fd7': '98', '#875fff': '99', + \ '#878700': '100', '#87875f': '101', '#878787': '102', '#8787af': '103', + \ '#8787d7': '104', '#8787ff': '105', '#87af00': '106', '#87af5f': '107', + \ '#87af87': '108', '#87afaf': '109', '#87afd7': '110', '#87afff': '111', + \ '#87d700': '112', '#87d75f': '113', '#87d787': '114', '#87d7af': '115', + \ '#87d7d7': '116', '#87d7ff': '117', '#87ff00': '118', '#87ff5f': '119', + \ '#87ff87': '120', '#87ffaf': '121', '#87ffd7': '122', '#87ffff': '123', + \ '#af0000': '124', '#af005f': '125', '#af0087': '126', '#af00af': '127', + \ '#af00d7': '128', '#af00ff': '129', '#af5f00': '130', '#af5f5f': '131', + \ '#af5f87': '132', '#af5faf': '133', '#af5fd7': '134', '#af5fff': '135', + \ '#af8700': '136', '#af875f': '137', '#af8787': '138', '#af87af': '139', + \ '#af87d7': '140', '#af87ff': '141', '#afaf00': '142', '#afaf5f': '143', + \ '#afaf87': '144', '#afafaf': '145', '#afafd7': '146', '#afafff': '147', + \ '#afd700': '148', '#afd75f': '149', '#afd787': '150', '#afd7af': '151', + \ '#afd7d7': '152', '#afd7ff': '153', '#afff00': '154', '#afff5f': '155', + \ '#afff87': '156', '#afffaf': '157', '#afffd7': '158', '#afffff': '159', + \ '#d70000': '160', '#d7005f': '161', '#d70087': '162', '#d700af': '163', + \ '#d700d7': '164', '#d700ff': '165', '#d75f00': '166', '#d75f5f': '167', + \ '#d75f87': '168', '#d75faf': '169', '#d75fd7': '170', '#d75fff': '171', + \ '#d78700': '172', '#d7875f': '173', '#d78787': '174', '#d787af': '175', + \ '#d787d7': '176', '#d787ff': '177', '#d7af00': '178', '#d7af5f': '179', + \ '#d7af87': '180', '#d7afaf': '181', '#d7afd7': '182', '#d7afff': '183', + \ '#d7d700': '184', '#d7d75f': '185', '#d7d787': '186', '#d7d7af': '187', + \ '#d7d7d7': '188', '#d7d7ff': '189', '#d7ff00': '190', '#d7ff5f': '191', + \ '#d7ff87': '192', '#d7ffaf': '193', '#d7ffd7': '194', '#d7ffff': '195', + \ '#ff0000': '196', '#ff005f': '197', '#ff0087': '198', '#ff00af': '199', + \ '#ff00d7': '200', '#ff00ff': '201', '#ff5f00': '202', '#ff5f5f': '203', + \ '#ff5f87': '204', '#ff5faf': '205', '#ff5fd7': '206', '#ff5fff': '207', + \ '#ff8700': '208', '#ff875f': '209', '#ff8787': '210', '#ff87af': '211', + \ '#ff87d7': '212', '#ff87ff': '213', '#ffaf00': '214', '#ffaf5f': '215', + \ '#ffaf87': '216', '#ffafaf': '217', '#ffafd7': '218', '#ffafff': '219', + \ '#ffd700': '220', '#ffd75f': '221', '#ffd787': '222', '#ffd7af': '223', + \ '#ffd7d7': '224', '#ffd7ff': '225', '#ffff00': '226', '#ffff5f': '227', + \ '#ffff87': '228', '#ffffaf': '229', '#ffffd7': '230', '#ffffff': '231', + \ '#080808': '232', '#121212': '233', '#1c1c1c': '234', '#262626': '235', + \ '#303030': '236', '#3a3a3a': '237', '#444444': '238', '#4e4e4e': '239', + \ '#585858': '240', '#626262': '241', '#6c6c6c': '242', '#767676': '243', + \ '#808080': '244', '#8a8a8a': '245', '#949494': '246', '#9e9e9e': '247', + \ '#a8a8a8': '248', '#b2b2b2': '249', '#bcbcbc': '250', '#c6c6c6': '251', + \ '#d0d0d0': '252', '#dadada': '253', '#e4e4e4': '254', '#eeeeee': '255', + \ } + + +" ============================================================================ +" Functions: +" ============================================================================ + +function! s:AddCterm(name) + exec "let l:gfg = synIDattr(synIDtrans(hlID('" . a:name . + \ "')), 'fg', 'gui')" + exec "let l:gbg = synIDattr(synIDtrans(hlID('" . a:name . + \ "')), 'bg', 'gui')" + let l:gfg = l:gfg == "" ? "NONE" : l:gfg + let l:gbg = l:gbg == "" ? "NONE" : l:gbg + exec "hi " . a:name . " ctermfg=" . s:color_map[l:gfg] . + \ " ctermbg=" . s:color_map[l:gbg] +endfunction + +function! s:AddSpCterm(name) + exec "let l:gsp = synIDattr(synIDtrans(hlID('" . a:name . + \ "')), 'sp', 'gui')" + let l:gsp = l:gsp == "" ? "NONE" : l:gsp + exec "hi " . a:name . " ctermfg=" . s:color_map[l:gsp] +endfunction + + +" ============================================================================ +" Text Groups: +" ============================================================================ + +let s:normal_items = [ + \ "ColorColumn", "Comment", "Conceal", "Constant", "Cursor", "CursorColumn", + \ "CursorIM", "CursorLine", "CursorLineNr", "DiffAdd", "DiffChange", + \ "DiffDelete", "Directory", "Error", "ErrorMsg", "Identifier", + \ "IncSearch", "LineNr", "MatchParen", "ModeMsg", "MoreMsg", + \ "NonText", "Pmenu", "PmenuSbar", "PmenuSel", + \ "PmenuThumb", "PreProc", "Question", "Search", "SignColumn", + \ "Special", "SpecialKey", "Statement", "StatusLineNC", "TabLine", + \ "TabLineFill", "Todo", "Type", "VertSplit", "Visual", + \ "WarningMsg", "WildMenu", + \ ] + +let s:bold_items = [ + \ "DiffText", "FoldColumn", "Folded", "StatusLine", "TabLineSel", + \ "Title", "CursorLineNr", + \ ] + +let s:underline_items = [ + \ "Underlined", "VisualNOS" + \ ] + +let s:undercurl_items = [ + \ "SpellBad", "SpellCap", "SpellLocal", "SpellRare" + \ ] + + +" ============================================================================ +" Color Definitions: +" ============================================================================ + +" ---------------------------------------------------------------------------- +" 'Normal' Colors: +" ---------------------------------------------------------------------------- + +hi clear Normal +hi Normal gui=none cterm=none term=none + +if s:style == "light" + if s:contrast == "high" + hi Normal guifg=#000000 + elseif s:contrast == "low" + hi Normal guifg=#626262 + else + hi Normal guifg=#444444 + endif +else + if s:contrast == "high" + hi Normal guifg=#eeeeee + elseif s:contrast == "low" + hi Normal guifg=#bcbcbc + else + hi Normal guifg=#d7d7d7 + endif +endif + +if s:style == "light" + if s:contrast_bg == "high" + hi Normal guibg=#ffffff + else + hi Normal guibg=#eeeeee + endif +else + if s:contrast_bg == "high" + hi Normal guibg=#121212 + else + hi Normal guibg=#303030 + endif +endif + +call s:AddCterm("Normal") + + +" ---------------------------------------------------------------------------- +" Extra setup +" ---------------------------------------------------------------------------- + +exec "set background=" . s:style + +" Clear default settings +for s:item in s:normal_items + s:bold_items + s:underline_items + s:undercurl_items + exec "hi " . s:item . " guifg=NONE guibg=NONE gui=none" + \ . " ctermfg=NONE ctermbg=NONE cterm=none term=none" +endfor + +let g:colors_name="lucius" + + +" ---------------------------------------------------------------------------- +" Text Markup: +" ---------------------------------------------------------------------------- + +if s:style == "light" + hi NonText guifg=#afafd7 + hi SpecialKey guifg=#afd7af + if s:contrast == "low" + hi Comment guifg=#9e9e9e + hi Conceal guifg=#9e9e9e + hi Constant guifg=#d78700 + hi Directory guifg=#00af87 + hi Identifier guifg=#00af00 + hi PreProc guifg=#00afaf + hi Special guifg=#af00af + hi Statement guifg=#0087d7 + hi Title guifg=#0087d7 + hi Type guifg=#0087af + else + hi Comment guifg=#808080 + hi Conceal guifg=#808080 + hi Constant guifg=#af5f00 + hi Directory guifg=#00875f + hi Identifier guifg=#008700 + hi PreProc guifg=#008787 + hi Special guifg=#870087 + hi Statement guifg=#005faf + hi Title guifg=#005faf + hi Type guifg=#005f87 + endif +else + hi NonText guifg=#5f5f87 + hi SpecialKey guifg=#5f875f + if s:contrast == "low" + hi Comment guifg=#6c6c6c + hi Conceal guifg=#6c6c6c + hi Constant guifg=#afaf87 + hi Directory guifg=#87af87 + hi Identifier guifg=#87af5f + hi PreProc guifg=#5faf87 + hi Special guifg=#af87af + hi Statement guifg=#5fafd7 + hi Title guifg=#00afd7 + hi Type guifg=#5fafaf + elseif s:contrast == "high" + hi Comment guifg=#8a8a8a + hi Conceal guifg=#8a8a8a + hi Constant guifg=#ffffd7 + hi Directory guifg=#d7ffd7 + hi Identifier guifg=#d7ffaf + hi PreProc guifg=#afffd7 + hi Special guifg=#ffd7ff + hi Statement guifg=#afffff + hi Title guifg=#87d7ff + hi Type guifg=#afffff + else + hi Comment guifg=#808080 + hi Conceal guifg=#808080 + hi Constant guifg=#d7d7af + hi Directory guifg=#afd7af + hi Identifier guifg=#afd787 + hi PreProc guifg=#87d7af + hi Special guifg=#d7afd7 + hi Statement guifg=#87d7ff + hi Title guifg=#5fafd7 + hi Type guifg=#87d7d7 + endif +endif + + +" ---------------------------------------------------------------------------- +" Highlighting: +" ---------------------------------------------------------------------------- + +hi Cursor guifg=bg +hi CursorColumn guifg=NONE +hi CursorIM guifg=bg +hi CursorLine guifg=NONE +hi Visual guifg=NONE +hi VisualNOS guifg=fg guibg=NONE +if s:style == "light" + hi CursorColumn guibg=#dadada + hi CursorLine guibg=#dadada + hi IncSearch guifg=fg guibg=#5fd7d7 + hi MatchParen guifg=NONE guibg=#5fd7d7 + hi Search guifg=fg guibg=#ffaf00 + hi Visual guibg=#afd7ff + if s:contrast == "low" + hi Cursor guibg=#87afd7 + hi CursorIM guibg=#87afd7 + hi Error guifg=#d70000 guibg=#ffd7d7 + hi Todo guifg=#af8700 guibg=#ffffaf + else + hi Cursor guibg=#5f87af + hi CursorIM guibg=#5f87af + hi Error guifg=#af0000 guibg=#d7afaf + hi Todo guifg=#875f00 guibg=#ffffaf + endif +else + hi CursorColumn guibg=#444444 + hi CursorLine guibg=#444444 + hi IncSearch guifg=bg + hi MatchParen guifg=fg guibg=#87af00 + hi Search guifg=bg + hi Visual guibg=#005f87 + if s:contrast == "low" + hi Cursor guibg=#5f87af + hi CursorIM guibg=#5f87af + hi Error guifg=#d75f5f guibg=#870000 + hi IncSearch guibg=#00afaf + hi Search guibg=#d78700 + hi Todo guifg=#afaf00 guibg=#5f5f00 + elseif s:contrast == "high" + hi Cursor guibg=#afd7ff + hi CursorIM guibg=#afd7ff + hi Error guifg=#ffafaf guibg=#af0000 + hi IncSearch guibg=#87ffff + hi Search guibg=#ffaf5f + hi Todo guifg=#ffff87 guibg=#87875f + else + hi Cursor guibg=#87afd7 + hi CursorIM guibg=#87afd7 + hi Error guifg=#ff8787 guibg=#870000 + hi IncSearch guibg=#5fd7d7 + hi Search guibg=#d78700 + hi Todo guifg=#d7d75f guibg=#5f5f00 + endif +endif + + +" ---------------------------------------------------------------------------- +" Messages: +" ---------------------------------------------------------------------------- + +hi Question guifg=fg +if s:style == "light" + if s:contrast == "low" + hi ErrorMsg guifg=#d70000 + hi ModeMsg guifg=#0087ff + hi MoreMsg guifg=#0087ff + hi WarningMsg guifg=#d78700 + else + hi ErrorMsg guifg=#af0000 + hi ModeMsg guifg=#005faf + hi MoreMsg guifg=#005faf + hi WarningMsg guifg=#af5f00 + endif +else + if s:contrast == "low" + hi ErrorMsg guifg=#d75f5f + hi ModeMsg guifg=#87afaf + hi MoreMsg guifg=#87afaf + hi WarningMsg guifg=#af875f + elseif s:contrast == "high" + hi ErrorMsg guifg=#ff8787 + hi ModeMsg guifg=#afffff + hi MoreMsg guifg=#afffff + hi WarningMsg guifg=#ffaf87 + else + hi ErrorMsg guifg=#ff5f5f + hi ModeMsg guifg=#afd7d7 + hi MoreMsg guifg=#afd7d7 + hi WarningMsg guifg=#d7875f + endif +endif + + +" ---------------------------------------------------------------------------- +" UI: +" ---------------------------------------------------------------------------- + +hi ColorColumn guifg=NONE +hi Pmenu guifg=bg +hi PmenuSel guifg=fg +hi PmenuThumb guifg=fg +hi StatusLine guifg=bg +hi TabLine guifg=bg +hi TabLineSel guifg=fg +hi WildMenu guifg=fg +if s:style == "light" + hi ColorColumn guibg=#e4e4e4 + hi CursorLineNr guifg=#626262 guibg=#dadada + hi FoldColumn guibg=#bcbcbc + hi Folded guibg=#bcbcbc + hi LineNr guifg=#9e9e9e guibg=#dadada + hi PmenuSel guibg=#afd7ff + hi SignColumn guibg=#d0d0d0 + hi StatusLineNC guifg=#dadada + hi TabLineFill guifg=#dadada + hi VertSplit guifg=#e4e4e4 + hi WildMenu guibg=#afd7ff + if s:contrast == "low" + hi FoldColumn guifg=#808080 + hi Folded guifg=#808080 + hi Pmenu guibg=#9e9e9e + hi PmenuSbar guifg=#9e9e9e guibg=#626262 + hi PmenuThumb guibg=#9e9e9e + hi SignColumn guifg=#808080 + hi StatusLine guibg=#9e9e9e + hi StatusLineNC guibg=#9e9e9e + hi TabLine guibg=#9e9e9e + hi TabLineFill guibg=#9e9e9e + hi TabLineSel guibg=#afd7ff + hi VertSplit guibg=#9e9e9e + else + hi FoldColumn guifg=#626262 + hi Folded guifg=#626262 + hi Pmenu guibg=#808080 + hi PmenuSbar guifg=#808080 guibg=#444444 + hi PmenuThumb guibg=#9e9e9e + hi SignColumn guifg=#626262 + hi StatusLine guibg=#808080 + hi StatusLineNC guibg=#808080 + hi TabLine guibg=#808080 + hi TabLineFill guibg=#808080 + hi TabLineSel guibg=#afd7ff + hi VertSplit guibg=#808080 + endif +else + hi ColorColumn guibg=#3a3a3a + hi CursorLineNr guifg=#9e9e9e guibg=#444444 + hi FoldColumn guibg=#4e4e4e + hi Folded guibg=#4e4e4e + hi LineNr guifg=#626262 guibg=#444444 + hi PmenuSel guibg=#005f87 + hi SignColumn guibg=#4e4e4e + hi StatusLineNC guifg=#4e4e4e + hi TabLineFill guifg=#4e4e4e + hi VertSplit guifg=#626262 + hi WildMenu guibg=#005f87 + if s:contrast == "low" + hi FoldColumn guifg=#a8a8a8 + hi Folded guifg=#a8a8a8 + hi Pmenu guibg=#8a8a8a + hi PmenuSbar guifg=#8a8a8a guibg=#bcbcbc + hi PmenuThumb guibg=#585858 + hi SignColumn guifg=#8a8a8a + hi StatusLine guibg=#8a8a8a + hi StatusLineNC guibg=#8a8a8a + hi TabLine guibg=#8a8a8a + hi TabLineFill guibg=#8a8a8a + hi TabLineSel guibg=#005f87 + hi VertSplit guibg=#8a8a8a + elseif s:contrast == "high" + hi FoldColumn guifg=#c6c6c6 + hi Folded guifg=#c6c6c6 + hi Pmenu guibg=#bcbcbc + hi PmenuSbar guifg=#bcbcbc guibg=#dadada + hi PmenuThumb guibg=#8a8a8a + hi SignColumn guifg=#bcbcbc + hi StatusLine guibg=#bcbcbc + hi StatusLineNC guibg=#bcbcbc + hi TabLine guibg=#bcbcbc + hi TabLineFill guibg=#bcbcbc + hi TabLineSel guibg=#0087af + hi VertSplit guibg=#bcbcbc + else + hi FoldColumn guifg=#bcbcbc + hi Folded guifg=#bcbcbc + hi Pmenu guibg=#b2b2b2 + hi PmenuSbar guifg=#b2b2b2 guibg=#d0d0d0 + hi PmenuThumb guibg=#808080 + hi SignColumn guifg=#b2b2b2 + hi StatusLine guibg=#b2b2b2 + hi StatusLineNC guibg=#b2b2b2 + hi TabLine guibg=#b2b2b2 + hi TabLineFill guibg=#b2b2b2 + hi TabLineSel guibg=#005f87 + hi VertSplit guibg=#b2b2b2 + endif +endif + + +" ---------------------------------------------------------------------------- +" Diff: +" ---------------------------------------------------------------------------- + +hi DiffAdd guifg=fg +hi DiffChange guifg=fg +hi DiffDelete guifg=fg + +if s:style == "light" + hi DiffAdd guibg=#afd7af + hi DiffChange guibg=#d7d7af + hi DiffDelete guibg=#d7afaf + hi DiffText guibg=#d7d7af + if s:contrast == "low" + hi DiffText guifg=#ff8700 + else + hi DiffText guifg=#d75f00 + endif +else + hi DiffAdd guibg=#5f875f + hi DiffChange guibg=#87875f + hi DiffDelete guibg=#875f5f + hi DiffText guibg=#87875f + if s:contrast == "low" + hi DiffText guifg=#d7d75f + else + hi DiffText guifg=#ffff87 + endif +endif + + +" ---------------------------------------------------------------------------- +" Spelling: +" ---------------------------------------------------------------------------- + +if s:style == "light" + hi SpellBad guisp=#d70000 + hi SpellCap guisp=#00afd7 + hi SpellLocal guisp=#d7af00 + hi SpellRare guisp=#5faf00 +else + hi SpellBad guisp=#ff5f5f + hi SpellCap guisp=#5fafd7 + hi SpellLocal guisp=#d7af5f + hi SpellRare guisp=#5faf5f +endif + + +" ---------------------------------------------------------------------------- +" Miscellaneous: +" ---------------------------------------------------------------------------- + +hi Ignore guifg=bg +hi Underlined guifg=fg + + +" ============================================================================ +" Text Emphasis: +" ============================================================================ + +if s:use_bold == 1 + for s:item in s:bold_items + exec "hi " . s:item . " gui=bold cterm=bold term=none" + endfor +endif + +if s:use_underline == 1 + for s:item in s:underline_items + exec "hi " . s:item . " gui=underline cterm=underline term=none" + endfor + for s:item in s:undercurl_items + exec "hi " . s:item . " cterm=underline" + endfor +endif + +for s:item in s:undercurl_items + exec "hi " . s:item . " gui=undercurl term=none" +endfor + + +" ============================================================================ +" Cterm Colors: +" ============================================================================ + +for s:item in s:normal_items + s:bold_items + s:underline_items + call s:AddCterm(s:item) +endfor + +for s:item in s:undercurl_items + call s:AddSpCterm(s:item) +endfor + +if s:no_term_bg == 1 + hi Normal ctermbg=NONE +endif + + +" ============================================================================ +" Alternative Bold Definitions: +" ============================================================================ + +let s:alternative_bold_items = ["Identifier", "PreProc", "Statement", + \ "Special", "Constant", "Type"] + +for s:item in s:alternative_bold_items + exec "let s:temp_gui_fg = synIDattr(synIDtrans(hlID('" . s:item . + \ "')), 'fg', 'gui')" + exec "let s:temp_cterm_fg = synIDattr(synIDtrans(hlID('" . s:item . + \ "')), 'fg', 'cterm')" + exec "hi B" . s:item . " guifg=" . s:temp_gui_fg . " ctermfg=" . + \ s:temp_cterm_fg . " gui=bold cterm=bold term=none" +endfor + + +" ============================================================================ +" Plugin Specific Colors: +" ============================================================================ + +" Tagbar: +hi link TagbarAccessPublic Constant +hi link TagbarAccessProtected Type +hi link TagbarAccessPrivate PreProc + +" Vimwiki: +hi link VimwikiHeader1 BIdentifier +hi link VimwikiHeader2 BPreProc +hi link VimwikiHeader3 BStatement +hi link VimwikiHeader4 BSpecial +hi link VimwikiHeader5 BConstant +hi link VimwikiHeader6 BType + + +" ============================================================================ +" Preset Commands: +" ============================================================================ + +function! SetLucius(style, contrast, contrast_bg) + let g:lucius_style = a:style + let g:lucius_contrast = a:contrast + let g:lucius_contrast_bg = a:contrast_bg +endfunction + +command! LuciusLight call SetLucius("light", "normal", "normal") + \ | colorscheme lucius +command! LuciusLightLowContrast call SetLucius("light", "low", "normal") + \ | colorscheme lucius +command! LuciusLightHighContrast call SetLucius("light", "high", "normal") + \ | colorscheme lucius + +command! LuciusWhite call SetLucius("light", "normal", "high") + \ | colorscheme lucius +command! LuciusWhiteLowContrast call SetLucius("light", "low", "high") + \ | colorscheme lucius +command! LuciusWhiteHighContrast call SetLucius("light", "high", "high") + \ | colorscheme lucius + +command! LuciusDark call SetLucius("dark", "normal", "normal") + \ | colorscheme lucius +command! LuciusDarkLowContrast call SetLucius("dark", "low", "normal") + \ | colorscheme lucius +command! LuciusDarkHighContrast call SetLucius("dark", "high", "normal") + \ | colorscheme lucius + +command! LuciusBlack call SetLucius("dark", "normal", "high") + \ | colorscheme lucius +command! LuciusBlackLowContrast call SetLucius("dark", "low", "high") + \ | colorscheme lucius +command! LuciusBlackHighContrast call SetLucius("dark", "high", "high") + \ | colorscheme lucius + +" vim: tw=78 diff --git a/.vim/colors/mirodark.vim b/.vim/colors/mirodark.vim new file mode 100644 index 00000000..a63d0bc6 --- /dev/null +++ b/.vim/colors/mirodark.vim @@ -0,0 +1,613 @@ +" Vim Color File +" +" Name: mirodark +" Version: 0.5 +" Last Change: 11-16-2013 +" Maintainer: Jerome Castaneda +" URL: https://github.com/djjcast/mirodark +" +" About: mirodark extends Jason W Ryan's miromiro(1) Vim color file with gVim, Linux console, +" xterm-88color, and xterm-256color support. mirodark uses Jason W Ryan's dark(2) +" terminal color scheme colors. mirodark uses Henry So, Jr.'s desert256(3) color +" approximation functions. +" +" 1) https://bitbucket.org/jasonwryan/eeepc/src/40f27908ce98/.vim/colors/miromiro.vim +" 2) https://bitbucket.org/jasonwryan/eeepc/src/40f27908ce98/.colours/dark +" 3) http://www.vim.org/scripts/script.php?script_id=1243 + +" Usage {{{ +" +" Installation: +" +" 1) Add mirodark.vim to your ~/.vim/colors directory. +" 2) Add the following to your ~/.vimrc file: +" +" syntax on +" colorscheme mirodark +" +" Terminal Support: +" +" mirodark uses color approximation functions to support xterm-88color and xterm-256color. If you +" are not using xterm-88color or xterm-256color, then follow these instructions to set up your +" terminal to use mirodark's color scheme. Also, if you are using xterm-88color or xterm-256color +" but you want your terminal to use mirodark's color scheme, then follow these instructions. +" +" 1) If you are using a terminal that sets its color settings based on your ~/.Xresources file, like +" xterm or rxvt-unicode, then add the following to your ~/.Xresources file. If you are not using +" a terminal that sets its color settings based on your ~/.Xresources file, like gnome-terminal +" or konsole, then set its color settings to the following color values manually. +" +" ! +" ! Terminal Color Scheme: dark +" ! +" ! Maintainer: Jason W Ryan +" ! +" ! higher contrast background +" !*background: #000000 +" *background: #121212 +" *foreground: #999999 +" ! black dark/light +" ! higher contrast black dark/light +" !*color0: #121212 +" !*color8: #3d3d3d +" *color0: #3d3d3d +" *color8: #5e5e5e +" ! red dark/light +" *color1: #8a2f58 +" *color9: #cf4f88 +" ! green dark/light +" *color2: #287373 +" *color10: #53a6a6 +" ! yellow dark/light +" *color3: #914e89 +" *color11: #bf85cc +" ! blue dark/light +" *color4: #395573 +" *color12: #4779b3 +" ! magenta dark/light +" *color5: #5e468c +" *color13: #7f62b3 +" ! cyan dark/light +" *color6: #2b7694 +" *color14: #47959e +" ! white dark/light +" *color7: #899ca1 +" *color15: #c0c0c0 +" +" 2) If you are using xterm-88color or xterm-256color, then add the following to your ~/.vimrc file, +" before 'colorscheme mirodark': +" +" let g:mirodark_disable_color_approximation=1 +" +" Linux Console Support: +" +" 1) Add the following to your ~/.bashrc file: +" +" # +" # Linux Console Color Scheme: dark +" # +" # Maintainer: Jason W Ryan +" # +" if [[ $TERM == "linux" ]]; then +" echo -en "\033]P0000000" # black +" echo -en "\033]P85e5e5e" # darkgray +" echo -en "\033]P18a2f58" # darkred +" echo -en "\033]P9cf4f88" # lightred +" echo -en "\033]P2287373" # darkgreen +" echo -en "\033]Pa53a6a6" # lightgreen +" echo -en "\033]P3914e89" # darkyellow +" echo -en "\033]Pbbf85cc" # lightyellow +" echo -en "\033]P4395573" # darkblue +" echo -en "\033]Pc4779b3" # lightblue +" echo -en "\033]P55e468c" # darkmagenta +" echo -en "\033]Pd7f62b3" # lightmagenta +" echo -en "\033]P62b7694" # darkcyan +" echo -en "\033]Pe47959e" # lightcyan +" echo -en "\033]P7899ca1" # lightgray +" echo -en "\033]Pfc0c0c0" # white +" fi +" +" Enable Higher Contrast Mode: +" +" NOTE: Enabling Higher Contrast Mode only affects mirodark in xterm-256color and xterm-88color, +" assuming you did not disable color approximation, and gVim. +" +" 1) Add the following to your ~/.vimrc file, before 'colorscheme mirodark': +" +" let g:mirodark_enable_higher_contrast_mode=1 +" +" 2) If you want to easily toggle Higher Contrast Mode on and off, then add the following to your +" ~/.vimrc file: +" +" nnoremap m :MirodarkToggleHigherContrastMode +" }}} + +" higher contrast mode toggle function {{{ +if !exists("g:loaded_mirodark") + fun! s:toggle_higher_contrast_mode() + if exists("g:mirodark_enable_higher_contrast_mode") + unlet g:mirodark_enable_higher_contrast_mode + else + let g:mirodark_enable_higher_contrast_mode=1 + endif + + colorscheme mirodark + endfun + + command! -nargs=0 MirodarkToggleHigherContrastMode call s:toggle_higher_contrast_mode() + + let g:loaded_mirodark=1 +endif +" }}} + +" color approximation functions {{{ +" +" desert256 Color Approximation Functions +" +" Maintainer: Henry So, Jr. +" +if !has("gui_running") && + \ ((&t_Co == 88 || &t_Co == 256) && !exists("g:mirodark_disable_color_approximation")) + " returns an approximate grey index for the given grey level + fun! s:grey_number(x) + if &t_Co == 88 + if a:x < 23 + return 0 + elseif a:x < 69 + return 1 + elseif a:x < 103 + return 2 + elseif a:x < 127 + return 3 + elseif a:x < 150 + return 4 + elseif a:x < 173 + return 5 + elseif a:x < 196 + return 6 + elseif a:x < 219 + return 7 + elseif a:x < 243 + return 8 + else + return 9 + endif + else + if a:x < 14 + return 0 + else + let l:n = (a:x - 8) / 10 + let l:m = (a:x - 8) % 10 + if l:m < 5 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " returns the actual grey level represented by the grey index + fun! s:grey_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 46 + elseif a:n == 2 + return 92 + elseif a:n == 3 + return 115 + elseif a:n == 4 + return 139 + elseif a:n == 5 + return 162 + elseif a:n == 6 + return 185 + elseif a:n == 7 + return 208 + elseif a:n == 8 + return 231 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 8 + (a:n * 10) + endif + endif + endfun + + " returns the palette index for the given grey index + fun! s:grey_color(n) + if &t_Co == 88 + if a:n == 0 + return 16 + elseif a:n == 9 + return 79 + else + return 79 + a:n + endif + else + if a:n == 0 + return 16 + elseif a:n == 25 + return 231 + else + return 231 + a:n + endif + endif + endfun + + " returns an approximate color index for the given color level + fun! s:rgb_number(x) + if &t_Co == 88 + if a:x < 69 + return 0 + elseif a:x < 172 + return 1 + elseif a:x < 230 + return 2 + else + return 3 + endif + else + if a:x < 75 + return 0 + else + let l:n = (a:x - 55) / 40 + let l:m = (a:x - 55) % 40 + if l:m < 20 + return l:n + else + return l:n + 1 + endif + endif + endif + endfun + + " returns the actual color level for the given color index + fun! s:rgb_level(n) + if &t_Co == 88 + if a:n == 0 + return 0 + elseif a:n == 1 + return 139 + elseif a:n == 2 + return 205 + else + return 255 + endif + else + if a:n == 0 + return 0 + else + return 55 + (a:n * 40) + endif + endif + endfun + + " returns the palette index for the given R/G/B color indices + fun! s:rgb_color(x, y, z) + if &t_Co == 88 + return 16 + (a:x * 16) + (a:y * 4) + a:z + else + return 16 + (a:x * 36) + (a:y * 6) + a:z + endif + endfun + + " returns the palette index to approximate the given R/G/B color levels + fun! s:color(r, g, b) + " get the closest grey + let l:gx = s:grey_number(a:r) + let l:gy = s:grey_number(a:g) + let l:gz = s:grey_number(a:b) + + " get the closest color + let l:x = s:rgb_number(a:r) + let l:y = s:rgb_number(a:g) + let l:z = s:rgb_number(a:b) + + if l:gx == l:gy && l:gy == l:gz + " there are two possibilities + let l:dgr = s:grey_level(l:gx) - a:r + let l:dgg = s:grey_level(l:gy) - a:g + let l:dgb = s:grey_level(l:gz) - a:b + let l:dgrey = (l:dgr * l:dgr) + (l:dgg * l:dgg) + (l:dgb * l:dgb) + let l:dr = s:rgb_level(l:gx) - a:r + let l:dg = s:rgb_level(l:gy) - a:g + let l:db = s:rgb_level(l:gz) - a:b + let l:drgb = (l:dr * l:dr) + (l:dg * l:dg) + (l:db * l:db) + if l:dgrey < l:drgb + " use the grey + return s:grey_color(l:gx) + else + " use the color + return s:rgb_color(l:x, l:y, l:z) + endif + else + " only one possibility + return s:rgb_color(l:x, l:y, l:z) + endif + endfun + + " returns the palette index to approximate the 'rrggbb' hex string + fun! s:rgb(rgb) + let l:r = ("0x" . strpart(a:rgb, 0, 2)) + 0 + let l:g = ("0x" . strpart(a:rgb, 2, 2)) + 0 + let l:b = ("0x" . strpart(a:rgb, 4, 2)) + 0 + + return s:color(l:r, l:g, l:b) + endfun +endif +" }}} + +" color scheme initialization {{{ +set background=dark +hi clear +if exists("syntax on") + syntax reset +endif +let colors_name="mirodark" +" }}} + +" color scheme variables {{{ +if has("gui_running") || + \ ((&t_Co == 88 || &t_Co == 256) && !exists("g:mirodark_disable_color_approximation")) + if !exists("g:mirodark_enable_higher_contrast_mode") + let s:conf_bclr_hex="121212" " configuration-based background color hexadecimal + let s:conf_dblk_hex="3d3d3d" " configuration-based dark black hexadecimal + let s:conf_lblk_hex="5e5e5e" " configuration-based light black hexadecimal + else + let s:conf_bclr_hex="000000" + let s:conf_dblk_hex="121212" + let s:conf_lblk_hex="3d3d3d" + endif + + let s:bclr_hex=s:conf_bclr_hex " background color hexadecimal + let s:fclr_hex="999999" " foreground color hexadecimal + let s:dblk_hex=s:conf_dblk_hex " dark black hexadecimal (color 0) + let s:lblk_hex=s:conf_lblk_hex " light black hexadecimal (color 8) + let s:dred_hex="8a2f58" " dark red hexadecimal (color 1) + let s:lred_hex="cf4f88" " light red hexadecimal (color 9) + let s:dgrn_hex="287373" " dark green hexadecimal (color 2) + let s:lgrn_hex="53a6a6" " light green hexadecimal (color 10) + let s:dylw_hex="914e89" " dark yellow hexadecimal (color 3) + let s:lylw_hex="bf85cc" " light yellow hexadecimal (color 11) + let s:dblu_hex="395573" " dark blue hexadecimal (color 4) + let s:lblu_hex="4779b3" " light blue hexadecimal (color 12) + let s:dmag_hex="5e468c" " dark magentahexadecimal (color 5) + let s:lmag_hex="7f62b3" " light magenta hexadecimal (color 13) + let s:dcyn_hex="2b7694" " dark cyan hexadecimal (color 6) + let s:lcyn_hex="47959e" " light cyan hexadecimal (color 14) + let s:dwht_hex="899ca1" " dark white hexadecimal (color 7) + let s:lwht_hex="c0c0c0" " light white hexadecimal (color 15) + let s:culc_hex="272727" " cursor line/column hexadecimal + + if has("gui_running") + let s:venv="gui" " vim environment (term, cterm, gui) + let s:bclr="#".s:bclr_hex + let s:fclr="#".s:fclr_hex + let s:dblk="#".s:dblk_hex + let s:lblk="#".s:lblk_hex + let s:dred="#".s:dred_hex + let s:lred="#".s:lred_hex + let s:dgrn="#".s:dgrn_hex + let s:lgrn="#".s:lgrn_hex + let s:dylw="#".s:dylw_hex + let s:lylw="#".s:lylw_hex + let s:dblu="#".s:dblu_hex + let s:lblu="#".s:lblu_hex + let s:dmag="#".s:dmag_hex + let s:lmag="#".s:lmag_hex + let s:dcyn="#".s:dcyn_hex + let s:lcyn="#".s:lcyn_hex + let s:dwht="#".s:dwht_hex + let s:lwht="#".s:lwht_hex + let s:culc="#".s:culc_hex + else + let s:venv="cterm" + let s:bclr=s:rgb(s:bclr_hex) + let s:fclr=s:rgb(s:fclr_hex) + let s:dblk=s:rgb(s:dblk_hex) + let s:lblk=s:rgb(s:lblk_hex) + let s:dred=s:rgb(s:dred_hex) + let s:lred=s:rgb(s:lred_hex) + let s:dgrn=s:rgb(s:dgrn_hex) + let s:lgrn=s:rgb(s:lgrn_hex) + let s:dylw=s:rgb(s:dylw_hex) + let s:lylw=s:rgb(s:lylw_hex) + let s:dblu=s:rgb(s:dblu_hex) + let s:lblu=s:rgb(s:lblu_hex) + let s:dmag=s:rgb(s:dmag_hex) + let s:lmag=s:rgb(s:lmag_hex) + let s:dcyn=s:rgb(s:dcyn_hex) + let s:lcyn=s:rgb(s:lcyn_hex) + let s:dwht=s:rgb(s:dwht_hex) + let s:lwht=s:rgb(s:lwht_hex) + let s:culc=s:rgb(s:culc_hex) + endif +elseif $TERM == "linux" + let s:venv="cterm" + let s:bclr="" + let s:fclr="" + let s:dblk="Black" + let s:lblk="DarkGray" + let s:dred="DarkRed" + let s:lred="LightRed" + let s:dgrn="DarkGreen" + let s:lgrn="LightGreen" + let s:dylw="DarkYellow" + let s:lylw="LightYellow" + let s:dblu="DarkBlue" + let s:lblu="LightBlue" + let s:dmag="DarkMagenta" + let s:lmag="LightMagenta" + let s:dcyn="DarkCyan" + let s:lcyn="LightCyan" + let s:dwht="LightGray" + let s:lwht="White" + let s:culc=s:dblk +else + let s:venv="cterm" + let s:bclr="" + let s:fclr="" + let s:dblk="0" + let s:lblk="8" + let s:dred="1" + let s:lred="9" + let s:dgrn="2" + let s:lgrn="10" + let s:dylw="3" + let s:lylw="11" + let s:dblu="4" + let s:lblu="12" + let s:dmag="5" + let s:lmag="13" + let s:dcyn="6" + let s:lcyn="14" + let s:dwht="7" + let s:lwht="15" + let s:culc=s:dblk +endif +" }}} + +" highlight wrapper function {{{ +fun! s:HI(group, bg, fg, attr) + exec "hi" a:group + \ . " " . (a:bg != "" ? s:venv . "bg=" . a:bg : "") + \ . " " . (a:fg != "" ? s:venv . "fg=" . a:fg : "") + \ . " " . (a:attr != "" ? s:venv . "=" . a:attr : "") +endfun +" }}} + +" normal colors {{{ +call s:HI( "Normal", s:bclr, s:lwht, "" ) +call s:HI( "Ignore", "", s:lblk, "" ) +call s:HI( "Comment", "", s:dwht, "" ) +call s:HI( "LineNr", "", s:lblk, "" ) +call s:HI( "Float", "", s:dylw, "" ) +call s:HI( "Include", "", s:dmag, "" ) +call s:HI( "Define", "", s:dgrn, "" ) +call s:HI( "Macro", "", s:lmag, "" ) +call s:HI( "PreProc", "", s:lgrn, "" ) +call s:HI( "PreCondit", "", s:lmag, "" ) +call s:HI( "NonText", "", s:dcyn, "" ) +call s:HI( "Directory", "", s:dcyn, "" ) +call s:HI( "SpecialKey", "", s:lylw, "" ) +call s:HI( "Type", "", s:dcyn, "" ) +call s:HI( "String", "", s:dgrn, "" ) +call s:HI( "Constant", "", s:lmag, "" ) +call s:HI( "Special", "", s:lgrn, "" ) +call s:HI( "SpecialChar", "", s:lred, "" ) +call s:HI( "Number", "", s:lcyn, "" ) +call s:HI( "Identifier", "", s:lmag, "" ) +call s:HI( "Conditional", "", s:lcyn, "" ) +call s:HI( "Repeat", "", s:lred, "" ) +call s:HI( "Statement", "", s:dblu, "" ) +call s:HI( "Label", "", s:lmag, "" ) +call s:HI( "Operator", "", s:dylw, "" ) +call s:HI( "Keyword", "", s:lred, "" ) +call s:HI( "StorageClass", "", s:lylw, "" ) +call s:HI( "Structure", "", s:dmag, "" ) +call s:HI( "Typedef", "", s:dcyn, "" ) +call s:HI( "Function", "", s:lylw, "" ) +call s:HI( "Exception", "", s:dred, "" ) +call s:HI( "Underlined", "", s:dblu, "" ) +call s:HI( "Title", "", s:dylw, "" ) +call s:HI( "Tag", "", s:lylw, "" ) +call s:HI( "Delimiter", "", s:lblu, "" ) +call s:HI( "SpecialComment", "", s:lred, "" ) +call s:HI( "Boolean", "", s:dylw, "" ) +call s:HI( "Todo", "NONE", s:lred, "" ) +call s:HI( "MoreMsg", "NONE", s:lmag, "" ) +call s:HI( "ModeMsg", "NONE", s:lmag, "" ) +call s:HI( "Debug", "NONE", s:dred, "" ) +call s:HI( "MatchParen", s:dwht, s:dblk, "" ) +call s:HI( "ErrorMsg", "NONE", s:dred, "" ) +call s:HI( "WildMenu", s:lwht, s:dmag, "" ) +call s:HI( "Folded", s:dblk, s:dwht, "" ) +call s:HI( "Search", s:lwht, s:dred, "" ) +call s:HI( "IncSearch", s:lwht, s:dred, "" ) +call s:HI( "WarningMsg", s:lwht, s:dred, "" ) +call s:HI( "Question", s:lwht, s:lgrn, "" ) +call s:HI( "Pmenu", s:lwht, s:dgrn, "" ) +call s:HI( "PmenuSel", s:lwht, s:dred, "" ) +call s:HI( "Visual", s:lwht, s:lblk, "" ) +call s:HI( "StatusLine", s:dblk, s:dwht, "none" ) +call s:HI( "StatusLineNC", s:lblk, s:dblk, "" ) +call s:HI( "VertSplit", s:lblk, s:dblk, "" ) +call s:HI( "TabLine", s:dblk, s:dwht, "" ) +call s:HI( "TabLineFill", "", s:dblk, "" ) +call s:HI( "TabLineSel", s:dblk, s:dwht, "" ) +call s:HI( "Cursor", s:lred, "", "" ) +call s:HI( "CursorLine", s:culc, "", "none" ) +call s:HI( "CursorLineNr", s:culc, s:dwht, "none" ) +call s:HI( "CursorColumn", s:culc, "", "" ) +call s:HI( "ColorColumn", s:culc, "", "" ) +call s:HI( "FoldColumn", "NONE", s:lblk, "" ) +call s:HI( "SignColumn", "NONE", "", "" ) +" }}} + +" vimscript colors {{{ +call s:HI( "vimCommentTitle", "", s:lgrn, "" ) +call s:HI( "vimFold", s:lwht, s:dblk, "" ) +" }}} + +" help file colors {{{ +call s:HI( "helpHyperTextJump", "", s:lylw, "" ) +" }}} + +" javascript colors {{{ +call s:HI( "javaScriptNumber", "", s:lylw, "" ) +" }}} + +" html colors {{{ +call s:HI( "htmlTag", "", s:dcyn, "" ) +call s:HI( "htmlEndTag", "", s:dcyn, "" ) +call s:HI( "htmlTagName", "", s:lylw, "" ) +" }}} + +" perl colors {{{ +call s:HI( "perlSharpBang", "", s:lgrn, "standout" ) +call s:HI( "perlStatement", "", s:lmag, "" ) +call s:HI( "perlStatementStorage", "", s:dred, "" ) +call s:HI( "perlVarPlain", "", s:dylw, "" ) +call s:HI( "perlVarPlain2", "", s:lylw, "" ) +" }}} + +" ruby colors {{{ +call s:HI( "rubySharpBang", "", s:lgrn, "standout" ) +" }}} + +" diff colors {{{ +call s:HI( "diffLine", "", s:lgrn, "" ) +call s:HI( "diffOldLine", "", s:dgrn, "" ) +call s:HI( "diffOldFile", "", s:dgrn, "" ) +call s:HI( "diffNewFile", "", s:dgrn, "" ) +call s:HI( "diffAdded", "", s:dblu, "" ) +call s:HI( "diffRemoved", "", s:dred, "" ) +call s:HI( "diffChanged", "", s:dcyn, "" ) +" }}} + +" spell checking colors {{{ +if has("spell") + hi clear SpellBad + hi clear SpellCap + hi clear SpellRare + hi clear SpellLocal + call s:HI( "SpellBad", "", "", "underline" ) + call s:HI( "SpellCap", "", "", "underline" ) + call s:HI( "SpellRare", "", "", "underline" ) + call s:HI( "SpellLocal", "", "", "underline" ) +endif +" }}} + +" syntastic colors {{{ +call s:HI( "SyntasticErrorSign", s:culc, s:lred, "" ) +call s:HI( "SyntasticWarningSign", s:culc, s:lmag, "" ) +" }}} + +" vim: foldenable foldmethod=marker foldmarker={{{,}}} foldlevel=0: diff --git a/.vim/colors/miromiro.vim b/.vim/colors/miromiro.vim new file mode 100644 index 00000000..d890b56d --- /dev/null +++ b/.vim/colors/miromiro.vim @@ -0,0 +1,113 @@ +" miromiro colours +" Author: jasonwryan +" URL: http://jasonwryan.com + +set background=dark +hi clear +if exists("syntax_on") + syntax reset +endif + +let g:colors_name="miromiro" +" Normal colors --- +hi Normal ctermfg=15 +hi Ignore ctermfg=8 +hi Comment ctermfg=7 cterm=italic +hi LineNr ctermfg=8 +hi Float ctermfg=3 +hi Include ctermfg=5 +hi Define ctermfg=2 +hi Macro ctermfg=13 +hi PreProc ctermfg=10 +hi PreCondit ctermfg=13 +hi NonText ctermfg=16 +hi Directory ctermfg=6 +hi SpecialKey ctermfg=11 +hi Type ctermfg=6 +hi String ctermfg=2 +hi Constant ctermfg=13 +hi Special ctermfg=10 +hi SpecialChar ctermfg=9 +hi Number ctermfg=14 +hi Identifier ctermfg=13 +hi Conditional ctermfg=14 +hi Repeat ctermfg=9 +hi Statement ctermfg=4 +hi Label ctermfg=13 +hi Operator ctermfg=3 +hi Keyword ctermfg=9 +hi StorageClass ctermfg=11 +hi Structure ctermfg=5 +hi Typedef ctermfg=6 +hi Function ctermfg=11 +hi Exception ctermfg=1 +hi Underlined ctermfg=4 +hi Title ctermfg=3 +hi Tag ctermfg=11 +hi Delimiter ctermfg=12 +hi SpecialComment ctermfg=9 +hi Boolean ctermfg=3 +hi Todo ctermfg=9 +hi MoreMsg ctermfg=13 +hi ModeMsg ctermfg=13 +hi Debug ctermfg=1 +hi MatchParen ctermfg=8 ctermbg=7 +hi ErrorMsg ctermfg=1 ctermbg=11 +hi WildMenu ctermfg=5 ctermbg=15 +hi Folded cterm=reverse ctermfg=6 ctermbg=0 +hi Search ctermfg=1 ctermbg=15 +hi IncSearch ctermfg=1 ctermbg=15 +hi WarningMsg ctermfg=9 ctermbg=15 +hi Question ctermfg=10 ctermbg=15 +hi Pmenu ctermfg=2 ctermbg=15 +hi PmenuSel ctermfg=1 ctermbg=15 +hi Visual ctermfg=8 ctermbg=15 +hi CursorLine cterm=NONE ctermbg=233 +hi CursorLineNr ctermfg=11 ctermbg=233 +hi StatusLine ctermfg=0 ctermbg=7 +hi StatusLineNC ctermfg=8 ctermbg=0 + +" Diff lines --- +hi DiffLine ctermbg=4 +hi DiffText ctermfg=16 +hi DiffAdd ctermfg=7 ctermbg=5 +hi DiffChange ctermfg=0 ctermbg=4 +hi DiffDelete ctermfg=0 + +" Specific for Vim script --- +hi vimCommentTitle ctermfg=10 +hi vimFold ctermfg=0 ctermbg=15 + +" Specific for help files --- +hi helpHyperTextJump ctermfg=11 + +" JS numbers only --- +hi javaScriptNumber ctermfg=11 + +" Special for HTML --- +hi htmlTag ctermfg=6 +hi htmlEndTag ctermfg=6 +hi htmlTagName ctermfg=11 + +" Specific for Perl --- +hi perlSharpBang ctermfg=10 term=standout +hi perlStatement ctermfg=13 +hi perlStatementStorage ctermfg=1 +hi perlVarPlain ctermfg=3 +hi perlVarPlain2 ctermfg=11 + +" Specific for Ruby --- +hi rubySharpBang ctermfg=10 term=standout + +" Spell checking --- +if version >= 700 + hi clear SpellBad + hi clear SpellCap + hi clear SpellRare + hi clear SpellLocal + hi SpellBad ctermfg=9 + hi SpellCap ctermfg=3 cterm=underline + hi SpellRare ctermfg=13 cterm=underline + hi SpellLocal cterm=None +endif +" vim: foldmethod=marker foldmarker={{{,}}}: diff --git a/.vim/colors/neonwave.vim b/.vim/colors/neonwave.vim new file mode 100644 index 00000000..f30a0c2a --- /dev/null +++ b/.vim/colors/neonwave.vim @@ -0,0 +1,129 @@ +" Vim color file +" +" +" Name: NeonWave +" Author: SacredCrumb +" +" Just as a side note, themes like these are generally what happens +" when you go off on Vaporwave binges >.> +" +" +" Huge, HUGE thank you to ByteFluent for the creation of Vivify!! +" Without this site it would have been far more troublesome to +" get a working theme going, as well as the inertia to get going. +" That is to say, without having seen the names associated with the +" highlights. +" +" http://bytefluent.com/vivify + + + +" I'm sure this will work for *most* (or all?) Vim versions below 7.0, +" or even 7.3; I just have 7.0 as the lowest possible version. +" I can't be sure. I am by no means a v[i]teran x3 +if v:version >= 700 + if exists("syntax_on") + " Originally, I left this commented out for simplicity's sake + " as it is not vital, but apparently "t_Co" is automatically set + " to 8 if you open through the GUI. + " Meaning, Vim is set as your default editor. Or through a keyboard + " shortcut like ./x-terminal-emulator --command=vim + " (Oh, the irony.) + " + " If you do not need it then do with it as you wish. + set t_Co=256 + syntax reset + hi clear + let g:colors_name = "neonwave" + else + finish + endif +endif + + +hi Boolean ctermfg=45 ctermbg=NONE cterm=NONE +hi Cursor ctermfg=66 ctermbg=15 cterm=NONE +hi Constant ctermfg=33 ctermbg=NONE cterm=bold +hi Character ctermfg=207 ctermbg=NONE cterm=NONE +hi Conditional ctermfg=201 ctermbg=NONE cterm=bold +hi Comment ctermfg=244 ctermbg=NONE cterm=NONE +hi CursorLine ctermfg=NONE ctermbg=235 cterm=NONE +hi CursorLineNr ctermfg=45 ctermbg=235 cterm=bold +hi Define ctermfg=61 ctermbg=NONE cterm=NONE +hi DefinedName ctermfg=200 ctermbg=NONE cterm=NONE +hi Delimiter ctermfg=207 ctermbg=NONE cterm=NONE +hi Directory ctermfg=45 ctermbg=NONE cterm=bold +hi Error ctermfg=196 ctermbg=232 cterm=bold +hi ErrorMsg ctermfg=196 ctermbg=232 cterm=bold +hi Exception ctermfg=201 ctermbg=NONE cterm=bold +hi Float ctermfg=37 ctermbg=NONE cterm=NONE +hi Function ctermfg=38 ctermbg=NONE cterm=NONE +hi Identifier ctermfg=201 ctermbg=NONE cterm=NONE +hi Include ctermfg=69 ctermbg=NONE cterm=bold +hi IncSearch ctermfg=232 ctermbg=33 cterm=NONE +hi Keyword ctermfg=201 ctermbg=NONE cterm=bold +hi Label ctermfg=201 ctermbg=NONE cterm=bold +hi LineNr ctermfg=36 ctermbg=233 cterm=NONE +hi Macro ctermfg=69 ctermbg=NONE cterm=bold +hi MatchParen ctermfg=50 ctermbg=39 cterm=NONE +hi ModeMsg ctermfg=39 ctermbg=232 cterm=bold +hi MoreMsg ctermfg=46 ctermbg=NONE cterm=bold +hi NonText ctermfg=201 ctermbg=NONE cterm=NONE +hi Normal ctermfg=105 ctermbg=234 cterm=NONE +hi Number ctermfg=31 ctermbg=NONE cterm=NONE +hi Operator ctermfg=39 ctermbg=NONE cterm=NONE + +" For matching over X length of chars; non-essential. +" That is, if you have a match property in your vimrc. +hi OverLength ctermfg=46 ctermbg=234 cterm=bold + +hi perlIdentifier ctermfg=39 ctermbg=NONE cterm=NONE +hi perlNumber ctermfg=30 ctermbg=NONE cterm=NONE +hi perlOperator ctermfg=45 ctermbg=NONE cterm=NONE +hi PMenu ctermfg=36 ctermbg=233 cterm=NONE +hi PMenuSel ctermfg=75 ctermbg=235 cterm=NONE +hi PMenuSbar ctermfg=NONE ctermbg=232 cterm=NONE +hi PMenuThumb ctermfg=NONE ctermbg=237 cterm=NONE +hi PreCondit ctermfg=201 ctermbg=NONE cterm=NONE +hi PreProc ctermfg=63 ctermbg=NONE cterm=NONE +hi pythonFunction ctermfg=38 ctermbg=NONE cterm=NONE +hi pythonException ctermfg=196 ctermbg=232 cterm=NONE +hi pythonEscape ctermfg=201 ctermbg=NONE cterm=NONE +hi pythonStatement ctermfg=45 ctermbg=NONE cterm=bold +hi Question ctermfg=46 ctermbg=232 cterm=bold +hi Repeat ctermfg=201 ctermbg=NONE cterm=bold +hi Search ctermfg=232 ctermbg=33 cterm=NONE +hi shDeref ctermfg=69 ctermbg=NONE cterm=NONE +hi shDerefDelim ctermfg=171 ctermbg=NONE cterm=NONE +hi shDerefOp ctermfg=207 ctermbg=NONE cterm=NONE +hi shDerefVar ctermfg=69 ctermbg=NONE cterm=NONE +hi shHereDoc ctermfg=205 ctermbg=NONE cterm=NONE +hi shOperator ctermfg=171 ctermbg=NONE cterm=NONE +hi shShellVariables ctermfg=207 ctermbg=NONE cterm=NONE +hi shSnglCase ctermfg=201 ctermbg=NONE cterm=NONE +hi shTestOpr ctermfg=39 ctermbg=NONE cterm=NONE +hi shVariable ctermfg=45 ctermbg=NONE cterm=bold +hi SignColumn ctermfg=46 ctermbg=234 cterm=NONE +hi Special ctermfg=13 ctermbg=NONE cterm=NONE +hi SpecialChar ctermfg=165 ctermbg=NONE cterm=NONE +hi SpecialComment ctermfg=231 ctermbg=NONE cterm=NONE +hi SpecialKey ctermfg=105 ctermbg=NONE cterm=NONE +hi SpellBad ctermfg=196 ctermbg=232 cterm=bold +hi StatusLine ctermfg=32 ctermbg=232 cterm=bold +hi StatusLineNC ctermfg=105 ctermbg=236 cterm=bold +hi Statement ctermfg=201 ctermbg=NONE cterm=bold +hi StorageClass ctermfg=45 ctermbg=NONE cterm=bold +hi String ctermfg=171 ctermbg=NONE cterm=NONE +hi Structure ctermfg=45 ctermbg=NONE cterm=bold +hi TabLine ctermfg=105 ctermbg=234 cterm=NONE +hi TabLineFill ctermfg=105 ctermbg=236 cterm=NONE +hi TabLineSel ctermfg=32 ctermbg=233 cterm=bold +hi Title ctermfg=201 ctermbg=NONE cterm=NONE +hi Todo ctermfg=231 ctermbg=201 cterm=bold +hi Type ctermfg=45 ctermbg=NONE cterm=bold +hi Typedef ctermfg=45 ctermbg=NONE cterm=bold +hi Underlined ctermfg=231 ctermbg=239 cterm=underline +hi VertSplit ctermfg=105 ctermbg=236 cterm=NONE +hi Visual ctermfg=111 ctermbg=237 cterm=NONE +hi WarningMsg ctermfg=254 ctermbg=1 cterm=NONE + diff --git a/.vim/colors/pencil.vim b/.vim/colors/pencil.vim new file mode 100644 index 00000000..ff25af6a --- /dev/null +++ b/.vim/colors/pencil.vim @@ -0,0 +1,374 @@ +" Vim Color File +" Name: pencil.vim +" Version: 0.6 +" Maintainer: github.com/reedes github.com/mattly +" License: The MIT License (MIT) + +" Original iA Writer colors, to use as a guide +" White #F1F1F1 +" OffWhiteIPad #F5F2EC +" OffWhiteDemo #F9F8F4 +" Cursor #20BBFC +" Selection #B6D6FD +" SelectionNOS #D4D4D4 +" StatusBar #EDEDED +" StatusBarBorder #D9D9D9 used for search too +" Text #424242 +" Blue #B5D6FD +" Green #30C798 +" Blue2 #1DAEE4 +" gray #999999 +" Red #E32791 +" UnfocusedText #B8B8B8 +" MenuSelected #2C81FB +" MenuUnSelected #545454 +" MenuText #F1F1F1 +" LightKeyBg #4B4B4B +" DarkKeyBg #262626 +" NearBlack #181818 +" SyntaxButton #363738 +" SearchHighlight #F3E430 yellow + +hi clear + +if exists('syntax on') + syntax reset +endif + +let g:colors_name='pencil' + +if ! exists("g:pencil_higher_contrast_ui") + let g:pencil_higher_contrast_ui = 0 +endif + +if ! exists("g:pencil_neutral_code_bg") + let g:pencil_neutral_code_bg = 0 +endif + +if ! exists("g:pencil_neutral_headings") + let g:pencil_neutral_headings = 0 +endif + +" not all terminals support italics properly. If yours does, opt-in. +if ! exists("g:pencil_terminal_italics") + let g:pencil_terminal_italics = 0 +endif + +if ! exists("g:pencil_spell_undercurl") + let g:pencil_spell_undercurl = 1 +endif + +" Colors +let s:black = { "gui": "#212121", "cterm": "0" } +let s:medium_gray = { "gui": "#767676", "cterm": "243" } +let s:white = { "gui": "#F1F1F1", "cterm": "15" } +let s:actual_white = { "gui": "#FFFFFF", "cterm": "231" } +let s:light_black = { "gui": "#424242", "cterm": "8" } +let s:lighter_black = { "gui": "#545454", "cterm": "240" } + +if g:pencil_higher_contrast_ui == 0 + " darker shadow and whiter grays + let s:subtle_black = { "gui": "#262626", "cterm": "235" } + let s:light_gray = { "gui": "#D9D9D9", "cterm": "253" } + let s:lighter_gray = { "gui": "#E5E6E6", "cterm": "254" } +else + " lighter shadows and darker grays + let s:subtle_black = { "gui": "#303030", "cterm": "236" } + let s:light_gray = { "gui": "#B2B2B2", "cterm": "249" } + let s:lighter_gray = { "gui": "#C6C6C6", "cterm": "251" } +endif + +let s:pink = { "gui": "#fb007a", "cterm": "9" } +let s:dark_red = { "gui": "#C30771", "cterm": "1" } +let s:light_red = { "gui": "#E32791", "cterm": "1" } +let s:orange = { "gui": "#D75F5F", "cterm": "167" } + +let s:darker_blue = { "gui": "#005F87", "cterm": "18" } +let s:dark_blue = { "gui": "#008EC4", "cterm": "4" } +let s:blue = { "gui": "#20BBFC", "cterm": "12" } +let s:light_blue = { "gui": "#b6d6fd", "cterm": "153" } +let s:dark_cyan = { "gui": "#20A5BA", "cterm": "6" } +let s:light_cyan = { "gui": "#4FB8CC", "cterm": "14" } + +let s:dark_green = { "gui": "#10A778", "cterm": "2" } +let s:light_green = { "gui": "#5FD7A7", "cterm": "10" } + +let s:dark_purple = { "gui": "#523C79", "cterm": "5" } +let s:light_purple = { "gui": "#6855DE", "cterm": "13" } + +let s:yellow = { "gui": "#F3E430", "cterm": "11" } +let s:dark_yellow = { "gui": "#A89C14", "cterm": "3" } + +if &background == "dark" + let s:bg = s:black + let s:bg_subtle = s:light_black + let s:bg_very_subtle = s:subtle_black + let s:norm = s:lighter_gray + let s:norm_subtle = s:light_gray + let s:purple = s:light_purple + let s:cyan = s:light_cyan + let s:green = s:light_green + let s:red = s:light_red + let s:visual = s:lighter_black +else + let s:bg = s:white + let s:bg_subtle = s:light_gray + let s:bg_very_subtle = s:lighter_gray + let s:norm = s:light_black + let s:norm_subtle = s:lighter_black + let s:purple = s:dark_purple + let s:cyan = s:dark_cyan + let s:green = s:dark_green + let s:red = s:dark_red + let s:visual = s:light_blue +endif + +if g:pencil_neutral_headings == 1 + let s:head_a = s:norm + let s:head_b = s:norm + let s:head_c = s:norm +else + let s:head_a = s:dark_blue + let s:head_b = s:blue + let s:head_c = s:dark_cyan +endif + +if g:pencil_neutral_code_bg == 1 + let s:code_bg = s:bg +else + let s:code_bg = s:bg_very_subtle +endif + +if g:pencil_spell_undercurl == 1 + let s:sp_un = 'undercurl' +else + let s:sp_un = 'underline' +endif + +" shamelessly stolen from hemisu: https://github.com/noahfrederick/vim-hemisu/ +function! s:h(group, style) + " Not all terminals support italics properly. If yours does, opt-in. + if g:pencil_terminal_italics == 0 && has_key(a:style, "cterm") && a:style["cterm"] == "italic" + unlet a:style.cterm + endif + execute "highlight" a:group + \ "guifg=" (has_key(a:style, "fg") ? a:style.fg.gui : "NONE") + \ "guibg=" (has_key(a:style, "bg") ? a:style.bg.gui : "NONE") + \ "guisp=" (has_key(a:style, "sp") ? a:style.sp.gui : "NONE") + \ "gui=" (has_key(a:style, "gui") ? a:style.gui : "NONE") + \ "ctermfg=" (has_key(a:style, "fg") ? a:style.fg.cterm : "NONE") + \ "ctermbg=" (has_key(a:style, "bg") ? a:style.bg.cterm : "NONE") + \ "cterm=" (has_key(a:style, "cterm") ? a:style.cterm : "NONE") +endfunction + +" common groups ================================================================ +" (see `:h w18`) + +call s:h("Normal", {"bg": s:bg, "fg": s:norm}) +call s:h("Cursor", {"bg": s:blue, "fg": s:norm }) +call s:h("Comment", {"fg": s:medium_gray, "gui": "italic", "cterm": "italic"}) + +call s:h("Constant", {"fg": s:cyan}) +hi! link String Constant +hi! link Character Constant +hi! link Number Constant +hi! link Boolean Constant +hi! link Float Constant + +call s:h("Identifier", {"fg": s:dark_blue}) +hi! link Function Identifier + +call s:h("Statement", {"fg": s:green}) +hi! link Conditonal Statement +hi! link Repeat Statement +hi! link Label Statement +hi! link Operator Statement +hi! link Keyword Statement +hi! link Exception Statement + +call s:h("PreProc", {"fg": s:red}) +hi! link Include PreProc +hi! link Define PreProc +hi! link Macro PreProc +hi! link PreCondit PreProc + +call s:h("Type", {"fg": s:purple}) +hi! link StorageClass Type +hi! link Structure Type +hi! link Typedef Type + +call s:h("Special", {"fg": s:pink}) +hi! link SpecialChar Special +hi! link Tag Special +hi! link Delimiter Special +hi! link SpecialComment Special +hi! link Debug Special + +call s:h("Underlined", {"fg": s:norm , "gui": "underline", "cterm": "underline"}) +call s:h("Ignore", {"fg": s:bg }) +call s:h("Error", {"fg": s:actual_white, "bg": s:red , "gui": "bold" , "cterm": "bold" }) +call s:h("Todo", {"fg": s:actual_white, "bg": s:pink, "gui": "bold" , "cterm": "bold" }) + +" ui chrome ==================================================================== +" ordered according to `:help hitest.vim` + +call s:h("SpecialKey", {"fg": s:light_green}) +call s:h("NonText", {"fg": s:bg_subtle}) +call s:h("Directory", {"fg": s:dark_blue}) +call s:h("ErrorMsg", {"fg": s:pink}) +call s:h("IncSearch", {"bg": s:yellow, "fg": s:light_black}) +call s:h("Search", {"bg": s:bg_subtle}) +call s:h("MoreMsg", {"fg": s:medium_gray, "gui": "bold", "cterm": "bold"}) +hi! link ModeMsg MoreMsg +call s:h("LineNr", {"fg": s:bg_subtle}) +call s:h("CursorLineNr", {"fg": s:blue, "bg": s:bg_very_subtle}) +call s:h("Question", {"fg": s:red}) +call s:h("StatusLine", {"bg": s:bg_very_subtle}) +call s:h("Conceal", {"fg": s:norm}) +call s:h("StatusLineNC", {"bg": s:bg_very_subtle, "fg": s:medium_gray}) +call s:h("VertSplit", {"bg": s:bg_very_subtle, "fg": s:bg_very_subtle}) +call s:h("Title", {"fg": s:dark_blue}) +call s:h("Visual", {"bg": s:visual}) +call s:h("VisualNOS", {"bg": s:bg_subtle}) +call s:h("WarningMsg", {"fg": s:red}) +call s:h("WildMenu", {"fg": s:bg, "bg": s:norm}) +call s:h("Folded", {"fg": s:medium_gray}) +call s:h("FoldColumn", {"fg": s:bg_subtle}) +call s:h("DiffAdd", {"fg": s:green}) +call s:h("DiffDelete", {"fg": s:red}) +call s:h("DiffChange", {"fg": s:dark_yellow}) +call s:h("DiffText", {"fg": s:dark_blue}) +call s:h("SignColumn", {"fg": s:light_green}) + +if has("gui_running") + call s:h("SpellBad", {"gui": s:sp_un, "sp": s:red}) + call s:h("SpellCap", {"gui": s:sp_un, "sp": s:light_green}) + call s:h("SpellRare", {"gui": s:sp_un, "sp": s:pink}) + call s:h("SpellLocal", {"gui": s:sp_un, "sp": s:dark_green}) +else + call s:h("SpellBad", {"cterm": s:sp_un, "fg": s:red}) + call s:h("SpellCap", {"cterm": s:sp_un, "fg": s:light_green}) + call s:h("SpellRare", {"cterm": s:sp_un, "fg": s:pink}) + call s:h("SpellLocal", {"cterm": s:sp_un, "fg": s:dark_green}) +endif +call s:h("Pmenu", {"fg": s:norm, "bg": s:bg_subtle}) +call s:h("PmenuSel", {"fg": s:norm, "bg": s:blue}) +call s:h("PmenuSbar", {"fg": s:norm, "bg": s:bg_subtle}) +call s:h("PmenuThumb", {"fg": s:norm, "bg": s:bg_subtle}) +call s:h("TabLine", {"fg": s:norm, "bg": s:bg_very_subtle}) +call s:h("TabLineSel", {"fg": s:blue, "bg": s:bg_subtle, "gui": "bold", "cterm": "bold"}) +call s:h("TabLineFill", {"fg": s:norm, "bg": s:bg_very_subtle}) +call s:h("CursorColumn", {"bg": s:bg_very_subtle}) +call s:h("CursorLine", {"bg": s:bg_very_subtle}) +call s:h("ColorColumn", {"bg": s:bg_subtle}) + +" remainder of syntax highlighting +call s:h("MatchParen", {"bg": s:bg_subtle, "fg": s:norm}) +call s:h("qfLineNr", {"fg": s:medium_gray}) + +" hi helpHyperTextJump guifg=#5FAFD7 ctermfg=74 + +" HTML syntax +hi! link htmlTag Special +hi! link htmlEndTag htmlTag + +hi! link htmlTagName KeyWord +" html5 tags show up as htmlTagN +hi! link htmlTagN Keyword + +" HTML content +call s:h("htmlH1", {"fg": s:head_a, "gui": "bold,italic", "cterm": "bold" }) +call s:h("htmlH2", {"fg": s:head_a, "gui": "bold" , "cterm": "bold" }) +call s:h("htmlH3", {"fg": s:head_b, "gui": "italic" , "cterm": "italic" }) +call s:h("htmlH4", {"fg": s:head_b, "gui": "italic" , "cterm": "italic" }) +call s:h("htmlH5", {"fg": s:head_c }) +call s:h("htmlH6", {"fg": s:head_c }) +call s:h("htmlLink", {"fg": s:blue , "gui": "underline" , "cterm": "underline"}) +call s:h("htmlItalic", { "gui": "italic" , "cterm": "italic" }) +call s:h("htmlBold", { "gui": "bold" , "cterm": "bold" }) +call s:h("htmlBoldItalic",{ "gui": "bold,italic", "cterm": "bold" }) +" hi htmlString guifg=#87875f guibg=NONE gui=NONE ctermfg=101 ctermbg=NONE cterm=NONE + +" tpope/vim-markdown +call s:h("markdownBlockquote", {"fg": s:norm}) +call s:h("markdownBold", {"fg": s:norm , "gui": "bold" , "cterm": "bold" }) +call s:h("markdownBoldItalic", {"fg": s:norm , "gui": "bold,italic", "cterm": "bold" }) +call s:h("markdownEscape", {"fg": s:norm}) +call s:h("markdownH1", {"fg": s:head_a, "gui": "bold,italic", "cterm": "bold" }) +call s:h("markdownH2", {"fg": s:head_a, "gui": "bold" , "cterm": "bold" }) +call s:h("markdownH3", {"fg": s:head_a, "gui": "italic" , "cterm": "italic"}) +call s:h("markdownH4", {"fg": s:head_a, "gui": "italic" , "cterm": "italic"}) +call s:h("markdownH5", {"fg": s:head_a}) +call s:h("markdownH6", {"fg": s:head_a}) +call s:h("markdownHeadingDelimiter", {"fg": s:norm}) +call s:h("markdownHeadingRule", {"fg": s:norm}) +call s:h("markdownId", {"fg": s:medium_gray}) +call s:h("markdownIdDeclaration", {"fg": s:norm_subtle}) +call s:h("markdownItalic", {"fg": s:norm , "gui": "italic" , "cterm": "italic"}) +call s:h("markdownLinkDelimiter", {"fg": s:medium_gray}) +call s:h("markdownLinkText", {"fg": s:norm}) +call s:h("markdownLinkTextDelimiter", {"fg": s:medium_gray}) +call s:h("markdownListMarker", {"fg": s:norm}) +call s:h("markdownOrderedListMarker", {"fg": s:norm}) +call s:h("markdownRule", {"fg": s:norm}) +call s:h("markdownUrl", {"fg": s:medium_gray, "gui": "underline", "cterm": "underline"}) +call s:h("markdownUrlDelimiter", {"fg": s:medium_gray}) +call s:h("markdownUrlTitle", {"fg": s:norm}) +call s:h("markdownUrlTitleDelimiter", {"fg": s:medium_gray}) +call s:h("markdownCode", {"fg": s:norm, "bg": s:code_bg}) +call s:h("markdownCodeDelimiter", {"fg": s:norm, "bg": s:code_bg}) + +" plasticboy/vim-markdown +call s:h("mkdBlockQuote", {"fg": s:norm}) +call s:h("mkdDelimiter", {"fg": s:medium_gray}) +call s:h("mkdID", {"fg": s:medium_gray}) +call s:h("mkdLineContinue", {"fg": s:norm}) +call s:h("mkdLink", {"fg": s:norm}) +call s:h("mkdLinkDef", {"fg": s:medium_gray}) +call s:h("mkdListItem", {"fg": s:norm}) +call s:h("mkdNonListItemBlock", {"fg": s:norm}) " bug in syntax? +call s:h("mkdRule", {"fg": s:norm}) +call s:h("mkdUrl", {"fg": s:medium_gray, "gui": "underline", "cterm": "underline"}) +call s:h("mkdCode", {"fg": s:norm, "bg": s:code_bg}) +call s:h("mkdIndentCode", {"fg": s:norm, "bg": s:code_bg}) + +" gabrielelana/vim-markdown +call s:h("markdownBlockquoteDelimiter", {"fg": s:norm}) +call s:h("markdownInlineDelimiter", {"fg": s:norm}) +call s:h("markdownItemDelimiter", {"fg": s:norm}) +call s:h("markdownLinkReference", {"fg": s:medium_gray}) +call s:h("markdownLinkText", {"fg": s:norm}) +call s:h("markdownLinkTextContainer", {"fg": s:medium_gray}) +call s:h("markdownLinkUrl", {"fg": s:medium_gray, "gui": "underline", "cterm": "underline"}) +call s:h("markdownLinkUrlContainer", {"fg": s:medium_gray}) +call s:h("markdownFencedCodeBlock", {"fg": s:norm, "bg": s:code_bg}) +call s:h("markdownInlineCode", {"fg": s:norm, "bg": s:code_bg}) + +" mattly/vim-markdown-enhancements +call s:h("mmdFootnoteDelimiter", {"fg": s:medium_gray}) +call s:h("mmdFootnoteMarker", {"fg": s:norm}) +call s:h("mmdTableAlign", {"fg": s:norm}) +call s:h("mmdTableDelimiter", {"fg": s:norm}) +call s:h("mmdTableHeadDelimiter", {"fg": s:norm}) +call s:h("mmdTableHeader", {"fg": s:norm}) +call s:h("mmdTableCaptionDelimiter", {"fg": s:norm}) +call s:h("mmdTableCaption", {"fg": s:norm}) + +" Textile content +" https://github.com/timcharper/textile.vim/blob/master/syntax/textile.vim +"call s:h("txtBold", {"fg": s:norm , "gui": "bold" , "cterm": "bold" }) +"call s:h("txtEmphasis", {"fg": s:norm , "gui": "italic" , "cterm": "italic"}) + +" XML content +hi! link xmlTag htmlTag +hi! link xmlEndTag xmlTag +hi! link xmlTagName htmlTagName + +" Signify, git-gutter +hi link SignifySignAdd LineNr +hi link SignifySignDelete LineNr +hi link SignifySignChange LineNr +hi link GitGutterAdd LineNr +hi link GitGutterDelete LineNr +hi link GitGutterChange LineNr +hi link GitGutterChangeDelete LineNr diff --git a/.vim/colors/shblah.vim b/.vim/colors/shblah.vim new file mode 100644 index 00000000..c18d54d4 --- /dev/null +++ b/.vim/colors/shblah.vim @@ -0,0 +1,125 @@ +" ┏━┓╻ ╻┏┓ ╻ ┏━┓╻ ╻ ╻ ╻╻┏┳┓ +" ┗━┓┣━┫┣┻┓┃ ┣━┫┣━┫ ┃┏┛┃┃┃┃ +" ┗━┛╹ ╹┗━┛┗━╸╹ ╹╹ ╹ ╹ ┗┛ ╹╹ ╹ +" -- by z3bra +" ===================================== +" +" A 16 colors scheme that use your terminal colors + +set background=dark +if version > 580 + highlight clear + if exists("g:syntax_on") + syntax reset + endif +endif +let g:colors_name="shblah" + +" Actual colours and styles. +highlight ColorColumn term=NONE cterm=NONE ctermfg=NONE ctermbg=3 +highlight Comment term=NONE cterm=NONE ctermfg=0 ctermbg=NONE +highlight Constant term=NONE cterm=bold ctermfg=1 ctermbg=NONE +highlight Cursor term=NONE cterm=bold ctermfg=3 ctermbg=NONE +highlight CursorLine term=NONE cterm=NONE ctermfg=NONE ctermbg=NONE +highlight DiffAdd term=NONE cterm=bold ctermfg=2 ctermbg=NONE +highlight DiffChange term=NONE cterm=bold ctermfg=NONE ctermbg=NONE +highlight DiffDelete term=NONE cterm=bold ctermfg=7 ctermbg=1 +highlight DiffText term=NONE cterm=bold ctermfg=7 ctermbg=4 +highlight Directory term=NONE cterm=bold ctermfg=4 ctermbg=0 +highlight Error term=NONE cterm=NONE ctermfg=0 ctermbg=1 +highlight ErrorMsg term=NONE cterm=bold ctermfg=1 ctermbg=0 +highlight FoldColumn term=NONE cterm=bold ctermfg=0 ctermbg=NONE +highlight Folded term=NONE cterm=bold ctermfg=0 ctermbg=NONE +highlight Function term=NONE cterm=bold ctermfg=7 ctermbg=NONE +highlight Identifier term=NONE cterm=bold ctermfg=1 ctermbg=NONE +highlight IncSearch term=NONE cterm=bold ctermfg=5 ctermbg=5 +highlight NonText term=NONE cterm=bold ctermfg=0 ctermbg=NONE +highlight Normal term=NONE cterm=NONE ctermfg=7 ctermbg=NONE +highlight Pmenu term=NONE cterm=NONE ctermfg=0 ctermbg=7 +highlight PreProc term=NONE cterm=NONE ctermfg=1 ctermbg=NONE +highlight Search term=NONE cterm=bold ctermfg=7 ctermbg=5 +highlight Special term=NONE cterm=bold ctermfg=1 ctermbg=NONE +highlight SpecialKey term=NONE cterm=NONE ctermfg=0 ctermbg=NONE +highlight Statement term=NONE cterm=bold ctermfg=7 ctermbg=NONE +highlight StatusLine term=NONE cterm=bold ctermfg=0 ctermbg=NONE +" highlight StatusLineNC term=NONE cterm=bold ctermfg=0 ctermbg=NONE +highlight String term=NONE cterm=NONE ctermfg=1 ctermbg=NONE +highlight TabLineSel term=NONE cterm=bold ctermfg=7 ctermbg=NONE +highlight Todo term=NONE cterm=bold ctermfg=7 ctermbg=1 +highlight Type term=NONE cterm=bold ctermfg=0 ctermbg=NONE +highlight Underlined term=underline cterm=underline ctermfg=NONE ctermbg=NONE +highlight VertSplit term=NONE cterm=bold ctermfg=0 ctermbg=NONE +highlight Visual term=NONE cterm=NONE ctermfg=0 ctermbg=7 +highlight WarningMsg term=NONE cterm=bold ctermfg=3 ctermbg=NONE + +" General highlighting group links. +highlight! link diffAdded DiffAdd +highlight! link diffRemoved DiffDelete +highlight! link diffChanged DiffChange +highlight! link StatusLineNC StatusLine +highlight! link Title Normal +highlight! link LineNr NonText +highlight! link MoreMsg Normal +highlight! link Question DiffChange +highlight! link TabLine StatusLineNC +highlight! link TabLineFill StatusLineNC +highlight! link VimHiGroup VimGroup + +" Test the actual colorscheme +syn match Comment "\"__Comment.*" +syn match Constant "\"__Constant.*" +syn match Cursor "\"__Cursor.*" +syn match CursorLine "\"__CursorLine.*" +syn match DiffAdd "\"__DiffAdd.*" +syn match DiffChange "\"__DiffChange.*" +syn match DiffText "\"__DiffText.*" +syn match DiffDelete "\"__DiffDelete.*" +syn match Folded "\"__Folded.*" +syn match Function "\"__Function.*" +syn match Identifier "\"__Identifier.*" +syn match IncSearch "\"__IncSearch.*" +syn match NonText "\"__NonText.*" +syn match Normal "\"__Normal.*" +syn match Pmenu "\"__Pmenu.*" +syn match PreProc "\"__PreProc.*" +syn match Search "\"__Search.*" +syn match Special "\"__Special.*" +syn match SpecialKey "\"__SpecialKey.*" +syn match Statement "\"__Statement.*" +syn match StatusLine "\"__StatusLine.*" +syn match StatusLineNC "\"__StatusLineNC.*" +syn match String "\"__String.*" +syn match Todo "\"__Todo.*" +syn match Type "\"__Type.*" +syn match Underlined "\"__Underlined.*" +syn match VertSplit "\"__VertSplit.*" +syn match Visual "\"__Visual.*" + +"__Comment /* this is a comment */ +"__Constant var = SHBLAH +"__Cursor char under the cursor? +"__CursorLine Line where the cursor is +"__DiffAdd +line added from file.orig +"__DiffChange line changed from file.orig +"__DiffText actual changes on this line +"__DiffDelete -line removed from file.orig +"__Folded +--- 1 line : Folded line --- +"__Function function sblah() +"__Identifier Never ran into that actually... +"__IncSearch Next search term +"__NonText This is not a text, move on +"__Normal Typical text goes like this +"__Pmenu Currently selected menu item +"__PreProc #define SHBLAH true +"__Search This is what you're searching for +"__Special true false NULL SIGTERM +"__SpecialKey Never ran into that either +"__Statement if else return for switch +"__StatusLine Statusline of current windows +"__StatusLineNC Statusline of other windows +"__String "Hello, World!" +"__Todo TODO: remove todos from source +"__Type int float char void unsigned uint32_t +"__Underlined Anything underlined +"__VertSplit :vsplit will only show ' | ' +"__Visual Selected text looks like this diff --git a/.vim/colors/term.vim b/.vim/colors/term.vim new file mode 100644 index 00000000..efcbadcb --- /dev/null +++ b/.vim/colors/term.vim @@ -0,0 +1,46 @@ +" Vim color file + +set background=light +let g:colors_name="term" + +" Code +hi Folded ctermfg=8 ctermbg=none +hi FoldColumn ctermbg=none +hi NonText ctermfg=8 +hi SpecialKey ctermfg=0 +hi Statement ctermfg=3 +hi Normal ctermfg=7 + +" Spell +hi SpellBad ctermfg=9 ctermbg=none + +" Highlight +hi Search ctermfg=15 ctermbg=8 +hi Visual ctermfg=6 ctermbg=none cterm=reverse +hi MatchParen ctermfg=12 ctermbg=none cterm=reverse + +" Lines +hi CursorLine cterm=none +hi CursorLineNr ctermfg=7 +hi LineNr ctermfg=8 + +" Splits +hi SignColumn ctermbg=none +hi VertSplit ctermfg=8 cterm=none + +" Status line / related +hi StatusLine ctermfg=8 ctermbg=0 cterm=bold +hi StatusLineNC ctermfg=0 +hi WildMenu ctermfg=14 ctermbg=0 + +" Tabs +hi TabLine ctermfg=none ctermbg=none cterm=none +hi TabLineFill ctermfg=none ctermbg=none cterm=none +hi TabLineFill ctermfg=none ctermbg=none cterm=none +hi TabLineSel ctermfg=15 ctermbg=0 cterm=none + +" Vimdiff +hi DiffAdd ctermfg=14 ctermbg=none +hi DiffChange ctermfg=12 ctermbg=none +hi DiffDelete ctermfg=10 ctermbg=none +hi DiffText ctermfg=9 ctermbg=none diff --git a/.vim/colors/wolfpack.vim b/.vim/colors/wolfpack.vim new file mode 100644 index 00000000..7c4b1785 --- /dev/null +++ b/.vim/colors/wolfpack.vim @@ -0,0 +1,121 @@ +" Vim color file +" +" Author: Erik Carlson +" https://github.com/carlson-erik +" +" Note: Based on Bliss (http://colorsublime.com/theme/Bliss) +" by Saad Quadri. I modified several parts of the +" theme. More changes including (hopefully) a light +" background version to come in the future. +" + +set background=dark +highlight clear + +if exists("syntax_on") + syntax reset +endif + +let g:colors_name = "wolfpack" + +hi Cursor ctermfg=235 ctermbg=145 cterm=NONE guifg=#222222 guibg=#aeafad gui=NONE +hi Visual ctermfg=NONE ctermbg=59 cterm=NONE guifg=NONE guibg=#373b41 gui=NONE +hi CursorLine ctermfg=NONE ctermbg=236 cterm=NONE guifg=NONE guibg=#323332 gui=NONE +hi CursorLineNr ctermfg=135 ctermbg=NONE cterm=none guifg=#ae81ff guibg=NONE gui=NONE +hi CursorColumn ctermfg=NONE ctermbg=236 cterm=NONE guifg=NONE guibg=#323332 gui=NONE +hi ColorColumn ctermfg=NONE ctermbg=236 cterm=NONE guifg=NONE guibg=#323332 gui=NONE +hi LineNr ctermfg=243 ctermbg=236 cterm=NONE guifg=#747574 guibg=#323332 gui=NONE +hi VertSplit ctermfg=239 ctermbg=239 cterm=NONE guifg=#515252 guibg=#515252 gui=NONE +hi MatchParen ctermfg=86 ctermbg=NONE cterm=underline guifg=#64fbc8 guibg=NONE gui=underline +hi StatusLine ctermfg=251 ctermbg=239 cterm=bold guifg=#c5c8c6 guibg=#515252 gui=bold +hi StatusLineNC ctermfg=251 ctermbg=239 cterm=NONE guifg=#c5c8c6 guibg=#515252 gui=NONE +hi Pmenu ctermfg=NONE ctermbg=NONE cterm=NONE guifg=NONE guibg=NONE gui=NONE +hi PmenuSel ctermfg=NONE ctermbg=59 cterm=NONE guifg=NONE guibg=#373b41 gui=NONE +hi IncSearch ctermfg=235 ctermbg=116 cterm=NONE guifg=#222222 guibg=#99e1df gui=NONE +hi Search ctermfg=NONE ctermbg=NONE cterm=underline guifg=NONE guibg=NONE gui=underline +hi Directory ctermfg=116 ctermbg=NONE cterm=NONE guifg=#99e1df guibg=NONE gui=NONE +hi Folded ctermfg=60 ctermbg=235 cterm=NONE guifg=#4f6d82 guibg=#222222 gui=NONE + +hi TabLine ctermfg=252 ctermbg=236 cterm=none guifg=#f8f8f2 guibg=#3e3d32 gui=none +hi TabLineSel ctermfg=252 ctermbg=235 cterm=underline guifg=#f8f8f2 guibg=#293739 gui=underline +hi TabLineFill ctermfg=252 ctermbg=236 cterm=none guifg=#f8f8f2 guibg=#3e3d32 gui=none + +hi Normal ctermfg=252 ctermbg=235 cterm=NONE guifg=#f8f8f2 guibg=#222222 gui=NONE +hi Boolean ctermfg=135 ctermbg=NONE cterm=none guifg=#ae81ff guibg=NONE gui=NONE +hi Character ctermfg=110 ctermbg=NONE cterm=NONE guifg=#98a6dd guibg=NONE gui=NONE +hi Comment ctermfg=60 ctermbg=NONE cterm=NONE guifg=#4f6d82 guibg=NONE gui=NONE +hi Conditional ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi Constant ctermfg=NONE ctermbg=NONE cterm=NONE guifg=NONE guibg=NONE gui=NONE +hi Define ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi DiffAdd ctermfg=251 ctermbg=64 cterm=bold guifg=#c5c8c6 guibg=#45820c gui=bold +hi DiffDelete ctermfg=88 ctermbg=NONE cterm=NONE guifg=#8a0707 guibg=NONE gui=NONE +hi DiffChange ctermfg=251 ctermbg=23 cterm=NONE guifg=#c5c8c6 guibg=#213655 gui=NONE +hi DiffText ctermfg=251 ctermbg=24 cterm=bold guifg=#c5c8c6 guibg=#204a87 gui=bold +hi ErrorMsg ctermfg=252 ctermbg=167 cterm=NONE guifg=#ced2cf guibg=#df5f5f gui=NONE +hi WarningMsg ctermfg=252 ctermbg=167 cterm=NONE guifg=#ced2cf guibg=#df5f5f gui=NONE +hi Float ctermfg=135 ctermbg=NONE cterm=none guifg=#ae81ff guibg=NONE gui=NONE +hi Function ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi Identifier ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi Keyword ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi Label ctermfg=116 ctermbg=NONE cterm=NONE guifg=#99e1df guibg=NONE gui=NONE +hi NonText ctermfg=59 ctermbg=235 cterm=NONE guifg=#4b4e55 guibg=#2a2a2a gui=NONE +hi Number ctermfg=135 ctermbg=NONE cterm=none guifg=#ae81ff guibg=NONE gui=NONE +hi Operator ctermfg=116 ctermbg=NONE cterm=NONE guifg=#8dd9d9 guibg=NONE gui=NONE +hi PreProc ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi Special ctermfg=251 ctermbg=NONE cterm=NONE guifg=#c5c8c6 guibg=NONE gui=NONE +hi SpecialKey ctermfg=59 ctermbg=236 cterm=NONE guifg=#4b4e55 guibg=#323332 gui=NONE +hi Statement ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi StorageClass ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi String ctermfg=116 ctermbg=NONE cterm=NONE guifg=#99e1df guibg=NONE gui=NONE +hi Tag ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi Title ctermfg=251 ctermbg=NONE cterm=bold guifg=#c5c8c6 guibg=NONE gui=bold +hi Todo ctermfg=60 ctermbg=NONE cterm=inverse,bold guifg=#4f6d82 guibg=NONE gui=inverse,bold +hi Type ctermfg=NONE ctermbg=NONE cterm=NONE guifg=NONE guibg=NONE gui=NONE +hi Underlined ctermfg=NONE ctermbg=NONE cterm=underline guifg=NONE guibg=NONE gui=underline +hi rubyClass ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi rubyFunction ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi rubyInterpolationDelimiter ctermfg=NONE ctermbg=NONE cterm=NONE guifg=NONE guibg=NONE gui=NONE +hi rubySymbol ctermfg=116 ctermbg=NONE cterm=NONE guifg=#99e1df guibg=NONE gui=NONE +hi rubyConstant ctermfg=219 ctermbg=NONE cterm=NONE guifg=#efabec guibg=NONE gui=NONE +hi rubyStringDelimiter ctermfg=116 ctermbg=NONE cterm=NONE guifg=#99e1df guibg=NONE gui=NONE +hi rubyBlockParameter ctermfg=110 ctermbg=NONE cterm=NONE guifg=#98a6dd guibg=NONE gui=NONE +hi rubyInstanceVariable ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi rubyInclude ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi rubyGlobalVariable ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi rubyRegexp ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi rubyRegexpDelimiter ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi rubyEscape ctermfg=110 ctermbg=NONE cterm=NONE guifg=#98a6dd guibg=NONE gui=NONE +hi rubyControl ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi rubyClassVariable ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi rubyOperator ctermfg=116 ctermbg=NONE cterm=NONE guifg=#8dd9d9 guibg=NONE gui=NONE +hi rubyException ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi rubyPseudoVariable ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi rubyRailsUserClass ctermfg=219 ctermbg=NONE cterm=NONE guifg=#efabec guibg=NONE gui=NONE +hi rubyRailsARAssociationMethod ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi rubyRailsARMethod ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi rubyRailsRenderMethod ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi rubyRailsMethod ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi erubyDelimiter ctermfg=110 ctermbg=NONE cterm=NONE guifg=#98a6dd guibg=NONE gui=NONE +hi erubyComment ctermfg=60 ctermbg=NONE cterm=NONE guifg=#4f6d82 guibg=NONE gui=NONE +hi erubyRailsMethod ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi htmlTag ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi htmlEndTag ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi htmlTagName ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi htmlArg ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi htmlSpecialChar ctermfg=110 ctermbg=NONE cterm=NONE guifg=#98a6dd guibg=NONE gui=NONE +hi javaScriptFunction ctermfg=86 ctermbg=NONE cterm=NONE guifg=#64fbc8 guibg=NONE gui=NONE +hi javaScriptRailsFunction ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi javaScriptBraces ctermfg=NONE ctermbg=NONE cterm=NONE guifg=NONE guibg=NONE gui=NONE +hi yamlKey ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi yamlAnchor ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi yamlAlias ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi yamlDocumentHeader ctermfg=116 ctermbg=NONE cterm=NONE guifg=#99e1df guibg=NONE gui=NONE +hi cssURL ctermfg=110 ctermbg=NONE cterm=NONE guifg=#98a6dd guibg=NONE gui=NONE +hi cssFunctionName ctermfg=74 ctermbg=NONE cterm=NONE guifg=#3bb1df guibg=NONE gui=NONE +hi cssColor ctermfg=116 ctermbg=NONE cterm=NONE guifg=#8dd9d9 guibg=NONE gui=NONE +hi cssPseudoClassId ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi cssClassName ctermfg=158 ctermbg=NONE cterm=NONE guifg=#abfdd8 guibg=NONE gui=NONE +hi cssValueLength ctermfg=110 ctermbg=NONE cterm=NONE guifg=#98a6dd guibg=NONE gui=NONE +hi cssCommonAttr ctermfg=110 ctermbg=NONE cterm=NONE guifg=#98a6dd guibg=NONE gui=NONE +hi cssBraces ctermfg=NONE ctermbg=NONE cterm=NONE guifg=NONE guibg=NONE gui=NONE + diff --git a/.vim/plugin/auto-pairs.vim b/.vim/plugin/auto-pairs.vim deleted file mode 100644 index 274d8ad6..00000000 --- a/.vim/plugin/auto-pairs.vim +++ /dev/null @@ -1,527 +0,0 @@ -" Insert or delete brackets, parens, quotes in pairs. -" Maintainer: JiangMiao -" Contributor: camthompson -" Last Change: 2013-07-13 -" Version: 1.3.2 -" Homepage: http://www.vim.org/scripts/script.php?script_id=3599 -" Repository: https://github.com/jiangmiao/auto-pairs -" License: MIT - -if exists('g:AutoPairsLoaded') || &cp - finish -end -let g:AutoPairsLoaded = 1 - -if !exists('g:AutoPairs') - let g:AutoPairs = {'(':')', '[':']', '{':'}',"'":"'",'"':'"', '`':'`'} -end - -if !exists('g:AutoPairsParens') - let g:AutoPairsParens = {'(':')', '[':']', '{':'}'} -end - -if !exists('g:AutoPairsMapBS') - let g:AutoPairsMapBS = 1 -end - -if !exists('g:AutoPairsMapCR') - let g:AutoPairsMapCR = 1 -end - -if !exists('g:AutoPairsMapSpace') - let g:AutoPairsMapSpace = 1 -end - -if !exists('g:AutoPairsCenterLine') - let g:AutoPairsCenterLine = 1 -end - -if !exists('g:AutoPairsShortcutToggle') - let g:AutoPairsShortcutToggle = '' -end - -if !exists('g:AutoPairsShortcutFastWrap') - let g:AutoPairsShortcutFastWrap = '' -end - -if !exists('g:AutoPairsShortcutJump') - let g:AutoPairsShortcutJump = '' -endif - -" Fly mode will for closed pair to jump to closed pair instead of insert. -" also support AutoPairsBackInsert to insert pairs where jumped. -if !exists('g:AutoPairsFlyMode') - let g:AutoPairsFlyMode = 0 -endif - -" Work with Fly Mode, insert pair where jumped -if !exists('g:AutoPairsShortcutBackInsert') - let g:AutoPairsShortcutBackInsert = '' -endif - -if !exists('g:AutoPairsSmartQuotes') - let g:AutoPairsSmartQuotes = 1 -endif - - -" Will auto generated {']' => '[', ..., '}' => '{'}in initialize. -let g:AutoPairsClosedPairs = {} - - -function! AutoPairsInsert(key) - if !b:autopairs_enabled - return a:key - end - - let line = getline('.') - let pos = col('.') - 1 - let before = strpart(line, 0, pos) - let after = strpart(line, pos) - let next_chars = split(after, '\zs') - let current_char = get(next_chars, 0, '') - let next_char = get(next_chars, 1, '') - let prev_chars = split(before, '\zs') - let prev_char = get(prev_chars, -1, '') - - let eol = 0 - if col('$') - col('.') <= 1 - let eol = 1 - end - - " Ignore auto close if prev character is \ - if prev_char == '\' - return a:key - end - - " The key is difference open-pair, then it means only for ) ] } by default - if !has_key(b:AutoPairs, a:key) - let b:autopairs_saved_pair = [a:key, getpos('.')] - - " Skip the character if current character is the same as input - if current_char == a:key - return "\" - end - - if !g:AutoPairsFlyMode - " Skip the character if next character is space - if current_char == ' ' && next_char == a:key - return "\\" - end - - " Skip the character if closed pair is next character - if current_char == '' - let next_lineno = line('.')+1 - let next_line = getline(nextnonblank(next_lineno)) - let next_char = matchstr(next_line, '\s*\zs.') - if next_char == a:key - return "\e^a" - endif - endif - endif - - " Fly Mode, and the key is closed-pairs, search closed-pair and jump - if g:AutoPairsFlyMode && has_key(b:AutoPairsClosedPairs, a:key) - if search(a:key, 'W') - return "\" - endif - endif - - " Insert directly if the key is not an open key - return a:key - end - - let open = a:key - let close = b:AutoPairs[open] - - if current_char == close && open == close - return "\" - end - - " Ignore auto close ' if follows a word - " MUST after closed check. 'hello|' - if a:key == "'" && prev_char =~ '\v\w' - return a:key - end - - " support for ''' ``` and """ - if open == close - " The key must be ' " ` - let pprev_char = line[col('.')-3] - if pprev_char == open && prev_char == open - " Double pair found - return repeat(a:key, 4) . repeat("\", 3) - end - end - - let quotes_num = 0 - " Ignore comment line for vim file - if &filetype == 'vim' && a:key == '"' - if before =~ '^\s*$' - return a:key - end - if before =~ '^\s*"' - let quotes_num = -1 - end - end - - " Keep quote number is odd. - " Because quotes should be matched in the same line in most of situation - if g:AutoPairsSmartQuotes && open == close - " Remove \\ \" \' - let cleaned_line = substitute(line, '\v(\\.)', '', 'g') - let n = quotes_num - let pos = 0 - while 1 - let pos = stridx(cleaned_line, open, pos) - if pos == -1 - break - end - let n = n + 1 - let pos = pos + 1 - endwhile - if n % 2 == 1 - return a:key - endif - endif - - return open.close."\" -endfunction - -function! AutoPairsDelete() - if !b:autopairs_enabled - return "\" - end - - let line = getline('.') - let pos = col('.') - 1 - let current_char = get(split(strpart(line, pos), '\zs'), 0, '') - let prev_chars = split(strpart(line, 0, pos), '\zs') - let prev_char = get(prev_chars, -1, '') - let pprev_char = get(prev_chars, -2, '') - - if pprev_char == '\' - return "\" - end - - " Delete last two spaces in parens, work with MapSpace - if has_key(b:AutoPairs, pprev_char) && prev_char == ' ' && current_char == ' ' - return "\\" - endif - - " Delete Repeated Pair eg: '''|''' [[|]] {{|}} - if has_key(b:AutoPairs, prev_char) - let times = 0 - let p = -1 - while get(prev_chars, p, '') == prev_char - let p = p - 1 - let times = times + 1 - endwhile - - let close = b:AutoPairs[prev_char] - let left = repeat(prev_char, times) - let right = repeat(close, times) - - let before = strpart(line, pos-times, times) - let after = strpart(line, pos, times) - if left == before && right == after - return repeat("\\", times) - end - end - - - if has_key(b:AutoPairs, prev_char) - let close = b:AutoPairs[prev_char] - if match(line,'^\s*'.close, col('.')-1) != -1 - " Delete (|___) - let space = matchstr(line, '^\s*', col('.')-1) - return "\". repeat("\", len(space)+1) - elseif match(line, '^\s*$', col('.')-1) != -1 - " Delete (|__\n___) - let nline = getline(line('.')+1) - if nline =~ '^\s*'.close - if &filetype == 'vim' && prev_char == '"' - " Keep next line's comment - return "\" - end - - let space = matchstr(nline, '^\s*') - return "\\". repeat("\", len(space)+1) - end - end - end - - return "\" -endfunction - -function! AutoPairsJump() - call search('["\]'')}]','W') -endfunction -" string_chunk cannot use standalone -let s:string_chunk = '\v%(\\\_.|[^\1]|[\r\n]){-}' -let s:ss_pattern = '\v''' . s:string_chunk . '''' -let s:ds_pattern = '\v"' . s:string_chunk . '"' - -func! s:RegexpQuote(str) - return substitute(a:str, '\v[\[\{\(\<\>\)\}\]]', '\\&', 'g') -endf - -func! s:RegexpQuoteInSquare(str) - return substitute(a:str, '\v[\[\]]', '\\&', 'g') -endf - -" Search next open or close pair -func! s:FormatChunk(open, close) - let open = s:RegexpQuote(a:open) - let close = s:RegexpQuote(a:close) - let open2 = s:RegexpQuoteInSquare(a:open) - let close2 = s:RegexpQuoteInSquare(a:close) - if open == close - return '\v'.open.s:string_chunk.close - else - return '\v%(' . s:ss_pattern . '|' . s:ds_pattern . '|' . '[^'.open2.close2.']|[\r\n]' . '){-}(['.open2.close2.'])' - end -endf - -" Fast wrap the word in brackets -function! AutoPairsFastWrap() - let line = getline('.') - let current_char = line[col('.')-1] - let next_char = line[col('.')] - let open_pair_pattern = '\v[({\[''"]' - let at_end = col('.') >= col('$') - 1 - normal x - " Skip blank - if next_char =~ '\v\s' || at_end - call search('\v\S', 'W') - let line = getline('.') - let next_char = line[col('.')-1] - end - - if has_key(b:AutoPairs, next_char) - let followed_open_pair = next_char - let inputed_close_pair = current_char - let followed_close_pair = b:AutoPairs[next_char] - if followed_close_pair != followed_open_pair - " TODO replace system searchpair to skip string and nested pair. - " eg: (|){"hello}world"} will transform to ({"hello})world"} - call searchpair('\V'.followed_open_pair, '', '\V'.followed_close_pair, 'W') - else - call search(s:FormatChunk(followed_open_pair, followed_close_pair), 'We') - end - return "\".inputed_close_pair."\" - else - normal he - return "\".current_char."\" - end -endfunction - -function! AutoPairsMap(key) - " | is special key which separate map command from text - let key = a:key - if key == '|' - let key = '' - end - let escaped_key = substitute(key, "'", "''", 'g') - " use expr will cause search() doesn't work - execute 'inoremap '.key." =AutoPairsInsert('".escaped_key."')" -endfunction - -function! AutoPairsToggle() - if b:autopairs_enabled - let b:autopairs_enabled = 0 - echo 'AutoPairs Disabled.' - else - let b:autopairs_enabled = 1 - echo 'AutoPairs Enabled.' - end - return '' -endfunction - -function! AutoPairsReturn() - if b:autopairs_enabled == 0 - return '' - end - let line = getline('.') - let pline = getline(line('.')-1) - let prev_char = pline[strlen(pline)-1] - let cmd = '' - let cur_char = line[col('.')-1] - if has_key(b:AutoPairs, prev_char) && b:AutoPairs[prev_char] == cur_char - if g:AutoPairsCenterLine && winline() * 3 >= winheight(0) * 2 - " Use \ instead of \cl will cause the placeholder deleted - " incorrect. because zz won't leave Normal mode. - " Use \ is a bit wierd. the character before cursor need to be deleted. - let cmd = " \zz\cl" - end - - " If equalprg has been set, then avoid call = - " https://github.com/jiangmiao/auto-pairs/issues/24 - if &equalprg != '' - return "\O".cmd - endif - - " conflict with javascript and coffee - " javascript need indent new line - " coffeescript forbid indent new line - if &filetype == 'coffeescript' || &filetype == 'coffee' - return "\k==o".cmd - else - return "\=ko".cmd - endif - end - return '' -endfunction - -function! AutoPairsSpace() - let line = getline('.') - let prev_char = line[col('.')-2] - let cmd = '' - let cur_char =line[col('.')-1] - if has_key(g:AutoPairsParens, prev_char) && g:AutoPairsParens[prev_char] == cur_char - let cmd = "\\" - endif - return "\".cmd -endfunction - -function! AutoPairsBackInsert() - if exists('b:autopairs_saved_pair') - let pair = b:autopairs_saved_pair[0] - let pos = b:autopairs_saved_pair[1] - call setpos('.', pos) - return pair - endif - return '' -endfunction - -function! AutoPairsInit() - let b:autopairs_loaded = 1 - let b:autopairs_enabled = 1 - let b:AutoPairsClosedPairs = {} - - if !exists('b:AutoPairs') - let b:AutoPairs = g:AutoPairs - end - - " buffer level map pairs keys - for [open, close] in items(b:AutoPairs) - call AutoPairsMap(open) - if open != close - call AutoPairsMap(close) - end - let b:AutoPairsClosedPairs[close] = open - endfor - - " Still use level mapping for - if g:AutoPairsMapBS - " Use instead of for issue #14 sometimes press BS output strange words - execute 'inoremap =AutoPairsDelete()' - execute 'inoremap =AutoPairsDelete()' - end - - if g:AutoPairsMapSpace - " Try to respect abbreviations on a - let do_abbrev = "" - if v:version == 703 && has("patch489") || v:version > 703 - let do_abbrev = "" - endif - execute 'inoremap '.do_abbrev.'=AutoPairsSpace()' - end - - if g:AutoPairsShortcutFastWrap != '' - execute 'inoremap '.g:AutoPairsShortcutFastWrap.' =AutoPairsFastWrap()' - end - - if g:AutoPairsShortcutBackInsert != '' - execute 'inoremap '.g:AutoPairsShortcutBackInsert.' =AutoPairsBackInsert()' - end - - if g:AutoPairsShortcutToggle != '' - " use to ensure showing the status when toggle - execute 'inoremap '.g:AutoPairsShortcutToggle.' AutoPairsToggle()' - execute 'noremap '.g:AutoPairsShortcutToggle.' :call AutoPairsToggle()' - end - - if g:AutoPairsShortcutJump != '' - execute 'inoremap ' . g:AutoPairsShortcutJump. ' :call AutoPairsJump()a' - execute 'noremap ' . g:AutoPairsShortcutJump. ' :call AutoPairsJump()' - end - -endfunction - -function! s:ExpandMap(map) - let map = a:map - let map = substitute(map, '\(\w\+\)', '\=maparg(submatch(1), "i")', 'g') - return map -endfunction - -function! AutoPairsTryInit() - if exists('b:autopairs_loaded') - return - end - - " for auto-pairs starts with 'a', so the priority is higher than supertab and vim-endwise - " - " vim-endwise doesn't support AutoPairsReturn - " when use AutoPairsReturn will cause isn't expanded - " - " supertab doesn't support AutoPairsReturn - " when use AutoPairsReturn will cause Duplicated - " - " and when load after vim-endwise will cause unexpected endwise inserted. - " so always load AutoPairs at last - - " Buffer level keys mapping - " comptible with other plugin - if g:AutoPairsMapCR - if v:version == 703 && has('patch32') || v:version > 703 - " VIM 7.3 supports advancer maparg which could get info - " then auto-pairs could remap in any case. - let info = maparg('', 'i', 0, 1) - if empty(info) - let old_cr = '' - let is_expr = 0 - else - let old_cr = info['rhs'] - let old_cr = s:ExpandMap(old_cr) - let old_cr = substitute(old_cr, '', '' . info['sid'] . '_', 'g') - let is_expr = info['expr'] - let wrapper_name = 'AutoPairsOldCRWrapper73' - endif - else - " VIM version less than 7.3 - " the mapping's info is lost, so guess it is expr or not, it's - " not accurate. - let old_cr = maparg('', 'i') - if old_cr == '' - let old_cr = '' - let is_expr = 0 - else - let old_cr = s:ExpandMap(old_cr) - " old_cr contain (, I guess the old cr is in expr mode - let is_expr = old_cr =~ '\V(' && toupper(old_cr) !~ '\V' - - " The old_cr start with " it must be in expr mode - let is_expr = is_expr || old_cr =~ '\v^"' - let wrapper_name = 'AutoPairsOldCRWrapper' - end - end - - if old_cr !~ 'AutoPairsReturn' - if is_expr - " remap to `name` to avoid mix expr and non-expr mode - execute 'inoremap