hybrid_material.vim 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471
  1. " File: hybrid_material.vim
  2. " Maintainer: Kristijan Husak (kristijanhusak)
  3. " URL: https://github.com/kristijanhusak/vim-hybrid-material
  4. " BASED ON: https://github.com/w0ng/vim-hybrid
  5. " Modified: 16 Apr 2016
  6. " License: MIT
  7. " Description:"{{{
  8. " ----------------------------------------------------------------------------
  9. "
  10. " The default RGB colour palette is taken from Tomorrow-Night.vim:
  11. " https://github.com/chriskempson/vim-tomorrow-theme
  12. "
  13. " The reduced RGB colour palette is taken from Codecademy's online editor:
  14. " https://www.codecademy.com/learn
  15. "
  16. " The syntax highlighting scheme is taken from jellybeans.vim:
  17. " https://github.com/nanotech/jellybeans.vim
  18. "
  19. " The is code taken from solarized.vim:
  20. " https://github.com/altercation/vim-colors-solarized
  21. "}}}
  22. " Requirements And Recommendations:"{{{
  23. " ----------------------------------------------------------------------------
  24. " Requirements
  25. " - gVim 7.3+ on Linux, Mac and Windows.
  26. " - Vim 7.3+ on Linux and Mac, using a terminal that supports 256 colours.
  27. "
  28. " Due to the limited 256 palette, colours in Vim and gVim will still be slightly
  29. " different.
  30. "
  31. " In order to have Vim use the same colours as gVim (the way this colour scheme
  32. " is intended), it is recommended that you define the basic 16 colours in your
  33. " terminal.
  34. "
  35. " For Linux users (rxvt-unicode, xterm):
  36. "
  37. " 1. Add the default palette to ~/.Xresources:
  38. "
  39. " https://gist.github.com/3278077
  40. "
  41. " or alternatively, add the reduced contrast palette to ~/.Xresources:
  42. "
  43. " https://gist.github.com/w0ng/16e33902508b4a0350ae
  44. "
  45. " 2. Add to ~/.vimrc:
  46. "
  47. " let g:hybrid_custom_term_colors = 1
  48. " let g:hybrid_reduced_contrast = 1 " Remove this line if using the default palette.
  49. " colorscheme hybrid
  50. "
  51. " For OSX users (iTerm):
  52. "
  53. " 1. Import the default colour preset into iTerm:
  54. "
  55. " https://raw.githubusercontent.com/w0ng/dotfiles/master/iterm2/hybrid.itermcolors
  56. "
  57. " or alternatively, import the reduced contrast color preset into iTerm:
  58. "
  59. " https://raw.githubusercontent.com/w0ng/dotfiles/master/iterm2/hybrid-reduced-contrast.itermcolors
  60. "
  61. " 2. Add to ~/.vimrc:
  62. "
  63. " let g:hybrid_custom_term_colors = 1
  64. " let g:hybrid_reduced_contrast = 1 " Remove this line if using the default palette.
  65. " colorscheme hybrid
  66. "}}}
  67. " Initialisation:"{{{
  68. " ----------------------------------------------------------------------------
  69. hi clear
  70. if exists("syntax_on")
  71. syntax reset
  72. endif
  73. let s:style = &background
  74. let g:colors_name = "hybrid_material"
  75. "}}}
  76. " GUI And Cterm Palettes:"{{{
  77. " ----------------------------------------------------------------------------
  78. let s:palette = {'gui' : {} , 'cterm' : {}}
  79. let s:gui_background = "#263238"
  80. let s:gui_selection = "#455A64"
  81. let s:gui_line = "#212D32"
  82. let s:gui_comment = "#707880"
  83. let s:palette.gui.background = { 'dark' : s:gui_background , 'light' : "#e4e4e4" }
  84. let s:palette.gui.foreground = { 'dark' : "#c5c8c6" , 'light' : "#000000" }
  85. let s:palette.gui.selection = { 'dark' : s:gui_selection , 'light' : "#bcbcbc" }
  86. let s:palette.gui.line = { 'dark' : s:gui_line , 'light' : "#d0d0d0" }
  87. let s:palette.gui.comment = { 'dark' : s:gui_comment , 'light' : "#5f5f5f" }
  88. let s:palette.gui.red = { 'dark' : "#cc6666" , 'light' : "#5f0000" }
  89. let s:palette.gui.orange = { 'dark' : "#de935f" , 'light' : "#875f00" }
  90. let s:palette.gui.yellow = { 'dark' : "#f0c674" , 'light' : "#5f5f00" }
  91. let s:palette.gui.green = { 'dark' : "#b5bd68" , 'light' : "#005f00" }
  92. let s:palette.gui.aqua = { 'dark' : "#8abeb7" , 'light' : "#005f5f" }
  93. let s:palette.gui.blue = { 'dark' : "#81a2be" , 'light' : "#00005f" }
  94. let s:palette.gui.purple = { 'dark' : "#b294bb" , 'light' : "#5f005f" }
  95. let s:palette.gui.window = { 'dark' : s:gui_selection , 'light' : "#9e9e9e" }
  96. let s:palette.gui.darkcolumn = { 'dark' : "#1c1c1c" , 'light' : "#808080" }
  97. let s:palette.gui.addbg = { 'dark' : "#5F875F" , 'light' : "#d7ffd7" }
  98. let s:palette.gui.addfg = { 'dark' : "#d7ffaf" , 'light' : "#005f00" }
  99. let s:palette.gui.changebg = { 'dark' : "#5F5F87" , 'light' : "#d7d7ff" }
  100. let s:palette.gui.changefg = { 'dark' : "#d7d7ff" , 'light' : "#5f005f" }
  101. let s:palette.gui.delbg = { 'dark' : "#cc6666" , 'light' : "#ffd7d7" }
  102. let s:palette.gui.darkblue = { 'dark' : "#00005f" , 'light' : "#d7ffd7" }
  103. let s:palette.gui.darkcyan = { 'dark' : "#005f5f" , 'light' : "#005f00" }
  104. let s:palette.gui.darkred = { 'dark' : "#5f0000" , 'light' : "#d7d7ff" }
  105. let s:palette.gui.darkpurple = { 'dark' : "#5f005f" , 'light' : "#5f005f" }
  106. if exists("g:hybrid_custom_term_colors") && g:hybrid_custom_term_colors == 1
  107. let s:cterm_foreground = "15" " White
  108. let s:cterm_selection = "8" " DarkGrey
  109. let s:cterm_line = "0" " Black
  110. let s:cterm_comment = "7" " LightGrey
  111. let s:cterm_red = "9" " LightRed
  112. let s:cterm_orange = "3" " DarkYellow
  113. let s:cterm_yellow = "11" " LightYellow
  114. let s:cterm_green = "10" " LightGreen
  115. let s:cterm_aqua = "14" " LightCyan
  116. let s:cterm_blue = "12" " LightBlue
  117. let s:cterm_purple = "13" " LightMagenta
  118. let s:cterm_delbg = "9" " LightRed
  119. else
  120. let s:cterm_foreground = "250"
  121. let s:cterm_selection = "237"
  122. let s:cterm_line = "235"
  123. let s:cterm_comment = "243"
  124. let s:cterm_red = "167"
  125. let s:cterm_orange = "173"
  126. let s:cterm_yellow = "221"
  127. let s:cterm_green = "143"
  128. let s:cterm_aqua = "109"
  129. let s:cterm_blue = "110"
  130. let s:cterm_purple = "139"
  131. let s:cterm_delbg = "167"
  132. endif
  133. let s:palette.cterm.background = { 'dark' : "234" , 'light' : "254" }
  134. let s:palette.cterm.foreground = { 'dark' : s:cterm_foreground , 'light' : "16" }
  135. let s:palette.cterm.window = { 'dark' : "236" , 'light' : "247" }
  136. let s:palette.cterm.selection = { 'dark' : s:cterm_selection , 'light' : "250" }
  137. let s:palette.cterm.line = { 'dark' : s:cterm_line , 'light' : "252" }
  138. let s:palette.cterm.comment = { 'dark' : s:cterm_comment , 'light' : "59" }
  139. let s:palette.cterm.red = { 'dark' : s:cterm_red , 'light' : "52" }
  140. let s:palette.cterm.orange = { 'dark' : s:cterm_orange , 'light' : "94" }
  141. let s:palette.cterm.yellow = { 'dark' : s:cterm_yellow , 'light' : "58" }
  142. let s:palette.cterm.green = { 'dark' : s:cterm_green , 'light' : "22" }
  143. let s:palette.cterm.aqua = { 'dark' : s:cterm_aqua , 'light' : "23" }
  144. let s:palette.cterm.blue = { 'dark' : s:cterm_blue , 'light' : "17" }
  145. let s:palette.cterm.purple = { 'dark' : s:cterm_purple , 'light' : "53" }
  146. let s:palette.cterm.darkcolumn = { 'dark' : "234" , 'light' : "244" }
  147. let s:palette.cterm.addbg = { 'dark' : "65" , 'light' : "194" }
  148. let s:palette.cterm.addfg = { 'dark' : "193" , 'light' : "22" }
  149. let s:palette.cterm.changebg = { 'dark' : "60" , 'light' : "189" }
  150. let s:palette.cterm.changefg = { 'dark' : "189" , 'light' : "53" }
  151. let s:palette.cterm.delbg = { 'dark' : s:cterm_delbg , 'light' : "224" }
  152. let s:palette.cterm.darkblue = { 'dark' : "17" , 'light' : "194" }
  153. let s:palette.cterm.darkcyan = { 'dark' : "24" , 'light' : "22" }
  154. let s:palette.cterm.darkred = { 'dark' : "52" , 'light' : "189" }
  155. let s:palette.cterm.darkpurple = { 'dark' : "53" , 'light' : "53" }
  156. "}}}
  157. " Formatting Options:"{{{
  158. " ----------------------------------------------------------------------------
  159. let s:none = "NONE"
  160. let s:t_none = "NONE"
  161. let s:n = "NONE"
  162. let s:c = ",undercurl"
  163. let s:r = ",reverse"
  164. let s:s = ",standout"
  165. let s:b = ",bold"
  166. let s:u = ",underline"
  167. let s:i = ",italic"
  168. "}}}
  169. " Highlighting Primitives:"{{{
  170. " ----------------------------------------------------------------------------
  171. function! s:build_prim(hi_elem, field)
  172. " Given a:hi_elem = bg, a:field = comment
  173. let l:vname = "s:" . a:hi_elem . "_" . a:field " s:bg_comment
  174. let l:gui_assign = "gui".a:hi_elem."=".s:palette.gui[a:field][s:style] " guibg=...
  175. let l:cterm_assign = "cterm".a:hi_elem."=".s:palette.cterm[a:field][s:style] " ctermbg=...
  176. exe "let " . l:vname . " = ' " . l:gui_assign . " " . l:cterm_assign . "'"
  177. endfunction
  178. let s:bg_none = ' guibg=NONE ctermbg=NONE'
  179. call s:build_prim('bg', 'foreground')
  180. call s:build_prim('bg', 'background')
  181. call s:build_prim('bg', 'selection')
  182. call s:build_prim('bg', 'line')
  183. call s:build_prim('bg', 'comment')
  184. call s:build_prim('bg', 'red')
  185. call s:build_prim('bg', 'orange')
  186. call s:build_prim('bg', 'yellow')
  187. call s:build_prim('bg', 'green')
  188. call s:build_prim('bg', 'aqua')
  189. call s:build_prim('bg', 'blue')
  190. call s:build_prim('bg', 'purple')
  191. call s:build_prim('bg', 'window')
  192. call s:build_prim('bg', 'darkcolumn')
  193. call s:build_prim('bg', 'addbg')
  194. call s:build_prim('bg', 'addfg')
  195. call s:build_prim('bg', 'changebg')
  196. call s:build_prim('bg', 'changefg')
  197. call s:build_prim('bg', 'delbg')
  198. call s:build_prim('bg', 'darkblue')
  199. call s:build_prim('bg', 'darkcyan')
  200. call s:build_prim('bg', 'darkred')
  201. call s:build_prim('bg', 'darkpurple')
  202. let s:fg_none = ' guifg=NONE ctermfg=NONE'
  203. call s:build_prim('fg', 'foreground')
  204. call s:build_prim('fg', 'background')
  205. call s:build_prim('fg', 'selection')
  206. call s:build_prim('fg', 'line')
  207. call s:build_prim('fg', 'comment')
  208. call s:build_prim('fg', 'red')
  209. call s:build_prim('fg', 'orange')
  210. call s:build_prim('fg', 'yellow')
  211. call s:build_prim('fg', 'green')
  212. call s:build_prim('fg', 'aqua')
  213. call s:build_prim('fg', 'blue')
  214. call s:build_prim('fg', 'purple')
  215. call s:build_prim('fg', 'window')
  216. call s:build_prim('fg', 'darkcolumn')
  217. call s:build_prim('fg', 'addbg')
  218. call s:build_prim('fg', 'addfg')
  219. call s:build_prim('fg', 'changebg')
  220. call s:build_prim('fg', 'changefg')
  221. call s:build_prim('fg', 'darkblue')
  222. call s:build_prim('fg', 'darkcyan')
  223. call s:build_prim('fg', 'darkred')
  224. call s:build_prim('fg', 'darkpurple')
  225. exe "let s:fmt_none = ' gui=NONE". " cterm=NONE". " term=NONE" ."'"
  226. exe "let s:fmt_bold = ' gui=NONE".s:b. " cterm=NONE".s:b. " term=NONE".s:b ."'"
  227. exe "let s:fmt_bldi = ' gui=NONE".s:b. " cterm=NONE".s:b. " term=NONE".s:b ."'"
  228. exe "let s:fmt_undr = ' gui=NONE".s:u. " cterm=NONE".s:u. " term=NONE".s:u ."'"
  229. exe "let s:fmt_undb = ' gui=NONE".s:u.s:b. " cterm=NONE".s:u.s:b. " term=NONE".s:u.s:b."'"
  230. exe "let s:fmt_undi = ' gui=NONE".s:u. " cterm=NONE".s:u. " term=NONE".s:u ."'"
  231. exe "let s:fmt_curl = ' gui=NONE".s:c. " cterm=NONE".s:c. " term=NONE".s:c ."'"
  232. exe "let s:fmt_ital = ' gui=NONE".s:i. " cterm=NONE".s:i. " term=NONE".s:i ."'"
  233. exe "let s:fmt_stnd = ' gui=NONE".s:s. " cterm=NONE".s:s. " term=NONE".s:s ."'"
  234. exe "let s:fmt_revr = ' gui=NONE".s:r. " cterm=NONE".s:r. " term=NONE".s:r ."'"
  235. exe "let s:fmt_revb = ' gui=NONE".s:r.s:b. " cterm=NONE".s:r.s:b. " term=NONE".s:r.s:b."'"
  236. exe "let s:sp_none = ' guisp=". s:none ."'"
  237. exe "let s:sp_foreground = ' guisp=". s:palette.gui.foreground[s:style] ."'"
  238. exe "let s:sp_background = ' guisp=". s:palette.gui.background[s:style] ."'"
  239. exe "let s:sp_selection = ' guisp=". s:palette.gui.selection[s:style] ."'"
  240. exe "let s:sp_line = ' guisp=". s:palette.gui.line[s:style] ."'"
  241. exe "let s:sp_comment = ' guisp=". s:palette.gui.comment[s:style] ."'"
  242. exe "let s:sp_red = ' guisp=". s:palette.gui.red[s:style] ."'"
  243. exe "let s:sp_orange = ' guisp=". s:palette.gui.orange[s:style] ."'"
  244. exe "let s:sp_yellow = ' guisp=". s:palette.gui.yellow[s:style] ."'"
  245. exe "let s:sp_green = ' guisp=". s:palette.gui.green[s:style] ."'"
  246. exe "let s:sp_aqua = ' guisp=". s:palette.gui.aqua[s:style] ."'"
  247. exe "let s:sp_blue = ' guisp=". s:palette.gui.blue[s:style] ."'"
  248. exe "let s:sp_purple = ' guisp=". s:palette.gui.purple[s:style] ."'"
  249. exe "let s:sp_window = ' guisp=". s:palette.gui.window[s:style] ."'"
  250. exe "let s:sp_addbg = ' guisp=". s:palette.gui.addbg[s:style] ."'"
  251. exe "let s:sp_addfg = ' guisp=". s:palette.gui.addfg[s:style] ."'"
  252. exe "let s:sp_changebg = ' guisp=". s:palette.gui.changebg[s:style] ."'"
  253. exe "let s:sp_changefg = ' guisp=". s:palette.gui.changefg[s:style] ."'"
  254. exe "let s:sp_darkblue = ' guisp=". s:palette.gui.darkblue[s:style] ."'"
  255. exe "let s:sp_darkcyan = ' guisp=". s:palette.gui.darkcyan[s:style] ."'"
  256. exe "let s:sp_darkred = ' guisp=". s:palette.gui.darkred[s:style] ."'"
  257. exe "let s:sp_darkpurple = ' guisp=". s:palette.gui.darkpurple[s:style] ."'"
  258. " Set bold font depending on options
  259. if exists("g:enable_bold_font") && g:enable_bold_font == 1
  260. let s:fg_bold = s:fmt_bold
  261. else
  262. let s:fg_bold = s:fmt_none
  263. endif
  264. " Set italic font depending on options
  265. if exists("g:enable_italic_font") && g:enable_italic_font == 1
  266. let s:fg_italic = s:fmt_ital
  267. else
  268. let s:fg_italic = s:fmt_none
  269. endif
  270. "}}}
  271. " Vim Highlighting: (see :help highlight-groups)"{{{
  272. " ----------------------------------------------------------------------------
  273. exe "hi! ColorColumn" .s:fg_none .s:bg_line .s:fmt_none
  274. exe "hi! Conceal" .s:fg_orange .s:bg_none .s:fmt_none
  275. " Cursor"
  276. " CursorIM"
  277. exe "hi! CursorColumn" .s:fg_none .s:bg_line .s:fmt_none
  278. exe "hi! CursorLine" .s:fg_none .s:bg_line .s:fmt_none
  279. exe "hi! Directory" .s:fg_blue .s:bg_none .s:fmt_none
  280. exe "hi! DiffAdd" .s:fg_addfg .s:bg_addbg .s:fmt_none
  281. exe "hi! DiffChange" .s:fg_changefg .s:bg_changebg .s:fmt_none
  282. exe "hi! DiffDelete" .s:fg_background .s:bg_delbg .s:fmt_none
  283. exe "hi! DiffText" .s:fg_background .s:bg_blue .s:fmt_none
  284. exe "hi! ErrorMsg" .s:fg_background .s:bg_red .s:fmt_stnd
  285. exe "hi! VertSplit" .s:fg_window .s:bg_none .s:fmt_none
  286. exe "hi! Folded" .s:fg_comment .s:bg_darkcolumn .s:fmt_none
  287. exe "hi! FoldColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none
  288. exe "hi! SignColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none
  289. " Incsearch"
  290. exe "hi! LineNr" .s:fg_selection .s:bg_none .s:fmt_none
  291. exe "hi! CursorLineNr" .s:fg_yellow .s:bg_none .s:fg_bold
  292. exe "hi! MatchParen" .s:fg_aqua .s:bg_changebg .s:fg_bold
  293. exe "hi! ModeMsg" .s:fg_green .s:bg_none .s:fmt_none
  294. exe "hi! MoreMsg" .s:fg_green .s:bg_none .s:fmt_none
  295. exe "hi! NonText" .s:fg_selection .s:bg_none .s:fmt_none
  296. exe "hi! Pmenu" .s:fg_foreground .s:bg_selection .s:fmt_none
  297. exe "hi! PmenuSel" .s:fg_foreground .s:bg_selection .s:fmt_revr
  298. " PmenuSbar"
  299. " PmenuThumb"
  300. exe "hi! Question" .s:fg_green .s:bg_none .s:fmt_none
  301. exe "hi! Search" .s:fg_background .s:bg_yellow .s:fmt_none
  302. exe "hi! SpecialKey" .s:fg_selection .s:bg_none .s:fmt_none
  303. exe "hi! SpellCap" .s:fg_blue .s:bg_none .s:fmt_undr
  304. exe "hi! SpellLocal" .s:fg_aqua .s:bg_none .s:fmt_undr
  305. exe "hi! SpellBad" .s:fg_red .s:bg_none .s:fmt_undr
  306. exe "hi! SpellRare" .s:fg_purple .s:bg_none .s:fmt_undr
  307. exe "hi! StatusLine" .s:fg_foreground .s:bg_selection .s:fg_bold
  308. exe "hi! StatusLineNC" .s:fg_window .s:bg_comment .s:fmt_none
  309. exe "hi! TabLine" .s:fg_foreground .s:bg_darkcolumn .s:fmt_revr
  310. " TabLineFill"
  311. " TabLineSel"
  312. exe "hi! Title" .s:fg_yellow .s:bg_none .s:fmt_none
  313. exe "hi! Visual" .s:fg_none .s:bg_selection .s:fmt_none
  314. " VisualNos"
  315. exe "hi! WarningMsg" .s:fg_red .s:bg_none .s:fmt_none
  316. " FIXME LongLineWarning to use variables instead of hardcoding
  317. hi LongLineWarning guifg=NONE guibg=#371F1C gui=underline ctermfg=NONE ctermbg=NONE cterm=underline
  318. " WildMenu"
  319. " Use defined custom background colour for terminal Vim.
  320. if !has('gui_running') && exists("g:hybrid_custom_term_colors") && g:hybrid_custom_term_colors == 1
  321. let s:bg_normal = s:bg_none
  322. else
  323. let s:bg_normal = s:bg_background
  324. endif
  325. let s:normal_bg = s:bg_normal
  326. if get(g:, 'hybrid_transparent_background', 0) == 1
  327. let s:normal_bg = s:bg_none
  328. endif
  329. exe "hi! Normal" .s:fg_foreground .s:normal_bg .s:fmt_none
  330. "}}}
  331. " Generic Syntax Highlighting: (see :help group-name)"{{{
  332. " ----------------------------------------------------------------------------
  333. exe "hi! Comment" .s:fg_comment .s:bg_none .s:fg_italic
  334. exe "hi! Constant" .s:fg_purple .s:bg_none .s:fmt_none
  335. exe "hi! String" .s:fg_green .s:bg_none .s:fmt_none
  336. " Character"
  337. " Number"
  338. " Boolean"
  339. " Float"
  340. exe "hi! Identifier" .s:fg_red .s:bg_none .s:fmt_none
  341. exe "hi! Function" .s:fg_yellow .s:bg_none .s:fg_bold
  342. exe "hi! Statement" .s:fg_blue .s:bg_none .s:fg_bold
  343. " Conditional"
  344. " Repeat"
  345. " Label"
  346. exe "hi! Operator" .s:fg_aqua .s:bg_none .s:fmt_none
  347. " Keyword"
  348. " Exception"
  349. exe "hi! PreProc" .s:fg_aqua .s:bg_none .s:fg_bold
  350. " Include"
  351. " Define"
  352. " Macro"
  353. " PreCondit"
  354. exe "hi! Type" .s:fg_orange .s:bg_none .s:fg_bold
  355. " StorageClass"
  356. exe "hi! Structure" .s:fg_aqua .s:bg_none .s:fmt_none
  357. " Typedef"
  358. exe "hi! Special" .s:fg_red .s:bg_none .s:fmt_none
  359. " SpecialChar"
  360. " Tag"
  361. " Delimiter"
  362. " SpecialComment"
  363. " Debug"
  364. "
  365. exe "hi! Underlined" .s:fg_blue .s:bg_none .s:fmt_none
  366. exe "hi! Ignore" .s:fg_none .s:bg_none .s:fmt_none
  367. exe "hi! Error" .s:fg_red .s:bg_none .s:fmt_none
  368. exe "hi! Todo" .s:fg_addfg .s:bg_none .s:fg_bold
  369. " Quickfix window highlighting
  370. exe "hi! qfLineNr" .s:fg_yellow .s:bg_none .s:fmt_none
  371. " qfFileName"
  372. " qfLineNr"
  373. " qfError"
  374. "}}}
  375. " Diff Syntax Highlighting:"{{{
  376. " ----------------------------------------------------------------------------
  377. " Diff
  378. " diffOldFile
  379. " diffNewFile
  380. " diffFile
  381. " diffOnly
  382. " diffIdentical
  383. " diffDiffer
  384. " diffBDiffer
  385. " diffIsA
  386. " diffNoEOL
  387. " diffCommon
  388. hi! link diffRemoved Special
  389. " diffChanged
  390. hi! link diffAdded String
  391. " diffLine
  392. " diffSubname
  393. " diffComment
  394. "}}}
  395. "
  396. " This is needed for some reason: {{{
  397. let &background = s:style
  398. " }}}
  399. " Legal:"{{{
  400. " ----------------------------------------------------------------------------
  401. " Copyright (c) 2011 Ethan Schoonover
  402. " Copyright (c) 2009-2012 NanoTech
  403. " Copyright (c) 2012 w0ng
  404. "
  405. " Permission is hereby granted, free of charge, to any per‐
  406. " son obtaining a copy of this software and associated doc‐
  407. " umentation files (the “Software”), to deal in the Soft‐
  408. " ware without restriction, including without limitation
  409. " the rights to use, copy, modify, merge, publish, distrib‐
  410. " ute, sublicense, and/or sell copies of the Software, and
  411. " to permit persons to whom the Software is furnished to do
  412. " so, subject to the following conditions:
  413. "
  414. " The above copyright notice and this permission notice
  415. " shall be included in all copies or substantial portions
  416. " of the Software.
  417. "
  418. " THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY
  419. " KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  420. " THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICU‐
  421. " LAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  422. " AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
  423. " DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CON‐
  424. " TRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON‐
  425. " NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  426. " THE SOFTWARE.
  427. " }}}