-# vim: ft=colortemplate fdm=marker
+; vim: ft=colortemplate fdm=marker
-# Default highlight groups {{{
-verbatim
-if !has('gui_running') && get(g:, '@optionprefix_transp_bg', 0)
-endverbatim
- # Transparent background
- Normal fg1 none
- CursorLineNr yellow none
- FoldColumn brightblack none
- SignColumn fg2 none
- VertSplit bg3 none
-verbatim
-else
-endverbatim
- # Opaque background
- Normal fg1 bg0
- CursorLineNr yellow bg1
- FoldColumn brightblack bg1
- SignColumn fg2 bg1
- VertSplit bg3 bg0
-verbatim
-endif
-endverbatim
+; Default highlight groups {{{
+#if !has('gui_running') && get(g:, '@optionprefix_dimmed', 0)
+ ; dimmed colours
+ #if !has('gui_running') && &background ==# 'light'
+ #if !has('gui_running') && get(g:, '@optionprefix_transparent', 0)
+ Normal realblack none
+ #else
+ Normal realblack bg0
+ #endif
+ #elseif !has('gui_running') && &background ==# 'dark'
+ #if get(g:, '@optionprefix_transparent', 0)
+ Normal brightwhite none
+ #else
+ Normal brightwhite bg0
+ #endif
+ #endif
+ Conceal darkblue none
+ Constant darkgreen none
+ Directory darkblue none bold
+ Error darkred none t=reverse,bold g=standout,bold
+ Function darkcyan none
+ Identifier darkblue none
+ ModeMsg darkblue none
+ MoreMsg darkgreen none
+ PreProc darkcyan none
+ Statement darkred none
+ Special darkyellow none
+ Todo darkcyan none reverse
+ WarningMsg darkred none
+ WildMenu darkblue bg2 bold
+#else
+ ; default colours
+ #if !has('gui_running') && get(g:, '@optionprefix_transparent', 0)
+ Normal fg1 none
+ #else
+ Normal fg1 bg0
+ #endif
+ Conceal blue none
+ Constant green none
+ Directory blue none bold
+ Error red none t=reverse,bold g=standout,bold
+ Function cyan none
+ Identifier blue none
+ ModeMsg blue none
+ MoreMsg green none
+ PreProc cyan none
+ Statement red none
+ Special yellow none
+ Todo cyan none reverse
+ WarningMsg red none
+ WildMenu blue bg2 bold
+#endif
+#if !has('gui_running') && get(g:, '@optionprefix_transparent', 0)
+ ; transparent background
+ LineNr bg2 none
+ CursorLineNr yellow none
+ FoldColumn darkgray none
+ SignColumn none none
+ VertSplit bg3 none
+ Pmenu fg1 none
+ PmenuSbar fg2 none
+ PmenuSel fg2 none reverse
+ PmenuThumb none fg2
+#else
+ ; opaque background
+ LineNr bg2 bg1
+ CursorLineNr yellow bg1
+ FoldColumn darkgray bg1
+ SignColumn none bg1
+ VertSplit bg3 bg0
+ Pmenu fg1 bg2
+ PmenuSbar none bg2
+ PmenuSel bg1 fg2 bold
+ PmenuThumb none bg4
+#endif
-# Group Fg Bg Attributes
-ColorColumn none bg1
-Conceal blue none
-Cursor none none reverse
-CursorColumn -> CursorLine
-CursorLine none bg1 bold
-DiffAdd fg0 brightgreen
-DiffAdded fg0 brightgreen
-DiffChange fg0 brightblue
-DiffDelete fg0 brightred
-DiffRemoved fg0 brightred
-DiffText fg0 brightgreen
-Directory blue none bold
+; Group Fg Bg Attributes
+ColorColumn none bg1 bold
+Cursor none none reverse,bold
+CursorColumn none bg1
+CursorLine none bg1 bold
+DiffAdd none diffgreen
+DiffAdded none diffgreen
+DiffChange none diffblue
+DiffDelete none diffred
+DiffRemoved none diffred
+DiffText none diffgreen
EndOfBuffer bg0 none
-Error bg0 red
ErrorMsg -> Error
-Folded brightblack bg1 g=italic
-IncSearch brightyellow black reverse
-LineNr bg3 bg1
-MatchParen none bg2 bold
-ModeMsg blue none
-MoreMsg green none
+Folded bg3 bg1 g=italic
+IncSearch yellow black reverse
+MatchParen none bg2 bold
NonText bg4 none
-Pmenu fg1 bg2
-PmenuSbar none bg2
-PmenuSel bg1 fg2 bold
-PmenuThumb none bg4
Question darkyellow none
QuickFixLine -> Search
-Search brightyellow black reverse
+Search brightyellow black reverse
SpecialKey bg4 none
-SpellBad red none t=underline g=italic,undercurl s=red
-SpellCap blue none t=underline g=italic,undercurl s=blue
-SpellLocal cyan none t=underline g=italic,undercurl s=cyan
-SpellRare magenta none t=underline g=italic,undercurl s=magenta
-StatusLine bg2 fg1 reverse
-StatusLineNC bg1 fg2 reverse
+SpellBad red none t=underline g=italic,undercurl
+SpellCap blue none t=underline g=italic,undercurl
+SpellLocal cyan none t=underline g=italic,undercurl
+SpellRare magenta none t=underline g=italic,undercurl
+StatusLine fg1 bg2
+StatusLineNC fg2 bg1
StatusLineTerm -> StatusLine
StatusLineTermNC -> StatusLineNC
TabLine -> TabLineFill
TabLineFill fg2 bg3
TabLineSel fg1 bg1
-Title fg0 none bold
+Title red none bold
Visual none bg1
VisualNOS -> Visual
-WarningMsg red none
-WildMenu blue bg2 bold
-# Other conventional group names (see `:help group-name`)
-Boolean magenta none
-Character magenta none
-Comment brightblack none g=italic
-Conditional red none
-Constant magenta none
-Define cyan none
-Debug red none
-Delimiter -> Statement
-Exception red none
-Float magenta none
-Function blue none bold
-Identifier cyan none
+; Other conventional group names (see `:help group-name`)
+Boolean -> Constant
+Character -> Constant
+Comment fg3 none
+Conditional -> Statement
+Define -> PreProc
+Debug -> Special
+Delimiter -> Special
+Exception -> Statement
+Float -> Constant
Ignore fg none
-Include cyan none
-Keyword red none
+Include -> PreProc
+Keyword -> Statement
Label -> Statement
-Macro cyan none
-Number magenta none
-Operator -> Normal
-PreCondit cyan none
-PreProc cyan none
-Repeat red none
-SpecialChar red none
-SpecialComment red none
-Statement red none
-StorageClass green none
-Special yellow none
-String green none
-Structure cyan none
+Macro -> PreProc
+Number -> Constant
+Operator -> Statement
+PreCondit -> PreProc
+Repeat -> Statement
+SpecialChar -> Special
+SpecialComment -> Special
+StorageClass -> Type
+String -> Constant
+Structure -> Type
Tag -> Special
-Todo fg bg0 t=bold g=bold,italic
-Type cyan none
-Typedef cyan none
-Underlined blue none underline
-# Language mapping cursor
+Type darkcyan none
+Typedef -> Type
+Underlined none none underline
+; Language mapping cursor
lCursor -> Cursor
-# See `:help CursorIM`
-CursorIM none none reverse
-# See `:help window-toolbar`
+; See `:help CursorIM`
+CursorIM none none reverse
+; See `:help window-toolbar`
ToolbarLine none bg3
-ToolbarButton fg0 bg3 bold
-# }}}
+ToolbarButton fg0 bg3 bold
+; }}}
-# Italics {{{
-verbatim
-if get(g:, "@optionprefix_italic", 0)
- hi Comment cterm=italic
- hi Folded cterm=italic
- hi SpellBad cterm=italic,underline
- hi SpellCap cterm=italic,underline
- hi SpellLocal cterm=italic,underline
- hi SpellRare cterm=italic,underline
- hi Todo cterm=italic
-endif
-endverbatim
-# }}}
-
-# Additional highlight groups {{{
-# Input mode cursor
+; Additional highlight groups {{{
+; Input mode cursor
iCursor -> Cursor
-# Visual mode cursor, selection
+; Visual mode cursor, selection
vCursor -> Cursor
-# Useful for custom status lines
-NormalMode fg2 bg0 reverse
-InsertMode blue bg0 reverse
-ReplaceMode cyan bg0 reverse
-VisualMode yellow bg0 reverse
-CommandMode magenta bg0 reverse
-Warnings yellow bg0 reverse
-# }}}
+; Useful for custom status lines
+NormalMode fg2 bg0 reverse
+InsertMode blue bg0 reverse
+ReplaceMode cyan bg0 reverse
+VisualMode yellow bg0 reverse
+CommandMode magenta bg0 reverse
+Warnings red bg0 reverse
+; }}}
+
+; Plugin support {{{
+; GitSigns
+#if !has('gui_running') && get(g:, '@optionprefix_transparent', 0)
+ ; transparent background
+ GitSignsAdd green none
+ GitSignsChange blue none
+ GitSignsDelete red none
+#else
+ ; opaque background
+ GitSignsAdd green bg1
+ GitSignsChange blue bg1
+ GitSignsDelete red bg1
+#endif
+GitSignsAddNr -> GitSignsAdd
+GitSignsChangeNr -> GitSignsChange
+GitSignsDeleteNr -> GitSignsDelete
+; }}}
-# Terminal colors {{{
-Include: _terminal.colortemplate
-# }}}
+; Terminal colors {{{
+TermCursor -> Cursor
+TermCursorNC bg1 fg1
+; }}}