citadel

My dotfiles, scripts and nix configs
git clone git://jb55.com/citadel
Log | Files | Refs | README | LICENSE

inkpot.vim (10740B)


      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 :