" A colour scheme inspired by reflections at : " https://jameshfisher.com/2014/05/11/your-syntax-highlighter-is-wrong/ " " The accent and shade series are coming from Themer. " Roughly, this sets : " - Normal slighlty muted " - Function and Statement clearly muted " - Comments as the only true foreground-colour text " - Constant in green - this applies to eg static strings " - Identifier, Character, Special and PreProc to cyan " - Type in magenta - kind of "special standout" " - Underlined in pink " - Todo in orange instead of red " - Error in red - the only one not changed " " TODO update fugitive and GitGraph* highlighting groups " highlight clear syntax reset let g:colors_name="simple" " Let treesitter highlight type modifiers as special. highlight default link @type.qualifier SpecialKey let s:guishade0="#282629" " Darkest let s:guishade1="#474247" let s:guishade2="#656066" let s:guishade3="#847e85" let s:guishade4="#a29da3" let s:guishade5="#c1bcc2" let s:guishade6="#e0dce0" let s:guishade7="#fffcff" " Brightest let s:guiaccent0="#ff4050" " Red let s:guiaccent1="#f28144" " Orange let s:guiaccent2="#ffd24a" " Yellow let s:guiaccent3="#a4cc35" " Green let s:guiaccent4="#26c99e" " Cyan let s:guiaccent5="#66bfff" " Blue let s:guiaccent6="#cc78fa" " Magenta let s:guiaccent7="#f553bf" " Pink let s:ctermshade0=235 " Darkest let s:ctermshade1=238 let s:ctermshade2=241 let s:ctermshade3=244 let s:ctermshade4=247 let s:ctermshade5=250 let s:ctermshade6=253 let s:ctermshade7=231 " Brightest let s:ctermaccent0=204 " Red let s:ctermaccent1=215 " Orange let s:ctermaccent2=221 " Yellow let s:ctermaccent3=149 " Green let s:ctermaccent4=79 " Cyan let s:ctermaccent5=117 " Blue let s:ctermaccent6=177 " Magenta let s:ctermaccent7=212 " Pink """""""""" " Normal " """""""""" exec "hi Normal guifg=".s:guishade5." guibg=".s:guishade0 exec "hi Normal ctermfg=".s:ctermshade5." ctermbg=".s:ctermshade0 """"""""""""""""" " Syntax groups " """"""""""""""""" " Default exec "hi Comment guifg=".s:guiaccent4 exec "hi Comment ctermfg=".s:ctermaccent4 exec "hi Constant guifg=".s:guiaccent5 exec "hi Constant ctermfg=".s:ctermaccent5 exec "hi Character guifg=".s:guishade7 exec "hi Character ctermfg=".s:ctermshade7 exec "hi Identifier guifg=".s:guishade7." gui=none" exec "hi Identifier ctermfg=".s:ctermshade7." cterm=none" exec "hi Statement guifg=".s:guishade3 exec "hi Statement ctermfg=".s:ctermshade3 exec "hi PreProc guifg=".s:guishade5 exec "hi PreProc ctermfg=".s:ctermshade5 exec "hi Type guifg=".s:guishade3 exec "hi Type ctermfg=".s:ctermshade3 exec "hi Special guifg=".s:guishade5 exec "hi Special ctermfg=".s:ctermshade5 exec "hi Underlined guifg=".s:guiaccent6 exec "hi Underlined ctermfg=".s:ctermaccent6 exec "hi Error guifg=".s:guiaccent0." guibg=".s:guishade1 exec "hi Error ctermfg=".s:ctermaccent0." ctermbg=".s:ctermshade1 exec "hi Todo guifg=".s:guiaccent1." guibg=".s:guishade1 exec "hi Todo ctermfg=".s:ctermaccent1." ctermbg=".s:ctermshade1 exec "hi Function guifg=".s:guishade5 exec "hi Function ctermfg=".s:ctermshade5 " GitGutter exec "hi GitGutterAdd guifg=".s:guiaccent3 exec "hi GitGutterAdd ctermfg=".s:ctermaccent3 exec "hi GitGutterChange guifg=".s:guiaccent2 exec "hi GitGutterChange ctermfg=".s:ctermaccent2 exec "hi GitGutterChangeDelete guifg=".s:guiaccent2 exec "hi GitGutterChangeDelete ctermfg=".s:ctermaccent2 exec "hi GitGutterDelete guifg=".s:guiaccent0 exec "hi GitGutterDelete ctermfg=".s:ctermaccent0 " fugitive exec "hi gitcommitComment guifg=".s:guishade3 exec "hi gitcommitComment ctermfg=".s:ctermshade3 exec "hi gitcommitOnBranch guifg=".s:guishade3 exec "hi gitcommitOnBranch ctermfg=".s:ctermshade3 exec "hi gitcommitHeader guifg=".s:guishade5 exec "hi gitcommitHeader ctermfg=".s:ctermshade5 exec "hi gitcommitHead guifg=".s:guishade3 exec "hi gitcommitHead ctermfg=".s:ctermshade3 exec "hi gitcommitSelectedType guifg=".s:guiaccent3 exec "hi gitcommitSelectedType ctermfg=".s:ctermaccent3 exec "hi gitcommitSelectedFile guifg=".s:guiaccent3 exec "hi gitcommitSelectedFile ctermfg=".s:ctermaccent3 exec "hi gitcommitDiscardedType guifg=".s:guiaccent2 exec "hi gitcommitDiscardedType ctermfg=".s:ctermaccent2 exec "hi gitcommitDiscardedFile guifg=".s:guiaccent2 exec "hi gitcommitDiscardedFile ctermfg=".s:ctermaccent2 exec "hi gitcommitUntrackedFile guifg=".s:guiaccent0 exec "hi gitcommitUntrackedFile ctermfg=".s:ctermaccent0 exec "hi diffFile guifg=".s:guiaccent5 exec "hi diffFile ctermfg=".s:ctermaccent5 exec "hi diffNewFile guifg=".s:guiaccent3 exec "hi diffNewFile ctermfg=".s:ctermaccent3 exec "hi diffOldFile guifg=".s:guiaccent2 exec "hi diffOldFile ctermfg=".s:ctermaccent2 exec "hi diffRemoved guifg=".s:guiaccent2 exec "hi diffRemoved ctermfg=".s:ctermaccent2 exec "hi diffAdded guifg=".s:guiaccent3 exec "hi diffAdded ctermfg=".s:ctermaccent3 exec "hi gitIdentity guifg=".s:guishade7 exec "hi gitIdentity ctermfg=".s:ctermshade7 exec "hi fugitiveHeading guifg=".s:guishade7 exec "hi fugitiveHeading ctermfg=".s:ctermshade7 """"""""""""""""""""""" " Highlighting Groups " """"""""""""""""""""""" " Default exec "hi ColorColumn guibg=".s:guishade1 exec "hi ColorColumn ctermbg=".s:ctermshade1 exec "hi Conceal guifg=".s:guishade2 exec "hi Conceal ctermfg=".s:ctermshade2 exec "hi Cursor guifg=".s:guishade0 exec "hi Cursor ctermfg=".s:ctermshade0 exec "hi CursorColumn guibg=".s:guishade1 exec "hi CursorColumn ctermbg=".s:ctermshade1 exec "hi CursorLine guibg=".s:guishade1 exec "hi CursorLine ctermbg=".s:ctermshade1." cterm=none" exec "hi Directory guifg=".s:guiaccent5 exec "hi Directory ctermfg=".s:ctermaccent5 exec "hi DiffAdd guifg=".s:guiaccent3." guibg=".s:guishade1 exec "hi DiffAdd ctermfg=".s:ctermaccent3." ctermbg=".s:ctermshade1 exec "hi DiffChange guifg=".s:guiaccent2." guibg=".s:guishade1 exec "hi DiffChange ctermfg=".s:ctermaccent2." ctermbg=".s:ctermshade1 exec "hi DiffDelete guifg=".s:guiaccent0." guibg=".s:guishade1 exec "hi DiffDelete ctermfg=".s:ctermaccent0." ctermbg=".s:ctermshade1 exec "hi DiffText guifg=".s:guiaccent2." guibg=".s:guishade2 exec "hi DiffText ctermfg=".s:ctermaccent2." ctermbg=".s:ctermshade2 exec "hi ErrorMsg guifg=".s:guishade7." guibg=".s:guiaccent0 exec "hi ErrorMsg ctermfg=".s:ctermshade7." ctermbg=".s:ctermaccent0 exec "hi VertSplit guifg=".s:guishade0." guibg=".s:guishade3 exec "hi VertSplit ctermfg=".s:ctermshade0." ctermbg=".s:ctermshade3 exec "hi Folded guifg=".s:guishade4." guibg=".s:guishade1 exec "hi Folded ctermfg=".s:ctermshade4." ctermbg=".s:ctermshade1 exec "hi FoldColumn guifg=".s:guishade4." guibg=".s:guishade1 exec "hi FoldColumn ctermfg=".s:ctermshade4." ctermbg=".s:ctermshade1 exec "hi SignColumn guibg=".s:guishade0 exec "hi SignColumn ctermbg=".s:ctermshade0 exec "hi IncSearch guifg=".s:guishade0." guibg=".s:guiaccent2 exec "hi IncSearch ctermfg=".s:ctermshade0." ctermbg=".s:ctermaccent2 exec "hi LineNr guifg=".s:guishade2." guibg=".s:guishade0 exec "hi LineNr ctermfg=".s:ctermshade2." ctermbg=".s:ctermshade0 exec "hi CursorLineNr guifg=".s:guishade3." guibg=".s:guishade1 exec "hi CursorLineNr ctermfg=".s:ctermshade3." ctermbg=".s:ctermshade1 exec "hi MatchParen guibg=".s:guishade2 exec "hi MatchParen ctermbg=".s:ctermshade2 exec "hi MoreMsg guifg=".s:guishade0." guibg=".s:guishade7 exec "hi MoreMsg ctermfg=".s:ctermshade0." ctermbg=".s:ctermshade7 exec "hi NonText guifg=".s:guishade2." guibg=".s:guishade0 exec "hi NonText ctermfg=".s:ctermshade2." ctermbg=".s:ctermshade0 exec "hi Pmenu guifg=".s:guishade6." guibg=".s:guishade1 exec "hi Pmenu ctermfg=".s:ctermshade6." ctermbg=".s:ctermshade1 exec "hi PmenuSel guifg=".s:guishade7." guibg=".s:guishade1 exec "hi PmenuSel ctermfg=".s:ctermshade7." ctermbg=".s:ctermshade1 exec "hi PmenuSbar guifg=".s:guiaccent3." guibg=".s:guishade1 exec "hi PmenuSbar ctermfg=".s:ctermaccent3." ctermbg=".s:ctermshade1 exec "hi PmenuThumb guifg=".s:guiaccent0." guibg=".s:guishade2 exec "hi PmenuThumb ctermfg=".s:ctermaccent0." ctermbg=".s:ctermshade2 exec "hi Question guifg=".s:guishade7." guibg=".s:guishade1 exec "hi Question ctermfg=".s:ctermshade7." ctermbg=".s:ctermshade1 exec "hi Search guifg=".s:guishade0." guibg=".s:guiaccent2 exec "hi Search ctermfg=".s:ctermshade0." ctermbg=".s:ctermaccent2 exec "hi SpecialKey guifg=".s:guiaccent6." guibg=".s:guishade0 exec "hi SpecialKey ctermfg=".s:ctermaccent6." ctermbg=".s:ctermshade0 exec "hi SpellBad guifg=".s:guiaccent0 exec "hi SpellBad ctermfg=".s:ctermaccent0." ctermbg=NONE cterm=undercurl" exec "hi SpellCap guifg=".s:guiaccent2 exec "hi SpellCap ctermfg=".s:ctermaccent2." ctermbg=NONE cterm=undercurl" exec "hi SpellLocal guifg=".s:guishade7 exec "hi SpellLocal ctermfg=".s:ctermshade7 exec "hi SpellRare guifg=".s:guiaccent1 exec "hi SpellRare ctermfg=".s:ctermaccent1 exec "hi StatusLine guifg=".s:guishade4." guibg=".s:guishade1." gui=none" exec "hi StatusLine ctermfg=".s:ctermshade4." ctermbg=".s:ctermshade1." cterm=none" exec "hi TabLine guifg=".s:guishade5." guibg=".s:guishade1 exec "hi TabLine ctermfg=".s:ctermshade5." ctermbg=".s:ctermshade1 exec "hi TabLineFill guibg=".s:guishade1 exec "hi TabLineFill ctermbg=".s:ctermshade1 exec "hi TabLineSel guifg=".s:guishade6." guibg=".s:guishade0 exec "hi TabLineSel ctermfg=".s:ctermshade6." ctermbg=".s:ctermshade0 exec "hi Title guifg=".s:guiaccent5 exec "hi Title ctermfg=".s:ctermaccent5 exec "hi Visual guibg=".s:guishade1 exec "hi Visual ctermbg=".s:ctermshade1 exec "hi VisualNOS guifg=".s:guiaccent0." guibg=".s:guishade1 exec "hi VisualNOS ctermfg=".s:ctermaccent0." ctermbg=".s:ctermshade1 exec "hi WarningMsg guifg=".s:guiaccent0 exec "hi WarningMsg ctermfg=".s:ctermaccent0 exec "hi WildMenu guifg=".s:guishade7." guibg=".s:guishade1 exec "hi WildMenu ctermfg=".s:ctermshade7." ctermbg=".s:ctermshade1 " NERDTree exec "hi NERDTreeExecFile guifg=".s:guishade7 exec "hi NERDTreeExecFile ctermfg=".s:ctermshade7 exec "hi NERDTreeDirSlash guifg=".s:guiaccent5 exec "hi NERDTreeDirSlash ctermfg=".s:ctermaccent5 exec "hi NERDTreeCWD guifg=".s:guiaccent0 exec "hi NERDTreeCWD ctermfg=".s:ctermaccent0 """""""""""" " Clean up " """""""""""" unlet s:guishade0 s:guishade1 s:guishade2 s:guishade3 s:guishade4 s:guishade5 s:guishade6 s:guiaccent4 s:guiaccent0 s:guiaccent1 s:guiaccent2 s:guiaccent3 s:guishade7 s:guiaccent5 s:guiaccent6 s:guiaccent7 unlet s:ctermshade0 s:ctermshade1 s:ctermshade2 s:ctermshade3 s:ctermshade4 s:ctermshade5 s:ctermshade6 s:ctermaccent4 s:ctermaccent0 s:ctermaccent1 s:ctermaccent2 s:ctermaccent3 s:ctermshade7 s:ctermaccent5 s:ctermaccent6 s:ctermaccent7