plugin stuff
This commit is contained in:
parent
0563865360
commit
2c0362678f
5 changed files with 152 additions and 96 deletions
|
@ -5,7 +5,7 @@ end
|
|||
return {
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
version = false, -- last release is way too old and doesn't work on Windows
|
||||
version = false,
|
||||
build = ":TSUpdate",
|
||||
event = { "BufReadPost", "BufNewFile" },
|
||||
dependencies = {
|
||||
|
@ -32,10 +32,11 @@ return {
|
|||
},
|
||||
keys = {
|
||||
{ "<c-space>", desc = "Increment selection" },
|
||||
{ "<bs>", desc = "Decrement selection", mode = "x" },
|
||||
{ "<bs>", desc = "Decrement selection", mode = "x" },
|
||||
},
|
||||
---@type TSConfig
|
||||
opts = {
|
||||
auto_install = true,
|
||||
ignore_install = {},
|
||||
highlight = { enable = true, disable = ts_disable },
|
||||
indent = { enable = true },
|
||||
ensure_installed = {
|
||||
|
@ -68,6 +69,36 @@ return {
|
|||
node_decremental = "<bs>",
|
||||
},
|
||||
},
|
||||
textobjects = {
|
||||
select = {
|
||||
enable = true,
|
||||
lookahead = true,
|
||||
keymaps = {
|
||||
-- stylua: ignore start
|
||||
["af"] = { query = "@function.outer", desc = "outer function" },
|
||||
["if"] = { query = "@function.inner", desc = "inner function" },
|
||||
["ac"] = { query = "@class.outer", desc = "outer class" },
|
||||
["ic"] = { query = "@class.inner", desc = "inner class" },
|
||||
["ap"] = { query = "@parameter.outer", desc = "outer parameter" },
|
||||
["ip"] = { query = "@parameter.inner", desc = "inner parameter" },
|
||||
-- stylua: ignore end
|
||||
},
|
||||
selection_modes = {
|
||||
["@parameter.outer"] = "v", -- charwise
|
||||
["@function.outer"] = "V", -- linewise
|
||||
["@class.outer"] = "V",
|
||||
},
|
||||
},
|
||||
swap = {
|
||||
enable = true,
|
||||
swap_next = {
|
||||
["<leader>a"] = "@parameter.inner",
|
||||
},
|
||||
swap_previous = {
|
||||
["<leader>A"] = "@parameter.inner",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
---@param opts TSConfig
|
||||
config = function(_, opts)
|
||||
|
@ -86,28 +117,29 @@ return {
|
|||
end,
|
||||
},
|
||||
{
|
||||
'nvim-treesitter/playground',
|
||||
"nvim-treesitter/playground",
|
||||
dependencies = { "nvim-treesitter/nvim-treesitter" },
|
||||
cmd = {
|
||||
'TSPlaygroundToggle',
|
||||
'TSHighlightCapturesUnderCursor',
|
||||
'TSNodeUnderCursor',
|
||||
}
|
||||
"TSPlaygroundToggle",
|
||||
"TSHighlightCapturesUnderCursor",
|
||||
"TSNodeUnderCursor",
|
||||
},
|
||||
},
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter-context",
|
||||
event = "VeryLazy",
|
||||
dependencies = { "nvim-treesitter/nvim-treesitter" },
|
||||
cmd = { 'TSContextEnable', 'TSContextDisable', 'TSContextToggle' },
|
||||
cmd = { "TSContextEnable", "TSContextDisable", "TSContextToggle" },
|
||||
keys = {
|
||||
{ "[c", function() require("treesitter-context").go_to_context() end, desc = "Go to context start" },
|
||||
-- stylua: ignore start
|
||||
{ "[c", function() require("treesitter-context").go_to_context() end, desc = "Go to context start", },
|
||||
-- stylua: ignore end
|
||||
},
|
||||
opts = { enable = true },
|
||||
config = function(_, opts)
|
||||
require 'treesitter-context'.setup(opts)
|
||||
vim.api.nvim_set_hl(0, 'TreesitterContext', { bg = "#555555" })
|
||||
vim.api.nvim_set_hl(0, 'TreesitterContextLineNumber', { link = "Special" })
|
||||
require("treesitter-context").setup(opts)
|
||||
vim.api.nvim_set_hl(0, "TreesitterContext", { bg = "#555555" })
|
||||
vim.api.nvim_set_hl(0, "TreesitterContextLineNumber", { link = "Special" })
|
||||
end,
|
||||
}
|
||||
|
||||
},
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue