48 lines
1.1 KiB
Lua
48 lines
1.1 KiB
Lua
|
-- TODO install parsers declaratively instead of :TSInstall & :TSUpdate
|
||
|
|
||
|
require'nvim-treesitter.configs'.setup {
|
||
|
ensure_installed = 'all',
|
||
|
highlight = {
|
||
|
enable = true,
|
||
|
},
|
||
|
indent = {
|
||
|
enable = true,
|
||
|
},
|
||
|
refactor = {
|
||
|
highlight_definitions = { enable = true },
|
||
|
highlight_current_scope = { enable = true },
|
||
|
navigation = {
|
||
|
enable = true,
|
||
|
keymaps = {
|
||
|
goto_definition_lsp_fallback = "gnd",
|
||
|
list_definitions = "gnD",
|
||
|
list_definitions_toc = "gO",
|
||
|
goto_next_usage = "<a-*>",
|
||
|
goto_previous_usage = "<a-#>",
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
incremental_selection = {
|
||
|
enable = true,
|
||
|
keymaps = {
|
||
|
init_selection = "<CR>",
|
||
|
scope_incremental = "<CR>",
|
||
|
node_incremental = "<TAB>",
|
||
|
node_decremental = "<S-TAB>",
|
||
|
},
|
||
|
},
|
||
|
textobjects = {
|
||
|
select = {
|
||
|
enable = true,
|
||
|
keymaps = {
|
||
|
["af"] = "@function.outer",
|
||
|
["if"] = "@function.inner",
|
||
|
["ac"] = "@class.outer",
|
||
|
["ic"] = "@class.inner",
|
||
|
["aa"] = "@parameter.outer",
|
||
|
["ia"] = "@parameter.inner",
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
}
|