neovim

Personal neovim configuration files
git clone git://gtms.dev:neovim
Log | Files | Refs

commit 827322b0572d7983089712c8773c76ef9a0b0b12
parent ef9aa7c102de899bb0397ca3ce99f445154f4247
Author: Tomas Nemec <nemi@skaut.cz>
Date:   Wed,  8 Mar 2023 21:14:04 +0100

update

Diffstat:
Mafter/plugin/treesitter.lua | 11+++++++----
Mafter/queries/dart/injections.scm | 24++++++++++++++----------
Mafter/queries/html/injections.scm | 4+++-
Mcolors/base16.lua | 41++++++++++++++++++++++++++++++++++++++---
Mftplugin/dart.lua | 2++
5 files changed, 64 insertions(+), 18 deletions(-)

diff --git a/after/plugin/treesitter.lua b/after/plugin/treesitter.lua @@ -31,7 +31,7 @@ parser_configs.norg_table = { require'nvim-treesitter.configs'.setup { ensure_intalled = 'all', ignore_install = { 'lua', 'vim', 'c' }, - highlight = { enable = true, disable = { 'lua', 'vim', 'c' } }, + highlight = { enable = true, disable = { 'lua', 'vim', 'c', 'dart' } }, indent = { enable = true }, @@ -54,11 +54,13 @@ require'nvim-treesitter.configs'.setup { }, swap = { enable = true, - swap_next = { -- + swap_next = { + -- ['>p'] = '@parameter.inner', ['>m'] = '@function.outer', }, - swap_previous = { -- + swap_previous = { + -- ['<p'] = '@parameter.inner', ['<m'] = '@function.outer', }, @@ -81,7 +83,8 @@ require'nvim-treesitter.configs'.setup { lsp_interop = { enable = true, border = 'single', - peek_definition_code = { -- + peek_definition_code = { + -- ['<leader>sf'] = '@function.outer', ['<leader>sc'] = '@class.outer', }, diff --git a/after/queries/dart/injections.scm b/after/queries/dart/injections.scm @@ -5,12 +5,13 @@ (arguments (named_argument (label (identifier) @_identifier) - (list_literal (string_literal) @css) + (list_literal (string_literal) @injection.content) ) ) (#eq? @_identifier "styles") - (#lua-match? @css "^'''.*'''$") - (#offset! @css 0 3 0 -3) + (#lua-match? @injection.content "^'''.*'''$") + (#offset! @injection.content 0 3 0 -3) + (#set! injection.language "css") ) ; Single quotes @@ -18,11 +19,12 @@ (arguments (named_argument (label (identifier) @_identifier) - (list_literal (string_literal) @css) + (list_literal (string_literal) @injection.content) ) ) (#eq? @_identifier "styles") - (#offset! @css 0 1 0 -1) + (#offset! @injection.content 0 1 0 -1) + (#set! injection.language "css") ) ; triple quotes @@ -30,12 +32,13 @@ (arguments (named_argument (label (identifier) @_identifier) - (string_literal) @html + (string_literal) @injection.content ) ) (#eq? @_identifier "template") - (#lua-match? @html "^'''.*'''$") - (#offset! @html 0 3 0 -3) + (#lua-match? @injection.content "^'''.*'''$") + (#offset! @injection.content 0 3 0 -3) + (#set! injection.language "html") ) ; Single quotes @@ -43,11 +46,12 @@ (arguments (named_argument (label (identifier) @_identifier) - (string_literal) @html + (string_literal) @injection.content ) ) (#eq? @_identifier "template") - (#offset! @html 0 1 0 -1) + (#offset! @injection.content 0 1 0 -1) + (#set! injection.language "html") ) diff --git a/after/queries/html/injections.scm b/after/queries/html/injections.scm @@ -14,5 +14,7 @@ ((attribute_name) @_banana (#lua-match? @_banana "^%[%(.+%)]$")) ] (quoted_attribute_value - (attribute_value) @dart) + (attribute_value) @injection.content + (#set! injection.language "dart") + ) ) diff --git a/colors/base16.lua b/colors/base16.lua @@ -39,8 +39,10 @@ local cterm06 = 13 local cterm09 = 9 local cterm0F = 14 -vim.cmd.highlight('clear') -vim.cmd.syntax('reset') +vim.cmd [[ + highlight clear + syntax reset +]] vim.g.colors_name = 'base16-gruvbox-dark-hard' -- Vim editor colors fg bg ctermfg ctermbg attr guisp @@ -99,7 +101,7 @@ 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, '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 }) @@ -279,6 +281,7 @@ 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 }) @@ -288,6 +291,7 @@ 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 }) @@ -321,3 +325,34 @@ 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 }) + +-- Hide all semantic highlights +-- for _, group in ipairs(vim.fn.getcompletion('@lsp', 'highlight')) do +-- vim.api.nvim_set_hl(0, group, {}) +-- end + +-- 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 }) diff --git a/ftplugin/dart.lua b/ftplugin/dart.lua @@ -22,6 +22,8 @@ if string.find(full_path, '%.pub%-cache') then end vim.lsp.start(require'tms.lsp'.make_opts('dartls')) +vim.treesitter.start() +vim.bo.syntax = 'off' vim.keymap.set('n', '<leader>ar', vim.cmd.make) vim.keymap.set('n', '<leader>at', vim.cmd.Trun)