jiks.vim 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. " Vim color scheme
  2. " Name: jiks.vim
  3. " Author: Jikku Jose <jikkujose@gmail.com>
  4. " Version: 1.0
  5. " GetLatestVimScripts: 1891 1 :AutoInstall: jiks.vim
  6. " Based on the vividchalk for Vim by Tim Pope
  7. if has("gui_running")
  8. set background=dark
  9. endif
  10. hi clear
  11. if exists("syntax_on")
  12. syntax reset
  13. endif
  14. let colors_name = "jiks"
  15. " First two functions adapted from inkpot.vim
  16. " map a urxvt cube number to an xterm-256 cube number
  17. fun! s:M(a)
  18. return strpart("0245", a:a, 1) + 0
  19. endfun
  20. " map a urxvt colour to an xterm-256 colour
  21. fun! s:X(a)
  22. if &t_Co == 88
  23. return a:a
  24. else
  25. if a:a == 8
  26. return 237
  27. elseif a:a < 16
  28. return a:a
  29. elseif a:a > 79
  30. return 232 + (3 * (a:a - 80))
  31. else
  32. let l:b = a:a - 16
  33. let l:x = l:b % 4
  34. let l:y = (l:b / 4) % 4
  35. let l:z = (l:b / 16)
  36. return 16 + s:M(l:x) + (6 * s:M(l:y)) + (36 * s:M(l:z))
  37. endif
  38. endif
  39. endfun
  40. function! E2T(a)
  41. return s:X(a:a)
  42. endfunction
  43. function! s:choose(mediocre,good)
  44. if &t_Co != 88 && &t_Co != 256
  45. return a:mediocre
  46. else
  47. return s:X(a:good)
  48. endif
  49. endfunction
  50. function! s:hifg(group,guifg,first,second,...)
  51. if a:0 && &t_Co == 256
  52. let ctermfg = a:1
  53. else
  54. let ctermfg = s:choose(a:first,a:second)
  55. endif
  56. exe "highlight ".a:group." guifg=".a:guifg." ctermfg=".ctermfg
  57. endfunction
  58. function! s:hibg(group,guibg,first,second)
  59. let ctermbg = s:choose(a:first,a:second)
  60. exe "highlight ".a:group." guibg=".a:guibg." ctermbg=".ctermbg
  61. endfunction
  62. hi link railsMethod PreProc
  63. hi link rubyDefine Keyword
  64. hi link rubySymbol Constant
  65. hi link rubyAccess rubyMethod
  66. hi link rubyAttribute rubyMethod
  67. hi link rubyEval rubyMethod
  68. hi link rubyException rubyMethod
  69. hi link rubyInclude rubyMethod
  70. hi link rubyStringDelimiter rubyString
  71. hi link rubyRegexp Regexp
  72. hi link rubyRegexpDelimiter rubyRegexp
  73. "hi link rubyConstant Variable
  74. "hi link rubyGlobalVariable Variable
  75. "hi link rubyClassVariable Variable
  76. "hi link rubyInstanceVariable Variable
  77. hi link javascriptRegexpString Regexp
  78. hi link javascriptNumber Number
  79. hi link javascriptNull Constant
  80. highlight link diffAdded String
  81. highlight link diffRemoved Statement
  82. highlight link diffLine PreProc
  83. highlight link diffSubname Comment
  84. call s:hifg("Normal","#EEEEEE","White",87)
  85. if &background == "light" || has("gui_running")
  86. hi Normal guibg=Black ctermbg=Black
  87. else
  88. hi Normal guibg=Black ctermbg=NONE
  89. endif
  90. highlight StatusLine guifg=Black guibg=#aabbee gui=bold ctermfg=Black ctermbg=White cterm=bold
  91. highlight StatusLineNC guifg=#444444 guibg=#aaaaaa gui=none ctermfg=Black ctermbg=Grey cterm=none
  92. "if &t_Co == 256
  93. "highlight StatusLine ctermbg=117
  94. "else
  95. "highlight StatusLine ctermbg=43
  96. "endif
  97. highlight Ignore ctermfg=Black
  98. highlight WildMenu guifg=Black guibg=#ffff00 gui=bold ctermfg=Black ctermbg=Yellow cterm=bold
  99. highlight Cursor guifg=Black guibg=White ctermfg=Black ctermbg=White
  100. highlight CursorLine guibg=#333333 guifg=NONE
  101. highlight CursorColumn guibg=#333333 guifg=NONE
  102. highlight NonText guifg=#404040 ctermfg=8
  103. highlight SpecialKey guifg=#404040 ctermfg=8
  104. highlight Directory none
  105. high link Directory Identifier
  106. highlight ErrorMsg guibg=Red ctermbg=DarkRed guifg=NONE ctermfg=NONE
  107. highlight Search guifg=NONE ctermfg=NONE gui=none cterm=none
  108. call s:hibg("Search" ,"#555555","DarkBlue",81)
  109. highlight IncSearch guifg=White guibg=Black ctermfg=White ctermbg=Black
  110. highlight MoreMsg guifg=#00AA00 ctermfg=Green
  111. highlight LineNr guifg=#DDEEFF ctermfg=White
  112. call s:hibg("LineNr" ,"#222222","DarkBlue",80)
  113. highlight Question none
  114. high link Question MoreMsg
  115. highlight Title guifg=Magenta ctermfg=Magenta
  116. highlight VisualNOS gui=none cterm=none
  117. call s:hibg("Visual" ,"#555577","LightBlue",83)
  118. call s:hibg("VisualNOS" ,"#444444","DarkBlue",81)
  119. call s:hibg("MatchParen","#1100AA","DarkBlue",18)
  120. highlight WarningMsg guifg=Red ctermfg=Red
  121. highlight Error ctermbg=DarkRed
  122. highlight SpellBad ctermbg=DarkRed
  123. " FIXME: Comments
  124. highlight SpellRare ctermbg=DarkMagenta
  125. highlight SpellCap ctermbg=DarkBlue
  126. highlight SpellLocal ctermbg=DarkCyan
  127. call s:hibg("Folded" ,"#333333","LightGray",7)
  128. call s:hifg("Folded" ,"#aaddee","LightCyan",63)
  129. highlight FoldColumn none
  130. high link FoldColumn Folded
  131. highlight DiffAdd ctermbg=4 guibg=DarkBlue
  132. highlight DiffChange ctermbg=5 guibg=DarkMagenta
  133. highlight DiffDelete ctermfg=12 ctermbg=6 gui=bold guifg=Blue guibg=DarkCyan
  134. highlight DiffText ctermbg=DarkRed
  135. highlight DiffText cterm=bold ctermbg=9 gui=bold guibg=Red
  136. highlight Pmenu guifg=White ctermfg=White gui=bold cterm=bold
  137. highlight PmenuSel guifg=White ctermfg=White gui=bold cterm=bold
  138. call s:hibg("Pmenu" ,"#000099","Blue",18)
  139. call s:hibg("PmenuSel" ,"#5555ff","DarkCyan",39)
  140. highlight PmenuSbar guibg=Grey ctermbg=Grey
  141. highlight PmenuThumb guibg=White ctermbg=White
  142. highlight TabLine gui=underline cterm=underline
  143. call s:hifg("TabLine" ,"#bbbbbb","LightGrey",85)
  144. call s:hibg("TabLine" ,"#333333","DarkGrey",80)
  145. highlight TabLineSel guifg=White guibg=Black ctermfg=White ctermbg=Black
  146. highlight TabLineFill gui=underline cterm=underline
  147. call s:hifg("TabLineFill","#bbbbbb","LightGrey",85)
  148. call s:hibg("TabLineFill","#808080","Grey",83)
  149. hi Type gui=none
  150. hi Statement gui=none
  151. if !has("gui_mac")
  152. " Mac GUI degrades italics to ugly underlining.
  153. hi Comment gui=italic
  154. hi railsUserClass gui=italic
  155. hi railsUserMethod gui=italic
  156. endif
  157. hi Identifier cterm=none
  158. " Commented numbers at the end are *old* 256 color values
  159. "highlight PreProc guifg=#EDF8F9
  160. call s:hifg("Comment" ,"#9933CC","DarkMagenta",34) " 92
  161. " 26 instead?
  162. call s:hifg("Constant" ,"#339999","DarkCyan",21) " 30
  163. call s:hifg("rubyNumber" ,"#CCFF33","Yellow",60) " 190
  164. call s:hifg("String" ,"#66FF00","LightGreen",44,82) " 82
  165. call s:hifg("Identifier" ,"#FFCC00","Yellow",72) " 220
  166. call s:hifg("Statement" ,"#FF6600","Brown",68) " 202
  167. call s:hifg("PreProc" ,"#AAFFFF","LightCyan",47) " 213
  168. call s:hifg("railsUserMethod","#AACCFF","LightCyan",27)
  169. call s:hifg("Type" ,"#AAAA77","Grey",57) " 101
  170. call s:hifg("railsUserClass" ,"#AAAAAA","Grey",7) " 101
  171. call s:hifg("Special" ,"#33AA00","DarkGreen",24) " 7
  172. call s:hifg("Regexp" ,"#44B4CC","DarkCyan",21) " 74
  173. call s:hifg("rubyMethod" ,"#DDE93D","Yellow",77) " 191
  174. "highlight railsMethod guifg=#EE1122 ctermfg=1