feat(treesitter): Change to new rainbow
Change to new rainbow plugin, also make config more robust to plugin issues.
This commit is contained in:
parent
73f9fd1526
commit
6677e197e9
|
|
@ -1,4 +1,6 @@
|
|||
if not pcall(require, 'nvim-treesitter') then
|
||||
local ok = pcall(require, 'nvim-treesitter')
|
||||
|
||||
if not ok then
|
||||
return
|
||||
end
|
||||
|
||||
|
|
@ -18,12 +20,6 @@ local config = {
|
|||
enable = true,
|
||||
},
|
||||
|
||||
rainbow = {
|
||||
enable = true,
|
||||
extended_mode = true,
|
||||
max_file_lines = nil
|
||||
},
|
||||
|
||||
incremental_selection = {
|
||||
enable = true,
|
||||
keymaps = {
|
||||
|
|
@ -35,3 +31,84 @@ local config = {
|
|||
}
|
||||
}
|
||||
|
||||
---@diagnostic disable-next-line: redefined-local -- Readability/conciseness over correctness.
|
||||
local ok, ts_rainbow = pcall(require, 'ts-rainbow')
|
||||
|
||||
if ok then
|
||||
local rainbow = {
|
||||
enable = true,
|
||||
query = {
|
||||
'rainbow-parens',
|
||||
html = 'rainbow-tags',
|
||||
latex = 'rainbow-blocks'
|
||||
},
|
||||
strategy = ts_rainbow.strategy.global
|
||||
}
|
||||
|
||||
config.rainbow = rainbow
|
||||
end
|
||||
|
||||
if pcall(require,'nvim-treesitter-textobjects') then
|
||||
local textobjects = {
|
||||
select = {
|
||||
enable = true,
|
||||
lookahead = true,
|
||||
|
||||
keymaps = {
|
||||
["af"] = { query = "@function.outer", desc = "Select outer part of function"},
|
||||
["if"] = { query = "@function.inner", desc = "Select inner part of function"},
|
||||
["ac"] = { query = "@class.outer" , desc = "Select outer part of class"},
|
||||
["ic"] = { query = "@class.inner" , desc = "Select inner part of class"}
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
move = {
|
||||
enable = true,
|
||||
set_jumps = true,
|
||||
|
||||
goto_next_start = {
|
||||
["]m"] = { query = "@function.outer", desc = "Next Function start"},
|
||||
["]]"] = { query = "@class.outer", desc = "Next class start"},
|
||||
["]o"] = { query = "@loop.*", desc = "Next loop component"},
|
||||
["]z"] = { query = "@fold", query_group = "folds" , desc = "Next Fold"}
|
||||
},
|
||||
goto_next_end = {
|
||||
["]M"] = { query = "@function.outer", desc = "Next Function end"},
|
||||
["]["] = { query = "@class.outer", desc = "Next class end"},
|
||||
},
|
||||
goto_previous_start = {
|
||||
["[m"] = { query = "@function.outer", desc = "Previous Function start"},
|
||||
["[]"] = { query = "@class.outer", desc = "Previous class start"},
|
||||
["[o"] = { query = "@loop.*", desc = "Previous loop component"},
|
||||
["[z"] = { query = "@fold", query_group = "folds" , desc = "Previous Fold"}
|
||||
},
|
||||
goto_previous_end = {
|
||||
["[M"] = { query = "@function.outer", desc = "Previous Function end"},
|
||||
["[["] = { query = "@class.outer", desc = "Previous class end"},
|
||||
},
|
||||
|
||||
goto_next = {
|
||||
["]d"] = { query = "@conditional.*", desc = "Next Conditional"}
|
||||
},
|
||||
goto_previous = {
|
||||
["[d"] = { query = "@conditional.*", desc = "previous Conditional"}
|
||||
}
|
||||
},
|
||||
|
||||
lsp_interop = {
|
||||
enable = true,
|
||||
border = 'none',
|
||||
floating_preview_opts = {},
|
||||
|
||||
peek_definition_code = {
|
||||
["<leader>df"] = { query = "@function.outer", desc = "Peek function definition"},
|
||||
["<leader>dF"] = { query = "@class.outer", desc = "Peek class definition"}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
config.textobjects = textobjects
|
||||
end
|
||||
|
||||
require('nvim-treesitter.configs').setup(config)
|
||||
|
|
|
|||
|
|
@ -101,7 +101,7 @@ return require('packer').startup(function(use)
|
|||
use {'nvim-treesitter/nvim-treesitter',
|
||||
run = ':TSUpdate'
|
||||
}
|
||||
use {'p00f/nvim-ts-rainbow',
|
||||
use {'HiPhish/nvim-ts-rainbow2',
|
||||
requires = 'nvim-treesitter/nvim-treesitter'}
|
||||
use {'nvim-treesitter/nvim-treesitter-textobjects',
|
||||
requires = 'nvim-treesitter/nvim-treesitter'}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user