Mercurial > ec-dotfiles
diff vendor/vim-colors/srcery.vim @ 662:f280738a90a6
[vim] vendor theme and add some more
author | nanaya <me@nanaya.pro> |
---|---|
date | Fri, 10 Dec 2021 20:20:30 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/vim-colors/srcery.vim Fri Dec 10 20:20:30 2021 +0900 @@ -0,0 +1,1301 @@ +" 'srcery.vim' -- Vim color scheme. +" Maintainer: Roosta (mail@roosta.sh) +" Description: Colorscheme that focus ease of use and clearly defined contrasting colors with a slightly earthy tone. +" Original Source: https://github.com/morhetz/gruvbox + +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' + +if !has('gui_running') && &t_Co != 256 + finish +endif + +" Setup Variables: {{{1 +" Colors {{{2 + +if !exists('g:srcery_black') + let g:srcery_black='#1C1B19' +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='#BAA67F' +endif + +if !exists('g:srcery_bright_black') + let g:srcery_bright_black='#918175' +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_orange') + let g:srcery_orange='#FF5F00' +endif + +if !exists('g:srcery_bright_orange') + let g:srcery_bright_orange='#FF8700' +endif + +if !exists('g:srcery_hard_black') + let g:srcery_hard_black='#121212' +endif + +if !exists('g:srcery_xgray1') + let g:srcery_xgray1='#262626' +endif + +if !exists('g:srcery_xgray2') + let g:srcery_xgray2='#303030' +endif + +if !exists('g:srcery_xgray3') + let g:srcery_xgray3='#3A3A3A' +endif + +if !exists('g:srcery_xgray4') + let g:srcery_xgray4='#444444' +endif + +if !exists('g:srcery_xgray5') + let g:srcery_xgray5='#4E4E4E' +endif + +if !exists('g:srcery_xgray6') + let g:srcery_xgray6='#585858' +endif + +" }}} +" Options {{{2 + +if !exists('g:srcery_bold') + let g:srcery_bold=1 +endif + +if !exists('g:srcery_italic') + if has('gui_running') || $TERM_ITALICS ==? 'true' + let g:srcery_italic=1 + else + let g:srcery_italic=0 + endif +endif + +if !exists('g:srcery_bg_passthrough') + let g:srcery_bg_passthrough=0 +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_inverse') + let g:srcery_inverse=1 +endif + +if !exists('g:srcery_inverse_matches') + let g:srcery_inverse_matches=0 +endif + +if !exists('g:srcery_inverse_match_paren') + let g:srcery_inverse_match_paren=0 +endif + +if !exists('g:srcery_dim_lisp_paren') + let g:srcery_dim_lisp_paren=0 +endif + +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_italic_types') + let g:srcery_italic_types=0 +endif + +if !exists('g:srcery_hard_black_terminal_bg') + let g:srcery_hard_black_terminal_bg=1 +endif + +" }}} +" }}} +" Palette {{{ + +let s:none = ['NONE', 'NONE'] + +" 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] + +" xterm colors. +let s:orange = [g:srcery_orange, 202] +let s:bright_orange = [g:srcery_bright_orange, 208] +let s:hard_black = [g:srcery_hard_black, 233] +let s:xgray1 = [g:srcery_xgray1, 235] +let s:xgray2 = [g:srcery_xgray2, 236] +let s:xgray3 = [g:srcery_xgray3, 237] +let s:xgray4 = [g:srcery_xgray4, 238] +let s:xgray5 = [g:srcery_xgray5, 239] +let s:xgray6 = [g:srcery_xgray6, 240] + +"}}} +" Setup 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 + +" }}} +" Highlighting Function: {{{ + +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 higlighting + 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 + +"}}} +" Srcery Hi Groups: {{{ + +" memoize common hi groups +call s:HL('SrceryWhite', s:white) +call s:HL('SrceryRed', s:red) +call s:HL('SrceryGreen', s:green) +call s:HL('SrceryYellow', s:yellow) +call s:HL('SrceryBlue', s:blue) +call s:HL('SrceryMagenta', s:magenta) +call s:HL('SrceryCyan', s:cyan) +call s:HL('SrceryBlack', s:black) + +call s:HL('SrceryRedBold', s:red, s:none, s:bold) +call s:HL('SrceryGreenBold', s:green, s:none, s:bold) +call s:HL('SrceryYellowBold', s:yellow, s:none, s:bold) +call s:HL('SrceryBlueBold', s:blue, s:none, s:bold) +call s:HL('SrceryMagentaBold', s:magenta, s:none, s:bold) +call s:HL('SrceryCyanBold', s:cyan, s:none, s:bold) + +call s:HL('SrceryBrightRed', s:bright_red, s:none) +call s:HL('SrceryBrightGreen', s:bright_green, s:none) +call s:HL('SrceryBrightYellow', s:bright_yellow, s:none) +call s:HL('SrceryBrightBlue', s:bright_blue, s:none) +call s:HL('SrceryBrightMagenta', s:bright_magenta, s:none) +call s:HL('SrceryBrightCyan', s:bright_cyan, s:none) +call s:HL('SrceryBrightBlack', s:bright_black, s:none) +call s:HL('SrceryBrightWhite', s:bright_white) + +call s:HL('SrceryBrightBlueBold', s:bright_blue, s:none, s:bold) +call s:HL('SrceryBrightYellowBold', s:bright_yellow, s:none, s:bold) + +" special +call s:HL('SrceryOrange', s:orange) +call s:HL('SrceryBrightOrange', s:bright_orange) +call s:HL('SrceryOrangeBold', s:orange, s:none, s:bold) +call s:HL('SrceryHardBlack', s:hard_black) +call s:HL('SrceryXgray1', s:xgray1) +call s:HL('SrceryXgray2', s:xgray2) +call s:HL('SrceryXgray3', s:xgray3) +call s:HL('SrceryXgray4', s:xgray4) +call s:HL('SrceryXgray5', s:xgray5) +call s:HL('SrceryXgray6', s:xgray6) + +" }}} +" Setup Terminal Colors For Neovim: {{{ + +if has('nvim') + let g:terminal_color_0 = s:black[0] + let g:terminal_color_8 = s:bright_black[0] + + let g:terminal_color_1 = s:red[0] + let g:terminal_color_9 = s:bright_red[0] + + let g:terminal_color_2 = s:green[0] + let g:terminal_color_10 = s:bright_green[0] + + let g:terminal_color_3 = s:yellow[0] + let g:terminal_color_11 = s:bright_yellow[0] + + let g:terminal_color_4 = s:blue[0] + let g:terminal_color_12 = s:bright_blue[0] + + let g:terminal_color_5 = s:magenta[0] + let g:terminal_color_13 = s:bright_magenta[0] + + let g:terminal_color_6 = s:cyan[0] + let g:terminal_color_14 = s:bright_cyan[0] + + let g:terminal_color_7 = s:white[0] + let g:terminal_color_15 = s:bright_white[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:black[0] + let g:terminal_ansi_colors[8] = s:bright_black[0] + + let g:terminal_ansi_colors[1] = s:red[0] + let g:terminal_ansi_colors[9] = s:bright_red[0] + + let g:terminal_ansi_colors[2] = s:green[0] + let g:terminal_ansi_colors[10] = s:bright_green[0] + + let g:terminal_ansi_colors[3] = s:yellow[0] + let g:terminal_ansi_colors[11] = s:bright_yellow[0] + + let g:terminal_ansi_colors[4] = s:blue[0] + let g:terminal_ansi_colors[12] = s:bright_blue[0] + + let g:terminal_ansi_colors[5] = s:magenta[0] + let g:terminal_ansi_colors[13] = s:bright_magenta[0] + + let g:terminal_ansi_colors[6] = s:cyan[0] + let g:terminal_ansi_colors[14] = s:bright_cyan[0] + + let g:terminal_ansi_colors[7] = s:white[0] + let g:terminal_ansi_colors[15] = s:bright_white[0] +endif + +" }}} + +" Vanilla colorscheme --------------------------------------------------------- +" General UI: {{{ + +" Normal text +" +if g:srcery_bg_passthrough == 1 && !has('gui_running') + call s:HL('Normal', s:bright_white, s:none) + else + call s:HL('Normal', s:bright_white, s:black) +endif + +if v:version >= 700 + " Screen line that the cursor is + call s:HL('CursorLine', s:none, s:xgray2) + " Screen column that the cursor is + hi! link CursorColumn CursorLine + + call s:HL('TabLineFill', s:bright_black, s:xgray2) + call s:HL('TabLineSel', s:bright_white, s:xgray5) + + " Not active tab page label + hi! link TabLine TabLineFill + + " Match paired bracket under the cursor + " + if g:srcery_inverse_match_paren == 1 + call s:HL('MatchParen', s:bright_magenta, s:none, s:inverse . s:bold) + else + call s:HL('MatchParen', s:bright_magenta, s:none, s:bold) + endif +endif + +if v:version >= 703 + " Highlighted screen columns + call s:HL('ColorColumn', s:none, s:xgray2) + + " Concealed element: \lambda → λ + call s:HL('Conceal', s:blue, s:none) + + " Line number of CursorLine + if g:srcery_bg_passthrough == 1 && !has('gui_running') + call s:HL('CursorLineNr', s:yellow, s:none) + else + call s:HL('CursorLineNr', s:yellow, s:black) + endif + +endif + +hi! link NonText SrceryXgray4 +hi! link SpecialKey SrceryBlue + +if g:srcery_inverse == 1 + call s:HL('Visual', s:none, s:none, s:inverse) +else + call s:HL('Visual', s:none, s:xgray2, s:bold) +endif + +hi! link VisualNOS Visual + +if g:srcery_inverse == 1 && g:srcery_inverse_matches == 1 + call s:HL('Search', s:none, s:none, s:inverse) + call s:HL('IncSearch', s:none, s:none, s:inverse) +else + call s:HL('Search', s:none, s:xgray5, s:bold) + call s:HL('IncSearch', s:none, s:xgray5, s:underline . s:bold) +endif + +call s:HL('Underlined', s:blue, s:none, s:underline) + +call s:HL('StatusLine', s:bright_white, s:xgray2) + +if g:srcery_bg_passthrough == 1 && !has('gui_running') + call s:HL('StatusLineNC', s:bright_black, s:none, s:underline) + + " The column separating vertically split windows + call s:HL('VertSplit', s:bright_white, s:none) + + " Current match in wildmenu completion + call s:HL('WildMenu', s:blue, s:none, s:bold) +else + call s:HL('StatusLineNC', s:bright_black, s:black, s:underline) + call s:HL('VertSplit', s:bright_white, s:black) + call s:HL('WildMenu', s:blue, s:black, s:bold) +endif + +" Directory names, special names in listing +hi! link Directory SrceryGreenBold + +" Titles for output from :set all, :autocmd, etc. +hi! link Title SrceryGreenBold + +" Error messages on the command line +call s:HL('ErrorMsg', s:bright_white, s:red) +" More prompt: -- More -- +hi! link MoreMsg SrceryYellowBold +" Current mode message: -- INSERT -- +hi! link ModeMsg SrceryYellowBold +" 'Press enter' prompt and yes/no questions +hi! link Question SrceryOrangeBold +" Warning messages +hi! link WarningMsg SrceryRedBold + +" }}} +" Gutter: {{{ + +" Line number for :number and :# commands +call s:HL('LineNr', s:bright_black) + +if g:srcery_bg_passthrough == 1 && !has('gui_running') + " Column where signs are displayed + " TODO Possibly need to fix SignColumn + call s:HL('SignColumn', s:none, s:none) + " Line used for closed folds + call s:HL('Folded', s:bright_black, s:none, s:italic) + " Column where folds are displayed + call s:HL('FoldColumn', s:bright_black, s:none) +else + call s:HL('SignColumn', s:none, s:black) + call s:HL('Folded', s:bright_black, s:black, s:italic) + call s:HL('FoldColumn', s:bright_black, s:black) +endif + +" }}} +" Cursor: {{{ + +" Character under cursor +call s:HL('Cursor', s:black, s:yellow) +" Visual mode cursor, selection +hi! link vCursor Cursor +" Input moder cursor +hi! link iCursor Cursor +" Language mapping cursor +hi! link lCursor Cursor + +" }}} +" Syntax Highlighting: {{{ + +hi! link Special SrceryOrange + +call s:HL('Comment', s:bright_black, s:none, s:italic) + +if g:srcery_bg_passthrough == 1 && !has('gui_running') + call s:HL('Todo', s:bright_white, s:none, s:bold . s:italic) +else + call s:HL('Todo', s:bright_white, s:black, s:bold . s:italic) +endif + +call s:HL('Error', s:bright_white, s:red, s:bold) + +" String constant: "this is a string" +call s:HL('String', s:bright_green) + +" Generic statement +hi! link Statement SrceryRed +" if, then, else, endif, swicth, etc. +hi! link Conditional SrceryRed +" for, do, while, etc. +hi! link Repeat SrceryRed +" case, default, etc. +hi! link Label SrceryRed +" try, catch, throw +hi! link Exception SrceryRed +" sizeof, "+", "*", etc. +hi! link Operator Normal +" Any other keyword +hi! link Keyword SrceryRed + +" Variable name +hi! link Identifier SrceryCyan +" Function name +hi! link Function SrceryYellow + +" Generic preprocessor +hi! link PreProc SrceryCyan +" Preprocessor #include +hi! link Include SrceryCyan +" Preprocessor #define +hi! link Define SrceryCyan +" Same as Define +hi! link Macro SrceryOrange +" Preprocessor #if, #else, #endif, etc. +hi! link PreCondit SrceryCyan + +" Generic constant +hi! link Constant SrceryBrightMagenta +" Character constant: 'c', '/n' +hi! link Character SrceryBrightMagenta +" Boolean constant: TRUE, false +hi! link Boolean SrceryBrightMagenta +" Number constant: 234, 0xff +hi! link Number SrceryBrightMagenta +" Floating point constant: 2.3e10 +hi! link Float SrceryBrightMagenta + +" Generic type +if g:srcery_italic_types == 1 && g:srcery_italic == 1 + call s:HL('Type', s:bright_blue, s:none, s:italic) +else + hi! link Type SrceryBrightBlue +end +" static, register, volatile, etc +hi! link StorageClass SrceryOrange +" struct, union, enum, etc. +hi! link Structure SrceryCyan +" typedef +hi! link Typedef SrceryMagenta + +if g:srcery_dim_lisp_paren == 1 + hi! link Delimiter SrceryXgray6 +else + hi! link Delimiter SrceryBrightBlack +endif + +" }}} +" Completion Menu: {{{ + +if v:version >= 700 + " Popup menu: normal item + call s:HL('Pmenu', s:bright_white, s:xgray2) + " Popup menu: selected item + call s:HL('PmenuSel', s:bright_white, s:blue, s:bold) + + if g:srcery_bg_passthrough == 1 && !has('gui_running') + " Popup menu: scrollbar + call s:HL('PmenuSbar', s:none, s:none) + " Popup menu: scrollbar thumb + call s:HL('PmenuThumb', s:none, s:none) + else + call s:HL('PmenuSbar', s:none, s:black) + call s:HL('PmenuThumb', s:none, s:black) + endif +endif + +" }}} +" Diffs: {{{ + +if g:srcery_bg_passthrough == 1 && !has('gui_running') + call s:HL('DiffDelete', s:red, s:none) + call s:HL('DiffAdd', s:green, s:none) + call s:HL('DiffChange', s:cyan, s:none) + call s:HL('DiffText', s:yellow, s:none) +else + call s:HL('DiffDelete', s:red, s:black) + call s:HL('DiffAdd', s:green, s:black) + call s:HL('DiffChange', s:cyan, s:black) + call s:HL('DiffText', s:yellow, s:black) +endif + +" }}} +" Spelling: {{{ + +if has('spell') + " Not capitalised word, or compile warnings + call s:HL('SpellCap', s:green, s:none, s:bold . s:italic) + " Not recognized word + call s:HL('SpellBad', s:none, s:none, s:undercurl, s:blue) + " Wrong spelling for selected region + call s:HL('SpellLocal', s:none, s:none, s:undercurl, s:cyan) + " Rare word + call s:HL('SpellRare', s:none, s:none, s:undercurl, s:magenta) +endif + +" }}} +" Terminal: {{{ + +if g:srcery_hard_black_terminal_bg == 1 && has('terminal') + " Must set an explicit background as NONE won't work + " Therefore not useful with transparent background option + call s:HL('Terminal', s:bright_white, s:hard_black) +endif + +" }}} +" Neovim's builtin LSP: {{{ + +hi! link LspDiagnosticsDefaultError SrceryBrightRed +hi! link LspDiagnosticsDefaultWarning SrceryBrightYellow +hi! link LspDiagnosticsDefaultInformation SrceryBrightGreen +hi! link LspDiagnosticsDefaultHint SrceryBrightCyan +call s:HL('LspDiagnosticsUnderlineError', s:bright_red, s:none, s:underline) +call s:HL('LspDiagnosticsUnderlineWarning', s:bright_yellow, s:none, s:underline) +call s:HL('LspDiagnosticsUnderlineInformation', s:bright_green, s:none, s:underline) +call s:HL('LspDiagnosticsUnderlineHint', s:bright_cyan, s:none, s:underline) + +" }}} + +" Plugin specific ------------------------------------------------------------- +" Sneak: {{{ + +hi! link Sneak Search +call s:HL('SneakScope', s:none, s:hard_black) +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: {{{ + +hi! link GitGutterAdd SrceryGreen +hi! link GitGutterChange SrceryYellow +hi! link GitGutterDelete SrceryRed +hi! link GitGutterChangeDelete SrceryYellow + +" }}} +" GitCommit: "{{{ + +hi! link gitcommitSelectedFile SrceryGreen +hi! link gitcommitDiscardedFile SrceryRed + +" }}} +" Asynchronous Lint Engine: {{{ + +call s:HL('ALEError', s:none, s:none, s:undercurl, s:red) +call s:HL('ALEWarning', s:none, s:none, s:undercurl, s:yellow) +call s:HL('ALEInfo', s:none, s:none, s:undercurl, s:blue) + +hi! link ALEErrorSign SrceryRed +hi! link ALEWarningSign SrceryYellow +hi! link ALEInfoSign SrceryBlue + +" }}} +" vim-indent-guides: {{{ + +call s:HL('IndentGuidesEven', s:none, s:xgray3) +call s:HL('IndentGuidesOdd', s:none, s:xgray4) + +" }}} +" vim-startify {{{ + +hi! link StartifyNumber Statement +hi! link StartifyFile Normal +hi! link StartifyPath String +hi! link StartifySlash Normal +hi! link StartifyBracket Comment +hi! link StartifyHeader Type +hi! link StartifyFooter Normal +hi! link StartifySpecial Comment +hi! link StartifySection Identifier + +" }}} +" fzf: {{{ + +call s:HL('fzf1', s:magenta, s:xgray2) +call s:HL('fzf2', s:bright_green, s:xgray2) +call s:HL('fzf3', s:bright_white, s:xgray2) + +"}}} +" Netrw: {{{ + +hi! link netrwDir SrceryBlue +hi! link netrwClassify SrceryCyan +hi! link netrwLink SrceryBrightBlack +hi! link netrwSymLink SrceryCyan +hi! link netrwExe SrceryYellow +hi! link netrwComment SrceryBrightBlack +hi! link netrwList SrceryBrightBlue +hi! link netrwTreeBar SrceryBrightBlack +hi! link netrwHelpCmd SrceryCyan +hi! link netrwVersion SrceryGreen +hi! link netrwCmdSep SrceryBrightBlack + +"}}} +" coc.nvim: {{{ + +hi! link CocErrorSign SrceryRed +hi! link CocWarningSign SrceryBrightOrange +hi! link CocInfoSign SrceryYellow +hi! link CocHintSign SrceryBlue +hi! link CocErrorFloat SrceryRed +hi! link CocWarningFloat SrceryOrange +hi! link CocInfoFloat SrceryYellow +hi! link CocHintFloat SrceryBlue +hi! link CocDiagnosticsError SrceryRed +hi! link CocDiagnosticsWarning SrceryOrange +hi! link CocDiagnosticsInfo SrceryYellow +hi! link CocDiagnosticsHint SrceryBlue + +hi! link CocSelectedText SrceryRed +hi! link CocCodeLens SrceryWhite + +call s:HL('CocErrorHighlight', s:none, s:none, s:undercurl, s:red) +call s:HL('CocWarningHighlight', s:none, s:none, s:undercurl, s:bright_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) + +" }}} +" CtrlP: "{{{ +" +hi! link CtrlPMatch SrceryMagenta +hi! link CtrlPLinePre SrceryBrightGreen +call s:HL('CtrlPMode1', s:bright_white, s:xgray3) +call s:HL('CtrlPMode2', s:bright_white, s:xgray5) +call s:HL('CtrlPStats', s:yellow, s:xgray2) + +" }}} +" NERDTree: "{{{ + +hi! link NERDTreeDir SrceryBlue +hi! link NERDTreeDirSlash SrceryCyan +hi! link NERDTreeOpenable SrceryBlue +hi! link NERDTreeClosable SrceryBlue +hi! link NERDTreeFile SrceryWhite +hi! link NERDTreeExecFile SrceryYellow +hi! link NERDTreeUp SrceryOrange +hi! link NERDTreeCWD SrceryGreen +hi! link NERDTreeHelp SrceryCyan +hi! link NERDTreeFlags SrceryCyan +hi! link NERDTreeLinkFile SrceryBrightBlack +hi! link NERDTreeLinkTarget SrceryBrightBlack + +" }}} +" Telescope: "{{{ + +call s:HL('TelescopeNormal', s:white, s:none) +call s:HL('TelescopeSelection', s:green, s:none, s:bold) +call s:HL('TelescopeMatching', s:magenta) +call s:HL('TelescopeSelectionCaret', s:magenta) +call s:HL('TelescopePromptPrefix', s:bright_yellow) + +" }}} +" nvim-treesitter {{{ + +call s:HL('TSStrong', s:none, s:none, s:bold) +call s:HL('TSEmphasis', s:none, s:none, s:bold) +call s:HL('TSUnderline', s:none, s:none, s:underline) + +highlight! link TSWarning SrceryOrangeBold +highlight! link TSDanger SrceryRedBold +highlight! link TSConstBuiltin SrceryCyan +highlight! link TSField SrceryGreen +highlight! link TSFuncBuiltin SrceryYellow +highlight! link TSFuncMacro SrceryOrange +highlight! link TSFunction SrceryYellow +call s:HL('TSNamespace', s:white, s:none, s:italic) +call s:HL('TSParameter', s:cyan, s:none, s:italic) +highlight! link TSProperty SrceryBrightBlue +highlight! link TSSymbol SrceryBlue +highlight! link TSTag SrceryBlue +highlight! link TSTagAttribute SrceryYellow +highlight! link TSVariableBuiltin SrceryCyan +highlight! link TSType SrceryWhite +highlight! link TSDelimiter SrceryWhite +highlight! link TSURI SrceryGreen +highlight! link TSVariable SrceryBrightWhite +" }}} + + +" Filetype specific ----------------------------------------------------------- +" Diff: {{{ + +hi! link diffAdded SrceryGreen +hi! link diffRemoved SrceryRed +hi! link diffChanged SrceryCyan + +hi! link diffFile SrceryOrange +hi! link diffNewFile SrceryYellow + +hi! link diffLine SrceryBlue + +" }}} +" Html: {{{ + +hi! link htmlTag SrceryBlue +hi! link htmlEndTag SrceryBlue + +hi! link htmlTagName SrceryBlue +hi! link htmlTag SrceryBrightBlack +hi! link htmlArg SrceryYellow + +hi! link htmlScriptTag SrceryRed +hi! link htmlTagN SrceryBlue +hi! link htmlSpecialTagName SrceryBlue + +call s:HL('htmlLink', s:bright_white, s:none, s:underline) + +hi! link htmlSpecialChar SrceryYellow + +if g:srcery_bg_passthrough == 1 && !has('gui_running') + call s:HL('htmlBold', s:bright_white, s:none, s:bold) + call s:HL('htmlBoldUnderline', s:bright_white, s:none, s:bold . s:underline) + call s:HL('htmlBoldItalic', s:bright_white, s:none, s:bold . s:italic) + call s:HL('htmlBoldUnderlineItalic', s:bright_white, s:none, s:bold . s:underline . s:italic) + call s:HL('htmlUnderline', s:bright_white, s:none, s:underline) + call s:HL('htmlUnderlineItalic', s:bright_white, s:none, s:underline . s:italic) + call s:HL('htmlItalic', s:bright_white, s:none, s:italic) +else + call s:HL('htmlBold', s:bright_white, s:black, s:bold) + call s:HL('htmlBoldUnderline', s:bright_white, s:black, s:bold . s:underline) + call s:HL('htmlBoldItalic', s:bright_white, s:black, s:bold . s:italic) + call s:HL('htmlBoldUnderlineItalic', s:bright_white, s:black, s:bold . s:underline . s:italic) + call s:HL('htmlUnderline', s:bright_white, s:black, s:underline) + call s:HL('htmlUnderlineItalic', s:bright_white, s:black, s:underline . s:italic) + call s:HL('htmlItalic', s:bright_white, s:black, s:italic) +endif + +" }}} +" Xml: {{{ + +hi! link xmlTag SrceryBlue +hi! link xmlEndTag SrceryBlue +hi! link xmlTagName SrceryBlue +hi! link xmlEqual SrceryBlue +hi! link docbkKeyword SrceryCyanBold + +hi! link xmlDocTypeDecl SrceryBrightBlack +hi! link xmlDocTypeKeyword SrceryMagenta +hi! link xmlCdataStart SrceryBrightBlack +hi! link xmlCdataCdata SrceryMagenta +hi! link dtdFunction SrceryBrightBlack +hi! link dtdTagName SrceryMagenta + +hi! link xmlAttrib SrceryCyan +hi! link xmlProcessingDelim SrceryBrightBlack +hi! link dtdParamEntityPunct SrceryBrightBlack +hi! link dtdParamEntityDPunct SrceryBrightBlack +hi! link xmlAttribPunct SrceryBrightBlack + +hi! link xmlEntity SrceryYellow +hi! link xmlEntityPunct SrceryYellow + +" }}} +" Vim: {{{ + +call s:HL('vimCommentTitle', s:bright_white, s:none, s:bold . s:italic) + +hi! link vimNotation SrceryYellow +hi! link vimBracket SrceryYellow +hi! link vimMapModKey SrceryYellow +hi! link vimFuncSID SrceryBrightWhite +hi! link vimSetSep SrceryBrightWhite +hi! link vimSep SrceryBrightWhite +hi! link vimContinue SrceryBrightWhite + +" }}} +" Lisp dialects: {{{ + +if g:srcery_dim_lisp_paren == 1 + hi! link schemeParentheses SrceryXgray6 + hi! link clojureParen SrceryXgray6 +else + hi! link schemeParentheses SrceryWhite + hi! link clojureParen SrceryWhite +endif + +hi! link clojureKeyword SrceryBlue +hi! link clojureCond SrceryRed +hi! link clojureSpecial SrceryRed +hi! link clojureDefine SrceryRed + +hi! link clojureFunc SrceryYellow +hi! link clojureRepeat SrceryYellow +hi! link clojureCharacter SrceryCyan +hi! link clojureStringEscape SrceryCyan +hi! link clojureException SrceryRed + +hi! link clojureRegexp SrceryCyan +hi! link clojureRegexpEscape SrceryCyan +call s:HL('clojureRegexpCharClass', s:bright_white, s:none, s:bold) +hi! link clojureRegexpMod clojureRegexpCharClass +hi! link clojureRegexpQuantifier clojureRegexpCharClass + +hi! link clojureAnonArg SrceryYellow +hi! link clojureVariable SrceryBlue +hi! link clojureMacro SrceryOrangeBold + +hi! link clojureMeta SrceryYellow +hi! link clojureDeref SrceryYellow +hi! link clojureQuote SrceryYellow +hi! link clojureUnquote SrceryYellow + +" }}} +" C: {{{ + +hi! link cOperator SrceryMagenta +hi! link cStructure SrceryYellow + +" }}} +" Python: {{{ + +hi! link pythonBuiltin SrceryYellow +hi! link pythonBuiltinObj SrceryYellow +hi! link pythonBuiltinFunc SrceryYellow +hi! link pythonFunction SrceryCyan +hi! link pythonDecorator SrceryRed +hi! link pythonInclude SrceryBlue +hi! link pythonImport SrceryBlue +hi! link pythonRun SrceryBlue +hi! link pythonCoding SrceryBlue +hi! link pythonOperator SrceryRed +hi! link pythonExceptions SrceryMagenta +hi! link pythonBoolean SrceryMagenta +hi! link pythonDot SrceryBrightWhite + +" }}} +" CSS/SASS: {{{ + +hi! link cssBraces SrceryBrightWhite +hi! link cssFunctionName SrceryYellow +hi! link cssIdentifier SrceryBlue +hi! link cssClassName SrceryBlue +hi! link cssClassNameDot SrceryBlue +hi! link cssColor SrceryBrightMagenta +hi! link cssSelectorOp SrceryBlue +hi! link cssSelectorOp2 SrceryBlue +hi! link cssImportant SrceryGreen +hi! link cssVendor SrceryBlue +hi! link cssMediaProp SrceryYellow +hi! link cssBorderProp SrceryYellow +hi! link cssAttrComma SrceryBrightWhite + +hi! link cssTextProp SrceryYellow +hi! link cssAnimationProp SrceryYellow +hi! link cssUIProp SrceryYellow +hi! link cssTransformProp SrceryYellow +hi! link cssTransitionProp SrceryYellow +hi! link cssPrintProp SrceryYellow +hi! link cssPositioningProp SrceryYellow +hi! link cssBoxProp SrceryYellow +hi! link cssFontDescriptorProp SrceryYellow +hi! link cssFlexibleBoxProp SrceryYellow +hi! link cssBorderOutlineProp SrceryYellow +hi! link cssBackgroundProp SrceryYellow +hi! link cssMarginProp SrceryYellow +hi! link cssListProp SrceryYellow +hi! link cssTableProp SrceryYellow +hi! link cssFontProp SrceryYellow +hi! link cssPaddingProp SrceryYellow +hi! link cssDimensionProp SrceryYellow +hi! link cssRenderProp SrceryYellow +hi! link cssColorProp SrceryYellow +hi! link cssGeneratedContentProp SrceryYellow +hi! link cssTagName SrceryBrightBlue + +" SASS +hi! link sassClass SrceryBlue +hi! link sassClassChar SrceryBlue +hi! link sassVariable SrceryCyan +hi! link sassIdChar SrceryBrightBlue +hi! link sassId SrceryBrightBlue + +" }}} +" JavaScript: {{{ + +hi! link javascriptMember SrceryBlue +hi! link javascriptNull SrceryMagenta + +hi! link javascriptParens SrceryWhite +hi! link javascriptBraces SrceryWhite +hi! link javascriptReserved SrceryOrange +hi! link javascriptIdentifier SrceryRed + +hi! link javascriptFuncArg Normal +hi! link javascriptDocComment SrceryGreen +hi! link javascriptArrayMethod Function +hi! link javascriptReflectMethod Function +hi! link javascriptStringMethod Function +hi! link javascriptObjectMethod Function +hi! link javascriptObjectStaticMethod Function +hi! link javascriptObjectLabel SrceryBlue +hi! link javascriptFunction SrceryRed + +hi! link javascriptProp SrceryBlue + +hi! link javascriptVariable SrceryBrightBlue +hi! link javascriptOperator SrceryBrightCyan +hi! link javascriptFuncKeyword SrceryBrightRed +hi! link javascriptFunctionMethod SrceryYellow +hi! link javascriptReturn SrceryBrightRed +hi! link javascriptEndColons SrceryWhite + +" vim-javascript +hi! link jsFunction SrceryRed +hi! link jsImport SrceryRed +hi! link jsObjectSeparator SrceryWhite +hi! link jsParens SrceryWhite +hi! link jsFuncParens SrceryWhite +hi! link jsNoise SrceryWhite +hi! link jsEnvComment SrceryBrightBlack +hi! link jsOperator SrceryBrightCyan + +" }}} +" CoffeeScript: {{{ + +hi! link coffeeExtendedOp SrceryBrightWhite +hi! link coffeeSpecialOp SrceryBrightWhite +hi! link coffeeCurly SrceryYellow +hi! link coffeeParen SrceryBrightWhite +hi! link coffeeBracket SrceryYellow + +" }}} +" Ruby: {{{ + +hi! link rubyStringDelimiter SrceryGreen +hi! link rubyInterpolationDelimiter SrceryCyan +hi! link rubyDefine Keyword + +" }}} +" ObjectiveC: {{{ + +hi! link objcTypeModifier SrceryRed +hi! link objcDirective SrceryBlue + +" }}} +" Go: {{{ + +hi! link goDirective SrceryCyan +hi! link goConstants SrceryMagenta +hi! link goDeclaration SrceryRed +hi! link goDeclType SrceryBlue +hi! link goBuiltins SrceryYellow + +" }}} +" Lua: {{{ + +hi! link luaIn SrceryRed +hi! link luaFunction SrceryCyan +hi! link luaTable SrceryYellow + +" }}} +" MoonScript: {{{ + +hi! link moonSpecialOp SrceryBrightWhite +hi! link moonExtendedOp SrceryBrightWhite +hi! link moonFunction SrceryBrightWhite +hi! link moonObject SrceryYellow + +" }}} +" Java: {{{ + +hi! link javaAnnotation SrceryBlue +hi! link javaDocTags SrceryCyan +hi! link javaCommentTitle vimCommentTitle +hi! link javaParen SrceryBrightWhite +hi! link javaParen1 SrceryBrightWhite +hi! link javaParen2 SrceryBrightWhite +hi! link javaParen3 SrceryBrightWhite +hi! link javaParen4 SrceryBrightWhite +hi! link javaParen5 SrceryBrightWhite +hi! link javaOperator SrceryYellow + +hi! link javaVarArg SrceryGreen + +" }}} +" Elixir: {{{ + +hi! link elixirDocString Comment + +hi! link elixirStringDelimiter SrceryGreen +hi! link elixirInterpolationDelimiter SrceryCyan + +" }}} +" Scala: {{{ + +" NB: scala vim syntax file is kinda horrible +hi! link scalaNameDefinition SrceryBlue +hi! link scalaCaseFollowing SrceryBlue +hi! link scalaCapitalWord SrceryBlue +hi! link scalaTypeExtension SrceryBlue + +hi! link scalaKeyword SrceryRed +hi! link scalaKeywordModifier SrceryRed + +hi! link scalaSpecial SrceryCyan +hi! link scalaOperator SrceryBlue + +hi! link scalaTypeDeclaration SrceryYellow +hi! link scalaTypeTypePostDeclaration SrceryYellow + +hi! link scalaInstanceDeclaration SrceryBlue +hi! link scalaInterpolation SrceryCyan + +" }}} +" Markdown: {{{ + +call s:HL('markdownItalic', s:bright_white, s:none, s:italic) + +hi! link markdownH1 SrceryBrightBlueBold +hi! link markdownH2 SrceryBrightBlueBold +hi! link markdownH3 SrceryBrightYellowBold +hi! link markdownH4 SrceryBrightYellowBold +hi! link markdownH5 SrceryYellowBold +hi! link markdownH6 SrceryYellowBold + +hi! link markdownCode SrceryWhite +hi! link markdownCodeBlock SrceryWhite +hi! link markdownCodeDelimiter SrceryWhite + +hi! link markdownBlockquote SrceryBrightBlack +hi! link markdownListMarker SrceryBrightBlack +hi! link markdownOrderedListMarker SrceryBrightBlack +hi! link markdownRule SrceryBrightBlack +hi! link markdownHeadingRule SrceryBrightBlack + +hi! link markdownUrlDelimiter SrceryBrightBlack +hi! link markdownLinkDelimiter SrceryBrightBlack +hi! link markdownLinkTextDelimiter SrceryBrightBlack + +hi! link markdownHeadingDelimiter SrceryBrightBlack +hi! link markdownUrl SrceryBrightGreen +hi! link markdownUrlTitleDelimiter SrceryGreen + +call s:HL('markdownLinkText', s:bright_white, s:none, s:underline) +hi! link markdownIdDeclaration markdownLinkText + +" }}} +" Haskell: {{{ + +" hi! link haskellType SrceryYellow +" hi! link haskellOperators SrceryYellow +" hi! link haskellConditional SrceryCyan +" hi! link haskellLet SrceryYellow + +hi! link haskellType SrceryBlue +hi! link haskellIdentifier SrceryBlue +hi! link haskellSeparator SrceryBlue +hi! link haskellDelimiter SrceryBrightWhite +hi! link haskellOperators SrceryBlue + +hi! link haskellBacktick SrceryYellow +hi! link haskellStatement SrceryYellow +hi! link haskellConditional SrceryYellow + +hi! link haskellLet SrceryCyan +hi! link haskellDefault SrceryCyan +hi! link haskellWhere SrceryCyan +hi! link haskellBottom SrceryCyan +hi! link haskellBlockKeywords SrceryCyan +hi! link haskellImportKeywords SrceryCyan +hi! link haskellDeclKeyword SrceryCyan +hi! link haskellDeriving SrceryCyan +hi! link haskellAssocType SrceryCyan + +hi! link haskellNumber SrceryMagenta +hi! link haskellPragma SrceryMagenta + +hi! link haskellString SrceryGreen +hi! link haskellChar SrceryGreen + +" }}} +" Json: {{{ + +hi! link jsonKeyword SrceryGreen +hi! link jsonQuote SrceryGreen +hi! link jsonBraces SrceryBlue +hi! link jsonString SrceryBlue + +" }}} +" Rust: {{{ + +"https://github.com/rust-lang/rust.vim/blob/master/syntax/rust.vim +hi! link rustCommentLineDoc SrceryGreen +hi! link rustModPathSep SrceryBrightBlack + +" }}} +" Make: {{{ + +hi! link makePreCondit SrceryRed +hi! link makeCommands SrceryBrightWhite +hi! link makeTarget SrceryYellow + +" }}} +" shell script: {{{ + +call s:HL('shParenError', s:bright_white, s:bright_red) +hi! link shCmdSubRegion SrceryWhite +hi! link shArithRegion SrceryWhite +hi! link shArithRegion SrceryWhite +hi! link shQuote SrceryWhite +hi! link shRedir SrceryMagenta +hi! link shOption SrceryBrightYellow +hi! link shCommandSub SrceryBrightRed + +" }}} +" Misc: {{{ + +call s:HL('ExtraWhitespace', s:none, s:red) +" }}} + +" vim: set sw=2 ts=2 sts=2 et tw=80 ft=vim fdm=marker :