]>
Commit | Line | Data |
---|---|---|
0d23b6e5 BB |
1 | " Vim color file |
2 | " Name: inkpot.vim | |
3 | " Maintainer: Ciaran McCreesh <ciaran.mccreesh@googlemail.com> | |
4 | " Homepage: http://github.com/ciaranm/inkpot/ | |
5 | " | |
6 | " This should work in the GUI, rxvt-unicode (88 colour mode) and xterm (256 | |
7 | " colour mode). It won't work in 8/16 colour terminals. | |
8 | " | |
9 | " To use a black background, :let g:inkpot_black_background = 1 | |
10 | ||
11 | set background=dark | |
12 | hi clear | |
13 | if exists("syntax_on") | |
14 | syntax reset | |
15 | endif | |
16 | ||
17 | let colors_name = "inkpot" | |
18 | ||
19 | " map a urxvt cube number to an xterm-256 cube number | |
20 | fun! <SID>M(a) | |
21 | return strpart("0135", a:a, 1) + 0 | |
22 | endfun | |
23 | ||
24 | " map a urxvt colour to an xterm-256 colour | |
25 | fun! <SID>X(a) | |
26 | if &t_Co == 88 | |
27 | return a:a | |
28 | else | |
29 | if a:a == 8 | |
30 | return 237 | |
31 | elseif a:a < 16 | |
32 | return a:a | |
33 | elseif a:a > 79 | |
34 | return 232 + (3 * (a:a - 80)) | |
35 | else | |
36 | let l:b = a:a - 16 | |
37 | let l:x = l:b % 4 | |
38 | let l:y = (l:b / 4) % 4 | |
39 | let l:z = (l:b / 16) | |
40 | return 16 + <SID>M(l:x) + (6 * <SID>M(l:y)) + (36 * <SID>M(l:z)) | |
41 | endif | |
42 | endif | |
43 | endfun | |
44 | ||
45 | if ! exists("g:inkpot_black_background") | |
46 | let g:inkpot_black_background = 0 | |
47 | endif | |
48 | ||
49 | if has("gui_running") | |
50 | if ! g:inkpot_black_background | |
51 | hi Normal gui=NONE guifg=#cfbfad guibg=#1e1e27 | |
52 | else | |
53 | hi Normal gui=NONE guifg=#cfbfad guibg=#000000 | |
54 | endif | |
55 | ||
56 | hi CursorLine guibg=#2e2e37 | |
57 | ||
58 | hi IncSearch gui=BOLD guifg=#303030 guibg=#cd8b60 | |
59 | hi Search gui=NONE guifg=#303030 guibg=#ad7b57 | |
60 | hi ErrorMsg gui=BOLD guifg=#ffffff guibg=#ce4e4e | |
61 | hi WarningMsg gui=BOLD guifg=#ffffff guibg=#ce8e4e | |
62 | hi ModeMsg gui=BOLD guifg=#7e7eae guibg=NONE | |
63 | hi MoreMsg gui=BOLD guifg=#7e7eae guibg=NONE | |
64 | hi Question gui=BOLD guifg=#ffcd00 guibg=NONE | |
65 | ||
66 | hi StatusLine gui=BOLD guifg=#b9b9b9 guibg=#3e3e5e | |
67 | hi User1 gui=BOLD guifg=#00ff8b guibg=#3e3e5e | |
68 | hi User2 gui=BOLD guifg=#7070a0 guibg=#3e3e5e | |
69 | hi StatusLineNC gui=NONE guifg=#b9b9b9 guibg=#3e3e5e | |
70 | hi VertSplit gui=NONE guifg=#b9b9b9 guibg=#3e3e5e | |
71 | ||
72 | hi WildMenu gui=BOLD guifg=#eeeeee guibg=#6e6eaf | |
73 | ||
74 | hi MBENormal guifg=#cfbfad guibg=#2e2e3f | |
75 | hi MBEChanged guifg=#eeeeee guibg=#2e2e3f | |
76 | hi MBEVisibleNormal guifg=#cfcfcd guibg=#4e4e8f | |
77 | hi MBEVisibleChanged guifg=#eeeeee guibg=#4e4e8f | |
78 | ||
79 | hi DiffText gui=NONE guifg=#ffffcd guibg=#4a2a4a | |
80 | hi DiffChange gui=NONE guifg=#ffffcd guibg=#306b8f | |
81 | hi DiffDelete gui=NONE guifg=#ffffcd guibg=#6d3030 | |
82 | hi DiffAdd gui=NONE guifg=#ffffcd guibg=#306d30 | |
83 | ||
84 | hi Cursor gui=NONE guifg=#404040 guibg=#8b8bff | |
85 | hi lCursor gui=NONE guifg=#404040 guibg=#8fff8b | |
86 | hi CursorIM gui=NONE guifg=#404040 guibg=#8b8bff | |
87 | ||
88 | hi Folded gui=NONE guifg=#cfcfcd guibg=#4b208f | |
89 | hi FoldColumn gui=NONE guifg=#8b8bcd guibg=#2e2e2e | |
90 | ||
91 | hi Directory gui=NONE guifg=#00ff8b guibg=NONE | |
92 | hi LineNr gui=NONE guifg=#8b8bcd guibg=#2e2e2e | |
93 | hi NonText gui=BOLD guifg=#8b8bcd guibg=NONE | |
94 | hi SpecialKey gui=BOLD guifg=#ab60ed guibg=NONE | |
95 | hi Title gui=BOLD guifg=#af4f4b guibg=NONE | |
96 | hi Visual gui=NONE guifg=#eeeeee guibg=#4e4e8f | |
97 | ||
98 | hi Comment gui=NONE guifg=#cd8b00 guibg=NONE | |
99 | hi Constant gui=NONE guifg=#ffcd8b guibg=NONE | |
100 | hi String gui=NONE guifg=#ffcd8b guibg=#404040 | |
101 | hi Error gui=NONE guifg=#ffffff guibg=#6e2e2e | |
102 | hi Identifier gui=NONE guifg=#ff8bff guibg=NONE | |
103 | hi Ignore gui=NONE | |
104 | hi Number gui=NONE guifg=#f0ad6d guibg=NONE | |
105 | hi PreProc gui=NONE guifg=#409090 guibg=NONE | |
106 | hi Special gui=NONE guifg=#c080d0 guibg=NONE | |
107 | hi SpecialChar gui=NONE guifg=#c080d0 guibg=#404040 | |
108 | hi Statement gui=NONE guifg=#808bed guibg=NONE | |
109 | hi Todo gui=BOLD guifg=#303030 guibg=#d0a060 | |
110 | hi Type gui=NONE guifg=#ff8bff guibg=NONE | |
111 | hi Underlined gui=BOLD guifg=#df9f2d guibg=NONE | |
112 | hi TaglistTagName gui=BOLD guifg=#808bed guibg=NONE | |
113 | ||
114 | hi perlSpecialMatch gui=NONE guifg=#c080d0 guibg=#404040 | |
115 | hi perlSpecialString gui=NONE guifg=#c080d0 guibg=#404040 | |
116 | ||
117 | hi cSpecialCharacter gui=NONE guifg=#c080d0 guibg=#404040 | |
118 | hi cFormat gui=NONE guifg=#c080d0 guibg=#404040 | |
119 | ||
120 | hi doxygenBrief gui=NONE guifg=#fdab60 guibg=NONE | |
121 | hi doxygenParam gui=NONE guifg=#fdd090 guibg=NONE | |
122 | hi doxygenPrev gui=NONE guifg=#fdd090 guibg=NONE | |
123 | hi doxygenSmallSpecial gui=NONE guifg=#fdd090 guibg=NONE | |
124 | hi doxygenSpecial gui=NONE guifg=#fdd090 guibg=NONE | |
125 | hi doxygenComment gui=NONE guifg=#ad7b20 guibg=NONE | |
126 | hi doxygenSpecial gui=NONE guifg=#fdab60 guibg=NONE | |
127 | hi doxygenSpecialMultilineDesc gui=NONE guifg=#ad600b guibg=NONE | |
128 | hi doxygenSpecialOnelineDesc gui=NONE guifg=#ad600b guibg=NONE | |
129 | ||
130 | if v:version >= 700 | |
131 | hi Pmenu gui=NONE guifg=#eeeeee guibg=#4e4e8f | |
132 | hi PmenuSel gui=BOLD guifg=#eeeeee guibg=#2e2e3f | |
133 | hi PmenuSbar gui=BOLD guifg=#eeeeee guibg=#6e6eaf | |
134 | hi PmenuThumb gui=BOLD guifg=#eeeeee guibg=#6e6eaf | |
135 | ||
136 | hi SpellBad gui=undercurl guisp=#cc6666 | |
137 | hi SpellRare gui=undercurl guisp=#cc66cc | |
138 | hi SpellLocal gui=undercurl guisp=#cccc66 | |
139 | hi SpellCap gui=undercurl guisp=#66cccc | |
140 | ||
141 | hi MatchParen gui=NONE guifg=#cfbfad guibg=#4e4e8f | |
142 | endif | |
143 | else | |
144 | if ! g:inkpot_black_background | |
145 | exec "hi Normal cterm=NONE ctermfg=" . <SID>X(79) . " ctermbg=" . <SID>X(80) | |
146 | else | |
147 | exec "hi Normal cterm=NONE ctermfg=" . <SID>X(79) . " ctermbg=" . <SID>X(16) | |
148 | endif | |
149 | ||
150 | exec "hi IncSearch cterm=BOLD ctermfg=" . <SID>X(80) . " ctermbg=" . <SID>X(73) | |
151 | exec "hi Search cterm=NONE ctermfg=" . <SID>X(80) . " ctermbg=" . <SID>X(52) | |
152 | exec "hi ErrorMsg cterm=BOLD ctermfg=" . <SID>X(16) . " ctermbg=" . <SID>X(48) | |
153 | exec "hi WarningMsg cterm=BOLD ctermfg=" . <SID>X(16) . " ctermbg=" . <SID>X(68) | |
154 | exec "hi ModeMsg cterm=BOLD ctermfg=" . <SID>X(38) . " ctermbg=" . "NONE" | |
155 | exec "hi MoreMsg cterm=BOLD ctermfg=" . <SID>X(38) . " ctermbg=" . "NONE" | |
156 | exec "hi Question cterm=BOLD ctermfg=" . <SID>X(52) . " ctermbg=" . "NONE" | |
157 | ||
158 | exec "hi StatusLine cterm=BOLD ctermfg=" . <SID>X(85) . " ctermbg=" . <SID>X(81) | |
159 | exec "hi User1 cterm=BOLD ctermfg=" . <SID>X(28) . " ctermbg=" . <SID>X(81) | |
160 | exec "hi User2 cterm=BOLD ctermfg=" . <SID>X(39) . " ctermbg=" . <SID>X(81) | |
161 | exec "hi StatusLineNC cterm=NONE ctermfg=" . <SID>X(84) . " ctermbg=" . <SID>X(81) | |
162 | exec "hi VertSplit cterm=NONE ctermfg=" . <SID>X(84) . " ctermbg=" . <SID>X(81) | |
163 | ||
164 | exec "hi WildMenu cterm=BOLD ctermfg=" . <SID>X(87) . " ctermbg=" . <SID>X(38) | |
165 | ||
166 | exec "hi MBENormal ctermfg=" . <SID>X(85) . " ctermbg=" . <SID>X(81) | |
167 | exec "hi MBEChanged ctermfg=" . <SID>X(87) . " ctermbg=" . <SID>X(81) | |
168 | exec "hi MBEVisibleNormal ctermfg=" . <SID>X(85) . " ctermbg=" . <SID>X(82) | |
169 | exec "hi MBEVisibleChanged ctermfg=" . <SID>X(87) . " ctermbg=" . <SID>X(82) | |
170 | ||
171 | exec "hi DiffText cterm=NONE ctermfg=" . <SID>X(79) . " ctermbg=" . <SID>X(34) | |
172 | exec "hi DiffChange cterm=NONE ctermfg=" . <SID>X(79) . " ctermbg=" . <SID>X(17) | |
173 | exec "hi DiffDelete cterm=NONE ctermfg=" . <SID>X(79) . " ctermbg=" . <SID>X(32) | |
174 | exec "hi DiffAdd cterm=NONE ctermfg=" . <SID>X(79) . " ctermbg=" . <SID>X(20) | |
175 | ||
176 | exec "hi Folded cterm=NONE ctermfg=" . <SID>X(79) . " ctermbg=" . <SID>X(35) | |
177 | exec "hi FoldColumn cterm=NONE ctermfg=" . <SID>X(39) . " ctermbg=" . <SID>X(80) | |
178 | ||
179 | exec "hi Directory cterm=NONE ctermfg=" . <SID>X(28) . " ctermbg=" . "NONE" | |
180 | exec "hi LineNr cterm=NONE ctermfg=" . <SID>X(39) . " ctermbg=" . <SID>X(80) | |
181 | exec "hi NonText cterm=BOLD ctermfg=" . <SID>X(39) . " ctermbg=" . "NONE" | |
182 | exec "hi SpecialKey cterm=BOLD ctermfg=" . <SID>X(55) . " ctermbg=" . "NONE" | |
183 | exec "hi Title cterm=BOLD ctermfg=" . <SID>X(48) . " ctermbg=" . "NONE" | |
184 | exec "hi Visual cterm=NONE ctermfg=" . <SID>X(79) . " ctermbg=" . <SID>X(38) | |
185 | ||
186 | exec "hi Comment cterm=NONE ctermfg=" . <SID>X(52) . " ctermbg=" . "NONE" | |
187 | exec "hi Constant cterm=NONE ctermfg=" . <SID>X(73) . " ctermbg=" . "NONE" | |
188 | exec "hi String cterm=NONE ctermfg=" . <SID>X(73) . " ctermbg=" . <SID>X(81) | |
189 | exec "hi Error cterm=NONE ctermfg=" . <SID>X(79) . " ctermbg=" . <SID>X(32) | |
190 | exec "hi Identifier cterm=NONE ctermfg=" . <SID>X(53) . " ctermbg=" . "NONE" | |
191 | exec "hi Ignore cterm=NONE" | |
192 | exec "hi Number cterm=NONE ctermfg=" . <SID>X(69) . " ctermbg=" . "NONE" | |
193 | exec "hi PreProc cterm=NONE ctermfg=" . <SID>X(25) . " ctermbg=" . "NONE" | |
194 | exec "hi Special cterm=NONE ctermfg=" . <SID>X(55) . " ctermbg=" . "NONE" | |
195 | exec "hi SpecialChar cterm=NONE ctermfg=" . <SID>X(55) . " ctermbg=" . <SID>X(81) | |
196 | exec "hi Statement cterm=NONE ctermfg=" . <SID>X(27) . " ctermbg=" . "NONE" | |
197 | exec "hi Todo cterm=BOLD ctermfg=" . <SID>X(16) . " ctermbg=" . <SID>X(57) | |
198 | exec "hi Type cterm=NONE ctermfg=" . <SID>X(71) . " ctermbg=" . "NONE" | |
199 | exec "hi Underlined cterm=BOLD ctermfg=" . <SID>X(77) . " ctermbg=" . "NONE" | |
200 | exec "hi TaglistTagName cterm=BOLD ctermfg=" . <SID>X(39) . " ctermbg=" . "NONE" | |
201 | ||
202 | if v:version >= 700 | |
203 | exec "hi Pmenu cterm=NONE ctermfg=" . <SID>X(87) . " ctermbg=" . <SID>X(82) | |
204 | exec "hi PmenuSel cterm=BOLD ctermfg=" . <SID>X(87) . " ctermbg=" . <SID>X(38) | |
205 | exec "hi PmenuSbar cterm=BOLD ctermfg=" . <SID>X(87) . " ctermbg=" . <SID>X(39) | |
206 | exec "hi PmenuThumb cterm=BOLD ctermfg=" . <SID>X(87) . " ctermbg=" . <SID>X(39) | |
207 | ||
208 | exec "hi SpellBad cterm=NONE ctermbg=" . <SID>X(32) | |
209 | exec "hi SpellRare cterm=NONE ctermbg=" . <SID>X(33) | |
210 | exec "hi SpellLocal cterm=NONE ctermbg=" . <SID>X(36) | |
211 | exec "hi SpellCap cterm=NONE ctermbg=" . <SID>X(21) | |
212 | exec "hi MatchParen cterm=NONE ctermbg=" . <SID>X(14) . "ctermfg=" . <SID>X(25) | |
213 | endif | |
214 | endif | |
215 | ||
216 | " vim: set et : |