mirror of
https://github.com/itme-brain/vim.git
synced 2026-05-08 07:30:13 -04:00
164 lines
7.4 KiB
VimL
164 lines
7.4 KiB
VimL
" anticuus.vim
|
|
" Pitch-black minimalist theme with 256-color terminal fallbacks.
|
|
|
|
hi clear
|
|
if exists('syntax_on')
|
|
syntax reset
|
|
endif
|
|
|
|
let g:colors_name = 'anticuus'
|
|
set background=dark
|
|
|
|
function! s:hi(group, guifg, guibg, ctermfg, ctermbg, gui, cterm)
|
|
let l:cmd = 'highlight ' . a:group
|
|
if a:guifg !=# ''
|
|
let l:cmd .= ' guifg=' . a:guifg
|
|
endif
|
|
if a:guibg !=# ''
|
|
let l:cmd .= ' guibg=' . a:guibg
|
|
endif
|
|
if a:ctermfg !=# ''
|
|
let l:cmd .= ' ctermfg=' . a:ctermfg
|
|
endif
|
|
if a:ctermbg !=# ''
|
|
let l:cmd .= ' ctermbg=' . a:ctermbg
|
|
endif
|
|
if a:gui !=# ''
|
|
let l:cmd .= ' gui=' . a:gui
|
|
endif
|
|
if a:cterm !=# ''
|
|
let l:cmd .= ' cterm=' . a:cterm
|
|
endif
|
|
execute l:cmd
|
|
endfunction
|
|
|
|
" === Base ===
|
|
call s:hi('Normal', '#dadada', '#000000', '253', '16', '', '')
|
|
call s:hi('NormalNC', '#dadada', '#000000', '253', '16', '', '')
|
|
call s:hi('NonText', '#3a3a3a', 'NONE', '237', 'NONE', '', '')
|
|
call s:hi('EndOfBuffer', '#000000', 'NONE', '16', 'NONE', '', '')
|
|
call s:hi('Whitespace', '#3a3a3a', '', '237', '', '', '')
|
|
call s:hi('SpecialKey', '#3a3a3a', '', '237', '', '', '')
|
|
|
|
" === Syntax: comments dim italic, strings green ===
|
|
call s:hi('Comment', '#5a5a5a', '', '240', '', 'italic', 'italic')
|
|
call s:hi('SpecialComment', '#5a5a5a', '', '240', '', 'italic', 'italic')
|
|
call s:hi('String', '#00b300', '', '34', '', '', '')
|
|
call s:hi('Character', '#5a5a5a', '', '240', '', 'italic', 'italic')
|
|
|
|
" === Literals: purple ===
|
|
call s:hi('Number', '#c490d0', '', '176', '', '', '')
|
|
call s:hi('Float', '#c490d0', '', '176', '', '', '')
|
|
call s:hi('Boolean', '#c490d0', '', '176', '', '', '')
|
|
call s:hi('Constant', '#c490d0', '', '176', '', '', '')
|
|
|
|
" === Identifiers / functions: white baseline, functions teal ===
|
|
call s:hi('Identifier', '#dadada', '', '253', '', '', '')
|
|
call s:hi('Function', '#88ddcc', '', '116', '', '', '')
|
|
|
|
" === Statements: yellow keywords, red exception/return ===
|
|
call s:hi('Statement', '#ffcc00', '', '220', '', '', '')
|
|
call s:hi('Conditional', '#ffcc00', '', '220', '', '', '')
|
|
call s:hi('Repeat', '#dadada', '', '253', '', '', '')
|
|
call s:hi('Keyword', '#ffcc00', '', '220', '', '', '')
|
|
call s:hi('Operator', '#dadada', '', '253', '', '', '')
|
|
call s:hi('Label', '#ffcc00', '', '220', '', '', '')
|
|
call s:hi('Exception', '#ff6b6b', '', '203', '', '', '')
|
|
|
|
" === PreProc family: green ===
|
|
call s:hi('PreProc', '#00b300', '', '34', '', '', '')
|
|
call s:hi('Include', '#00b300', '', '34', '', '', '')
|
|
call s:hi('Define', '#00b300', '', '34', '', '', '')
|
|
call s:hi('Macro', '#00b300', '', '34', '', '', '')
|
|
call s:hi('PreCondit', '#00b300', '', '34', '', '', '')
|
|
|
|
" === Types: amber ===
|
|
call s:hi('Type', '#e8a060', '', '215', '', '', '')
|
|
call s:hi('StorageClass', '#e8a060', '', '215', '', '', '')
|
|
call s:hi('Structure', '#e8a060', '', '215', '', '', '')
|
|
call s:hi('Typedef', '#e8a060', '', '215', '', '', '')
|
|
|
|
" === Special: green for special chars, red for tags ===
|
|
call s:hi('Special', '#00b300', '', '34', '', '', '')
|
|
call s:hi('SpecialChar', '#00b300', '', '34', '', '', '')
|
|
call s:hi('Tag', '#ff6b6b', '', '203', '', '', '')
|
|
call s:hi('Delimiter', '#dadada', '', '253', '', '', '')
|
|
|
|
" === Errors / Todo ===
|
|
call s:hi('Error', '#ff6b6b', '', '203', '', '', '')
|
|
call s:hi('Todo', '#ffcc00', '', '220', '', 'bold', 'bold')
|
|
|
|
" === Line numbers / cursor / columns ===
|
|
call s:hi('LineNr', '#dadada', 'NONE', '253', 'NONE', '', '')
|
|
call s:hi('CursorLineNr', '#dadada', '#282828', '253', '235', 'bold', 'bold')
|
|
call s:hi('CursorLine', '', '#121212', '', '233', 'NONE', 'NONE')
|
|
call s:hi('CursorColumn', '', '#121212', '', '233', '', '')
|
|
call s:hi('ColorColumn', '', '#1a1a1a', '', '234', '', '')
|
|
call s:hi('SignColumn', '#00b300', '#000000', '34', '16', '', '')
|
|
|
|
" === Splits / status / winbar ===
|
|
call s:hi('VertSplit', '#3a3a3a', 'NONE', '237', 'NONE', '', '')
|
|
call s:hi('WinSeparator', '#3a3a3a', 'NONE', '237', 'NONE', '', '')
|
|
call s:hi('StatusLine', '#dadada', '#000000', '253', '16', '', '')
|
|
call s:hi('StatusLineNC', '#dadada', '#000000', '253', '16', '', '')
|
|
call s:hi('WinBar', '#dadada', '', '253', '', 'bold', 'bold')
|
|
call s:hi('WinBarNC', '#888888', '', '245', '', '', '')
|
|
|
|
" === Visual / search ===
|
|
call s:hi('Visual', '', '#3a3a3a', '', '237', '', '')
|
|
call s:hi('VisualNOS', '', '#3a3a3a', '', '237', '', '')
|
|
call s:hi('Search', '#000000', '#ffcc00', '16', '220', '', '')
|
|
call s:hi('IncSearch', '#000000', '#88ddcc', '16', '116', '', '')
|
|
call s:hi('CurSearch', '#000000', '#c490d0', '16', '176', '', '')
|
|
|
|
" === Brackets ===
|
|
call s:hi('MatchParen', '#c490d0', '', '176', '', 'bold,underline', 'bold,underline')
|
|
|
|
" === Popup menu (completion / fzf overlay) ===
|
|
call s:hi('Pmenu', '#dadada', '#181818', '253', '234', '', '')
|
|
call s:hi('PmenuSel', '#000000', '#ffcc00', '16', '220', '', '')
|
|
call s:hi('PmenuSbar', '', '#181818', '', '234', '', '')
|
|
call s:hi('PmenuThumb', '', '#3a3a3a', '', '237', '', '')
|
|
|
|
" === Folds / titles / directories ===
|
|
call s:hi('Folded', '#888888', '', '245', '', 'italic', 'italic')
|
|
call s:hi('FoldColumn', '#888888', 'NONE', '245', 'NONE', '', '')
|
|
call s:hi('Title', '#88ddcc', '', '116', '', 'bold', 'bold')
|
|
call s:hi('Directory', '#88ddcc', '', '116', '', '', '')
|
|
|
|
" === Diff ===
|
|
call s:hi('DiffAdd', '#a5d6a7', '#0a2010', '151', '22', '','')
|
|
call s:hi('DiffChange', '#e8a060', '#201a0a', '215', '58', '','')
|
|
call s:hi('DiffDelete', '#ff6b6b', '#200a0a', '203', '52', '','')
|
|
call s:hi('DiffText', '#ffcc00', '#3a2000', '220', '94', 'bold', 'bold')
|
|
|
|
" === Spell ===
|
|
highlight SpellBad guisp=#ff6b6b gui=undercurl cterm=underline
|
|
highlight SpellCap guisp=#ffcc00 gui=undercurl cterm=underline
|
|
highlight SpellRare guisp=#c490d0 gui=undercurl cterm=underline
|
|
highlight SpellLocal guisp=#88ddcc gui=undercurl cterm=underline
|
|
|
|
" === Markdown (vim's built-in syntax) ===
|
|
call s:hi('markdownH1', '#00b300', '', '34', '', 'bold', 'bold')
|
|
call s:hi('markdownH2', '#00b300', '', '34', '', 'bold', 'bold')
|
|
call s:hi('markdownH3', '#00b300', '', '34', '', 'bold', 'bold')
|
|
call s:hi('markdownH4', '#00b300', '', '34', '', 'bold', 'bold')
|
|
call s:hi('markdownH5', '#00b300', '', '34', '', 'bold', 'bold')
|
|
call s:hi('markdownH6', '#00b300', '', '34', '', 'bold', 'bold')
|
|
call s:hi('markdownHeadingDelimiter', '#00b300', '', '34', '', 'bold', 'bold')
|
|
call s:hi('markdownLinkText', '#88ddcc', '', '116', '', 'underline', 'underline')
|
|
call s:hi('markdownUrl', '#5a5a5a', '', '240', '', 'italic', 'italic')
|
|
call s:hi('markdownCode', '#e8a060', '', '215', '', '', '')
|
|
call s:hi('markdownCodeBlock', '#e8a060', '', '215', '', '', '')
|
|
|
|
" === Diagnostic groups (for plugins like ALE/CoC) ===
|
|
call s:hi('DiagnosticError', '#ff6b6b', '', '203', '', '', '')
|
|
call s:hi('DiagnosticWarn', '#ffcc00', '', '220', '', '', '')
|
|
call s:hi('DiagnosticInfo', '#00b300', '', '34', '', '', '')
|
|
call s:hi('DiagnosticHint', '#dadada', '', '253', '', '', '')
|
|
highlight link ALEErrorSign DiagnosticError
|
|
highlight link ALEWarningSign DiagnosticWarn
|
|
highlight link ALEInfoSign DiagnosticInfo
|
|
|
|
" === vim-highlightedyank ===
|
|
call s:hi('HighlightedyankRegion', '#000000', '#ffcc00', '16', '220', '', '')
|