diff options
-rw-r--r-- | runtime/colors/vim.lua | 286 | ||||
-rw-r--r-- | runtime/colors/vim.vim | 269 | ||||
-rw-r--r-- | test/functional/helpers.lua | 2 | ||||
-rw-r--r-- | test/functional/ui/highlight_spec.lua | 1 |
4 files changed, 288 insertions, 270 deletions
diff --git a/runtime/colors/vim.lua b/runtime/colors/vim.lua new file mode 100644 index 0000000000..4e16b6e036 --- /dev/null +++ b/runtime/colors/vim.lua @@ -0,0 +1,286 @@ +-- Name: vim +-- Description: Vim's default color scheme +-- Author: Bram Moolenaar <Bram@vim.org> +-- Maintainer: The Vim Project <https://github.com/vim/vim> +-- Website: https://github.com/vim/vim +-- License: Same as Vim +-- Last Updated: 2023 Aug 10 + +-- This is Vim's default color scheme. It doesn't define the Normal +-- highlighting, it uses whatever the colors used to be. + +vim.cmd.highlight('clear') +vim.g.colors_name = 'vim' + +local hi = function(name, val) + -- Force links + val.force = true + + -- Make sure that `cterm` attribute is not populated from `gui` + val.cterm = val.cterm or {} + + -- Define global highlight + vim.api.nvim_set_hl(0, name, val) +end + +--stylua: ignore start +-- General +hi('Normal', {}) + +hi('Conceal', { fg = 'LightGrey', bg = 'DarkGrey', ctermfg = 'LightGrey', ctermbg = 'DarkGrey' }) +hi('Cursor', {}) +hi('lCursor', {}) +hi('DiffText', { bg = 'Red', bold = true, ctermbg = 'Red', cterm = { bold = true } }) +hi('ErrorMsg', { fg = 'White', bg = 'Red', ctermfg = 'White', ctermbg = 'DarkRed' }) +hi('IncSearch', { reverse = true, cterm = { reverse = true } }) +hi('ModeMsg', { bold = true, cterm = { bold = true } }) +hi('NonText', { fg = 'Blue', bold = true, ctermfg = 'Blue' }) +hi('PmenuSbar', { bg = 'Grey', ctermbg = 'Grey' }) +hi('StatusLine', { reverse = true, bold = true, cterm = { reverse = true, bold = true }}) +hi('StatusLineNC', { reverse = true, cterm = { reverse = true } }) +hi('TabLineFill', { reverse = true, cterm = { reverse = true } }) +hi('TabLineSel', { bold = true, cterm = { bold = true } }) +hi('TermCursor', { reverse = true, cterm = { reverse = true } }) +hi('WinBar', { bold = true, cterm = { bold = true } }) +hi('WildMenu', { fg = 'Black', bg = 'Yellow', ctermfg = 'Black', ctermbg = 'Yellow' }) + +hi('VertSplit', { link = 'Normal' }) +hi('WinSeparator', { link = 'VertSplit' }) +hi('WinBarNC', { link = 'WinBar' }) +hi('EndOfBuffer', { link = 'NonText' }) +hi('LineNrAbove', { link = 'LineNr' }) +hi('LineNrBelow', { link = 'LineNr' }) +hi('QuickFixLine', { link = 'Search' }) +hi('CursorLineSign', { link = 'SignColumn' }) +hi('CursorLineFold', { link = 'FoldColumn' }) +hi('CurSearch', { link = 'Search' }) +hi('PmenuKind', { link = 'Pmenu' }) +hi('PmenuKindSel', { link = 'PmenuSel' }) +hi('PmenuExtra', { link = 'Pmenu' }) +hi('PmenuExtraSel', { link = 'PmenuSel' }) +hi('Substitute', { link = 'Search' }) +hi('Whitespace', { link = 'NonText' }) +hi('MsgSeparator', { link = 'StatusLine' }) +hi('NormalFloat', { link = 'Pmenu' }) +hi('FloatBorder', { link = 'WinSeparator' }) +hi('FloatTitle', { link = 'Title' }) +hi('FloatFooter', { link = 'Title' }) + +hi('FloatShadow', { bg = 'Black', blend=80 }) +hi('FloatShadowThrough', { bg = 'Black', blend=100 }) +hi('RedrawDebugNormal', { reverse = true, cterm = { reverse = true } }) +hi('RedrawDebugClear', { bg = 'Yellow', ctermbg = 'Yellow' }) +hi('RedrawDebugComposed', { bg = 'Green', ctermbg = 'Green' }) +hi('RedrawDebugRecompose', { bg = 'Red', ctermbg = 'Red' }) +hi('Error', { fg = 'White', bg = 'Red', ctermfg = 'White', ctermbg = 'Red' }) +hi('Todo', { fg = 'Blue', bg = 'Yellow', ctermfg = 'Black', ctermbg = 'Yellow' }) + +hi('String', { link = 'Constant' }) +hi('Character', { link = 'Constant' }) +hi('Number', { link = 'Constant' }) +hi('Boolean', { link = 'Constant' }) +hi('Float', { link = 'Number' }) +hi('Function', { link = 'Identifier' }) +hi('Conditional', { link = 'Statement' }) +hi('Repeat', { link = 'Statement' }) +hi('Label', { link = 'Statement' }) +hi('Operator', { link = 'Statement' }) +hi('Keyword', { link = 'Statement' }) +hi('Exception', { link = 'Statement' }) +hi('Include', { link = 'PreProc' }) +hi('Define', { link = 'PreProc' }) +hi('Macro', { link = 'PreProc' }) +hi('PreCondit', { link = 'PreProc' }) +hi('StorageClass', { link = 'Type' }) +hi('Structure', { link = 'Type' }) +hi('Typedef', { link = 'Type' }) +hi('Tag', { link = 'Special' }) +hi('SpecialChar', { link = 'Special' }) +hi('Delimiter', { link = 'Special' }) +hi('SpecialComment', { link = 'Special' }) +hi('Debug', { link = 'Special' }) + +hi('DiagnosticError', { fg = 'Red', ctermfg = 1 }) +hi('DiagnosticWarn', { fg = 'Orange', ctermfg = 3 }) +hi('DiagnosticInfo', { fg = 'LightBlue', ctermfg = 4 }) +hi('DiagnosticHint', { fg = 'LightGrey', ctermfg = 7 }) +hi('DiagnosticOk', { fg = 'LightGreen', ctermfg = 10 }) +hi('DiagnosticUnderlineError', { sp = 'Red', underline = true, cterm = { underline = true } }) +hi('DiagnosticUnderlineWarn', { sp = 'Orange', underline = true, cterm = { underline = true } }) +hi('DiagnosticUnderlineInfo', { sp = 'LightBlue', underline = true, cterm = { underline = true } }) +hi('DiagnosticUnderlineHint', { sp = 'LightGrey', underline = true, cterm = { underline = true } }) +hi('DiagnosticUnderlineOk', { sp = 'LightGreen', underline = true, cterm = { underline = true } }) +hi('DiagnosticVirtualTextError', { link = 'DiagnosticError' }) +hi('DiagnosticVirtualTextWarn', { link = 'DiagnosticWarn' }) +hi('DiagnosticVirtualTextInfo', { link = 'DiagnosticInfo' }) +hi('DiagnosticVirtualTextHint', { link = 'DiagnosticHint' }) +hi('DiagnosticVirtualTextOk', { link = 'DiagnosticOk' }) +hi('DiagnosticFloatingError', { link = 'DiagnosticError' }) +hi('DiagnosticFloatingWarn', { link = 'DiagnosticWarn' }) +hi('DiagnosticFloatingInfo', { link = 'DiagnosticInfo' }) +hi('DiagnosticFloatingHint', { link = 'DiagnosticHint' }) +hi('DiagnosticFloatingOk', { link = 'DiagnosticOk' }) +hi('DiagnosticSignError', { link = 'DiagnosticError' }) +hi('DiagnosticSignWarn', { link = 'DiagnosticWarn' }) +hi('DiagnosticSignInfo', { link = 'DiagnosticInfo' }) +hi('DiagnosticSignHint', { link = 'DiagnosticHint' }) +hi('DiagnosticSignOk', { link = 'DiagnosticOk' }) +hi('DiagnosticDeprecated', { sp = 'Red', strikethrough = true, cterm = { strikethrough = true } }) + +hi('DiagnosticUnnecessary', { link = 'Comment' }) +hi('LspInlayHint', { link = 'NonText' }) +hi('SnippetTabstop', { link = 'Visual' }) + +-- Text +hi('@text.literal', { link = 'Comment' }) +hi('@text.reference', { link = 'Identifier' }) +hi('@text.title', { link = 'Title' }) +hi('@text.uri', { link = 'Underlined' }) +hi('@text.underline', { link = 'Underlined' }) +hi('@text.todo', { link = 'Todo' }) + +-- Miscs +hi('@comment', { link = 'Comment' }) +hi('@punctuation', { link = 'Delimiter' }) + +-- Constants +hi('@constant', { link = 'Constant' }) +hi('@constant.builtin', { link = 'Special' }) +hi('@constant.macro', { link = 'Define' }) +hi('@define', { link = 'Define' }) +hi('@macro', { link = 'Macro' }) +hi('@string', { link = 'String' }) +hi('@string.escape', { link = 'SpecialChar' }) +hi('@string.special', { link = 'SpecialChar' }) +hi('@character', { link = 'Character' }) +hi('@character.special', { link = 'SpecialChar' }) +hi('@number', { link = 'Number' }) +hi('@boolean', { link = 'Boolean' }) +hi('@float', { link = 'Float' }) + +-- Functions +hi('@function', { link = 'Function' }) +hi('@function.builtin', { link = 'Special' }) +hi('@function.macro', { link = 'Macro' }) +hi('@parameter', { link = 'Identifier' }) +hi('@method', { link = 'Function' }) +hi('@field', { link = 'Identifier' }) +hi('@property', { link = 'Identifier' }) +hi('@constructor', { link = 'Special' }) + +-- Keywords +hi('@conditional', { link = 'Conditional' }) +hi('@repeat', { link = 'Repeat' }) +hi('@label', { link = 'Label' }) +hi('@operator', { link = 'Operator' }) +hi('@keyword', { link = 'Keyword' }) +hi('@exception', { link = 'Exception' }) + +hi('@variable', { link = 'Identifier' }) +hi('@type', { link = 'Type' }) +hi('@type.definition', { link = 'Typedef' }) +hi('@storageclass', { link = 'StorageClass' }) +hi('@namespace', { link = 'Identifier' }) +hi('@include', { link = 'Include' }) +hi('@preproc', { link = 'PreProc' }) +hi('@debug', { link = 'Debug' }) +hi('@tag', { link = 'Tag' }) + +-- LSP semantic tokens +hi('@lsp.type.class', { link = 'Structure' }) +hi('@lsp.type.comment', { link = 'Comment' }) +hi('@lsp.type.decorator', { link = 'Function' }) +hi('@lsp.type.enum', { link = 'Structure' }) +hi('@lsp.type.enumMember', { link = 'Constant' }) +hi('@lsp.type.function', { link = 'Function' }) +hi('@lsp.type.interface', { link = 'Structure' }) +hi('@lsp.type.macro', { link = 'Macro' }) +hi('@lsp.type.method', { link = 'Function' }) +hi('@lsp.type.namespace', { link = 'Structure' }) +hi('@lsp.type.parameter', { link = 'Identifier' }) +hi('@lsp.type.property', { link = 'Identifier' }) +hi('@lsp.type.struct', { link = 'Structure' }) +hi('@lsp.type.type', { link = 'Type' }) +hi('@lsp.type.typeParameter', { link = 'TypeDef' }) +hi('@lsp.type.variable', { link = 'Identifier' }) + +if vim.o.background == 'light' then + -- Default colors only used with a light background. + hi('ColorColumn', { bg = 'LightRed', ctermbg = 'LightRed' }) + hi('CursorColumn', { bg = 'Grey90', ctermbg = 'LightGrey' }) + hi('CursorLine', { bg = 'Grey90', cterm = { underline = true } }) + hi('CursorLineNr', { fg = 'Brown', bold = true, ctermfg = 'Brown', cterm = { underline = true } }) + hi('DiffAdd', { bg = 'LightBlue', ctermbg = 'LightBlue' }) + hi('DiffChange', { bg = 'LightMagenta', ctermbg = 'LightMagenta' }) + hi('DiffDelete', { fg = 'Blue', bg = 'LightCyan', bold = true, ctermfg = 'Blue', ctermbg = 'LightCyan' }) + hi('Directory', { fg = 'Blue', ctermfg = 'DarkBlue' }) + hi('FoldColumn', { fg = 'DarkBlue', bg = 'Grey', ctermfg = 'DarkBlue', ctermbg = 'Grey' }) + hi('Folded', { fg = 'DarkBlue', bg = 'LightGrey', ctermfg = 'DarkBlue', ctermbg = 'Grey' }) + hi('LineNr', { fg = 'Brown', ctermfg = 'Brown' }) + hi('MatchParen', { bg = 'Cyan', ctermbg = 'Cyan' }) + hi('MoreMsg', { fg = 'SeaGreen', bold = true, ctermfg = 'DarkGreen' }) + hi('Pmenu', { bg = 'LightMagenta', ctermfg = 'Black', ctermbg = 'LightMagenta' }) + hi('PmenuSel', { bg = 'Grey', ctermfg = 'Black', ctermbg = 'LightGrey' }) + hi('PmenuThumb', { bg = 'Black', ctermbg = 'Black' }) + hi('Question', { fg = 'SeaGreen', bold = true, ctermfg = 'DarkGreen' }) + hi('Search', { bg = 'Yellow', ctermbg = 'Yellow' }) + hi('SignColumn', { fg = 'DarkBlue', bg = 'Grey', ctermfg = 'DarkBlue', ctermbg = 'Grey' }) + hi('SpecialKey', { fg = 'Blue', ctermfg = 'DarkBlue' }) + hi('SpellBad', { sp = 'Red', undercurl = true, ctermbg = 'LightRed' }) + hi('SpellCap', { sp = 'Blue', undercurl = true, ctermbg = 'LightBlue' }) + hi('SpellLocal', { sp = 'DarkCyan', undercurl = true, ctermbg = 'Cyan' }) + hi('SpellRare', { sp = 'Magenta', undercurl = true, ctermbg = 'LightMagenta' }) + hi('TabLine', { bg = 'LightGrey', underline = true, ctermfg = 'Black', ctermbg = 'LightGrey', cterm = { underline = true } }) + hi('Title', { fg = 'Magenta', bold = true, ctermfg = 'DarkMagenta' }) + hi('Visual', { bg = 'LightGrey', ctermbg = 'LightGrey' }) + hi('WarningMsg', { fg = 'Red', ctermfg = 'DarkRed' }) + hi('Comment', { fg = 'Blue', ctermfg = 'DarkBlue' }) + hi('Constant', { fg = 'Magenta', ctermfg = 'DarkRed' }) + hi('Special', { fg = '#6a5acd', ctermfg = 'DarkMagenta' }) + hi('Identifier', { fg = 'DarkCyan', ctermfg = 'DarkCyan' }) + hi('Statement', { fg = 'Brown', bold = true, ctermfg = 'Brown' }) + hi('PreProc', { fg = '#6a0dad', ctermfg = 'DarkMagenta' }) + hi('Type', { fg = 'SeaGreen', bold = true, ctermfg = 'DarkGreen' }) + hi('Underlined', { fg = 'SlateBlue', underline = true, ctermfg = 'DarkMagenta', cterm = { underline = true } }) + hi('Ignore', { ctermfg = 'White' }) +else + -- Default colors only used with a dark background. + hi('ColorColumn', { bg = 'DarkRed', ctermbg = 'DarkRed' }) + hi('CursorColumn', { bg = 'Grey40', ctermbg = 'DarkGrey' }) + hi('CursorLine', { bg = 'Grey40', cterm = { underline = true } }) + hi('CursorLineNr', { fg = 'Yellow', bold = true, ctermfg = 'Yellow', cterm = { underline = true } }) + hi('DiffAdd', { bg = 'DarkBlue', ctermbg = 'DarkBlue' }) + hi('DiffChange', { bg = 'DarkMagenta', ctermbg = 'DarkMagenta' }) + hi('DiffDelete', { fg = 'Blue', bg = 'DarkCyan', bold = true, ctermfg = 'Blue', ctermbg = 'DarkCyan' }) + hi('Directory', { fg = 'Cyan', ctermfg = 'LightCyan' }) + hi('FoldColumn', { fg = 'Cyan', bg = 'Grey', ctermfg = 'Cyan', ctermbg = 'DarkGrey' }) + hi('Folded', { fg = 'Cyan', bg = 'DarkGrey', ctermfg = 'Cyan', ctermbg = 'DarkGrey' }) + hi('LineNr', { fg = 'Yellow', ctermfg = 'Yellow' }) + hi('MatchParen', { bg = 'DarkCyan', ctermbg = 'DarkCyan' }) + hi('MoreMsg', { fg = 'SeaGreen', bold = true, ctermfg = 'LightGreen' }) + hi('Pmenu', { bg = 'Magenta', ctermfg = 'Black', ctermbg = 'Magenta' }) + hi('PmenuSel', { bg = 'DarkGrey', ctermfg = 'DarkGrey', ctermbg = 'Black' }) + hi('PmenuThumb', { bg = 'White', ctermbg = 'White' }) + hi('Question', { fg = 'Green', bold = true, ctermfg = 'LightGreen' }) + hi('Search', { fg = 'Black', bg = 'Yellow', ctermfg = 'Black', ctermbg = 'Yellow' }) + hi('SignColumn', { fg = 'Cyan', bg = 'Grey', ctermfg = 'Cyan', ctermbg = 'DarkGrey' }) + hi('SpecialKey', { fg = 'Cyan', ctermfg = 'LightBlue' }) + hi('SpellBad', { sp = 'Red', undercurl = true, ctermbg = 'Red' }) + hi('SpellCap', { sp = 'Blue', undercurl = true, ctermbg = 'Blue' }) + hi('SpellLocal', { sp = 'Cyan', undercurl = true, ctermbg = 'Cyan' }) + hi('SpellRare', { sp = 'Magenta', undercurl = true, ctermbg = 'Magenta' }) + hi('TabLine', { bg = 'DarkGrey', underline = true, ctermfg = 'White', ctermbg = 'DarkGrey', cterm = { underline = true } }) + hi('Title', { fg = 'Magenta', bold = true, ctermfg = 'LightMagenta' }) + hi('Visual', { bg = 'DarkGrey', ctermbg = 'DarkGrey' }) + hi('WarningMsg', { fg = 'Red', ctermfg = 'LightRed' }) + hi('Comment', { fg = '#80a0ff', ctermfg = 'Cyan' }) + hi('Constant', { fg = '#ffa0a0', ctermfg = 'Magenta' }) + hi('Special', { fg = 'Orange', ctermfg = 'LightRed' }) + hi('Identifier', { fg = '#40ffff', ctermfg = 'Cyan', cterm = { bold = true } }) + hi('Statement', { fg = '#ffff60', bold = true, ctermfg = 'Yellow' }) + hi('PreProc', { fg = '#ff80ff', ctermfg = 'LightBlue' }) + hi('Type', { fg = '#60ff60', bold = true, ctermfg = 'LightGreen' }) + hi('Underlined', { fg = '#80a0ff', underline = true, ctermfg = 'LightBlue', cterm = { underline = true } }) + hi('Ignore', { ctermfg = 'Black' }) +end +--stylua: ignore end diff --git a/runtime/colors/vim.vim b/runtime/colors/vim.vim deleted file mode 100644 index 0d02477ba7..0000000000 --- a/runtime/colors/vim.vim +++ /dev/null @@ -1,269 +0,0 @@ -" Name: vim -" Description: Vim's default color scheme -" Author: Bram Moolenaar <Bram@vim.org> -" Maintainer: The Vim Project <https://github.com/vim/vim> -" Website: https://github.com/vim/vim -" License: Same as Vim -" Last Updated: 2023 Aug 10 - -" This is Vim's default color scheme. It doesn't define the Normal -" highlighting, it uses whatever the colors used to be. - -hi clear -let g:colors_name = 'vim' - -" General -hi Conceal guifg=LightGrey guibg=DarkGrey guisp=NONE gui=NONE ctermfg=LightGrey ctermbg=DarkGrey cterm=NONE -hi Cursor guifg=bg guibg=fg guisp=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE -hi lCursor guifg=bg guibg=fg guisp=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE -hi DiffText guifg=NONE guibg=Red guisp=NONE gui=bold ctermfg=NONE ctermbg=Red cterm=bold -hi ErrorMsg guifg=White guibg=Red guisp=NONE gui=NONE ctermfg=White ctermbg=DarkRed cterm=NONE -hi IncSearch guifg=NONE guibg=NONE guisp=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse -hi ModeMsg guifg=NONE guibg=NONE guisp=NONE gui=bold ctermfg=NONE ctermbg=NONE cterm=bold -hi NonText guifg=Blue guibg=NONE guisp=NONE gui=bold ctermfg=Blue ctermbg=NONE cterm=NONE -hi Normal guifg=NONE guibg=NONE guisp=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE -hi PmenuSbar guifg=NONE guibg=Grey guisp=NONE gui=NONE ctermfg=NONE ctermbg=Grey cterm=NONE -hi StatusLine guifg=NONE guibg=NONE guisp=NONE gui=reverse,bold ctermfg=NONE ctermbg=NONE cterm=reverse,bold -hi StatusLineNC guifg=NONE guibg=NONE guisp=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse -hi TabLineFill guifg=NONE guibg=NONE guisp=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse -hi TabLineSel guifg=NONE guibg=NONE guisp=NONE gui=bold ctermfg=NONE ctermbg=NONE cterm=bold -hi TermCursor guifg=NONE guibg=NONE guisp=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse -hi WinBar guifg=NONE guibg=NONE guisp=NONE gui=bold ctermfg=NONE ctermbg=NONE cterm=bold -hi WildMenu guifg=Black guibg=Yellow guisp=NONE gui=NONE ctermfg=Black ctermbg=Yellow cterm=NONE -hi! link VertSplit Normal -hi! link WinSeparator VertSplit -hi! link WinBarNC WinBar -hi! link EndOfBuffer NonText -hi! link LineNrAbove LineNr -hi! link LineNrBelow LineNr -hi! link QuickFixLine Search -hi! link CursorLineSign SignColumn -hi! link CursorLineFold FoldColumn -hi! link CurSearch Search -hi! link PmenuKind Pmenu -hi! link PmenuKindSel PmenuSel -hi! link PmenuExtra Pmenu -hi! link PmenuExtraSel PmenuSel -hi! link Substitute Search -hi! link Whitespace NonText -hi! link MsgSeparator StatusLine -hi! link NormalFloat Pmenu -hi! link FloatBorder WinSeparator -hi! link FloatTitle Title -hi! link FloatFooter Title -hi FloatShadow guifg=NONE guibg=Black guisp=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE blend=80 -hi FloatShadowThrough guifg=NONE guibg=Black guisp=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=NONE blend=100 -hi RedrawDebugNormal guifg=NONE guibg=NONE guisp=NONE gui=reverse ctermfg=NONE ctermbg=NONE cterm=reverse -hi RedrawDebugClear guifg=NONE guibg=Yellow guisp=NONE gui=NONE ctermfg=NONE ctermbg=Yellow cterm=NONE -hi RedrawDebugComposed guifg=NONE guibg=Green guisp=NONE gui=NONE ctermfg=NONE ctermbg=Green cterm=NONE -hi RedrawDebugRecompose guifg=NONE guibg=Red guisp=NONE gui=NONE ctermfg=NONE ctermbg=Red cterm=NONE -hi Error guifg=White guibg=Red guisp=NONE gui=NONE ctermfg=White ctermbg=Red cterm=NONE term=reverse -hi Todo guifg=Blue guibg=Yellow guisp=NONE gui=NONE ctermfg=Black ctermbg=Yellow cterm=NONE term=standout -hi! link String Constant -hi! link Character Constant -hi! link Number Constant -hi! link Boolean Constant -hi! link Float Number -hi! link Function Identifier -hi! link Conditional Statement -hi! link Repeat Statement -hi! link Label Statement -hi! link Operator Statement -hi! link Keyword Statement -hi! link Exception Statement -hi! link Include PreProc -hi! link Define PreProc -hi! link Macro PreProc -hi! link PreCondit PreProc -hi! link StorageClass Type -hi! link Structure Type -hi! link Typedef Type -hi! link Tag Special -hi! link SpecialChar Special -hi! link Delimiter Special -hi! link SpecialComment Special -hi! link Debug Special -hi DiagnosticError guifg=Red guibg=NONE guisp=NONE gui=NONE ctermfg=1 ctermbg=NONE cterm=NONE -hi DiagnosticWarn guifg=Orange guibg=NONE guisp=NONE gui=NONE ctermfg=3 ctermbg=NONE cterm=NONE -hi DiagnosticInfo guifg=LightBlue guibg=NONE guisp=NONE gui=NONE ctermfg=4 ctermbg=NONE cterm=NONE -hi DiagnosticHint guifg=LightGrey guibg=NONE guisp=NONE gui=NONE ctermfg=7 ctermbg=NONE cterm=NONE -hi DiagnosticOk guifg=LightGreen guibg=NONE guisp=NONE gui=NONE ctermfg=10 ctermbg=NONE cterm=NONE -hi DiagnosticUnderlineError guifg=NONE guibg=NONE guisp=Red gui=underline ctermfg=NONE ctermbg=NONE cterm=underline -hi DiagnosticUnderlineWarn guifg=NONE guibg=NONE guisp=Orange gui=underline ctermfg=NONE ctermbg=NONE cterm=underline -hi DiagnosticUnderlineInfo guifg=NONE guibg=NONE guisp=LightBlue gui=underline ctermfg=NONE ctermbg=NONE cterm=underline -hi DiagnosticUnderlineHint guifg=NONE guibg=NONE guisp=LightGrey gui=underline ctermfg=NONE ctermbg=NONE cterm=underline -hi DiagnosticUnderlineOk guifg=NONE guibg=NONE guisp=LightGreen gui=underline ctermfg=NONE ctermbg=NONE cterm=underline -hi! link DiagnosticVirtualTextError DiagnosticError -hi! link DiagnosticVirtualTextWarn DiagnosticWarn -hi! link DiagnosticVirtualTextInfo DiagnosticInfo -hi! link DiagnosticVirtualTextHint DiagnosticHint -hi! link DiagnosticVirtualTextOk DiagnosticOk -hi! link DiagnosticFloatingError DiagnosticError -hi! link DiagnosticFloatingWarn DiagnosticWarn -hi! link DiagnosticFloatingInfo DiagnosticInfo -hi! link DiagnosticFloatingHint DiagnosticHint -hi! link DiagnosticFloatingOk DiagnosticOk -hi! link DiagnosticSignError DiagnosticError -hi! link DiagnosticSignWarn DiagnosticWarn -hi! link DiagnosticSignInfo DiagnosticInfo -hi! link DiagnosticSignHint DiagnosticHint -hi! link DiagnosticSignOk DiagnosticOk -hi DiagnosticDeprecated guifg=NONE guibg=NONE guisp=Red gui=strikethrough ctermfg=NONE ctermbg=NONE cterm=strikethrough -hi! link DiagnosticUnnecessary Comment -hi! link LspInlayHint NonText -hi! link SnippetTabstop Visual - -" Text -hi! link @text.literal Comment -hi! link @text.reference Identifier -hi! link @text.title Title -hi! link @text.uri Underlined -hi! link @text.underline Underlined -hi! link @text.todo Todo - -" Miscs -hi! link @comment Comment -hi! link @punctuation Delimiter - -" Constants -hi! link @constant Constant -hi! link @constant.builtin Special -hi! link @constant.macro Define -hi! link @define Define -hi! link @macro Macro -hi! link @string String -hi! link @string.escape SpecialChar -hi! link @string.special SpecialChar -hi! link @character Character -hi! link @character.special SpecialChar -hi! link @number Number -hi! link @boolean Boolean -hi! link @float Float - -" Functions -hi! link @function Function -hi! link @function.builtin Special -hi! link @function.macro Macro -hi! link @parameter Identifier -hi! link @method Function -hi! link @field Identifier -hi! link @property Identifier -hi! link @constructor Special - -" Keywords -hi! link @conditional Conditional -hi! link @repeat Repeat -hi! link @label Label -hi! link @operator Operator -hi! link @keyword Keyword -hi! link @exception Exception - -hi! link @variable Identifier -hi! link @type Type -hi! link @type.definition Typedef -hi! link @storageclass StorageClass -hi! link @namespace Identifier -hi! link @include Include -hi! link @preproc PreProc -hi! link @debug Debug -hi! link @tag Tag - -" LSP semantic tokens -hi! link @lsp.type.class Structure -hi! link @lsp.type.comment Comment -hi! link @lsp.type.decorator Function -hi! link @lsp.type.enum Structure -hi! link @lsp.type.enumMember Constant -hi! link @lsp.type.function Function -hi! link @lsp.type.interface Structure -hi! link @lsp.type.macro Macro -hi! link @lsp.type.method Function -hi! link @lsp.type.namespace Structure -hi! link @lsp.type.parameter Identifier -hi! link @lsp.type.property Identifier -hi! link @lsp.type.struct Structure -hi! link @lsp.type.type Type -hi! link @lsp.type.typeParameter TypeDef -hi! link @lsp.type.variable Identifier - -if &background ==# 'light' - " Default colors only used with a light background. - hi ColorColumn guifg=NONE guibg=LightRed guisp=NONE gui=NONE ctermfg=NONE ctermbg=LightRed cterm=NONE - hi CursorColumn guifg=NONE guibg=Grey90 guisp=NONE gui=NONE ctermfg=NONE ctermbg=LightGrey cterm=NONE - hi CursorLine guifg=NONE guibg=Grey90 guisp=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=underline - hi CursorLineNr guifg=Brown guibg=NONE guisp=NONE gui=bold ctermfg=Brown ctermbg=NONE cterm=underline - hi DiffAdd guifg=NONE guibg=LightBlue guisp=NONE gui=NONE ctermfg=NONE ctermbg=LightBlue cterm=NONE - hi DiffChange guifg=NONE guibg=LightMagenta guisp=NONE gui=NONE ctermfg=NONE ctermbg=LightMagenta cterm=NONE - hi DiffDelete guifg=Blue guibg=LightCyan guisp=NONE gui=bold ctermfg=Blue ctermbg=LightCyan cterm=NONE - hi Directory guifg=Blue guibg=NONE guisp=NONE gui=NONE ctermfg=DarkBlue ctermbg=NONE cterm=NONE - hi FoldColumn guifg=DarkBlue guibg=Grey guisp=NONE gui=NONE ctermfg=DarkBlue ctermbg=Grey cterm=NONE - hi Folded guifg=DarkBlue guibg=LightGrey guisp=NONE gui=NONE ctermfg=DarkBlue ctermbg=Grey cterm=NONE - hi LineNr guifg=Brown guibg=NONE guisp=NONE gui=NONE ctermfg=Brown ctermbg=NONE cterm=NONE - hi MatchParen guifg=NONE guibg=Cyan guisp=NONE gui=NONE ctermfg=NONE ctermbg=Cyan cterm=NONE - hi MoreMsg guifg=SeaGreen guibg=NONE guisp=NONE gui=bold ctermfg=DarkGreen ctermbg=NONE cterm=NONE - hi Pmenu guifg=NONE guibg=LightMagenta guisp=NONE gui=NONE ctermfg=Black ctermbg=LightMagenta cterm=NONE - hi PmenuSel guifg=NONE guibg=Grey guisp=NONE gui=NONE ctermfg=Black ctermbg=LightGrey cterm=NONE blend=NONE - hi PmenuThumb guifg=NONE guibg=Black guisp=NONE gui=NONE ctermfg=NONE ctermbg=Black cterm=NONE - hi Question guifg=SeaGreen guibg=NONE guisp=NONE gui=bold ctermfg=DarkGreen ctermbg=NONE cterm=NONE - hi Search guifg=NONE guibg=Yellow guisp=NONE gui=NONE ctermfg=NONE ctermbg=Yellow cterm=NONE - hi SignColumn guifg=DarkBlue guibg=Grey guisp=NONE gui=NONE ctermfg=DarkBlue ctermbg=Grey cterm=NONE - hi SpecialKey guifg=Blue guibg=NONE guisp=NONE gui=NONE ctermfg=DarkBlue ctermbg=NONE cterm=NONE - hi SpellBad guifg=NONE guibg=NONE guisp=Red gui=undercurl ctermfg=NONE ctermbg=LightRed cterm=NONE - hi SpellCap guifg=NONE guibg=NONE guisp=Blue gui=undercurl ctermfg=NONE ctermbg=LightBlue cterm=NONE - hi SpellLocal guifg=NONE guibg=NONE guisp=DarkCyan gui=undercurl ctermfg=NONE ctermbg=Cyan cterm=NONE - hi SpellRare guifg=NONE guibg=NONE guisp=Magenta gui=undercurl ctermfg=NONE ctermbg=LightMagenta cterm=NONE - hi TabLine guifg=NONE guibg=LightGrey guisp=NONE gui=underline ctermfg=black ctermbg=LightGrey cterm=underline - hi Title guifg=Magenta guibg=NONE guisp=NONE gui=bold ctermfg=DarkMagenta ctermbg=NONE cterm=NONE - hi Visual guifg=NONE guibg=LightGrey guisp=NONE gui=NONE ctermfg=NONE ctermbg=LightGrey cterm=NONE - hi WarningMsg guifg=Red guibg=NONE guisp=NONE gui=NONE ctermfg=DarkRed ctermbg=NONE cterm=NONE - hi Comment guifg=Blue guibg=NONE guisp=NONE gui=NONE ctermfg=DarkBlue ctermbg=NONE cterm=NONE term=bold - hi Constant guifg=Magenta guibg=NONE guisp=NONE gui=NONE ctermfg=DarkRed ctermbg=NONE cterm=NONE term=underline - hi Special guifg=#6a5acd guibg=NONE guisp=NONE gui=NONE ctermfg=DarkMagenta ctermbg=NONE cterm=NONE term=bold - hi Identifier guifg=DarkCyan guibg=NONE guisp=NONE gui=NONE ctermfg=DarkCyan ctermbg=NONE cterm=NONE term=underline - hi Statement guifg=Brown guibg=NONE guisp=NONE gui=bold ctermfg=Brown ctermbg=NONE cterm=NONE term=bold - hi PreProc guifg=#6a0dad guibg=NONE guisp=NONE gui=NONE ctermfg=DarkMagenta ctermbg=NONE cterm=NONE term=underline - hi Type guifg=SeaGreen guibg=NONE guisp=NONE gui=bold ctermfg=DarkGreen ctermbg=NONE cterm=NONE term=underline - hi Underlined guifg=SlateBlue guibg=NONE guisp=NONE gui=underline ctermfg=DarkMagenta ctermbg=NONE cterm=underline term=underline - hi Ignore guifg=bg guibg=NONE guisp=NONE gui=NONE ctermfg=white ctermbg=NONE cterm=NONE term=NONE -else - " Default colors only used with a dark background. - hi ColorColumn guifg=NONE guibg=DarkRed guisp=NONE gui=NONE ctermfg=NONE ctermbg=DarkRed cterm=NONE - hi CursorColumn guifg=NONE guibg=Grey40 guisp=NONE gui=NONE ctermfg=NONE ctermbg=DarkGrey cterm=NONE - hi CursorLine guifg=NONE guibg=Grey40 guisp=NONE gui=NONE ctermfg=NONE ctermbg=NONE cterm=underline - hi CursorLineNr guifg=Yellow guibg=NONE guisp=NONE gui=bold ctermfg=Yellow ctermbg=NONE cterm=underline - hi DiffAdd guifg=NONE guibg=DarkBlue guisp=NONE gui=NONE ctermfg=NONE ctermbg=DarkBlue cterm=NONE - hi DiffChange guifg=NONE guibg=DarkMagenta guisp=NONE gui=NONE ctermfg=NONE ctermbg=DarkMagenta cterm=NONE - hi DiffDelete guifg=Blue guibg=DarkCyan guisp=NONE gui=bold ctermfg=Blue ctermbg=DarkCyan cterm=NONE - hi Directory guifg=Cyan guibg=NONE guisp=NONE gui=NONE ctermfg=LightCyan ctermbg=NONE cterm=NONE - hi FoldColumn guifg=Cyan guibg=Grey guisp=NONE gui=NONE ctermfg=Cyan ctermbg=DarkGrey cterm=NONE - hi Folded guifg=Cyan guibg=DarkGrey guisp=NONE gui=NONE ctermfg=Cyan ctermbg=DarkGrey cterm=NONE - hi LineNr guifg=Yellow guibg=NONE guisp=NONE gui=NONE ctermfg=Yellow ctermbg=NONE cterm=NONE - hi MatchParen guifg=NONE guibg=DarkCyan guisp=NONE gui=NONE ctermfg=NONE ctermbg=DarkCyan cterm=NONE - hi MoreMsg guifg=SeaGreen guibg=NONE guisp=NONE gui=bold ctermfg=LightGreen ctermbg=NONE cterm=NONE - hi Pmenu guifg=NONE guibg=Magenta guisp=NONE gui=NONE ctermfg=Black ctermbg=Magenta cterm=NONE - hi PmenuSel guifg=NONE guibg=DarkGrey guisp=NONE gui=NONE ctermfg=DarkGrey ctermbg=Black cterm=NONE blend=NONE - hi PmenuThumb guifg=NONE guibg=White guisp=NONE gui=NONE ctermfg=NONE ctermbg=White cterm=NONE - hi Question guifg=Green guibg=NONE guisp=NONE gui=bold ctermfg=LightGreen ctermbg=NONE cterm=NONE - hi Search guifg=Black guibg=Yellow guisp=NONE gui=NONE ctermfg=Black ctermbg=Yellow cterm=NONE - hi SignColumn guifg=Cyan guibg=Grey guisp=NONE gui=NONE ctermfg=Cyan ctermbg=DarkGrey cterm=NONE - hi SpecialKey guifg=Cyan guibg=NONE guisp=NONE gui=NONE ctermfg=LightBlue ctermbg=NONE cterm=NONE - hi SpellBad guifg=NONE guibg=NONE guisp=Red gui=undercurl ctermfg=NONE ctermbg=Red cterm=NONE - hi SpellCap guifg=NONE guibg=NONE guisp=Blue gui=undercurl ctermfg=NONE ctermbg=Blue cterm=NONE - hi SpellLocal guifg=NONE guibg=NONE guisp=Cyan gui=undercurl ctermfg=NONE ctermbg=Cyan cterm=NONE - hi SpellRare guifg=NONE guibg=NONE guisp=Magenta gui=undercurl ctermfg=NONE ctermbg=Magenta cterm=NONE - hi TabLine guifg=NONE guibg=DarkGrey guisp=NONE gui=underline ctermfg=white ctermbg=DarkGrey cterm=underline - hi Title guifg=Magenta guibg=NONE guisp=NONE gui=bold ctermfg=LightMagenta ctermbg=NONE cterm=NONE - hi Visual guifg=NONE guibg=DarkGrey guisp=NONE gui=NONE ctermfg=NONE ctermbg=DarkGrey cterm=NONE - hi WarningMsg guifg=Red guibg=NONE guisp=NONE gui=NONE ctermfg=LightRed ctermbg=NONE cterm=NONE - hi Comment guifg=#80a0ff guibg=NONE guisp=NONE gui=NONE ctermfg=Cyan ctermbg=NONE cterm=NONE term=bold - hi Constant guifg=#ffa0a0 guibg=NONE guisp=NONE gui=NONE ctermfg=Magenta ctermbg=NONE cterm=NONE term=underline - hi Special guifg=Orange guibg=NONE guisp=NONE gui=NONE ctermfg=LightRed ctermbg=NONE cterm=NONE term=bold - hi Identifier guifg=#40ffff guibg=NONE guisp=NONE gui=NONE ctermfg=Cyan ctermbg=NONE cterm=bold term=underline - hi Statement guifg=#ffff60 guibg=NONE guisp=NONE gui=bold ctermfg=Yellow ctermbg=NONE cterm=NONE term=bold - hi PreProc guifg=#ff80ff guibg=NONE guisp=NONE gui=NONE ctermfg=LightBlue ctermbg=NONE cterm=NONE term=underline - hi Type guifg=#60ff60 guibg=NONE guisp=NONE gui=bold ctermfg=LightGreen ctermbg=NONE cterm=NONE term=underline - hi Underlined guifg=#80a0ff guibg=NONE guisp=NONE gui=underline ctermfg=LightBlue ctermbg=NONE cterm=underline term=underline - hi Ignore guifg=bg guibg=NONE guisp=NONE gui=NONE ctermfg=black ctermbg=NONE cterm=NONE term=NONE -endif - -" vim: sw=2 diff --git a/test/functional/helpers.lua b/test/functional/helpers.lua index 449c3ab9d8..2e1f196226 100644 --- a/test/functional/helpers.lua +++ b/test/functional/helpers.lua @@ -41,7 +41,7 @@ module.nvim_argv = { -- Make screentest work after changing to the new default color scheme -- Source 'vim' color scheme without side effects -- TODO: rewrite tests - '--cmd', 'lua f=io.open("runtime/colors/vim.vim", "r"); l=f:read("*a"); f:close(); vim.api.nvim_exec2(l, {})', + '--cmd', 'lua dofile("runtime/colors/vim.lua")', '--cmd', 'unlet g:colors_name', '--embed'} diff --git a/test/functional/ui/highlight_spec.lua b/test/functional/ui/highlight_spec.lua index f5df11115c..d9ed66eb01 100644 --- a/test/functional/ui/highlight_spec.lua +++ b/test/functional/ui/highlight_spec.lua @@ -2381,6 +2381,7 @@ describe('highlight namespaces', function() end) it('Normal in set_hl #25474', function() + command('highlight Ignore guifg=bg ctermfg=White') meths.set_hl(0, 'Normal', {bg='#333333'}) command('highlight Ignore') screen:expect{grid=[[ |