commit a56af0ae9fd2f0b5c57be5db1c5ebdf262360426
parent b4657f74ed8ed51b61c3a46fc264a8b07499056f
Author: Tomas Nemec <owl@gtms.dev>
Date: Mon, 11 Dec 2023 23:19:51 +0100
update
Diffstat:
5 files changed, 363 insertions(+), 462 deletions(-)
diff --git a/colors/base16.lua b/colors/base16.lua
@@ -1,441 +0,0 @@
--- start color
--- base16-nvim (https://github.com/wincent/base16-nvim)
--- by Greg Hurrell (https://github.com/wincent)
--- based on
--- base16-vim (https://github.com/chriskempson/base16-vim)
--- by Chris Kempson (https://github.com/chriskempson)
--- Gruvbox dark, hard scheme by Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox)
-local gui00 = '#1d2021'
-local gui01 = '#3c3836'
-local gui02 = '#504945'
-local gui03 = '#665c54'
-local gui04 = '#bdae93'
-local gui05 = '#d5c4a1'
-local gui06 = '#ebdbb2'
-local gui07 = '#fbf1c7'
-local gui08 = '#fb4934'
-local gui09 = '#fe8019'
-local gui0A = '#fabd2f'
-local gui0B = '#b8bb26'
-local gui0C = '#8ec07c'
-local gui0D = '#83a598'
-local gui0E = '#d3869b'
-local gui0F = '#d65d0e'
-
-local cterm00 = 0
-local cterm03 = 8
-local cterm05 = 7
-local cterm07 = 15
-local cterm08 = 1
-local cterm0A = 3
-local cterm0B = 2
-local cterm0C = 6
-local cterm0D = 4
-local cterm0E = 5
-local cterm01 = 10
-local cterm02 = 11
-local cterm04 = 12
-local cterm06 = 13
-local cterm09 = 9
-local cterm0F = 14
-
-vim.cmd [[
- highlight clear
- syntax reset
-]]
-vim.g.colors_name = 'base16-gruvbox-dark-hard'
-
--- Vim editor colors fg bg ctermfg ctermbg attr guisp
-vim.api.nvim_set_hl(0, 'Normal', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 })
-vim.api.nvim_set_hl(0, 'Bold', { bold = true })
-vim.api.nvim_set_hl(0, 'Debug', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'Directory', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'Error', { fg = gui00, bg = gui08, ctermfg = cterm00, ctermbg = cterm08 })
-vim.api.nvim_set_hl(0, 'ErrorMsg', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 })
-vim.api.nvim_set_hl(0, 'Exception', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'FoldColumn', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'Folded', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'IncSearch', { fg = gui01, bg = gui09, ctermfg = cterm01, ctermbg = cterm09 })
-vim.api.nvim_set_hl(0, 'Italic', {})
-vim.api.nvim_set_hl(0, 'Macro', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'MatchParen', { bg = gui03, ctermbg = cterm03 })
-vim.api.nvim_set_hl(0, 'ModeMsg', { fg = gui0B, ctermfg = cterm0B })
-vim.api.nvim_set_hl(0, 'MoreMsg', { fg = gui0B, ctermfg = cterm0B })
-vim.api.nvim_set_hl(0, 'Question', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'Search', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A })
-vim.api.nvim_set_hl(0, 'Substitute', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A })
-vim.api.nvim_set_hl(0, 'SpecialKey', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'TooLong', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'Underlined', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'Visual', { bg = gui02, ctermbg = cterm02 })
-vim.api.nvim_set_hl(0, 'VisualNOS', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'WarningMsg', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'WildMenu', { fg = gui08, bg = gui0A, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'Title', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'Conceal', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 })
-vim.api.nvim_set_hl(0, 'Cursor', { fg = gui00, bg = gui05, ctermfg = cterm00, ctermbg = cterm05 })
-vim.api.nvim_set_hl(0, 'NonText', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui02, ctermfg = cterm04, ctermbg = cterm02 })
-vim.api.nvim_set_hl(0, 'StatusLineNC', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'VertSplit', { fg = gui02, bg = gui02, ctermfg = cterm02, ctermbg = cterm02 })
-vim.api.nvim_set_hl(0, 'ColorColumn', { bg = gui01, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'CursorColumn', { bg = gui01, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'CursorLine', { bg = gui01, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = gui04, bg = gui01, ctermfg = cterm04, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'QuickFixLine', { bg = gui01, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'PMenu', { fg = gui05, bg = gui01, ctermfg = cterm05, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'PMenuSel', { fg = gui01, bg = gui05, ctermfg = cterm01, ctermbg = cterm05 })
-vim.api.nvim_set_hl(0, 'TabLine', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'TabLineFill', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'TabLineSel', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 })
-
--- Standard syntax highlighting
-vim.api.nvim_set_hl(0, 'Boolean', { fg = gui09, ctermfg = cterm09 })
-vim.api.nvim_set_hl(0, 'Character', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'Comment', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'Conditional', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'Constant', { fg = gui09, ctermfg = cterm09 })
-vim.api.nvim_set_hl(0, 'Define', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'Delimiter', { fg = gui0F, ctermfg = cterm0F })
-vim.api.nvim_set_hl(0, 'Float', { fg = gui09, ctermfg = cterm09 })
-vim.api.nvim_set_hl(0, 'Function', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'Identifier', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'Include', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'Keyword', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'Label', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'Number', { fg = gui09, ctermfg = cterm09 })
-vim.api.nvim_set_hl(0, 'Operator', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'PreProc', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'Repeat', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'Special', { fg = gui0C, ctermfg = cterm0C })
-vim.api.nvim_set_hl(0, 'SpecialChar', { fg = gui0F, ctermfg = cterm0F })
-vim.api.nvim_set_hl(0, 'Statement', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'StorageClass', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'String', { fg = gui0B, ctermfg = cterm0B })
-vim.api.nvim_set_hl(0, 'Structure', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'Tag', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'Todo', { fg = gui0A, bg = gui01, ctermfg = cterm0A, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'Type', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'Typedef', { fg = gui0A, ctermfg = cterm0A })
-
--- C highlighting
-vim.api.nvim_set_hl(0, 'cOperator', { fg = gui0C, ctermfg = cterm0C })
-vim.api.nvim_set_hl(0, 'cPreCondit', { fg = gui0E, ctermfg = cterm0E })
-
--- C# highlighting
-vim.api.nvim_set_hl(0, 'csClass', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'csAttribute', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'csModifier', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'csType', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'csUnspecifiedStatement', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'csContextualStatement', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'csNewDecleration', { fg = gui08, ctermfg = cterm08 })
-
--- CSS highlighting
-vim.api.nvim_set_hl(0, 'cssBraces', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'cssClassName', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'cssColor', { fg = gui0C, ctermfg = cterm0C })
-
--- Diff highlighting
-vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 })
-vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 })
-vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 })
-vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 })
-vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 })
-
--- Git highlighting
-vim.api.nvim_set_hl(0, 'gitcommitOverflow', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'gitcommitSummary', { fg = gui0B, ctermfg = cterm0B })
-vim.api.nvim_set_hl(0, 'gitcommitComment', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'gitcommitUntracked', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'gitcommitDiscarded', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'gitcommitSelected', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'gitcommitHeader', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'gitcommitSelectedType', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'gitcommitUnmergedType', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'gitcommitDiscardedType', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'gitcommitBranch', { fg = gui09, ctermfg = cterm09, bold = true })
-vim.api.nvim_set_hl(0, 'gitcommitUntrackedFile', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'gitcommitUnmergedFile', { fg = gui08, ctermfg = cterm08, bold = true })
-vim.api.nvim_set_hl(0, 'gitcommitDiscardedFile', { fg = gui08, ctermfg = cterm08, bold = true })
-vim.api.nvim_set_hl(0, 'gitcommitSelectedFile', { fg = gui0B, ctermfg = cterm0B, bold = true })
-
--- GitGutter highlighting
-vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui01, ctermfg = cterm0E, ctermbg = cterm01 })
-
--- HTML highlighting
-vim.api.nvim_set_hl(0, 'htmlBold', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'htmlItalic', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'htmlEndTag', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'htmlTag', { fg = gui05, ctermfg = cterm05 })
-
--- JavaScript highlighting
-vim.api.nvim_set_hl(0, 'javaScript', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'javaScriptBraces', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'javaScriptNumber', { fg = gui09, ctermfg = cterm09 })
-
--- pangloss/vim-javascript highlighting
-vim.api.nvim_set_hl(0, 'jsOperator', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'jsStatement', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'jsReturn', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'jsThis', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'jsClassDefinition', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'jsFunction', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'jsFuncName', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'jsFuncCall', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'jsClassFuncName', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'jsClassMethodType', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'jsRegexpString', { fg = gui0C, ctermfg = cterm0C })
-vim.api.nvim_set_hl(0, 'jsGlobalObjects', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'jsGlobalNodeObjects', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'jsExceptions', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'jsBuiltins', { fg = gui0A, ctermfg = cterm0A })
-
--- LSP highlighting
-vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultError', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultWarning', { fg = gui09, ctermfg = cterm09 })
-vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHnformation', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHint', { fg = gui03, ctermfg = cterm03 })
-
--- Mail highlighting
-vim.api.nvim_set_hl(0, 'mailQuoted1', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'mailQuoted2', { fg = gui0B, ctermfg = cterm0B })
-vim.api.nvim_set_hl(0, 'mailQuoted3', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'mailQuoted4', { fg = gui0C, ctermfg = cterm0C })
-vim.api.nvim_set_hl(0, 'mailQuoted5', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'mailQuoted6', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'mailURL', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'mailEmail', { fg = gui0D, ctermfg = cterm0D })
-
--- Markdown highlighting
-vim.api.nvim_set_hl(0, 'markdownCode', { fg = gui0B, ctermfg = cterm0B })
-vim.api.nvim_set_hl(0, 'markdownError', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 })
-vim.api.nvim_set_hl(0, 'markdownCodeBlock', { fg = gui0B, ctermfg = cterm0B })
-vim.api.nvim_set_hl(0, 'markdownHeadingDelimiter', { fg = gui0D, ctermfg = cterm0D })
-
--- NERDTree highlighting
-vim.api.nvim_set_hl(0, 'NERDTreeDirSlash', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'NERDTreeExecFile', { fg = gui05, ctermfg = cterm05 })
-
--- PHP highlighting
-vim.api.nvim_set_hl(0, 'phpMemberSelector', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'phpComparison', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'phpParent', { fg = gui05, ctermfg = cterm05 })
-vim.api.nvim_set_hl(0, 'phpMethodsVar', { fg = gui0C, ctermfg = cterm0C })
-
--- Python highlighting
-vim.api.nvim_set_hl(0, 'pythonOperator', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'pythonRepeat', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'pythonInclude', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'pythonStatement', { fg = gui0E, ctermfg = cterm0E })
-
--- Ruby highlighting
-vim.api.nvim_set_hl(0, 'rubyAttribute', { fg = gui0D, ctermfg = cterm0D })
-vim.api.nvim_set_hl(0, 'rubyConstant', { fg = gui0A, ctermfg = cterm0A })
-vim.api.nvim_set_hl(0, 'rubyInterpolationDelimiter', { fg = gui0F, ctermfg = cterm0F })
-vim.api.nvim_set_hl(0, 'rubyRegexp', { fg = gui0C, ctermfg = cterm0C })
-vim.api.nvim_set_hl(0, 'rubySymbol', { fg = gui0B, ctermfg = cterm0B })
-vim.api.nvim_set_hl(0, 'rubyStringDelimiter', { fg = gui0B, ctermfg = cterm0B })
-
--- SASS highlighting
-vim.api.nvim_set_hl(0, 'sassidChar', { fg = gui08, ctermfg = cterm08 })
-vim.api.nvim_set_hl(0, 'sassClassChar', { fg = gui09, ctermfg = cterm09 })
-vim.api.nvim_set_hl(0, 'sassInclude', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'sassMixing', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'sassMixinName', { fg = gui0D, ctermfg = cterm0D })
-
--- Signify highlighting
-vim.api.nvim_set_hl(0, 'SignifySignAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'SignifySignChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 })
-vim.api.nvim_set_hl(0, 'SignifySignDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 })
-
--- Spelling highlighting
-vim.api.nvim_set_hl(0, 'SpellBad', { undercurl = true })
-vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true })
-vim.api.nvim_set_hl(0, 'SpellCap', { undercurl = true })
-vim.api.nvim_set_hl(0, 'SpellRare', { undercurl = true })
-
--- Startify highlighting
-vim.api.nvim_set_hl(0, 'StartifyBracket', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'StartifyFile', { fg = gui07, ctermfg = cterm07 })
-vim.api.nvim_set_hl(0, 'StartifyFooter', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'StartifyHeader', { fg = gui0B, ctermfg = cterm0B })
-vim.api.nvim_set_hl(0, 'StartifyNumber', { fg = gui09, ctermfg = cterm09 })
-vim.api.nvim_set_hl(0, 'StartifyPath', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'StartifySection', { fg = gui0E, ctermfg = cterm0E })
-vim.api.nvim_set_hl(0, 'StartifySelect', { fg = gui0C, ctermfg = cterm0C })
-vim.api.nvim_set_hl(0, 'StartifySlash', { fg = gui03, ctermfg = cterm03 })
-vim.api.nvim_set_hl(0, 'StartifySpecial', { fg = gui03, ctermfg = cterm03 })
-
--- Java highlighting
-vim.api.nvim_set_hl(0, 'javaOperator', { fg = gui0D, ctermfg = cterm0D })
-
--- vim: filetype=lua
--- end color
---
-
-vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui00 })
-vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui00 })
-vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui01 })
-vim.api.nvim_set_hl(0, 'TreesitterContext', { bg = gui01 })
-vim.api.nvim_set_hl(0, 'NormalFloat', {})
-vim.api.nvim_set_hl(0, 'WinSeparator', {})
-vim.api.nvim_set_hl(0, 'FloatBorder', {})
-vim.api.nvim_set_hl(0, 'StatusLine', { fg = 'background', bg = 'background' })
-vim.api.nvim_set_hl(0, 'Identifier', { fg = gui05, ctermfg = cterm05 })
-
-vim.api.nvim_set_hl(0, 'Beacon', { bg = 'fg' })
-vim.api.nvim_set_hl(0, 'LspInlayHint', { fg = gui03 })
-
--- cmp
-vim.api.nvim_set_hl(0, 'CmpItemKindFunction', { fg = gui0E })
-vim.api.nvim_set_hl(0, 'CmpItemKindMethod', { link = 'CmpItemKindFunction' })
-vim.api.nvim_set_hl(0, 'CmpItemKindClass', { fg = gui0A })
-vim.api.nvim_set_hl(0, 'CmpItemKindConstructor', { fg = gui0D })
-
--- leap
-vim.api.nvim_set_hl(0, 'LeapBackdrop', { link = 'Comment' })
-vim.api.nvim_set_hl(0, 'LeapMatch', { fg = '#00ff00' })
-vim.api.nvim_set_hl(0, 'LeapLabelPrimary', { fg = '#ffff00' })
-vim.api.nvim_set_hl(require('tms.p.leap').ast_ns, 'LeapLabelPrimary', { link = 'LeapMatch' })
-vim.api.nvim_set_hl(0, 'LeapLabelSecondary', { fg = '#ff0000' })
-
--- Diff highlighting
-vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui00 })
-vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui00 })
-vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui00 })
-vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui00 })
-vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00 })
-vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00 })
-vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00 })
-vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00 })
-vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00 })
-
--- GitGutter highlighting
-vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui00 })
-vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui00 })
-vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui00 })
-vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui00 })
-
-vim.api.nvim_set_hl(0, 'CodeiumSuggestion', { link = 'Comment' })
-
--- Hide all semantic highlights
--- for _, group in ipairs(vim.fn.getcompletion('@lsp', 'highlight')) do
--- vim.api.nvim_set_hl(0, group, {})
--- end
-
-vim.api.nvim_set_hl(0, 'LspReferenceText', { underline = true })
-vim.api.nvim_set_hl(0, 'LspReferenceRead', { undercurl = true })
-
--- relink @lsp to @treesitter
-local links = {
- ['@lsp.type.namespace'] = '@namespace',
- ['@lsp.type.type'] = '@type',
- ['@lsp.type.class'] = '@type',
- ['@lsp.type.enum'] = '@type',
- ['@lsp.type.interface'] = '@type',
- ['@lsp.type.struct'] = '@structure',
- ['@lsp.type.typeParameter'] = 'TypeDef',
- ['@lsp.type.parameter'] = '@parameter',
- ['@lsp.type.variable'] = '@variable',
- ['@lsp.type.property'] = '@property',
- ['@lsp.type.enumMember'] = '@constant',
- ['@lsp.type.function'] = '@function',
- ['@lsp.type.method'] = '@method',
- ['@lsp.type.macro'] = '@macro',
- ['@lsp.type.decorator'] = '@function',
- ['@lsp.type.keyword'] = '@keyword',
-}
-for newgroup, oldgroup in pairs(links) do
- vim.api.nvim_set_hl(0, newgroup, { link = oldgroup, default = true })
-end
-
-vim.api.nvim_set_hl(0, '@lsp.mod.annotation', { italic = true })
-vim.api.nvim_set_hl(0, '@lsp.type.type', { bold = true })
--- vim.api.nvim_set_hl(0, '@variable.builtin', { link = 'Keyword' })
-
-for tsgroup, opts in pairs({
- ['@annotation'] = { italic = true, default = true },
- ['@comment'] = { link = 'Comment' },
- ['@none'] = { bg = 'NONE', fg = 'NONE' },
- ['@preproc'] = { link = 'PreProc' },
- ['@define'] = { link = 'Define' },
- ['@operator'] = { link = 'Operator' },
- ['@punctuation.delimiter'] = { link = 'Delimiter' },
- ['@punctuation.bracket'] = { link = 'Delimiter' },
- ['@punctuation.special'] = { link = 'Delimiter' },
- ['@string'] = { link = 'String' },
- ['@string.regex'] = { link = 'String' },
- ['@string.escape'] = { link = 'SpecialChar' },
- ['@string.special'] = { link = 'SpecialChar' },
- ['@character'] = { link = 'Character' },
- ['@character.special'] = { link = 'SpecialChar' },
- ['@boolean'] = { link = 'Boolean' },
- ['@number'] = { link = 'Number' },
- ['@float'] = { link = 'Float' },
- ['@function'] = { link = 'Function' },
- ['@function.call'] = { link = 'Function' },
- ['@function.builtin'] = { link = 'Special' },
- ['@function.macro'] = { link = 'Macro' },
- ['@method'] = { link = 'Function' },
- ['@method.call'] = { link = 'Function' },
- ['@constructor'] = { link = 'Special' },
- ['@parameter'] = { link = 'Identifier' },
- ['@keyword'] = { link = 'Keyword' },
- ['@keyword.function'] = { link = 'Keyword' },
- ['@keyword.return'] = { link = 'Keyword' },
- ['@conditional'] = { link = 'Conditional' },
- ['@repeat'] = { link = 'Repeat' },
- ['@debug'] = { link = 'Debug' },
- ['@label'] = { link = 'Label' },
- ['@include'] = { link = 'Include' },
- ['@exception'] = { link = 'Exception' },
- ['@type'] = { link = 'Type' },
- ['@type.builtin'] = { link = 'Type' },
- ['@type.qualifier'] = { link = 'Type' },
- ['@type.definition'] = { link = 'Typedef' },
- ['@storageclass'] = { link = 'StorageClass' },
- ['@attribute'] = { link = 'PreProc' },
- ['@field'] = { link = 'Identifier' },
- ['@property'] = { link = 'Identifier' },
- ['@variable.builtin'] = { link = 'Special' },
- ['@constant'] = { link = 'Constant' },
- ['@constant.builtin'] = { link = 'Special' },
- ['@constant.macro'] = { link = 'Define' },
- ['@symbol'] = { link = 'Identifier' },
- ['@text.title'] = { link = 'Title' },
- ['@text.literal'] = { link = 'String' },
- ['@text.uri'] = { link = 'Underlined' },
- ['@text.math'] = { link = 'Special' },
- ['@text.environment'] = { link = 'Macro' },
- ['@text.environment.name'] = { link = 'Type' },
- ['@text.reference'] = { link = 'Constant' },
- ['@text.todo'] = { link = 'Todo' },
- ['@text.todo.unchecked'] = { link = 'Todo' },
- ['@text.todo.checked'] = { link = 'Done' },
- ['@text.note'] = { link = 'SpecialComment' },
- ['@text.warning'] = { link = 'WarningMsg' },
- ['@text.danger'] = { link = 'ErrorMsg' },
- ['@text.diff.add'] = { link = 'diffAdded' },
- ['@text.diff.delete'] = { link = 'diffRemoved' },
- ['@tag'] = { link = 'Tag' },
- ['@tag.attribute'] = { link = 'Identifier' },
- ['@tag.delimiter'] = { link = 'Delimiter' },
-
- -- nvim-treesitter (0.8 overrides)
- -- ['@text.strong'] = { bold = true },
- -- ['@text.strike'] = { strikethrough = true },
- -- ['@text.emphasis'] = { italic = true },
- -- ['@text.underline'] = { underline = true },
-}) do
- vim.api.nvim_set_hl(0, tsgroup, opts)
-end
diff --git a/colors/tms.lua b/colors/tms.lua
@@ -0,0 +1,344 @@
+-- start color
+-- base16-nvim (https://github.com/wincent/base16-nvim)
+-- by Greg Hurrell (https://github.com/wincent)
+-- based on
+-- base16-vim (https://github.com/chriskempson/base16-vim)
+-- by Chris Kempson (https://github.com/chriskempson)
+-- Gruvbox dark, hard scheme by Dawid Kurek (dawikur@gmail.com), morhetz (https://github.com/morhetz/gruvbox)
+
+local gui00 = "#1d2021"
+local gui01 = "#3c3836"
+local gui02 = "#504945"
+local gui03 = "#665c54"
+local gui04 = "#bdae93"
+local gui05 = "#d5c4a1"
+local gui06 = "#ebdbb2"
+local gui07 = "#fbf1c7"
+local gui08 = "#fb4934"
+local gui09 = "#fe8019"
+local gui0A = "#fabd2f"
+local gui0B = "#b8bb26"
+local gui0C = "#8ec07c"
+local gui0D = "#83a598"
+local gui0E = "#d3869b"
+local gui0F = "#d65d0e"
+
+local cterm00 = 0
+local cterm03 = 8
+local cterm05 = 7
+local cterm07 = 15
+local cterm08 = 1
+local cterm0A = 3
+local cterm0B = 2
+local cterm0C = 6
+local cterm0D = 4
+local cterm0E = 5
+local cterm01 = 10
+local cterm02 = 11
+local cterm04 = 12
+local cterm06 = 13
+local cterm09 = 9
+local cterm0F = 14
+
+vim.cmd [[
+ highlight clear
+ syntax reset
+]]
+vim.g.colors_name = "base16-gruvbox-dark-hard"
+
+-- Vim editor colors fg bg ctermfg ctermbg attr guisp
+vim.api.nvim_set_hl(0, 'Normal', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 })
+vim.api.nvim_set_hl(0, 'Bold', { bold = true })
+vim.api.nvim_set_hl(0, 'Debug', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'Directory', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'Error', { fg = gui00, bg = gui08, ctermfg = cterm00, ctermbg = cterm08 })
+vim.api.nvim_set_hl(0, 'ErrorMsg', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 })
+vim.api.nvim_set_hl(0, 'Exception', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'FoldColumn', { fg = gui0C, bg = gui01, ctermfg = cterm0C, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'Folded', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'IncSearch', { fg = gui01, bg = gui09, ctermfg = cterm01, ctermbg = cterm09 })
+vim.api.nvim_set_hl(0, 'Italic', {})
+vim.api.nvim_set_hl(0, 'Macro', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'MatchParen', { bg = gui03, ctermbg = cterm03 })
+vim.api.nvim_set_hl(0, 'ModeMsg', { fg = gui0B, ctermfg = cterm0B })
+vim.api.nvim_set_hl(0, 'MoreMsg', { fg = gui0B, ctermfg = cterm0B })
+vim.api.nvim_set_hl(0, 'Question', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'Search', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A })
+vim.api.nvim_set_hl(0, 'Substitute', { fg = gui01, bg = gui0A, ctermfg = cterm01, ctermbg = cterm0A })
+vim.api.nvim_set_hl(0, 'SpecialKey', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'TooLong', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'Underlined', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'Visual', { bg = gui02, ctermbg = cterm02 })
+vim.api.nvim_set_hl(0, 'VisualNOS', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'WarningMsg', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'WildMenu', { fg = gui08, bg = gui0A, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'Title', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'Conceal', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 })
+vim.api.nvim_set_hl(0, 'Cursor', { fg = gui00, bg = gui05, ctermfg = cterm00, ctermbg = cterm05 })
+vim.api.nvim_set_hl(0, 'NonText', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui02, ctermfg = cterm04, ctermbg = cterm02 })
+vim.api.nvim_set_hl(0, 'StatusLineNC', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'VertSplit', { fg = gui02, bg = gui02, ctermfg = cterm02, ctermbg = cterm02 })
+vim.api.nvim_set_hl(0, 'ColorColumn', { bg = gui01, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'CursorColumn', { bg = gui01, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'CursorLine', { bg = gui01, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = gui04, bg = gui01, ctermfg = cterm04, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'QuickFixLine', { bg = gui01, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'PMenu', { fg = gui05, bg = gui01, ctermfg = cterm05, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'PMenuSel', { fg = gui01, bg = gui05, ctermfg = cterm01, ctermbg = cterm05 })
+vim.api.nvim_set_hl(0, 'TabLine', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'TabLineFill', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'TabLineSel', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 })
+
+-- Standard syntax highlighting
+vim.api.nvim_set_hl(0, 'Boolean', { fg = gui09, ctermfg = cterm09 })
+vim.api.nvim_set_hl(0, 'Character', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'Comment', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'Conditional', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'Constant', { fg = gui09, ctermfg = cterm09 })
+vim.api.nvim_set_hl(0, 'Define', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'Delimiter', { fg = gui0F, ctermfg = cterm0F })
+vim.api.nvim_set_hl(0, 'Float', { fg = gui09, ctermfg = cterm09 })
+vim.api.nvim_set_hl(0, 'Function', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'Identifier', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'Include', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'Keyword', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'Label', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'Number', { fg = gui09, ctermfg = cterm09 })
+vim.api.nvim_set_hl(0, 'Operator', { fg = gui05, ctermfg = cterm05 })
+vim.api.nvim_set_hl(0, 'PreProc', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'Repeat', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'Special', { fg = gui0C, ctermfg = cterm0C })
+vim.api.nvim_set_hl(0, 'SpecialChar', { fg = gui0F, ctermfg = cterm0F })
+vim.api.nvim_set_hl(0, 'Statement', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'StorageClass', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'String', { fg = gui0B, ctermfg = cterm0B })
+vim.api.nvim_set_hl(0, 'Structure', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'Tag', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'Todo', { fg = gui0A, bg = gui01, ctermfg = cterm0A, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'Type', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'Typedef', { fg = gui0A, ctermfg = cterm0A })
+
+-- C highlighting
+vim.api.nvim_set_hl(0, 'cOperator', { fg = gui0C, ctermfg = cterm0C })
+vim.api.nvim_set_hl(0, 'cPreCondit', { fg = gui0E, ctermfg = cterm0E })
+
+-- C# highlighting
+vim.api.nvim_set_hl(0, 'csClass', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'csAttribute', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'csModifier', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'csType', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'csUnspecifiedStatement', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'csContextualStatement', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'csNewDecleration', { fg = gui08, ctermfg = cterm08 })
+
+-- CSS highlighting
+vim.api.nvim_set_hl(0, 'cssBraces', { fg = gui05, ctermfg = cterm05 })
+vim.api.nvim_set_hl(0, 'cssClassName', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'cssColor', { fg = gui0C, ctermfg = cterm0C })
+
+-- Diff highlighting
+vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui01, ctermfg = cterm03, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 })
+vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 })
+vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00, ctermfg = cterm0B, ctermbg = cterm00 })
+vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00, ctermfg = cterm0D, ctermbg = cterm00 })
+vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00, ctermfg = cterm08, ctermbg = cterm00 })
+
+-- Git highlighting
+vim.api.nvim_set_hl(0, 'gitcommitOverflow', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'gitcommitSummary', { fg = gui0B, ctermfg = cterm0B })
+vim.api.nvim_set_hl(0, 'gitcommitComment', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'gitcommitUntracked', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'gitcommitDiscarded', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'gitcommitSelected', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'gitcommitHeader', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'gitcommitSelectedType', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'gitcommitUnmergedType', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'gitcommitDiscardedType', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'gitcommitBranch', { fg = gui09, ctermfg = cterm09, bold = true })
+vim.api.nvim_set_hl(0, 'gitcommitUntrackedFile', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'gitcommitUnmergedFile', { fg = gui08, ctermfg = cterm08, bold = true })
+vim.api.nvim_set_hl(0, 'gitcommitDiscardedFile', { fg = gui08, ctermfg = cterm08, bold = true })
+vim.api.nvim_set_hl(0, 'gitcommitSelectedFile', { fg = gui0B, ctermfg = cterm0B, bold = true })
+
+-- GitGutter highlighting
+vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui01, ctermfg = cterm0E, ctermbg = cterm01 })
+
+-- HTML highlighting
+vim.api.nvim_set_hl(0, 'htmlBold', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'htmlItalic', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'htmlEndTag', { fg = gui05, ctermfg = cterm05 })
+vim.api.nvim_set_hl(0, 'htmlTag', { fg = gui05, ctermfg = cterm05 })
+
+-- JavaScript highlighting
+vim.api.nvim_set_hl(0, 'javaScript', { fg = gui05, ctermfg = cterm05 })
+vim.api.nvim_set_hl(0, 'javaScriptBraces', { fg = gui05, ctermfg = cterm05 })
+vim.api.nvim_set_hl(0, 'javaScriptNumber', { fg = gui09, ctermfg = cterm09 })
+
+-- pangloss/vim-javascript highlighting
+vim.api.nvim_set_hl(0, 'jsOperator', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'jsStatement', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'jsReturn', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'jsThis', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'jsClassDefinition', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'jsFunction', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'jsFuncName', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'jsFuncCall', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'jsClassFuncName', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'jsClassMethodType', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'jsRegexpString', { fg = gui0C, ctermfg = cterm0C })
+vim.api.nvim_set_hl(0, 'jsGlobalObjects', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'jsGlobalNodeObjects', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'jsExceptions', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'jsBuiltins', { fg = gui0A, ctermfg = cterm0A })
+
+-- LSP highlighting
+vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultError', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultWarning', { fg = gui09, ctermfg = cterm09 })
+vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHnformation', { fg = gui05, ctermfg = cterm05 })
+vim.api.nvim_set_hl(0, 'LspDiagnosticsDefaultHint', { fg = gui03, ctermfg = cterm03 })
+
+-- Mail highlighting
+vim.api.nvim_set_hl(0, 'mailQuoted1', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'mailQuoted2', { fg = gui0B, ctermfg = cterm0B })
+vim.api.nvim_set_hl(0, 'mailQuoted3', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'mailQuoted4', { fg = gui0C, ctermfg = cterm0C })
+vim.api.nvim_set_hl(0, 'mailQuoted5', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'mailQuoted6', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'mailURL', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'mailEmail', { fg = gui0D, ctermfg = cterm0D })
+
+-- Markdown highlighting
+vim.api.nvim_set_hl(0, 'markdownCode', { fg = gui0B, ctermfg = cterm0B })
+vim.api.nvim_set_hl(0, 'markdownError', { fg = gui05, bg = gui00, ctermfg = cterm05, ctermbg = cterm00 })
+vim.api.nvim_set_hl(0, 'markdownCodeBlock', { fg = gui0B, ctermfg = cterm0B })
+vim.api.nvim_set_hl(0, 'markdownHeadingDelimiter', { fg = gui0D, ctermfg = cterm0D })
+
+-- NERDTree highlighting
+vim.api.nvim_set_hl(0, 'NERDTreeDirSlash', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'NERDTreeExecFile', { fg = gui05, ctermfg = cterm05 })
+
+-- PHP highlighting
+vim.api.nvim_set_hl(0, 'phpMemberSelector', { fg = gui05, ctermfg = cterm05 })
+vim.api.nvim_set_hl(0, 'phpComparison', { fg = gui05, ctermfg = cterm05 })
+vim.api.nvim_set_hl(0, 'phpParent', { fg = gui05, ctermfg = cterm05 })
+vim.api.nvim_set_hl(0, 'phpMethodsVar', { fg = gui0C, ctermfg = cterm0C })
+
+-- Python highlighting
+vim.api.nvim_set_hl(0, 'pythonOperator', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'pythonRepeat', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'pythonInclude', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'pythonStatement', { fg = gui0E, ctermfg = cterm0E })
+
+-- Ruby highlighting
+vim.api.nvim_set_hl(0, 'rubyAttribute', { fg = gui0D, ctermfg = cterm0D })
+vim.api.nvim_set_hl(0, 'rubyConstant', { fg = gui0A, ctermfg = cterm0A })
+vim.api.nvim_set_hl(0, 'rubyInterpolationDelimiter', { fg = gui0F, ctermfg = cterm0F })
+vim.api.nvim_set_hl(0, 'rubyRegexp', { fg = gui0C, ctermfg = cterm0C })
+vim.api.nvim_set_hl(0, 'rubySymbol', { fg = gui0B, ctermfg = cterm0B })
+vim.api.nvim_set_hl(0, 'rubyStringDelimiter', { fg = gui0B, ctermfg = cterm0B })
+
+-- SASS highlighting
+vim.api.nvim_set_hl(0, 'sassidChar', { fg = gui08, ctermfg = cterm08 })
+vim.api.nvim_set_hl(0, 'sassClassChar', { fg = gui09, ctermfg = cterm09 })
+vim.api.nvim_set_hl(0, 'sassInclude', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'sassMixing', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'sassMixinName', { fg = gui0D, ctermfg = cterm0D })
+
+-- Signify highlighting
+vim.api.nvim_set_hl(0, 'SignifySignAdd', { fg = gui0B, bg = gui01, ctermfg = cterm0B, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'SignifySignChange', { fg = gui0D, bg = gui01, ctermfg = cterm0D, ctermbg = cterm01 })
+vim.api.nvim_set_hl(0, 'SignifySignDelete', { fg = gui08, bg = gui01, ctermfg = cterm08, ctermbg = cterm01 })
+
+-- Spelling highlighting
+vim.api.nvim_set_hl(0, 'SpellBad', { undercurl = true })
+vim.api.nvim_set_hl(0, 'SpellLocal', { undercurl = true })
+vim.api.nvim_set_hl(0, 'SpellCap', { undercurl = true })
+vim.api.nvim_set_hl(0, 'SpellRare', { undercurl = true })
+
+-- Startify highlighting
+vim.api.nvim_set_hl(0, 'StartifyBracket', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'StartifyFile', { fg = gui07, ctermfg = cterm07 })
+vim.api.nvim_set_hl(0, 'StartifyFooter', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'StartifyHeader', { fg = gui0B, ctermfg = cterm0B })
+vim.api.nvim_set_hl(0, 'StartifyNumber', { fg = gui09, ctermfg = cterm09 })
+vim.api.nvim_set_hl(0, 'StartifyPath', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'StartifySection', { fg = gui0E, ctermfg = cterm0E })
+vim.api.nvim_set_hl(0, 'StartifySelect', { fg = gui0C, ctermfg = cterm0C })
+vim.api.nvim_set_hl(0, 'StartifySlash', { fg = gui03, ctermfg = cterm03 })
+vim.api.nvim_set_hl(0, 'StartifySpecial', { fg = gui03, ctermfg = cterm03 })
+
+-- Java highlighting
+vim.api.nvim_set_hl(0, 'javaOperator', { fg = gui0D, ctermfg = cterm0D })
+
+-- vim: filetype=lua
+-- end color
+--
+
+vim.api.nvim_set_hl(0, 'LineNr', { fg = gui03, bg = gui00 })
+vim.api.nvim_set_hl(0, 'SignColumn', { fg = gui03, bg = gui00 })
+vim.api.nvim_set_hl(0, 'StatusLine', { fg = gui04, bg = gui01 })
+vim.api.nvim_set_hl(0, 'TreesitterContext', { bg = gui01 })
+vim.api.nvim_set_hl(0, 'NormalFloat', {})
+vim.api.nvim_set_hl(0, 'WinSeparator', {})
+vim.api.nvim_set_hl(0, 'FloatBorder', {})
+vim.api.nvim_set_hl(0, 'StatusLine', { fg = 'background', bg = 'background' })
+vim.api.nvim_set_hl(0, 'Identifier', { fg = gui05, ctermfg = cterm05 })
+
+vim.api.nvim_set_hl(0, 'Beacon', { bg = 'fg' })
+vim.api.nvim_set_hl(0, 'LspInlayHint', { fg = gui03 })
+
+-- cmp
+vim.api.nvim_set_hl(0, 'CmpItemKindFunction', { fg = gui0E })
+vim.api.nvim_set_hl(0, 'CmpItemKindMethod', { link = 'CmpItemKindFunction' })
+vim.api.nvim_set_hl(0, 'CmpItemKindClass', { fg = gui0A })
+vim.api.nvim_set_hl(0, 'CmpItemKindConstructor', { fg = gui0D })
+
+-- leap
+vim.api.nvim_set_hl(0, 'LeapBackdrop', { link = 'Comment' })
+vim.api.nvim_set_hl(0, 'LeapMatch', { fg = '#00ff00' })
+vim.api.nvim_set_hl(0, 'LeapLabelPrimary', { fg = '#ffff00' })
+vim.api.nvim_set_hl(require('tms.p.leap').ast_ns, 'LeapLabelPrimary', { link = 'LeapMatch' })
+vim.api.nvim_set_hl(0, 'LeapLabelSecondary', { fg = '#ff0000' })
+
+-- Diff highlighting
+vim.api.nvim_set_hl(0, 'DiffAdd', { fg = gui0B, bg = gui00 })
+vim.api.nvim_set_hl(0, 'DiffChange', { fg = gui03, bg = gui00 })
+vim.api.nvim_set_hl(0, 'DiffDelete', { fg = gui08, bg = gui00 })
+vim.api.nvim_set_hl(0, 'DiffText', { fg = gui0D, bg = gui00 })
+vim.api.nvim_set_hl(0, 'DiffAdded', { fg = gui0B, bg = gui00 })
+vim.api.nvim_set_hl(0, 'DiffFile', { fg = gui08, bg = gui00 })
+vim.api.nvim_set_hl(0, 'DiffNewFile', { fg = gui0B, bg = gui00 })
+vim.api.nvim_set_hl(0, 'DiffLine', { fg = gui0D, bg = gui00 })
+vim.api.nvim_set_hl(0, 'DiffRemoved', { fg = gui08, bg = gui00 })
+
+-- GitGutter highlighting
+vim.api.nvim_set_hl(0, 'GitGutterAdd', { fg = gui0B, bg = gui00 })
+vim.api.nvim_set_hl(0, 'GitGutterChange', { fg = gui0D, bg = gui00 })
+vim.api.nvim_set_hl(0, 'GitGutterDelete', { fg = gui08, bg = gui00 })
+vim.api.nvim_set_hl(0, 'GitGutterChangeDelete', { fg = gui0E, bg = gui00 })
+
+vim.api.nvim_set_hl(0, 'CodeiumSuggestion', { link = 'Comment' })
+
+vim.api.nvim_set_hl(0, 'LspReferenceText', { underline = true })
+vim.api.nvim_set_hl(0, 'LspReferenceRead', { undercurl = true })
+
+-- Hide all semantic highlights
+-- for _, group in ipairs(vim.fn.getcompletion('@lsp', 'highlight')) do
+-- vim.api.nvim_set_hl(0, group, {})
+-- end
+
+vim.api.nvim_set_hl(0, '@lsp.type.class', {})
+vim.api.nvim_set_hl(0, '@lsp.type.class', { link = '@keyword', default = true })
+vim.api.nvim_set_hl(0, '@lsp.mod.annotation', { italic = true })
+vim.api.nvim_set_hl(0, '@lsp.type.type', { bold = true })
+-- vim.api.nvim_set_hl(0, '@variable.builtin', { link = 'Keyword' })
diff --git a/init.lua b/init.lua
@@ -2,7 +2,7 @@ vim.g.mapleader = ','
vim.g.loaded_matchparen = 1
vim.loader.enable()
require('tms.first_load')
-vim.cmd.colorscheme('base16')
+vim.cmd.colorscheme('tms')
require('tms.options')
require('tms.keymap')
require('tms.autocmd')
diff --git a/lua/plugins.lua b/lua/plugins.lua
@@ -1,20 +1,19 @@
vim.cmd.packadd('paq-nvim')
return require('paq') {
- { 'savq/paq-nvim', opt = true },
+ { 'savq/paq-nvim', opt = true },
'kyazdani42/nvim-web-devicons',
'nvim-lua/plenary.nvim',
- 'nvim-lua/popup.nvim', -- EXP
- 'yioneko/nvim-type-fmt', -- meta
+ 'nvim-lua/popup.nvim', -- EXP
+ 'yioneko/nvim-type-fmt', -- meta
'tweekmonster/startuptime.vim', -- colorscheme
- 'tjdevries/colorbuddy.nvim', -- spell
- 'xxdavid/bez-diakritiky.vim', -- movements
+ 'xxdavid/bez-diakritiky.vim', -- movements
'ggandor/leap.nvim',
- 'ggandor/leap-spooky.nvim', -- editor
+ 'ggandor/leap-spooky.nvim', -- editor
'tpope/vim-repeat',
'kylechui/nvim-surround',
'chaoren/vim-wordmotion', -- word counts with _,.,-,...
- 'romgrk/equal.operator', -- equal text object `lefthand = righthand`
- 'godlygeek/tabular', -- align
+ 'romgrk/equal.operator', -- equal text object `lefthand = righthand`
+ 'godlygeek/tabular', -- align
-- use 'windwp/nvim-autopairs'
'numToStr/Comment.nvim',
'mbbill/undotree', -- use 'camspiers/Animate.vim'
@@ -26,13 +25,13 @@ return require('paq') {
-- use { 'kevinhwang91/nvim-ufo', requires = { 'kevinhwang91/promise-async' } }
'elihunter173/dirbuf.nvim',
'norcalli/nvim-terminal.lua',
- { 'j-hui/fidget.nvim', branch = 'legacy' },
- 'lervag/vimtex', -- lua
+ { 'j-hui/fidget.nvim', branch = 'legacy' },
+ 'lervag/vimtex', -- lua
'nanotee/luv-vimdocs',
- 'milisims/nvim-luaref', -- Notes
+ 'milisims/nvim-luaref', -- Notes
-- { 'nvim-neorg/neorg', requires = { 'nvim-lua/plenary.nvim' } }
{ 'mickael-menu/zk-nvim' }, -- quickfix list
- 'kevinhwang91/nvim-bqf', -- distraction
+ 'kevinhwang91/nvim-bqf', -- distraction
'junegunn/limelight.vim',
'Pocco81/true-zen.nvim',
'shortcuts/no-neck-pain.nvim', -- how to vim
@@ -43,8 +42,8 @@ return require('paq') {
'sindrets/diffview.nvim',
'tpope/vim-fugitive',
'ThePrimeagen/git-worktree.nvim',
- 'rhysd/conflict-marker.vim', -- http
- { 'rest-nvim/rest.nvim', requires = { 'nvim-lua/plenary.nvim' } }, -- filetype
+ 'rhysd/conflict-marker.vim', -- http
+ { 'rest-nvim/rest.nvim', requires = { 'nvim-lua/plenary.nvim' } }, -- filetype
'tikhomirov/vim-glsl',
'windwp/nvim-ts-autotag',
'baskerville/vim-sxhkdrc',
@@ -67,7 +66,7 @@ return require('paq') {
'tamago324/cmp-zsh',
'uga-rosa/cmp-dictionary',
'hrsh7th/nvim-cmp',
- 'aduros/ai.vim', -- ui
+ 'aduros/ai.vim', -- ui
'stevearc/dressing.nvim',
'rcarriga/nvim-notify', -- lsp
'neovim/nvim-lspconfig',
@@ -75,10 +74,10 @@ return require('paq') {
'williamboman/mason-lspconfig.nvim',
'b0o/schemastore.nvim',
'folke/neodev.nvim',
- { 'jose-elias-alvarez/null-ls.nvim', requires = { 'nvim-lua/plenary.nvim' } },
+ { 'jose-elias-alvarez/null-ls.nvim', requires = { 'nvim-lua/plenary.nvim' } },
'lvimuser/lsp-inlayhints.nvim', -- use 'zbirenbaum/copilot.lua'
'dgagn/diagflow.nvim',
- 'Exafunction/codeium.vim', -- dap
+ 'Exafunction/codeium.vim', -- dap
'mfussenegger/nvim-dap',
'leoluz/nvim-dap-go',
'rcarriga/nvim-dap-ui',
@@ -104,8 +103,8 @@ return require('paq') {
'nvim-telescope/telescope-fzy-native.nvim',
'nvim-telescope/telescope-dap.nvim',
{ 'aaronhallaert/advanced-git-search.nvim', requires = { 'tpope/vim-fugitive' } }, -- Godot
- 'habamax/vim-godot', -- qmk
- 'codethread/qmk.nvim', -- personal
+ 'habamax/vim-godot', -- qmk
+ 'codethread/qmk.nvim', -- personal
'GenesisTMS/trans.nvim',
{ url = 'git@gitlab.com:gtms/dart-tools.nvim' },
-- use '/home/tms/dev/nvim/plugins/dart-tools.nvim'
diff --git a/lua/tms/first_load.lua b/lua/tms/first_load.lua
@@ -23,4 +23,3 @@ local start = function(repo)
end
opt('savq/paq-nvim')
-start('tjdevries/colorbuddy.nvim')