marklar.vim (7686B)
1 " ------------------------------------------------------------------ 2 " Filename: marklar.vim 3 " Last Modified: Nov, 30 2006 (13:01) 4 " Version: 0.5 5 " Maintainer: SM Smithfield (m_smithfield AT yahoo DOT com) 6 " Copyright: 2006 SM Smithfield 7 " This script is free software; you can redistribute it and/or 8 " modify it under the terms of the GNU General Public License as 9 " published by the Free Software Foundation; either version 2 of 10 " the License, or (at your option) any later version. 11 " Description: Vim colorscheme file. 12 " Install: Put this file in the users colors directory (~/.vim/colors) 13 " then load it with :colorscheme marklar 14 " ------------------------------------------------------------------ 15 16 hi clear 17 set background=dark 18 if exists("syntax_on") 19 syntax reset 20 endif 21 let g:colors_name = "marklar" 22 23 if !exists("s:main") 24 25 " OPTIONS: 26 let s:bold_opt = 0 27 let s:ignore_opt = 1 28 29 function! s:main() 30 if version >= 700 31 call s:apply_opts() 32 endif 33 34 if s:bold_opt 35 let s:bold = 'bold' 36 else 37 let s:bold = 'NONE' 38 endif 39 40 if s:ignore_opt 41 " completely invisible 42 let s:ignore = 'bg' 43 else 44 " nearly invisible 45 let s:ignore = '#467C5C' 46 endif 47 48 execute "hi Constant guifg=#FFFFFF guibg=NONE ctermfg=7 cterm=NONE" 49 execute "hi Identifier guifg=#38FF56 guibg=NONE gui=".s:bold." ctermfg=8 cterm=bold" 50 execute "hi Statement guifg=#FFFF00 guibg=NONE gui=".s:bold." ctermfg=3 cterm=bold" 51 execute "hi Special guifg=#25B9F8 guibg=bg gui=".s:bold." ctermfg=2 cterm=underline" 52 execute "hi PreProc guifg=#FF80FF guibg=bg gui=NONE ctermfg=2" 53 execute "hi Type guifg=#00FFFF guibg=NONE gui=".s:bold." ctermfg=6 cterm=bold" 54 55 execute "hi Ignore guifg=".s:ignore." guibg=NONE ctermfg=0" 56 57 hi Comment guifg=#00BBBB guibg=NONE ctermfg=6 cterm=none 58 hi Cursor guifg=NONE guibg=#FF0000 59 hi DiffAdd guifg=NONE guibg=#136769 ctermfg=4 ctermbg=7 cterm=NONE 60 hi DiffDelete guifg=NONE guibg=#50694A ctermfg=1 ctermbg=7 cterm=NONE 61 hi DiffChange guifg=fg guibg=#00463c gui=NONE ctermfg=4 ctermbg=2 cterm=NONE 62 hi DiffText guifg=#7CFC94 guibg=#00463c gui=bold ctermfg=4 ctermbg=3 cterm=NONE 63 hi Directory guifg=#25B9F8 guibg=NONE ctermfg=2 64 hi Error guifg=#FFFFFF guibg=#000000 ctermfg=7 ctermbg=0 cterm=bold 65 hi ErrorMsg guifg=#8eff2e guibg=#204d40 66 hi FoldColumn guifg=#00BBBB guibg=#204d40 67 hi Folded guifg=#44DDDD guibg=#204d40 ctermfg=0 ctermbg=8 cterm=bold 68 69 hi IncSearch guibg=#52891f gui=bold 70 hi LineNr guifg=#38ff56 guibg=#204d40 71 hi ModeMsg guifg=#FFFFFF guibg=#0000FF ctermfg=7 ctermbg=4 cterm=bold 72 hi MoreMsg guifg=#FFFFFF guibg=#00A261 ctermfg=7 ctermbg=2 cterm=bold 73 hi NonText guifg=#00bbbb guibg=#204d40 74 hi Normal guifg=#71C293 guibg=#06544a 75 hi Question guifg=#FFFFFF guibg=#00A261 76 hi Search guifg=NONE guibg=#0f374c ctermfg=3 ctermbg=0 cterm=bold 77 78 hi SignColumn guifg=#00BBBB guibg=#204d40 79 hi SpecialKey guifg=#00FFFF guibg=#266955 80 hi StatusLine guifg=#245748 guibg=#71C293 gui=NONE cterm=reverse 81 hi StatusLineNC guifg=#245748 guibg=#689C7C gui=NONE 82 hi Title guifg=#7CFC94 guibg=NONE gui=bold ctermfg=2 cterm=bold 83 hi Todo guifg=#FFFFFF guibg=#884400 ctermfg=6 ctermbg=4 cterm=NONE 84 hi Underlined guifg=#df820c guibg=NONE gui=underline ctermfg=8 cterm=underline 85 hi Visual guibg=#0B7260 gui=NONE 86 hi WarningMsg guifg=#FFFFFF guibg=#FF0000 ctermfg=7 ctermbg=1 cterm=bold 87 hi WildMenu guifg=#20012e guibg=#00a675 gui=bold ctermfg=NONE ctermbg=NONE cterm=bold 88 " 89 if version >= 700 90 hi SpellBad guisp=#FF0000 91 hi SpellCap guisp=#0000FF 92 hi SpellRare guisp=#ff4046 93 hi SpellLocal guisp=#000000 ctermbg=0 94 hi Pmenu guifg=#00ffff guibg=#000000 ctermbg=0 ctermfg=6 95 hi PmenuSel guifg=#ffff00 guibg=#000000 gui=bold cterm=bold ctermfg=3 96 hi PmenuSbar guibg=#204d40 ctermbg=6 97 hi PmenuThumb guifg=#38ff56 ctermfg=3 98 hi CursorColumn guibg=#096354 99 hi CursorLine guibg=#096354 100 hi Tabline guifg=bg guibg=fg gui=NONE cterm=reverse,bold ctermfg=NONE ctermbg=NONE 101 hi TablineSel guifg=#20012e guibg=#00a675 gui=bold 102 hi TablineFill guifg=#689C7C 103 hi MatchParen guifg=#38ff56 guibg=#0000ff gui=bold ctermbg=4 104 endif 105 " 106 hi Tag guifg=#7CFC94 guibg=NONE gui=bold ctermfg=2 cterm=bold 107 hi link Bold Tag 108 " 109 hi pythonPreCondit ctermfg=2 cterm=NONE 110 execute "hi tkWidget guifg=#ffa0a0 guibg=bg gui=".s:bold." ctermfg=7 cterm=bold" 111 endfunction 112 113 if version >= 700 114 115 let s:opts = {'bold': 0, 'ignore': 1} 116 117 " preserves vim<7 compat, while letting me reuses some code 118 function! s:apply_opts() 119 let s:bold_opt = s:opts['bold'] 120 let s:ignore_opt = s:opts['ignore'] 121 endfunction 122 123 function! s:print_opts(...) 124 let d = a:000 125 if len(a:000) == 0 126 let d = keys(s:opts) 127 endif 128 for k in d 129 echo k.': '.s:opts[k] 130 endfor 131 endfunction 132 133 function! s:Marklar(...) 134 let args = a:000 135 if len(args) == 0 136 call s:print_opts() 137 else 138 while len(args)>0 139 " take first arg 140 let k = args[0] 141 let args = args[1:] 142 " is it a key? 143 if k =~ '\a\+!' 144 " does it bang? 145 let k = strpart(k,0,strlen(k)-1) 146 let s:opts[k] = !s:opts[k] 147 call s:main() 148 elseif k =~ '\a\+?' 149 " does it quiz? 150 let k = strpart(k,0,strlen(k)-1) 151 call s:print_opts(k) 152 elseif len(args) 153 " is there another arg? 154 " take it 155 let v = args[0] 156 let args = args[1:] 157 " is it legal value? 158 if v == 0 || v == 1 159 " assign val->key 160 let s:opts[k] = v 161 call s:main() 162 else 163 echoerr "(".v.") Bad value. Expected 0 or 1." 164 endif 165 else 166 endif 167 endwhile 168 endif 169 endfunction 170 command! -nargs=* Marklar :call s:Marklar(<f-args>) 171 endif 172 endif 173 174 call s:main()