" 'srcery.vim' -- Dark Ritual (N)Vim Color Scheme. " Maintainer: Srcery Team, https://srcery.sh " Description: Colorscheme that focus ease of use and clearly defined " contrasting colors with a slightly earthy tone. scriptencoding utf-8 set background=dark if v:version > 580 hi clear if exists('syntax_on') syntax reset endif endif let g:colors_name='srcery' " Setup: {{{ " ----------------------------------------------------------------------------- " Colors " --------- if !exists('g:srcery_black') let g:srcery_black='#121110' endif if !exists('g:srcery_red') let g:srcery_red='#EF2F27' endif if !exists('g:srcery_green') let g:srcery_green='#519F50' endif if !exists('g:srcery_yellow') let g:srcery_yellow='#FBB829' endif if !exists('g:srcery_blue') let g:srcery_blue='#2C78BF' endif if !exists('g:srcery_magenta') let g:srcery_magenta='#E02C6D' endif if !exists('g:srcery_cyan') let g:srcery_cyan='#0AAEB3' endif if !exists('g:srcery_white') let g:srcery_white='#C5B088' endif if !exists('g:srcery_bright_black') let g:srcery_bright_black='#917E6B' endif if !exists('g:srcery_bright_red') let g:srcery_bright_red='#F75341' endif if !exists('g:srcery_bright_green') let g:srcery_bright_green='#98BC37' endif if !exists('g:srcery_bright_yellow') let g:srcery_bright_yellow='#FED06E' endif if !exists('g:srcery_bright_blue') let g:srcery_bright_blue='#68A8E4' endif if !exists('g:srcery_bright_magenta') let g:srcery_bright_magenta='#FF5C8F' endif if !exists('g:srcery_bright_cyan') let g:srcery_bright_cyan='#2BE4D0' endif if !exists('g:srcery_bright_white') let g:srcery_bright_white='#FCE8C3' endif if !exists('g:srcery_dark_red') let g:srcery_dark_red='#4F2321' endif if !exists('g:srcery_dark_red_cterm') let g:srcery_dark_red_cterm=88 endif if !exists('g:srcery_dark_green') let g:srcery_dark_green='#294229' endif if !exists('g:srcery_dim_green') let g:srcery_dim_green='#2E5C2E' endif if !exists('g:srcery_dim_green_cterm') let g:srcery_dim_green_cterm=28 endif if !exists('g:srcery_dark_green_cterm') let g:srcery_dark_green_cterm=22 endif if !exists('g:srcery_dark_blue') let g:srcery_dark_blue='#1E5181' endif if !exists('g:srcery_dark_blue_cterm') let g:srcery_dark_blue_cterm=24 endif if !exists('g:srcery_orange') let g:srcery_orange='#FF5F00' endif if !exists('g:srcery_orange_cterm') let g:srcery_orange_cterm=202 endif if !exists('g:srcery_bright_orange') let g:srcery_bright_orange='#FF8700' endif if !exists('g:srcery_bright_orange_cterm') let g:srcery_bright_orange_cterm=208 endif if !exists('g:srcery_teal') let g:srcery_teal='#008080' endif if !exists('g:srcery_teal_cterm') let g:srcery_teal_cterm=30 endif if !exists('g:srcery_hard_black') let g:srcery_hard_black='#121212' endif if !exists('g:srcery_hard_black_cterm') let g:srcery_hard_black_cterm=233 endif if !exists('g:srcery_gray1') let g:srcery_gray1='#1c1b19' endif if !exists('g:srcery_gray1_cterm') let g:srcery_gray1_cterm=235 endif if !exists('g:srcery_gray2') let g:srcery_gray2='#262522' endif if !exists('g:srcery_gray2_cterm') let g:srcery_gray2_cterm=236 endif if !exists('g:srcery_gray3') let g:srcery_gray3='#312f2c' endif if !exists('g:srcery_gray3_cterm') let g:srcery_gray3_cterm=237 endif if !exists('g:srcery_gray4') let g:srcery_gray4='#3b3935' endif if !exists('g:srcery_gray4_cterm') let g:srcery_gray4_cterm=238 endif if !exists('g:srcery_gray5') let g:srcery_gray5='#45433e' endif if !exists('g:srcery_gray5_cterm') let g:srcery_gray5_cterm=239 endif if !exists('g:srcery_gray6') let g:srcery_gray6='#504d47' endif if !exists('g:srcery_gray6_cterm') let g:srcery_gray6_cterm=240 endif if !exists('g:srcery_background') let g:srcery_background=g:srcery_black endif if !exists('g:srcery_background_cterm') let g:srcery_background_cterm=0 endif " Options " --------- if !exists('g:srcery_bold') let g:srcery_bold=1 endif if !exists('g:srcery_italic') let g:srcery_italic=1 endif if !exists('g:srcery_undercurl') let g:srcery_undercurl=1 endif if !exists('g:srcery_underline') let g:srcery_underline=1 endif if !exists('g:srcery_strikethrough') let g:srcery_strikethrough=1 endif if !exists('g:srcery_inverse') let g:srcery_inverse=1 endif " If colored text decoration isn't available, this will use inverted text if !exists('g:srcery_guisp_fallback') \ || index(['fg', 'bg'], g:srcery_guisp_fallback) == -1 let g:srcery_guisp_fallback='NONE' endif if !exists('g:srcery_normal_float') let g:srcery_normal_float=0 endif " Emphasis: " --------- let s:bold = 'bold,' if g:srcery_bold == 0 let s:bold = '' endif let s:italic = 'italic,' if g:srcery_italic == 0 let s:italic = '' endif let s:underline = 'underline,' if g:srcery_underline == 0 let s:underline = '' endif let s:undercurl = 'undercurl,' if g:srcery_undercurl == 0 let s:undercurl = '' endif let s:inverse = 'inverse,' if g:srcery_inverse == 0 let s:inverse = '' endif let s:strikethrough = 'strikethrough,' if g:srcery_strikethrough == 0 let s:strikethrough = '' endif " }}} " Palette: {{{ " ----------------------------------------------------------------------------- " Special let s:none = ['NONE', 'NONE'] let s:background = [g:srcery_background, g:srcery_background_cterm] " 16 base colors let s:black = [g:srcery_black, 0] let s:red = [g:srcery_red, 1] let s:green = [g:srcery_green, 2] let s:yellow = [g:srcery_yellow, 3] let s:blue = [g:srcery_blue, 4] let s:magenta = [g:srcery_magenta, 5] let s:cyan = [g:srcery_cyan, 6] let s:white = [g:srcery_white, 7] let s:bright_black = [g:srcery_bright_black, 8] let s:bright_red = [g:srcery_bright_red, 9] let s:bright_green = [g:srcery_bright_green, 10] let s:bright_yellow = [g:srcery_bright_yellow, 11] let s:bright_blue = [g:srcery_bright_blue, 12] let s:bright_magenta = [g:srcery_bright_magenta, 13] let s:bright_cyan = [g:srcery_bright_cyan, 14] let s:bright_white = [g:srcery_bright_white, 15] let s:dark_blue = [g:srcery_dark_blue, g:srcery_dark_blue_cterm] let s:dark_red = [g:srcery_dark_red, g:srcery_dark_red_cterm] let s:dark_green = [g:srcery_dark_green, g:srcery_dark_green_cterm] let s:dim_green = [g:srcery_dim_green, g:srcery_dim_green_cterm] " Additional colors let s:orange = [g:srcery_orange, g:srcery_orange_cterm] let s:bright_orange = [g:srcery_bright_orange, g:srcery_bright_orange_cterm] let s:teal = [g:srcery_teal, g:srcery_teal_cterm] let s:hard_black = [g:srcery_hard_black, g:srcery_hard_black_cterm] let s:gray1 = [g:srcery_gray1, g:srcery_gray1_cterm] let s:gray2 = [g:srcery_gray2, g:srcery_gray2_cterm] let s:gray3 = [g:srcery_gray3, g:srcery_gray3_cterm] let s:gray4 = [g:srcery_gray4, g:srcery_gray4_cterm] let s:gray5 = [g:srcery_gray5, g:srcery_gray5_cterm] let s:gray6 = [g:srcery_gray6, g:srcery_gray6_cterm] "}}} " HL function: {{{ " ----------------------------------------------------------------------------- " original source: https://github.com/morhetz/gruvbox/blob/master/colors/gruvbox.vim#L374 function! s:HL(group, fg, ...) " Arguments: group, guifg, guibg, gui, guisp " foreground let l:fg = a:fg " background if a:0 >= 1 let l:bg = a:1 else let l:bg = s:none endif " emphasis if a:0 >= 2 && strlen(a:2) let l:emstr = a:2 else let l:emstr = 'NONE,' endif " special fallback if a:0 >= 3 if g:srcery_guisp_fallback !=# 'NONE' let fg = a:3 endif " bg fallback mode should invert highlighting if g:srcery_guisp_fallback ==# 'bg' let emstr .= 'inverse,' endif endif let l:histring = [ 'hi', a:group, \ 'guifg=' . l:fg[0], 'ctermfg=' . l:fg[1], \ 'guibg=' . l:bg[0], 'ctermbg=' . l:bg[1], \ 'gui=' . l:emstr[:-2], 'cterm=' . l:emstr[:-2] \ ] " special if a:0 >= 3 call add(l:histring, 'guisp=' . a:3[0]) endif execute join(l:histring, ' ') endfunction "}}} " UI groups: {{{ " ----------------------------------------------------------------------------- call s:HL('ColorColumn', s:none, s:gray2) call s:HL('Cursor', s:black, s:yellow) call s:HL('CursorLine', s:none, s:gray1) call s:HL('CursorLineNr', s:yellow, s:background) call s:HL('Directory', s:green, s:none, s:bold) call s:HL('ErrorMsg', s:bright_white, s:red) call s:HL('FoldColumn', s:bright_black, s:background) call s:HL('Folded', s:bright_black, s:background, s:italic) call s:HL('LineNr', s:bright_black) call s:HL('Link', s:white, s:none, s:underline) call s:HL('ModeMsg', s:yellow, s:none, s:bold) call s:HL('MoreMsg', s:yellow, s:none, s:bold) call s:HL('NonText', s:gray6) call s:HL('Normal', s:bright_white, s:background) call s:HL('Pmenu', s:none, s:gray2) call s:HL('PmenuSbar', s:none, s:gray4) call s:HL('PmenuSel', s:none, s:gray4, s:inverse) call s:HL('PmenuThumb', s:none, s:white) call s:HL('PmenuBorder', s:gray3, s:none) call s:HL('Question', s:orange, s:none, s:bold) call s:HL('SignColumn', s:none, s:background) call s:HL('SpecialKey', s:yellow) call s:HL('SpellBad', s:none, s:none, s:undercurl, s:blue) call s:HL('SpellCap', s:none, s:none, s:undercurl, s:green) call s:HL('SpellLocal', s:none, s:none, s:undercurl, s:cyan) call s:HL('SpellRare', s:none, s:none, s:undercurl, s:magenta) call s:HL('StatusLine', s:bright_white, s:gray2) call s:HL('StatusLineNC', s:bright_black, s:background, s:underline) call s:HL('TabLineFill', s:bright_black, s:gray1) call s:HL('TabLineSel', s:bright_white, s:gray4) call s:HL('Title', s:green, s:none, s:bold) call s:HL('Underlined', s:none, s:none, s:underline) call s:HL('WarningMsg', s:red, s:none, s:bold) call s:HL('WildMenu', s:blue, s:background, s:bold) call s:HL('VertSplit', s:bright_black, s:background) call s:HL('WinSeparator', s:bright_black, s:background) call s:HL('MatchParen', s:bright_magenta, s:none, s:bold) call s:HL('IncSearch', s:none, s:gray4, s:underline . s:bold) call s:HL('CurSearch', s:none, s:gray4, s:underline . s:bold) call s:HL('Search', s:none, s:none, s:underline) call s:HL('Visual', s:none, s:gray3, s:inverse) hi! link CursorColumn CursorLine hi! link iCursor Cursor hi! link lCursor Cursor hi! link TabLine TabLineFill hi! link vCursor Cursor hi! link VisualNOS Visual " Conditionals if g:srcery_normal_float == 1 call s:HL('NormalFloat', s:none, s:gray1) call s:HL('FloatBorder', s:gray3, s:none) endif " Vim 8 terminal if has('terminal') let g:terminal_ansi_colors = repeat([0], 16) let g:terminal_ansi_colors[0] = s:black[0] let g:terminal_ansi_colors[1] = s:red[0] let g:terminal_ansi_colors[2] = s:green[0] let g:terminal_ansi_colors[3] = s:yellow[0] let g:terminal_ansi_colors[4] = s:blue[0] let g:terminal_ansi_colors[5] = s:magenta[0] let g:terminal_ansi_colors[6] = s:cyan[0] let g:terminal_ansi_colors[7] = s:white[0] let g:terminal_ansi_colors[8] = s:bright_black[0] let g:terminal_ansi_colors[9] = s:bright_red[0] let g:terminal_ansi_colors[10] = s:bright_green[0] let g:terminal_ansi_colors[11] = s:bright_yellow[0] let g:terminal_ansi_colors[12] = s:bright_blue[0] let g:terminal_ansi_colors[13] = s:bright_magenta[0] let g:terminal_ansi_colors[14] = s:bright_cyan[0] let g:terminal_ansi_colors[15] = s:bright_white[0] endif if has('nvim') " Neovim terminal let g:terminal_color_0 = s:black[0] let g:terminal_color_1 = s:red[0] let g:terminal_color_2 = s:green[0] let g:terminal_color_3 = s:yellow[0] let g:terminal_color_4 = s:blue[0] let g:terminal_color_5 = s:magenta[0] let g:terminal_color_6 = s:cyan[0] let g:terminal_color_7 = s:white[0] let g:terminal_color_8 = s:bright_black[0] let g:terminal_color_9 = s:bright_red[0] let g:terminal_color_10 = s:bright_green[0] let g:terminal_color_11 = s:bright_yellow[0] let g:terminal_color_12 = s:bright_blue[0] let g:terminal_color_13 = s:bright_magenta[0] let g:terminal_color_14 = s:bright_cyan[0] let g:terminal_color_15 = s:bright_white[0] " Neovim Diagnostic hi! link DiagnosticError SrceryDiagError hi! link DiagnosticHint SrceryDiagHint hi! link DiagnosticInfo SrceryDiagInfo hi! link DiagnosticWarn SrceryDiagWarn hi! link DiagnosticUnderlineError SrceryDiagUnderlineError hi! link DiagnosticUnderlineHint SrceryDiagUnderlineHint hi! link DiagnosticUnderlineInfo SrceryDiagUnderlineInfo hi! link DiagnosticUnderlineWarn SrceryDiagUnderlineWarn " Neovim Support call s:HL('healthError', s:red) call s:HL('healthSuccess', s:green) call s:HL('healthWarning', s:orange) call s:HL('TermCursorNC', s:gray1, s:none) endif " }}} " Base groups: {{{ " ----------------------------------------------------------------------------- call s:HL('Boolean', s:bright_magenta) call s:HL('Character', s:green) call s:HL('Comment', s:bright_black, s:none, s:italic) call s:HL('Conceal', s:none, s:none) call s:HL('Conditional', s:red) call s:HL('Constant', s:bright_magenta) call s:HL('Decorator', s:bright_orange) call s:HL('Define', s:orange) call s:HL('Delimiter', s:bright_black) call s:HL('Error', s:bright_white, s:red, s:bold) call s:HL('Exception', s:red) call s:HL('Float', s:bright_magenta) call s:HL('Function', s:yellow) call s:HL('Identifier', s:bright_blue) call s:HL('Include', s:bright_red) call s:HL('Keyword', s:red) call s:HL('Label', s:white) call s:HL('Member', s:bright_blue) call s:HL('Number', s:bright_magenta) call s:HL('Operator', s:white) call s:HL('PreCondit', s:cyan) call s:HL('PreProc', s:cyan) call s:HL('Repeat', s:yellow) call s:HL('Special', s:blue) call s:HL('SpecialChar', s:yellow, s:none) call s:HL('SpecialComment', s:bright_cyan, s:none, s:italic) call s:HL('Statement', s:red) call s:HL('StorageClass', s:bright_blue) call s:HL('String', s:bright_green) call s:HL('Structure', s:cyan) call s:HL('Tag', s:blue) call s:HL('Todo', s:bright_orange, s:none, s:bold . s:italic) call s:HL('Type', s:bright_blue, s:none, s:italic) call s:HL('Typedef', s:magenta) call s:HL('Variable', s:bright_white, s:none) hi! link Annotation Decorator hi! link Macro Define " heading groups call s:HL('SrceryH1', s:bright_blue, s:gray1, s:bold) call s:HL('SrceryH2', s:yellow, s:gray1, s:bold) call s:HL('SrceryH3', s:bright_yellow, s:gray1, s:bold) call s:HL('SrceryH4', s:green, s:gray1, s:bold) call s:HL('SrceryH5', s:magenta, s:gray1, s:bold) call s:HL('SrceryH6', s:bright_magenta, s:gray1, s:bold) " diagnostic groups call s:HL('SrceryDiagError', s:bright_red) call s:HL('SrceryDiagWarn', s:bright_yellow) call s:HL('SrceryDiagInfo', s:bright_green) call s:HL('SrceryDiagHint', s:bright_cyan) call s:HL('SrceryDiagUnderlineError', s:bright_red, s:none, s:undercurl) call s:HL('SrceryDiagUnderlineWarn', s:bright_yellow, s:none, s:undercurl) call s:HL('SrceryDiagUnderlineInfo', s:bright_green, s:none, s:undercurl) call s:HL('SrceryDiagUnderlineHint', s:bright_cyan, s:none, s:undercurl) " }}} " Languages: {{{ " ----------------------------------------------------------------------------- " tree-sitter if has('nvim') hi! link @attribute Annotation hi! link @constant.builtin Constant hi! link @constructor Function hi! link @delimiter Delimiter hi! link @function.builtin Function hi! link @keyword.conditional Conditional hi! link @keyword.directive PreProc hi! link @keyword.directive.define Define hi! link @keyword.exception Exception hi! link @keyword.import Include hi! link @keyword.modifier StorageClass hi! link @keyword.operator Operator hi! link @keyword.repeat Repeat hi! link @keyword.return Statement hi! link @markup.heading.1.markdown SrceryH1 hi! link @markup.heading.2.markdown SrceryH2 hi! link @markup.heading.3.markdown SrceryH3 hi! link @markup.heading.4.markdown SrceryH4 hi! link @markup.heading.5.markdown SrceryH5 hi! link @markup.heading.6.markdown SrceryH6 hi! link @markup.link Link hi! link @markup.link.url String hi! link @property Member hi! link @string.escape SpecialChar hi! link @string.regex SpecialChar hi! link @tag.attribute Function hi! link @tag.delimiter Delimiter hi! link @text.uri String hi! link @type Type hi! link @type.builtin Type hi! link @variable Variable hi! link @variable.builtin Keyword hi! link @variable.member Member call s:HL('@function.macro', s:bright_yellow) call s:HL('@markup.italic', s:none, s:none, s:italic) call s:HL('@markup.strong', s:none, s:none, s:bold) call s:HL('@markup.underline', s:none, s:none, s:underline) endif " Diffs: call s:HL('DiffAdd', s:none, s:dark_green) call s:HL('DiffChange', s:none, s:gray3) call s:HL('DiffDelete', s:none, s:dark_red) call s:HL('DiffText', s:none, s:dim_green) " legacy groups call s:HL('diffFile', s:orange) call s:HL('diffLine', s:blue) call s:HL('diffNewFile', s:yellow) hi! link diffAdded DiffAdd hi! link diffChanged DiffChange hi! link diffRemoved DiffDelete " Vim: call s:HL('vimAugroup', s:green) call s:HL('vimCommentTitle', s:white, s:none, s:bold . s:italic) call s:HL('vimNotation', s:green) hi! link vimFunc Function hi! link vimFunction Function hi! link vimUserFunc Function " CSS: call s:HL('cssAttributeSelector', s:green) call s:HL('cssStringQ', s:green) hi! link cssAttr Keyword hi! link cssBraces Delimiter hi! link cssClassName cssDefinition hi! link cssColor Number hi! link cssDefinition Type hi! link cssFunctionComma Delimiter hi! link cssIdentifier Identifier hi! link cssProp cssDefinition hi! link cssPseudoClass cssDefinition hi! link cssPseudoClassId cssPseudoClass hi! link cssVendor Keyword " Elixir call s:HL('elixirInterpolationDelimiter', s:cyan) call s:HL('elixirStringDelimiter', s:green) hi! link elixirDocString Comment " Go hi! link goBuiltins Function hi! link goConstants Keyword " Haskell hi! link haskellPragma haskellPreProc hi! link haskellPreProc PreProc hi! link haskellType Type " HTML call s:HL('htmlBold', s:none, s:none, s:bold) call s:HL('htmlItalic', s:none, s:none, s:italic) hi! link htmlArg Function hi! link htmlEndTag htmlTag hi! link htmlH1 SrceryH1 hi! link htmlH2 SrceryH2 hi! link htmlH3 SrceryH3 hi! link htmlH4 SrceryH4 hi! link htmlH5 SrceryH5 hi! link htmlH6 SrceryH6 hi! link htmlLink Link hi! link htmlSpecialChar SpecialChar hi! link htmlTag Special hi! link htmlTagN htmlTag hi! link htmlTagName htmlTag " Java: call s:HL('javaDocTags', s:green) hi! link javaCommentTitle Comment hi! link javaCommentTitle vimCommentTitle hi! link javaParen Delimiter " JavaScript: hi! link javaScriptBraces Delimiter hi! link javaScriptIdentifier Keyword hi! link javaScriptNumber Number hi! link jsArrowFunction Operator hi! link jsBrackets Delimiter hi! link jsClassMethodType Keyword hi! link jsDocTags Keyword hi! link jsDocType Type hi! link jsFuncArgOperator Operator hi! link jsFuncCall Function hi! link jsFuncParens Delimiter hi! link jsNoise Delimiter hi! link jsNull Constant hi! link jsPrototype Keyword hi! link jsRegexpString SpecialChar hi! link jsTemplateBraces Special hi! link jsThis Special hi! link jsUndefined Constant " JSON: hi! link jsonKeyword Identifier " Lua hi! link luaFunc Function " Markdown call s:HL('markdownBold', s:none, s:none, s:bold) call s:HL('markdownItalic', s:none, s:none, s:italic) call s:HL('mkdFootnote', s:cyan) hi! link markdownCodeBlock Special hi! link markdownH1 SrceryH1 hi! link markdownH2 SrceryH2 hi! link markdownH3 SrceryH3 hi! link markdownH4 SrceryH4 hi! link markdownH5 SrceryH5 hi! link markdownH6 SrceryH6 hi! link markdownHeadingDelimiter Keyword hi! link markdownIdDelimiter Keyword hi! link markdownItalicDelimiter Delimiter hi! link markdownLinkDelimiter Delimiter hi! link markdownLinkText Link hi! link markdownLinkTextDelimiter Delimiter hi! link markdownListMarker Keyword hi! link markdownRule Keyword hi! link markdownUrl String hi! link mkdCode Special hi! link mkdLineBreak Delimiter hi! link mkdRule Special " MoonScript: hi! link moonExtendedOp Operator hi! link moonFunction Function hi! link moonObject Structure hi! link moonSpecialOp Operator " Pandoc " vim-pandoc-syntax reapplies its own `hi def link` defaults on every " ColorScheme event, but `def` yields to a group already linked here, so " these overrides stick. call s:HL('pandocFootnoteID', s:cyan) call s:HL('pandocFootnoteDef', s:cyan) call s:HL('pandocFootnoteBlock', s:cyan) hi! link pandocAtxHeader SrceryH1 hi! link pandocSetexHeader SrceryH1 hi! link pandocAtxHeaderMark Keyword hi! link pandocAtxStart Keyword hi! link pandocHRule Keyword hi! link pandocListItemBullet Keyword hi! link pandocUListItemBullet Keyword hi! link pandocNoFormatted Special " Python hi! link pythonBuiltin Type hi! link pythonBuiltinObj Type hi! link pythonBuiltinObject Type hi! link pythonBuiltinType Type hi! link pythonEscape SpecialChar hi! link pythonExClass Type hi! link pythonNone Type hi! link pythonRun Comment " Ruby " rubyConstant " rubySymbol hi! link rubyAttribute Identifier hi! link rubyBlockParameterList Operator hi! link rubyInterpolationDelimiter Keyword hi! link rubyKeywordAsMethod Function hi! link rubyLocalVariableOrMethod Function hi! link rubyPseudoVariable Keyword hi! link rubyRegexp SpecialChar " Rust hi! link rustCommentLineDoc Comment hi! link rustModPathSep Delimiter " SASS: call s:HL('sassId', s:green, s:none, s:underline) hi! link sassAmpersand Keyword hi! link sassClassChar Delimiter hi! link sassControl Keyword hi! link sassControlLine Keyword hi! link sassExtend Keyword hi! link sassFor Keyword hi! link sassFunctionDecl Keyword hi! link sassFunctionName Function hi! link sassidChar sassId hi! link sassInclude SpecialChar hi! link sassMixing SpecialChar hi! link sassMixinName Function hi! link sassReturn Keyword " Shellscript: hi! link shCmdParenRegion Delimiter hi! link shCmdSubRegion Delimiter hi! link shDerefSimple Identifier hi! link shDerefVar Identifier " XML: hi! link xmlCdataStart Delimiter hi! link xmlAttrib Function hi! link xmlAttribPunct Normal hi! link xmlCdata Comment hi! link xmlCdataCdata xmlCdataStart hi! link xmlCdataEnd xmlCdataStart hi! link xmlEndTag Tag hi! link xmlEqual Operator hi! link xmlProcessingDelim Delimiter hi! link xmlTag Tag hi! link xmlTagName Tag " YML hi! link yamlPlainScalar String " }}} " Plugins: {{{ " ----------------------------------------------------------------------------- if has('nvim') " Neovim LSP: " for backward compatibility with neovim v0.5.x if has('nvim-0.5') hi! link LspDiagnosticsDefaultError DiagnosticError hi! link LspDiagnosticsDefaultHint DiagnosticHint hi! link LspDiagnosticsDefaultInformation DiagnosticInfo hi! link LspDiagnosticsDefaultWarning DiagnosticWarn hi! link LspDiagnosticsUnderlineError DiagnosticUnderlineError hi! link LspDiagnosticsUnderlineHint DiagnosticUnderlineHint hi! link LspDiagnosticsUnderlineInformation DiagnosticUnderlineInfo hi! link LspDiagnosticsUnderlineWarning DiagnosticUnderlineWarn endif " snacks.nvim: " hi! link SnacksNormal Normal " hi! link SnacksNormalNC Normal " hi! link SnacksPicker Normal " hi! link SnacksPickerDir Comment " hi! link SnacksPickerGitStatusIgnored Comment " hi! link SnacksPickerGitStatusUntracked Comment " hi! link SnacksPickerPathHidden Comment " hi! link SnacksPickerPathIgnored Comment " hi! link SnacksPickerTotals Comment " trouble.nvim: hi! link TroubleNormal Normal hi! link TroubleNormalNC Normal " which-key.nvim: hi! link WhichKeyNormal Normal " nvimpager: call s:HL('NvimPagerFG_black_BG_', s:black) call s:HL('NvimPagerFG_red_BG_', s:red) call s:HL('NvimPagerFG_green_BG_', s:green) call s:HL('NvimPagerFG_yellow_BG_', s:yellow) call s:HL('NvimPagerFG_blue_BG_', s:blue) call s:HL('NvimPagerFG_magenta_BG_', s:magenta) call s:HL('NvimPagerFG_cyan_BG_', s:cyan) call s:HL('NvimPagerFG_white_BG_', s:white) " Are these suppose to be bright variant, or does it mean literally bold? call s:HL('NvimPagerFG_black_BG__bold', s:black, s:none, s:bold) call s:HL('NvimPagerFG_red_BG__bold', s:red, s:none, s:bold) call s:HL('NvimPagerFG_green_BG__bold', s:green, s:none, s:bold) call s:HL('NvimPagerFG_yellow_BG__bold', s:yellow, s:none, s:bold) call s:HL('NvimPagerFG_blue_BG__bold', s:blue, s:none, s:bold) call s:HL('NvimPagerFG_magenta_BG__bold', s:magenta, s:none, s:bold) call s:HL('NvimPagerFG_cyan_BG__bold', s:cyan, s:none, s:bold) call s:HL('NvimPagerFG_white_BG__bold', s:white, s:none, s:bold) endif " Sneak: hi! link Sneak Search hi! link SneakCurrent CurSearch hi! link SneakLabel Search " Rainbow Parentheses: if !exists('g:rbpt_colorpairs') let g:rbpt_colorpairs = \ [ \ ['blue', '#2C78BF'], ['202', '#FF5F00'], \ ['red', '#EF2F27'], ['magenta', '#E02C6D'] \ ] endif let g:rainbow_guifgs = [ '#E02C6D', '#EF2F27', '#D75F00', '#2C78BF'] let g:rainbow_ctermfgs = [ 'magenta', 'red', '202', '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: call s:HL('GitGutterAdd', s:green) call s:HL('GitGutterChange', s:yellow) call s:HL('GitGutterChangeDelete', s:yellow) call s:HL('GitGutterDelete', s:red) " Ale: hi! link ALEError SrceryDiagUnderlineError hi! link ALEErrorSign SrceryDiagError hi! link ALEInfo SrceryDiagUnderlineInfo hi! link ALEInfoSign SrceryDiagInfo hi! link ALEWarning SrceryDiagUnderlineWarn hi! link ALEWarningSign SrceryDiagWarn " vim-indent-guides: call s:HL('IndentGuidesEven', s:none, s:gray3) call s:HL('IndentGuidesOdd', s:none, s:gray4) " vim-startify: hi! link StartifyBracket Comment hi! link StartifyFile Normal hi! link StartifyFooter Normal hi! link StartifyHeader Type hi! link StartifyNumber Statement hi! link StartifyPath String hi! link StartifySection Identifier hi! link StartifySlash Normal hi! link StartifySpecial Comment " fzf: call s:HL('fzf1', s:magenta, s:gray2) call s:HL('fzf2', s:bright_green, s:gray2) call s:HL('fzf3', s:bright_white, s:gray2) " coc.nvim: hi! link CocErrorHighlight SrceryDiagUnderlineError hi! link CocErrorSign SrceryDiagError hi! link CocHintHighlight SrceryDiagUnderlineHint hi! link CocHintSign SrceryDiagHint hi! link CocInfoHighlight SrceryDiagUnderlineInfo hi! link CocInfoSign SrceryDiagInfo hi! link CocWarningHighlight SrceryDiagUnderlineWarn hi! link CocWarningSign SrceryDiagWarn " CtrlP: hi! link CtrlPBufferHid Normal hi! link CtrlPMatch Keyword " NERDTree: hi! link NERDTreeDirSlash Keyword hi! link NERDTreeExecFile Macro hi! link NERDTreeHelp Comment " Telescope: " call s:HL('TelescopeNormal', s:white) " GitCommit: call s:HL('gitcommitDiscardedFile', s:red) call s:HL('gitcommitSelectedFile', s:green) " Better whitespace: call s:HL('ExtraWhitespace', s:none, s:red) " render-markdown.nvim: call s:HL('RenderMarkdownCode', s:none, s:gray1) call s:HL('RenderMarkdownH1Bg', s:none, s:gray1) call s:HL('RenderMarkdownH2Bg', s:none, s:gray1) call s:HL('RenderMarkdownH3Bg', s:none, s:gray1) call s:HL('RenderMarkdownH4Bg', s:none, s:gray1) call s:HL('RenderMarkdownH5Bg', s:none, s:gray1) call s:HL('RenderMarkdownH6Bg', s:none, s:gray1) " nvim-cmp call s:HL('CmpItemAbbr', s:white) call s:HL('CmpItemAbbrMatch', s:bright_white, s:none, s:underline) call s:HL('CmpItemAbbrMatchFuzzy', s:white, s:none, s:underline) call s:HL('CmpItemKind', s:bright_white) call s:HL('CmpItemMenu', s:none, s:gray1) " Kind call s:HL('CmpItemKindFile', s:bright_blue) call s:HL('CmpItemKindFolder', s:blue) call s:HL('CmpItemKindSnippet', s:green) call s:HL('CmpItemKindText', s:white) hi! link CmpItemKindConstant Constant hi! link CmpItemKindFunction Function hi! link CmpItemKindKeyword Keyword hi! link CmpItemKindOperator Operator hi! link CmpItemKindVariable Variable " }}} " vim: set sw=2 ts=2 sts=2 et tw=80 ft=vim fdm=marker :