12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610 |
- " -----------------------------------------------------------------------------
- " File: gruvbox.vim
- " Description: Retro groove color scheme for Vim
- " Author: morhetz <morhetz@gmail.com>
- " Source: https://github.com/gruvbox-community/gruvbox
- " -----------------------------------------------------------------------------
- " Supporting code -------------------------------------------------------------
- " Initialisation: {{{
- if version > 580
- hi clear
- if exists("syntax_on")
- syntax reset
- endif
- endif
- let g:colors_name='gruvbox'
- if !(has('termguicolors') && &termguicolors) && !has('gui_running') && &t_Co != 256
- finish
- endif
- " }}}
- " Global Settings: {{{
- if !exists('g:gruvbox_bold')
- let g:gruvbox_bold=1
- endif
- if !exists('g:gruvbox_italic')
- if has('gui_running') || $TERM_ITALICS == 'true'
- let g:gruvbox_italic=1
- else
- let g:gruvbox_italic=0
- endif
- endif
- if !exists('g:gruvbox_undercurl')
- let g:gruvbox_undercurl=1
- endif
- if !exists('g:gruvbox_underline')
- let g:gruvbox_underline=1
- endif
- if !exists('g:gruvbox_inverse')
- let g:gruvbox_inverse=1
- endif
- if !exists('g:gruvbox_guisp_fallback') || index(['fg', 'bg'], g:gruvbox_guisp_fallback) == -1
- let g:gruvbox_guisp_fallback='NONE'
- endif
- if !exists('g:gruvbox_improved_strings')
- let g:gruvbox_improved_strings=0
- endif
- if !exists('g:gruvbox_improved_warnings')
- let g:gruvbox_improved_warnings=0
- endif
- if !exists('g:gruvbox_termcolors')
- let g:gruvbox_termcolors=256
- endif
- if !exists('g:gruvbox_invert_indent_guides')
- let g:gruvbox_invert_indent_guides=0
- endif
- if exists('g:gruvbox_contrast')
- echo 'g:gruvbox_contrast is deprecated; use g:gruvbox_contrast_light and g:gruvbox_contrast_dark instead'
- endif
- if !exists('g:gruvbox_contrast_dark')
- let g:gruvbox_contrast_dark='medium'
- endif
- if !exists('g:gruvbox_contrast_light')
- let g:gruvbox_contrast_light='medium'
- endif
- let s:is_dark=(&background == 'dark')
- " }}}
- " Palette Utility Functions: {{{
- function! s:Color(name, default, ...)
- " color already set, validate option
- if has_key(s:gb, a:name)
- let l:color = s:gb[a:name]
- if type(l:color) == type('')
- " gui color only
- let s:gb[a:name] = copy(a:default)
- let s:gb[a:name][0] = l:color
- return 1
- elseif type(l:color) == type(0)
- " terminal color only
- let s:gb[a:name] = copy(a:default)
- let s:gb[a:name][1] = l:color
- return 1
- elseif type(l:color) == type([])
- \ && len(l:color) == 2
- \ && type(l:color[0]) == type('')
- \ && type(l:color[1]) == type(0)
- " gui and terminal color
- return 1
- else
- " invalid value
- echo a:name 'is invalid, usage: let g:gruvbox_colors.color = (["#ffffff", 255]|"#ffffff"|255)'
- return 0
- endif
- endif
- " set default option
- let s:gb[a:name] = a:default
- return 1
- endfunction
- " }}}
- " Palette: {{{
- " get the global gruvbox palette options, if any
- let g:gruvbox_colors = get(g:, 'gruvbox_colors', {})
- " initialize the script palette
- let s:gb = copy(g:gruvbox_colors)
- let g:current_gruvbox_colors = s:gb
- " set palette default colors
- call s:Color('dark0_hard', ['#1d2021', 234]) " 29-32-33
- call s:Color('dark0', ['#282828', 235]) " 40-40-40
- call s:Color('dark0_soft', ['#32302f', 236]) " 50-48-47
- call s:Color('dark1', ['#3c3836', 237]) " 60-56-54
- call s:Color('dark2', ['#504945', 239]) " 80-73-69
- call s:Color('dark3', ['#665c54', 241]) " 102-92-84
- call s:Color('dark4', ['#7c6f64', 243]) " 124-111-100
- call s:Color('dark4_256', ['#7c6f64', 243]) " 124-111-100
- call s:Color('gray_245', ['#928374', 245]) " 146-131-116
- call s:Color('gray_244', ['#928374', 244]) " 146-131-116
- call s:Color('light0_hard', ['#f9f5d7', 230]) " 249-245-215
- call s:Color('light0', ['#fbf1c7', 229]) " 253-244-193
- call s:Color('light0_soft', ['#f2e5bc', 228]) " 242-229-188
- call s:Color('light1', ['#ebdbb2', 223]) " 235-219-178
- call s:Color('light2', ['#d5c4a1', 250]) " 213-196-161
- call s:Color('light3', ['#bdae93', 248]) " 189-174-147
- call s:Color('light4', ['#a89984', 246]) " 168-153-132
- call s:Color('light4_256', ['#a89984', 246]) " 168-153-132
- call s:Color('bright_red', ['#fb4934', 167]) " 251-73-52
- call s:Color('bright_green', ['#b8bb26', 142]) " 184-187-38
- call s:Color('bright_yellow', ['#fabd2f', 214]) " 250-189-47
- call s:Color('bright_blue', ['#83a598', 109]) " 131-165-152
- call s:Color('bright_purple', ['#d3869b', 175]) " 211-134-155
- call s:Color('bright_aqua', ['#8ec07c', 108]) " 142-192-124
- call s:Color('bright_orange', ['#fe8019', 208]) " 254-128-25
- call s:Color('neutral_red', ['#cc241d', 124]) " 204-36-29
- call s:Color('neutral_green', ['#98971a', 106]) " 152-151-26
- call s:Color('neutral_yellow', ['#d79921', 172]) " 215-153-33
- call s:Color('neutral_blue', ['#458588', 66]) " 69-133-136
- call s:Color('neutral_purple', ['#b16286', 132]) " 177-98-134
- call s:Color('neutral_aqua', ['#689d6a', 72]) " 104-157-106
- call s:Color('neutral_orange', ['#d65d0e', 166]) " 214-93-14
- call s:Color('faded_red', ['#9d0006', 88]) " 157-0-6
- call s:Color('faded_green', ['#79740e', 100]) " 121-116-14
- call s:Color('faded_yellow', ['#b57614', 136]) " 181-118-20
- call s:Color('faded_blue', ['#076678', 24]) " 7-102-120
- call s:Color('faded_purple', ['#8f3f71', 96]) " 143-63-113
- call s:Color('faded_aqua', ['#427b58', 65]) " 66-123-88
- call s:Color('faded_orange', ['#af3a03', 130]) " 175-58-3
- " }}}
- " Setup Emphasis: {{{
- let s:bold = 'bold,'
- if g:gruvbox_bold == 0
- let s:bold = ''
- endif
- let s:italic = 'italic,'
- if g:gruvbox_italic == 0
- let s:italic = ''
- endif
- let s:underline = 'underline,'
- if g:gruvbox_underline == 0
- let s:underline = ''
- endif
- let s:undercurl = 'undercurl,'
- if g:gruvbox_undercurl == 0
- let s:undercurl = ''
- endif
- let s:inverse = 'inverse,'
- if g:gruvbox_inverse == 0
- let s:inverse = ''
- endif
- " }}}
- " Setup Colors: {{{
- let s:vim_bg = ['bg', 'bg']
- let s:vim_fg = ['fg', 'fg']
- let s:none = ['NONE', 'NONE']
- " determine relative colors
- if s:is_dark
- let s:bg0 = s:gb.dark0
- if g:gruvbox_contrast_dark == 'soft'
- let s:bg0 = s:gb.dark0_soft
- elseif g:gruvbox_contrast_dark == 'hard'
- let s:bg0 = s:gb.dark0_hard
- endif
- let s:bg1 = s:gb.dark1
- let s:bg2 = s:gb.dark2
- let s:bg3 = s:gb.dark3
- let s:bg4 = s:gb.dark4
- let s:gray = s:gb.gray_245
- let s:fg0 = s:gb.light0
- let s:fg1 = s:gb.light1
- let s:fg2 = s:gb.light2
- let s:fg3 = s:gb.light3
- let s:fg4 = s:gb.light4
- let s:fg4_256 = s:gb.light4_256
- let s:red = s:gb.bright_red
- let s:green = s:gb.bright_green
- let s:yellow = s:gb.bright_yellow
- let s:blue = s:gb.bright_blue
- let s:purple = s:gb.bright_purple
- let s:aqua = s:gb.bright_aqua
- let s:orange = s:gb.bright_orange
- else
- let s:bg0 = s:gb.light0
- if g:gruvbox_contrast_light == 'soft'
- let s:bg0 = s:gb.light0_soft
- elseif g:gruvbox_contrast_light == 'hard'
- let s:bg0 = s:gb.light0_hard
- endif
- let s:bg1 = s:gb.light1
- let s:bg2 = s:gb.light2
- let s:bg3 = s:gb.light3
- let s:bg4 = s:gb.light4
- let s:gray = s:gb.gray_244
- let s:fg0 = s:gb.dark0
- let s:fg1 = s:gb.dark1
- let s:fg2 = s:gb.dark2
- let s:fg3 = s:gb.dark3
- let s:fg4 = s:gb.dark4
- let s:fg4_256 = s:gb.dark4_256
- let s:red = s:gb.faded_red
- let s:green = s:gb.faded_green
- let s:yellow = s:gb.faded_yellow
- let s:blue = s:gb.faded_blue
- let s:purple = s:gb.faded_purple
- let s:aqua = s:gb.faded_aqua
- let s:orange = s:gb.faded_orange
- endif
- " reset to 16 colors fallback
- if g:gruvbox_termcolors == 16
- let s:bg0[1] = 0
- let s:fg4[1] = 7
- let s:gray[1] = 8
- let s:red[1] = 9
- let s:green[1] = 10
- let s:yellow[1] = 11
- let s:blue[1] = 12
- let s:purple[1] = 13
- let s:aqua[1] = 14
- let s:fg1[1] = 15
- endif
- " save current relative colors back to palette dictionary
- call s:Color('bg0', s:bg0)
- call s:Color('bg1', s:bg1)
- call s:Color('bg2', s:bg2)
- call s:Color('bg3', s:bg3)
- call s:Color('bg4', s:bg4)
- call s:Color('gray', s:gray)
- call s:Color('fg0', s:fg0)
- call s:Color('fg1', s:fg1)
- call s:Color('fg2', s:fg2)
- call s:Color('fg3', s:fg3)
- call s:Color('fg4', s:fg4)
- call s:Color('fg4_256', s:fg4_256)
- call s:Color('red', s:red)
- call s:Color('green', s:green)
- call s:Color('yellow', s:yellow)
- call s:Color('blue', s:blue)
- call s:Color('purple', s:purple)
- call s:Color('aqua', s:aqua)
- call s:Color('orange', s:orange)
- " }}}
- " Setup Terminal Colors For Neovim: {{{
- if has('nvim')
- let g:terminal_color_0 = s:gb.bg0[0]
- let g:terminal_color_8 = s:gb.gray[0]
- let g:terminal_color_1 = s:gb.neutral_red[0]
- let g:terminal_color_9 = s:gb.red[0]
- let g:terminal_color_2 = s:gb.neutral_green[0]
- let g:terminal_color_10 = s:gb.green[0]
- let g:terminal_color_3 = s:gb.neutral_yellow[0]
- let g:terminal_color_11 = s:gb.yellow[0]
- let g:terminal_color_4 = s:gb.neutral_blue[0]
- let g:terminal_color_12 = s:gb.blue[0]
- let g:terminal_color_5 = s:gb.neutral_purple[0]
- let g:terminal_color_13 = s:gb.purple[0]
- let g:terminal_color_6 = s:gb.neutral_aqua[0]
- let g:terminal_color_14 = s:gb.aqua[0]
- let g:terminal_color_7 = s:gb.fg4[0]
- let g:terminal_color_15 = s:gb.fg1[0]
- endif
- " }}}
- " Setup Terminal Colors For Vim with termguicolors: {{{
- if exists('*term_setansicolors')
- let g:terminal_ansi_colors = repeat([0], 16)
- let g:terminal_ansi_colors[0] = s:gb.bg0[0]
- let g:terminal_ansi_colors[8] = s:gb.gray[0]
- let g:terminal_ansi_colors[1] = s:gb.neutral_red[0]
- let g:terminal_ansi_colors[9] = s:gb.red[0]
- let g:terminal_ansi_colors[2] = s:gb.neutral_green[0]
- let g:terminal_ansi_colors[10] = s:gb.green[0]
- let g:terminal_ansi_colors[3] = s:gb.neutral_yellow[0]
- let g:terminal_ansi_colors[11] = s:gb.yellow[0]
- let g:terminal_ansi_colors[4] = s:gb.neutral_blue[0]
- let g:terminal_ansi_colors[12] = s:gb.blue[0]
- let g:terminal_ansi_colors[5] = s:gb.neutral_purple[0]
- let g:terminal_ansi_colors[13] = s:gb.purple[0]
- let g:terminal_ansi_colors[6] = s:gb.neutral_aqua[0]
- let g:terminal_ansi_colors[14] = s:gb.aqua[0]
- let g:terminal_ansi_colors[7] = s:gb.fg4[0]
- let g:terminal_ansi_colors[15] = s:gb.fg1[0]
- endif
- " }}}
- " Overload Setting: {{{
- let s:hls_cursor = s:gb.orange
- if exists('g:gruvbox_hls_cursor')
- let s:hls_cursor = get(s:gb, g:gruvbox_hls_cursor)
- endif
- let s:hls_highlight = s:gb.yellow
- if exists('g:gruvbox_hls_highlight')
- let s:hls_highlight = get(s:gb, g:gruvbox_hls_highlight)
- endif
- let s:number_column = s:none
- if exists('g:gruvbox_number_column')
- let s:number_column = get(s:gb, g:gruvbox_number_column)
- endif
- let s:sign_column = s:gb.bg1
- if exists('g:gruvbox_sign_column')
- let s:sign_column = get(s:gb, g:gruvbox_sign_column)
- endif
- let s:color_column = s:gb.bg1
- if exists('g:gruvbox_color_column')
- let s:color_column = get(s:gb, g:gruvbox_color_column)
- endif
- let s:vert_split = s:gb.bg0
- if exists('g:gruvbox_vert_split')
- let s:vert_split = get(s:gb, g:gruvbox_vert_split)
- endif
- let s:invert_signs = ''
- if exists('g:gruvbox_invert_signs')
- if g:gruvbox_invert_signs == 1
- let s:invert_signs = s:inverse
- endif
- endif
- let s:invert_selection = s:inverse
- if exists('g:gruvbox_invert_selection')
- if g:gruvbox_invert_selection == 0
- let s:invert_selection = ''
- endif
- endif
- let s:invert_tabline = ''
- if exists('g:gruvbox_invert_tabline')
- if g:gruvbox_invert_tabline == 1
- let s:invert_tabline = s:inverse
- endif
- endif
- let s:tabline_sel = s:gb.green
- if exists('g:gruvbox_tabline_sel')
- let s:tabline_sel = get(s:gb, g:gruvbox_tabline_sel)
- endif
- let s:italicize_comments = s:italic
- if exists('g:gruvbox_italicize_comments')
- if g:gruvbox_italicize_comments == 0
- let s:italicize_comments = ''
- endif
- endif
- let s:italicize_strings = ''
- if exists('g:gruvbox_italicize_strings')
- if g:gruvbox_italicize_strings == 1
- let s:italicize_strings = s:italic
- endif
- endif
- " }}}
- " Highlighting Function: {{{
- function! s:HL(group, fg, ...)
- " Arguments: group, guifg, guibg, gui, guisp
- " foreground
- let fg = a:fg
- " background
- if a:0 >= 1
- let bg = a:1
- else
- let bg = s:none
- endif
- " emphasis
- if a:0 >= 2 && strlen(a:2)
- let emstr = a:2
- else
- let emstr = 'NONE,'
- endif
- " special fallback
- if a:0 >= 3
- if g:gruvbox_guisp_fallback != 'NONE'
- let fg = a:3
- endif
- " bg fallback mode should invert higlighting
- if g:gruvbox_guisp_fallback == 'bg'
- let emstr .= 'inverse,'
- endif
- endif
- let histring = [ 'hi', a:group,
- \ 'guifg=' . fg[0], 'ctermfg=' . fg[1],
- \ 'guibg=' . bg[0], 'ctermbg=' . bg[1],
- \ 'gui=' . emstr[:-2], 'cterm=' . emstr[:-2]
- \ ]
- " special
- if a:0 >= 3
- call add(histring, 'guisp=' . a:3[0])
- endif
- execute join(histring, ' ')
- endfunction
- " }}}
- " Gruvbox Hi Groups: {{{
- " memoize common hi groups
- call s:HL('GruvboxFg0', s:gb.fg0)
- call s:HL('GruvboxFg1', s:gb.fg1)
- call s:HL('GruvboxFg2', s:gb.fg2)
- call s:HL('GruvboxFg3', s:gb.fg3)
- call s:HL('GruvboxFg4', s:gb.fg4)
- call s:HL('GruvboxGray', s:gb.gray)
- call s:HL('GruvboxBg0', s:gb.bg0)
- call s:HL('GruvboxBg1', s:gb.bg1)
- call s:HL('GruvboxBg2', s:gb.bg2)
- call s:HL('GruvboxBg3', s:gb.bg3)
- call s:HL('GruvboxBg4', s:gb.bg4)
- call s:HL('GruvboxRed', s:gb.red)
- call s:HL('GruvboxRedBold', s:gb.red, s:none, s:bold)
- call s:HL('GruvboxGreen', s:gb.green)
- call s:HL('GruvboxGreenBold', s:gb.green, s:none, s:bold)
- call s:HL('GruvboxYellow', s:gb.yellow)
- call s:HL('GruvboxYellowBold', s:gb.yellow, s:none, s:bold)
- call s:HL('GruvboxBlue', s:gb.blue)
- call s:HL('GruvboxBlueBold', s:gb.blue, s:none, s:bold)
- call s:HL('GruvboxPurple', s:gb.purple)
- call s:HL('GruvboxPurpleBold', s:gb.purple, s:none, s:bold)
- call s:HL('GruvboxAqua', s:gb.aqua)
- call s:HL('GruvboxAquaBold', s:gb.aqua, s:none, s:bold)
- call s:HL('GruvboxOrange', s:gb.orange)
- call s:HL('GruvboxOrangeBold', s:gb.orange, s:none, s:bold)
- call s:HL('GruvboxRedSign', s:gb.red, s:sign_column, s:invert_signs)
- call s:HL('GruvboxGreenSign', s:gb.green, s:sign_column, s:invert_signs)
- call s:HL('GruvboxYellowSign', s:gb.yellow, s:sign_column, s:invert_signs)
- call s:HL('GruvboxBlueSign', s:gb.blue, s:sign_column, s:invert_signs)
- call s:HL('GruvboxPurpleSign', s:gb.purple, s:sign_column, s:invert_signs)
- call s:HL('GruvboxAquaSign', s:gb.aqua, s:sign_column, s:invert_signs)
- call s:HL('GruvboxOrangeSign', s:gb.orange, s:sign_column, s:invert_signs)
- " }}}
- " Vanilla colorscheme ---------------------------------------------------------
- " General UI: {{{
- " Normal text
- call s:HL('Normal', s:gb.fg1, s:gb.bg0)
- " Correct background (see issue #7):
- " --- Problem with changing between dark and light on 256 color terminal
- " --- https://github.com/morhetz/gruvbox/issues/7
- if exists('v:vim_did_enter')
- let g:gruvbox_vim_did_enter = v:vim_did_enter
- else
- augroup GruvboxVimEnter
- au!
- autocmd VimEnter * let g:gruvbox_vim_did_enter = 1
- augroup End
- endif
- if get(g:, 'gruvbox_vim_did_enter', 0)
- if s:is_dark
- set background=dark
- else
- set background=light
- endif
- endif
- if version >= 700
- " Screen line that the cursor is
- call s:HL('CursorLine', s:none, s:gb.bg1)
- " Screen column that the cursor is
- hi! link CursorColumn CursorLine
- " Tab pages line filler
- call s:HL('TabLineFill', s:gb.bg4, s:gb.bg1, s:invert_tabline)
- " Active tab page label
- call s:HL('TabLineSel', s:tabline_sel, s:gb.bg1, s:invert_tabline)
- " Not active tab page label
- hi! link TabLine TabLineFill
- " Match paired bracket under the cursor
- call s:HL('MatchParen', s:none, s:gb.bg3, s:bold)
- endif
- if version >= 703
- " Highlighted screen columns
- call s:HL('ColorColumn', s:none, s:color_column)
- " Concealed element: \lambda → λ
- call s:HL('Conceal', s:gb.blue, s:none)
- " Line number of CursorLine
- call s:HL('CursorLineNr', s:gb.yellow, s:gb.bg1)
- endif
- hi! link NonText GruvboxBg2
- hi! link SpecialKey GruvboxFg4
- call s:HL('Visual', s:none, s:gb.bg3, s:invert_selection)
- hi! link VisualNOS Visual
- call s:HL('Search', s:hls_highlight, s:gb.bg0, s:inverse)
- call s:HL('IncSearch', s:hls_cursor, s:gb.bg0, s:inverse)
- call s:HL('QuickFixLine', s:gb.bg0, s:gb.yellow, s:bold)
- call s:HL('Underlined', s:gb.blue, s:none, s:underline)
- call s:HL('StatusLine', s:gb.bg2, s:gb.fg1, s:inverse)
- call s:HL('StatusLineNC', s:gb.bg1, s:gb.fg4, s:inverse)
- " The column separating vertically split windows
- call s:HL('VertSplit', s:gb.bg3, s:vert_split)
- " Current match in wildmenu completion
- call s:HL('WildMenu', s:gb.blue, s:gb.bg2, s:bold)
- " Directory names, special names in listing
- hi! link Directory GruvboxGreenBold
- " Titles for output from :set all, :autocmd, etc.
- hi! link Title GruvboxGreenBold
- " Error messages on the command line
- call s:HL('ErrorMsg', s:gb.bg0, s:gb.red, s:bold)
- " More prompt: -- More --
- hi! link MoreMsg GruvboxYellowBold
- " Current mode message: -- INSERT --
- hi! link ModeMsg GruvboxYellowBold
- " 'Press enter' prompt and yes/no questions
- hi! link Question GruvboxOrangeBold
- " Warning messages
- hi! link WarningMsg GruvboxRedBold
- " }}}
- " Gutter: {{{
- " Line number for :number and :# commands
- call s:HL('LineNr', s:gb.bg4, s:number_column)
- " Column where signs are displayed
- call s:HL('SignColumn', s:none, s:sign_column)
- " Line used for closed folds
- call s:HL('Folded', s:gb.gray, s:gb.bg1, s:italic)
- " Column where folds are displayed
- call s:HL('FoldColumn', s:gb.gray, s:gb.bg1)
- " }}}
- " Cursor: {{{
- " Character under cursor
- call s:HL('Cursor', s:none, s:none, s:inverse)
- " Visual mode cursor, selection
- hi! link vCursor Cursor
- " Input moder cursor
- hi! link iCursor Cursor
- " Language mapping cursor
- hi! link lCursor Cursor
- " }}}
- " Syntax Highlighting: {{{
- if g:gruvbox_improved_strings == 0
- hi! link Special GruvboxOrange
- else
- call s:HL('Special', s:gb.orange, s:gb.bg1, s:italicize_strings)
- endif
- call s:HL('Comment', s:gb.gray, s:none, s:italicize_comments)
- call s:HL('Todo', s:vim_fg, s:vim_bg, s:bold . s:italic)
- call s:HL('Error', s:gb.red, s:vim_bg, s:bold . s:inverse)
- " Generic statement
- hi! link Statement GruvboxRed
- " if, then, else, endif, swicth, etc.
- hi! link Conditional GruvboxRed
- " for, do, while, etc.
- hi! link Repeat GruvboxRed
- " case, default, etc.
- hi! link Label GruvboxRed
- " try, catch, throw
- hi! link Exception GruvboxRed
- " sizeof, "+", "*", etc.
- hi! link Operator GruvboxFg1
- " Any other keyword
- hi! link Keyword GruvboxRed
- " Variable name
- hi! link Identifier GruvboxBlue
- " Function name
- hi! link Function GruvboxGreenBold
- " Generic preprocessor
- hi! link PreProc GruvboxAqua
- " Preprocessor #include
- hi! link Include GruvboxAqua
- " Preprocessor #define
- hi! link Define GruvboxAqua
- " Same as Define
- hi! link Macro GruvboxAqua
- " Preprocessor #if, #else, #endif, etc.
- hi! link PreCondit GruvboxAqua
- " Generic constant
- hi! link Constant GruvboxPurple
- " Character constant: 'c', '/n'
- hi! link Character GruvboxPurple
- " String constant: "this is a string"
- if g:gruvbox_improved_strings == 0
- call s:HL('String', s:gb.green, s:none, s:italicize_strings)
- else
- call s:HL('String', s:gb.fg1, s:gb.bg1, s:italicize_strings)
- endif
- " Boolean constant: TRUE, false
- hi! link Boolean GruvboxPurple
- " Number constant: 234, 0xff
- hi! link Number GruvboxPurple
- " Floating point constant: 2.3e10
- hi! link Float GruvboxPurple
- " Generic type
- hi! link Type GruvboxYellow
- " static, register, volatile, etc
- hi! link StorageClass GruvboxOrange
- " struct, union, enum, etc.
- hi! link Structure GruvboxAqua
- " typedef
- hi! link Typedef GruvboxYellow
- " }}}
- " Completion Menu: {{{
- if version >= 700
- " Popup menu: normal item
- call s:HL('Pmenu', s:gb.fg1, s:gb.bg2)
- " Popup menu: selected item
- call s:HL('PmenuSel', s:gb.bg2, s:gb.blue, s:bold)
- " Popup menu: scrollbar
- call s:HL('PmenuSbar', s:none, s:gb.bg2)
- " Popup menu: scrollbar thumb
- call s:HL('PmenuThumb', s:none, s:gb.bg4)
- endif
- " }}}
- " Diffs: {{{
- call s:HL('DiffDelete', s:gb.red, s:gb.bg0, s:inverse)
- call s:HL('DiffAdd', s:gb.green, s:gb.bg0, s:inverse)
- "call s:HL('DiffChange', s:gb.bg0, s:gb.blue)
- "call s:HL('DiffText', s:gb.bg0, s:gb.yellow)
- " Alternative setting
- call s:HL('DiffChange', s:gb.aqua, s:gb.bg0, s:inverse)
- call s:HL('DiffText', s:gb.yellow, s:gb.bg0, s:inverse)
- " }}}
- " Spelling: {{{
- if has("spell")
- " Not capitalised word, or compile warnings
- if g:gruvbox_improved_warnings == 0
- call s:HL('SpellCap', s:none, s:none, s:undercurl, s:gb.blue)
- else
- call s:HL('SpellCap', s:gb.green, s:none, s:bold . s:italic)
- endif
- " Not recognized word
- call s:HL('SpellBad', s:none, s:none, s:undercurl, s:gb.red)
- " Wrong spelling for selected region
- call s:HL('SpellLocal', s:none, s:none, s:undercurl, s:gb.aqua)
- " Rare word
- call s:HL('SpellRare', s:none, s:none, s:undercurl, s:gb.purple)
- endif
- " }}}
- " Plugin specific -------------------------------------------------------------
- " EasyMotion: {{{
- hi! link EasyMotionTarget GruvboxYellowBold
- hi! link EasyMotionShade Comment
- " }}}
- " Sneak: {{{
- hi! link Sneak Search
- hi! link SneakLabel Search
- " }}}
- " Indent Guides: {{{
- if !exists('g:indent_guides_auto_colors')
- let g:indent_guides_auto_colors = 0
- endif
- if g:indent_guides_auto_colors == 0
- if g:gruvbox_invert_indent_guides == 0
- call s:HL('IndentGuidesOdd', s:vim_bg, s:gb.bg2)
- call s:HL('IndentGuidesEven', s:vim_bg, s:gb.bg1)
- else
- call s:HL('IndentGuidesOdd', s:vim_bg, s:gb.bg2, s:inverse)
- call s:HL('IndentGuidesEven', s:vim_bg, s:gb.bg3, s:inverse)
- endif
- endif
- " }}}
- " IndentLine: {{{
- if !exists('g:indentLine_color_term')
- let g:indentLine_color_term = s:gb.bg2[1]
- endif
- if !exists('g:indentLine_color_gui')
- let g:indentLine_color_gui = s:gb.bg2[0]
- endif
- " }}}
- " Rainbow Parentheses: {{{
- if !exists('g:rbpt_colorpairs')
- let g:rbpt_colorpairs =
- \ [
- \ ['blue', '#458588'], ['magenta', '#b16286'],
- \ ['red', '#cc241d'], ['166', '#d65d0e']
- \ ]
- endif
- let g:rainbow_guifgs = [ '#d65d0e', '#cc241d', '#b16286', '#458588' ]
- let g:rainbow_ctermfgs = [ '166', 'red', 'magenta', 'blue' ]
- if !exists('g:rainbow_conf')
- let g:rainbow_conf = {}
- endif
- if !has_key(g:rainbow_conf, 'guifgs')
- let g:rainbow_conf['guifgs'] = g:rainbow_guifgs
- endif
- if !has_key(g:rainbow_conf, 'ctermfgs')
- let g:rainbow_conf['ctermfgs'] = g:rainbow_ctermfgs
- endif
- let g:niji_dark_colours = g:rbpt_colorpairs
- let g:niji_light_colours = g:rbpt_colorpairs
- "}}}
- " GitGutter: {{{
- hi! link GitGutterAdd GruvboxGreenSign
- hi! link GitGutterChange GruvboxAquaSign
- hi! link GitGutterDelete GruvboxRedSign
- hi! link GitGutterChangeDelete GruvboxAquaSign
- " }}}
- " GitCommit: "{{{
- hi! link gitcommitSelectedFile GruvboxGreen
- hi! link gitcommitDiscardedFile GruvboxRed
- " }}}
- " Signify: {{{
- hi! link SignifySignAdd GruvboxGreenSign
- hi! link SignifySignChange GruvboxAquaSign
- hi! link SignifySignDelete GruvboxRedSign
- " }}}
- " Syntastic: {{{
- call s:HL('SyntasticError', s:none, s:none, s:undercurl, s:gb.red)
- call s:HL('SyntasticWarning', s:none, s:none, s:undercurl, s:gb.yellow)
- hi! link SyntasticErrorSign GruvboxRedSign
- hi! link SyntasticWarningSign GruvboxYellowSign
- " }}}
- " Signature: {{{
- hi! link SignatureMarkText GruvboxBlueSign
- hi! link SignatureMarkerText GruvboxPurpleSign
- " }}}
- " ShowMarks: {{{
- hi! link ShowMarksHLl GruvboxBlueSign
- hi! link ShowMarksHLu GruvboxBlueSign
- hi! link ShowMarksHLo GruvboxBlueSign
- hi! link ShowMarksHLm GruvboxBlueSign
- " }}}
- " CtrlP: {{{
- hi! link CtrlPMatch GruvboxYellow
- hi! link CtrlPNoEntries GruvboxRed
- hi! link CtrlPPrtBase GruvboxBg2
- hi! link CtrlPPrtCursor GruvboxBlue
- hi! link CtrlPLinePre GruvboxBg2
- call s:HL('CtrlPMode1', s:gb.blue, s:gb.bg2, s:bold)
- call s:HL('CtrlPMode2', s:gb.bg0, s:gb.blue, s:bold)
- call s:HL('CtrlPStats', s:gb.fg4, s:gb.bg2, s:bold)
- " }}}
- " FZF: {{{
- let g:fzf_colors = {
- \ 'fg': ['fg', 'GruvboxFg1'],
- \ 'bg': ['fg', 'GruvboxBg0'],
- \ 'hl': ['fg', 'GruvboxYellow'],
- \ 'fg+': ['fg', 'GruvboxFg1'],
- \ 'bg+': ['fg', 'GruvboxBg1'],
- \ 'hl+': ['fg', 'GruvboxYellow'],
- \ 'info': ['fg', 'GruvboxBlue'],
- \ 'prompt': ['fg', 'GruvboxFg4'],
- \ 'pointer': ['fg', 'GruvboxBlue'],
- \ 'marker': ['fg', 'GruvboxOrange'],
- \ 'spinner': ['fg', 'GruvboxYellow'],
- \ 'header': ['fg', 'GruvboxBg3']
- \ }
- call s:HL('Fzf1', s:gb.blue, s:gb.bg1)
- call s:HL('Fzf2', s:gb.orange, s:gb.bg1)
- call s:HL('Fzf3', s:gb.fg4, s:gb.bg1)
- " }}}
- " Startify: {{{
- hi! link StartifyBracket GruvboxFg3
- hi! link StartifyFile GruvboxFg1
- hi! link StartifyNumber GruvboxBlue
- hi! link StartifyPath GruvboxGray
- hi! link StartifySlash GruvboxGray
- hi! link StartifySection GruvboxYellow
- hi! link StartifySpecial GruvboxBg2
- hi! link StartifyHeader GruvboxOrange
- hi! link StartifyFooter GruvboxBg2
- " }}}
- " Vimshell: {{{
- let g:vimshell_escape_colors = [
- \ s:gb.bg4[0], s:gb.red[0], s:gb.green[0], s:gb.yellow[0],
- \ s:gb.blue[0], s:gb.purple[0], s:gb.aqua[0], s:gb.fg4[0],
- \ s:gb.bg0[0], s:gb.red[0], s:gb.green[0], s:gb.orange[0],
- \ s:gb.blue[0], s:gb.purple[0], s:gb.aqua[0], s:gb.fg0[0]
- \ ]
- " }}}
- " BufTabLine: {{{
- call s:HL('BufTabLineCurrent', s:gb.bg0, s:gb.fg4)
- call s:HL('BufTabLineActive', s:gb.fg4, s:gb.bg2)
- call s:HL('BufTabLineHidden', s:gb.bg4, s:gb.bg1)
- call s:HL('BufTabLineFill', s:gb.bg0, s:gb.bg0)
- " }}}
- " Asynchronous Lint Engine: {{{
- call s:HL('ALEError', s:none, s:none, s:undercurl, s:gb.red)
- call s:HL('ALEWarning', s:none, s:none, s:undercurl, s:gb.yellow)
- call s:HL('ALEInfo', s:none, s:none, s:undercurl, s:gb.blue)
- hi! link ALEErrorSign GruvboxRedSign
- hi! link ALEWarningSign GruvboxYellowSign
- hi! link ALEInfoSign GruvboxBlueSign
- hi! link ALEVirtualTextError GruvboxRed
- hi! link ALEVirtualTextWarning GruvboxYellow
- hi! link ALEVirtualTextInfo GruvboxBlue
- " }}}
- " Dirvish: {{{
- hi! link DirvishPathTail GruvboxAqua
- hi! link DirvishArg GruvboxYellow
- " }}}
- " Netrw: {{{
- hi! link netrwDir GruvboxAqua
- hi! link netrwClassify GruvboxAqua
- hi! link netrwLink GruvboxGray
- hi! link netrwSymLink GruvboxFg1
- hi! link netrwExe GruvboxYellow
- hi! link netrwComment GruvboxGray
- hi! link netrwList GruvboxBlue
- hi! link netrwHelpCmd GruvboxAqua
- hi! link netrwCmdSep GruvboxFg3
- hi! link netrwVersion GruvboxGreen
- " }}}
- " NERDTree: {{{
- hi! link NERDTreeDir GruvboxAqua
- hi! link NERDTreeDirSlash GruvboxAqua
- hi! link NERDTreeOpenable GruvboxOrange
- hi! link NERDTreeClosable GruvboxOrange
- hi! link NERDTreeFile GruvboxFg1
- hi! link NERDTreeExecFile GruvboxYellow
- hi! link NERDTreeUp GruvboxGray
- hi! link NERDTreeCWD GruvboxGreen
- hi! link NERDTreeHelp GruvboxFg1
- hi! link NERDTreeToggleOn GruvboxGreen
- hi! link NERDTreeToggleOff GruvboxRed
- " }}}
- " Vim Multiple Cursors: {{{
- call s:HL('multiple_cursors_cursor', s:none, s:none, s:inverse)
- call s:HL('multiple_cursors_visual', s:none, s:gb.bg2)
- " }}}
- " coc.nvim: {{{
- hi! link CocErrorSign GruvboxRedSign
- hi! link CocWarningSign GruvboxOrangeSign
- hi! link CocInfoSign GruvboxYellowSign
- hi! link CocHintSign GruvboxBlueSign
- hi! link CocErrorFloat GruvboxRed
- hi! link CocWarningFloat GruvboxOrange
- hi! link CocInfoFloat GruvboxYellow
- hi! link CocHintFloat GruvboxBlue
- hi! link CocDiagnosticsError GruvboxRed
- hi! link CocDiagnosticsWarning GruvboxOrange
- hi! link CocDiagnosticsInfo GruvboxYellow
- hi! link CocDiagnosticsHint GruvboxBlue
- hi! link CocSelectedText GruvboxRed
- hi! link CocCodeLens GruvboxGray
- call s:HL('CocErrorHighlight', s:none, s:none, s:undercurl, s:red)
- call s:HL('CocWarningHighlight', s:none, s:none, s:undercurl, s:orange)
- call s:HL('CocInfoHighlight', s:none, s:none, s:undercurl, s:yellow)
- call s:HL('CocHintHighlight', s:none, s:none, s:undercurl, s:blue)
- " }}}
- " Filetype specific -----------------------------------------------------------
- " Diff: {{{
- hi! link diffAdded GruvboxGreen
- hi! link diffRemoved GruvboxRed
- hi! link diffChanged GruvboxAqua
- hi! link diffFile GruvboxOrange
- hi! link diffNewFile GruvboxYellow
- hi! link diffLine GruvboxBlue
- " }}}
- " Html: {{{
- hi! link htmlTag GruvboxAquaBold
- hi! link htmlEndTag GruvboxAquaBold
- hi! link htmlTagName GruvboxBlue
- hi! link htmlArg GruvboxOrange
- hi! link htmlScriptTag GruvboxPurple
- hi! link htmlTagN GruvboxFg1
- hi! link htmlSpecialTagName GruvboxBlue
- call s:HL('htmlLink', s:gb.fg4, s:none, s:underline)
- hi! link htmlSpecialChar GruvboxRed
- call s:HL('htmlBold', s:vim_fg, s:vim_bg, s:bold)
- call s:HL('htmlBoldUnderline', s:vim_fg, s:vim_bg, s:bold . s:underline)
- call s:HL('htmlBoldItalic', s:vim_fg, s:vim_bg, s:bold . s:italic)
- call s:HL('htmlBoldUnderlineItalic', s:vim_fg, s:vim_bg, s:bold . s:underline . s:italic)
- call s:HL('htmlUnderline', s:vim_fg, s:vim_bg, s:underline)
- call s:HL('htmlUnderlineItalic', s:vim_fg, s:vim_bg, s:underline . s:italic)
- call s:HL('htmlItalic', s:vim_fg, s:vim_bg, s:italic)
- " }}}
- " Xml: {{{
- hi! link xmlTag GruvboxAquaBold
- hi! link xmlEndTag GruvboxAquaBold
- hi! link xmlTagName GruvboxAquaBold
- hi! link xmlEqual GruvboxBlue
- hi! link docbkKeyword GruvboxAquaBold
- hi! link xmlDocTypeDecl GruvboxGray
- hi! link xmlDocTypeKeyword GruvboxPurple
- hi! link xmlCdataStart GruvboxGray
- hi! link xmlCdataCdata GruvboxPurple
- hi! link dtdFunction GruvboxGray
- hi! link dtdTagName GruvboxPurple
- hi! link xmlAttrib GruvboxOrange
- hi! link xmlProcessingDelim GruvboxGray
- hi! link dtdParamEntityPunct GruvboxGray
- hi! link dtdParamEntityDPunct GruvboxGray
- hi! link xmlAttribPunct GruvboxGray
- hi! link xmlEntity GruvboxRed
- hi! link xmlEntityPunct GruvboxRed
- " }}}
- " Vim: {{{
- call s:HL('vimCommentTitle', s:gb.fg4_256, s:none, s:bold . s:italicize_comments)
- hi! link vimNotation GruvboxOrange
- hi! link vimBracket GruvboxOrange
- hi! link vimMapModKey GruvboxOrange
- hi! link vimFuncSID GruvboxFg3
- hi! link vimSetSep GruvboxFg3
- hi! link vimSep GruvboxFg3
- hi! link vimContinue GruvboxFg3
- " }}}
- " Clojure: {{{
- hi! link clojureKeyword GruvboxBlue
- hi! link clojureCond GruvboxOrange
- hi! link clojureSpecial GruvboxOrange
- hi! link clojureDefine GruvboxOrange
- hi! link clojureFunc GruvboxYellow
- hi! link clojureRepeat GruvboxYellow
- hi! link clojureCharacter GruvboxAqua
- hi! link clojureStringEscape GruvboxAqua
- hi! link clojureException GruvboxRed
- hi! link clojureRegexp GruvboxAqua
- hi! link clojureRegexpEscape GruvboxAqua
- call s:HL('clojureRegexpCharClass', s:gb.fg3, s:none, s:bold)
- hi! link clojureRegexpMod clojureRegexpCharClass
- hi! link clojureRegexpQuantifier clojureRegexpCharClass
- hi! link clojureParen GruvboxFg3
- hi! link clojureAnonArg GruvboxYellow
- hi! link clojureVariable GruvboxBlue
- hi! link clojureMacro GruvboxOrange
- hi! link clojureMeta GruvboxYellow
- hi! link clojureDeref GruvboxYellow
- hi! link clojureQuote GruvboxYellow
- hi! link clojureUnquote GruvboxYellow
- " }}}
- " C: {{{
- hi! link cOperator GruvboxPurple
- hi! link cppOperator GruvboxPurple
- hi! link cStructure GruvboxOrange
- " }}}
- " Python: {{{
- hi! link pythonBuiltin GruvboxOrange
- hi! link pythonBuiltinObj GruvboxOrange
- hi! link pythonBuiltinFunc GruvboxOrange
- hi! link pythonFunction GruvboxAqua
- hi! link pythonDecorator GruvboxRed
- hi! link pythonInclude GruvboxBlue
- hi! link pythonImport GruvboxBlue
- hi! link pythonRun GruvboxBlue
- hi! link pythonCoding GruvboxBlue
- hi! link pythonOperator GruvboxRed
- hi! link pythonException GruvboxRed
- hi! link pythonExceptions GruvboxPurple
- hi! link pythonBoolean GruvboxPurple
- hi! link pythonDot GruvboxFg3
- hi! link pythonConditional GruvboxRed
- hi! link pythonRepeat GruvboxRed
- hi! link pythonDottedName GruvboxGreenBold
- " }}}
- " CSS: {{{
- hi! link cssBraces GruvboxBlue
- hi! link cssFunctionName GruvboxYellow
- hi! link cssIdentifier GruvboxOrange
- hi! link cssClassName GruvboxGreen
- hi! link cssColor GruvboxBlue
- hi! link cssSelectorOp GruvboxBlue
- hi! link cssSelectorOp2 GruvboxBlue
- hi! link cssImportant GruvboxGreen
- hi! link cssVendor GruvboxFg1
- hi! link cssTextProp GruvboxAqua
- hi! link cssAnimationProp GruvboxAqua
- hi! link cssUIProp GruvboxYellow
- hi! link cssTransformProp GruvboxAqua
- hi! link cssTransitionProp GruvboxAqua
- hi! link cssPrintProp GruvboxAqua
- hi! link cssPositioningProp GruvboxYellow
- hi! link cssBoxProp GruvboxAqua
- hi! link cssFontDescriptorProp GruvboxAqua
- hi! link cssFlexibleBoxProp GruvboxAqua
- hi! link cssBorderOutlineProp GruvboxAqua
- hi! link cssBackgroundProp GruvboxAqua
- hi! link cssMarginProp GruvboxAqua
- hi! link cssListProp GruvboxAqua
- hi! link cssTableProp GruvboxAqua
- hi! link cssFontProp GruvboxAqua
- hi! link cssPaddingProp GruvboxAqua
- hi! link cssDimensionProp GruvboxAqua
- hi! link cssRenderProp GruvboxAqua
- hi! link cssColorProp GruvboxAqua
- hi! link cssGeneratedContentProp GruvboxAqua
- " }}}
- " JavaScript: {{{
- hi! link javaScriptBraces GruvboxFg1
- hi! link javaScriptFunction GruvboxAqua
- hi! link javaScriptIdentifier GruvboxRed
- hi! link javaScriptMember GruvboxBlue
- hi! link javaScriptNumber GruvboxPurple
- hi! link javaScriptNull GruvboxPurple
- hi! link javaScriptParens GruvboxFg3
- " }}}
- " YAJS: {{{
- hi! link javascriptImport GruvboxAqua
- hi! link javascriptExport GruvboxAqua
- hi! link javascriptClassKeyword GruvboxAqua
- hi! link javascriptClassExtends GruvboxAqua
- hi! link javascriptDefault GruvboxAqua
- hi! link javascriptClassName GruvboxYellow
- hi! link javascriptClassSuperName GruvboxYellow
- hi! link javascriptGlobal GruvboxYellow
- hi! link javascriptEndColons GruvboxFg1
- hi! link javascriptFuncArg GruvboxFg1
- hi! link javascriptGlobalMethod GruvboxFg1
- hi! link javascriptNodeGlobal GruvboxFg1
- hi! link javascriptBOMWindowProp GruvboxFg1
- hi! link javascriptArrayMethod GruvboxFg1
- hi! link javascriptArrayStaticMethod GruvboxFg1
- hi! link javascriptCacheMethod GruvboxFg1
- hi! link javascriptDateMethod GruvboxFg1
- hi! link javascriptMathStaticMethod GruvboxFg1
- " hi! link javascriptProp GruvboxFg1
- hi! link javascriptURLUtilsProp GruvboxFg1
- hi! link javascriptBOMNavigatorProp GruvboxFg1
- hi! link javascriptDOMDocMethod GruvboxFg1
- hi! link javascriptDOMDocProp GruvboxFg1
- hi! link javascriptBOMLocationMethod GruvboxFg1
- hi! link javascriptBOMWindowMethod GruvboxFg1
- hi! link javascriptStringMethod GruvboxFg1
- hi! link javascriptVariable GruvboxOrange
- " hi! link javascriptVariable GruvboxRed
- " hi! link javascriptIdentifier GruvboxOrange
- " hi! link javascriptClassSuper GruvboxOrange
- hi! link javascriptIdentifier GruvboxOrange
- hi! link javascriptClassSuper GruvboxOrange
- " hi! link javascriptFuncKeyword GruvboxOrange
- " hi! link javascriptAsyncFunc GruvboxOrange
- hi! link javascriptFuncKeyword GruvboxAqua
- hi! link javascriptAsyncFunc GruvboxAqua
- hi! link javascriptClassStatic GruvboxOrange
- hi! link javascriptOperator GruvboxRed
- hi! link javascriptForOperator GruvboxRed
- hi! link javascriptYield GruvboxRed
- hi! link javascriptExceptions GruvboxRed
- hi! link javascriptMessage GruvboxRed
- hi! link javascriptTemplateSB GruvboxAqua
- hi! link javascriptTemplateSubstitution GruvboxFg1
- " hi! link javascriptLabel GruvboxBlue
- " hi! link javascriptObjectLabel GruvboxBlue
- " hi! link javascriptPropertyName GruvboxBlue
- hi! link javascriptLabel GruvboxFg1
- hi! link javascriptObjectLabel GruvboxFg1
- hi! link javascriptPropertyName GruvboxFg1
- hi! link javascriptLogicSymbols GruvboxFg1
- hi! link javascriptArrowFunc GruvboxYellow
- hi! link javascriptDocParamName GruvboxFg4
- hi! link javascriptDocTags GruvboxFg4
- hi! link javascriptDocNotation GruvboxFg4
- hi! link javascriptDocParamType GruvboxFg4
- hi! link javascriptDocNamedParamType GruvboxFg4
- hi! link javascriptBrackets GruvboxFg1
- hi! link javascriptDOMElemAttrs GruvboxFg1
- hi! link javascriptDOMEventMethod GruvboxFg1
- hi! link javascriptDOMNodeMethod GruvboxFg1
- hi! link javascriptDOMStorageMethod GruvboxFg1
- hi! link javascriptHeadersMethod GruvboxFg1
- hi! link javascriptAsyncFuncKeyword GruvboxRed
- hi! link javascriptAwaitFuncKeyword GruvboxRed
- " }}}
- " PanglossJS: {{{
- hi! link jsClassKeyword GruvboxAqua
- hi! link jsExtendsKeyword GruvboxAqua
- hi! link jsExportDefault GruvboxAqua
- hi! link jsTemplateBraces GruvboxAqua
- hi! link jsGlobalNodeObjects GruvboxBlue
- hi! link jsGlobalObjects GruvboxBlue
- hi! link jsObjectKey GruvboxGreenBold
- hi! link jsFunction GruvboxAqua
- hi! link jsFuncCall GruvboxBlue
- hi! link jsFuncParens GruvboxFg3
- hi! link jsParens GruvboxFg3
- hi! link jsNull GruvboxPurple
- hi! link jsUndefined GruvboxPurple
- hi! link jsClassDefinition GruvboxYellow
- hi! link jsOperatorKeyword GruvboxRed
- " }}}
- " TypeScript: {{{
- hi! link typescriptReserved GruvboxAqua
- hi! link typescriptLabel GruvboxAqua
- hi! link typescriptFuncKeyword GruvboxAqua
- hi! link typescriptIdentifier GruvboxOrange
- hi! link typescriptBraces GruvboxFg1
- hi! link typescriptEndColons GruvboxFg1
- hi! link typescriptDOMObjects GruvboxFg1
- hi! link typescriptAjaxMethods GruvboxFg1
- hi! link typescriptLogicSymbols GruvboxFg1
- hi! link typescriptDocSeeTag Comment
- hi! link typescriptDocParam Comment
- hi! link typescriptDocTags vimCommentTitle
- hi! link typescriptGlobalObjects GruvboxFg1
- hi! link typescriptParens GruvboxFg3
- hi! link typescriptOpSymbols GruvboxFg3
- hi! link typescriptHtmlElemProperties GruvboxFg1
- hi! link typescriptNull GruvboxPurple
- hi! link typescriptInterpolationDelimiter GruvboxAqua
- " }}}
- " JSX: maxmellon/vim-jsx-pretty: {{{
- hi! link jsxTagName GruvboxAqua
- hi! link jsxComponentName GruvboxGreen
- hi! link jsxCloseString GruvboxFg4
- hi! link jsxAttrib GruvboxYellow
- hi! link jsxEqual GruvboxAqua
- "}}}
- " PureScript: {{{
- hi! link purescriptModuleKeyword GruvboxAqua
- hi! link purescriptModuleName GruvboxFg1
- hi! link purescriptWhere GruvboxAqua
- hi! link purescriptDelimiter GruvboxFg4
- hi! link purescriptType GruvboxFg1
- hi! link purescriptImportKeyword GruvboxAqua
- hi! link purescriptHidingKeyword GruvboxAqua
- hi! link purescriptAsKeyword GruvboxAqua
- hi! link purescriptStructure GruvboxAqua
- hi! link purescriptOperator GruvboxBlue
- hi! link purescriptTypeVar GruvboxFg1
- hi! link purescriptConstructor GruvboxFg1
- hi! link purescriptFunction GruvboxFg1
- hi! link purescriptConditional GruvboxOrange
- hi! link purescriptBacktick GruvboxOrange
- " }}}
- " CoffeeScript: {{{
- hi! link coffeeExtendedOp GruvboxFg3
- hi! link coffeeSpecialOp GruvboxFg3
- hi! link coffeeCurly GruvboxOrange
- hi! link coffeeParen GruvboxFg3
- hi! link coffeeBracket GruvboxOrange
- " }}}
- " Ruby: {{{
- hi! link rubyStringDelimiter GruvboxGreen
- hi! link rubyInterpolationDelimiter GruvboxAqua
- " }}}
- " ObjectiveC: {{{
- hi! link objcTypeModifier GruvboxRed
- hi! link objcDirective GruvboxBlue
- " }}}
- " Go: {{{
- hi! link goDirective GruvboxAqua
- hi! link goConstants GruvboxPurple
- hi! link goDeclaration GruvboxRed
- hi! link goDeclType GruvboxBlue
- hi! link goBuiltins GruvboxOrange
- " }}}
- " Lua: {{{
- hi! link luaIn GruvboxRed
- hi! link luaFunction GruvboxAqua
- hi! link luaTable GruvboxOrange
- " }}}
- " MoonScript: {{{
- hi! link moonSpecialOp GruvboxFg3
- hi! link moonExtendedOp GruvboxFg3
- hi! link moonFunction GruvboxFg3
- hi! link moonObject GruvboxYellow
- " }}}
- " Java: {{{
- hi! link javaAnnotation GruvboxBlue
- hi! link javaDocTags GruvboxAqua
- hi! link javaCommentTitle vimCommentTitle
- hi! link javaParen GruvboxFg3
- hi! link javaParen1 GruvboxFg3
- hi! link javaParen2 GruvboxFg3
- hi! link javaParen3 GruvboxFg3
- hi! link javaParen4 GruvboxFg3
- hi! link javaParen5 GruvboxFg3
- hi! link javaOperator GruvboxOrange
- hi! link javaVarArg GruvboxGreen
- " }}}
- " Elixir: {{{
- hi! link elixirDocString Comment
- hi! link elixirStringDelimiter GruvboxGreen
- hi! link elixirInterpolationDelimiter GruvboxAqua
- hi! link elixirModuleDeclaration GruvboxYellow
- " }}}
- " Scala: {{{
- " NB: scala vim syntax file is kinda horrible
- hi! link scalaNameDefinition GruvboxFg1
- hi! link scalaCaseFollowing GruvboxFg1
- hi! link scalaCapitalWord GruvboxFg1
- hi! link scalaTypeExtension GruvboxFg1
- hi! link scalaKeyword GruvboxRed
- hi! link scalaKeywordModifier GruvboxRed
- hi! link scalaSpecial GruvboxAqua
- hi! link scalaOperator GruvboxFg1
- hi! link scalaTypeDeclaration GruvboxYellow
- hi! link scalaTypeTypePostDeclaration GruvboxYellow
- hi! link scalaInstanceDeclaration GruvboxFg1
- hi! link scalaInterpolation GruvboxAqua
- " }}}
- " Markdown: {{{
- call s:HL('markdownItalic', s:gb.fg3, s:none, s:italic)
- hi! link markdownH1 GruvboxGreenBold
- hi! link markdownH2 GruvboxGreenBold
- hi! link markdownH3 GruvboxYellowBold
- hi! link markdownH4 GruvboxYellowBold
- hi! link markdownH5 GruvboxYellow
- hi! link markdownH6 GruvboxYellow
- hi! link markdownCode GruvboxAqua
- hi! link markdownCodeBlock GruvboxAqua
- hi! link markdownCodeDelimiter GruvboxAqua
- hi! link markdownBlockquote GruvboxGray
- hi! link markdownListMarker GruvboxGray
- hi! link markdownOrderedListMarker GruvboxGray
- hi! link markdownRule GruvboxGray
- hi! link markdownHeadingRule GruvboxGray
- hi! link markdownUrlDelimiter GruvboxFg3
- hi! link markdownLinkDelimiter GruvboxFg3
- hi! link markdownLinkTextDelimiter GruvboxFg3
- hi! link markdownHeadingDelimiter GruvboxOrange
- hi! link markdownUrl GruvboxPurple
- hi! link markdownUrlTitleDelimiter GruvboxGreen
- call s:HL('markdownLinkText', s:gray, s:none, s:underline)
- hi! link markdownIdDeclaration markdownLinkText
- " }}}
- " Haskell: {{{
- hi! link haskellType GruvboxBlue
- hi! link haskellIdentifier GruvboxAqua
- hi! link haskellSeparator GruvboxFg4
- hi! link haskellDelimiter GruvboxOrange
- hi! link haskellOperators GruvboxPurple
- hi! link haskellBacktick GruvboxOrange
- hi! link haskellStatement GruvboxPurple
- hi! link haskellConditional GruvboxPurple
- hi! link haskellLet GruvboxRed
- hi! link haskellDefault GruvboxRed
- hi! link haskellWhere GruvboxRed
- hi! link haskellBottom GruvboxRedBold
- hi! link haskellImportKeywords GruvboxPurpleBold
- hi! link haskellDeclKeyword GruvboxOrange
- hi! link haskellDecl GruvboxOrange
- hi! link haskellDeriving GruvboxPurple
- hi! link haskellAssocType GruvboxAqua
- hi! link haskellNumber GruvboxAqua
- hi! link haskellPragma GruvboxRedBold
-
- hi! link haskellTH GruvboxAquaBold
- hi! link haskellForeignKeywords GruvboxGreen
- hi! link haskellKeyword GruvboxRed
- hi! link haskellFloat GruvboxAqua
- hi! link haskellInfix GruvboxPurple
- hi! link haskellQuote GruvboxGreenBold
- hi! link haskellShebang GruvboxYellowBold
- hi! link haskellLiquid GruvboxPurpleBold
- hi! link haskellQuasiQuoted GruvboxBlueBold
- hi! link haskellRecursiveDo GruvboxPurlpe
- hi! link haskellQuotedType GruvboxRed
- hi! link haskellPreProc GruvboxFg4
- hi! link haskellTypeRoles GruvboxRedBold
- hi! link haskellTypeForall GruvboxRed
- hi! link haskellPatternKeyword GruvboxBlue
- " }}}
- " Json: {{{
- hi! link jsonKeyword GruvboxGreen
- hi! link jsonQuote GruvboxGreen
- hi! link jsonBraces GruvboxFg1
- hi! link jsonString GruvboxFg1
- " }}}
- " Mail: {{{
- " mail header
- hi! link mailHeader GruvBoxBlue
- hi! link mailHeaderKey GruvBoxBlue
- hi! link mailHeaderEmail GruvBoxBlue
- hi! link mailSubject GruvboxBlue
- " mail quoted text
- hi! link mailQuoted1 GruvBoxAqua
- hi! link mailQuoted2 GruvBoxPurple
- hi! link mailQuoted3 GruvBoxYellow
- hi! link mailQuoted4 GruvBoxGreen
- hi! link mailQuoted5 GruvBoxRed
- hi! link mailQuoted6 GruvBoxOrange
- hi! link mailQuotedExp1 GruvBoxAqua
- hi! link mailQuotedExp2 GruvBoxPurple
- hi! link mailQuotedExp3 GruvBoxYellow
- hi! link mailQuotedExp4 GruvBoxGreen
- hi! link mailQuotedExp5 GruvBoxRed
- hi! link mailQuotedExp6 GruvBoxOrange
- " I did not discover yet for what this is used
- " hi! link mailVerbatim GruvBoxRed
- " mail signature
- hi! link mailSignature GruvBoxFg
- " mail url and emails
- hi! link mailURL GruvBoxOrange
- hi! link mailEmail GruvBoxOrange
- " }}}
- " C#: {{{
- hi! link csBraces GruvboxFg1
- hi! link csEndColon GruvboxFg1
- hi! link csLogicSymbols GruvboxFg1
- hi! link csParens GruvboxFg3
- hi! link csOpSymbols GruvboxFg3
- hi! link csInterpolationDelimiter GruvboxFg3
- hi! link csInterpolationAlignDel GruvboxAquaBold
- hi! link csInterpolationFormat GruvboxAqua
- hi! link csInterpolationFormatDel GruvboxAquaBold
- " }}}
- " Rust: {{{
- hi! link rustSigil GruvboxOrange
- hi! link rustEscape GruvboxAqua
- hi! link rustStringContinuation GruvboxAqua
- hi! link rustEnum GruvboxAqua
- hi! link rustStructure GruvboxAqua
- hi! link rustModPathSep GruvboxFg2
- hi! link rustCommentLineDoc Comment
- hi! link rustDefault GruvboxAqua
- " }}}
- " Functions -------------------------------------------------------------------
- " Search Highlighting Cursor {{{
- function! GruvboxHlsShowCursor()
- call s:HL('Cursor', s:bg0, s:hls_cursor)
- endfunction
- function! GruvboxHlsHideCursor()
- call s:HL('Cursor', s:none, s:none, s:inverse)
- endfunction
- " }}}
- " vim: set sw=2 ts=2 sts=2 et tw=80 ft=vim fdm=marker:
|