dotfiles/nvim/.config/nvim/lua/treesitter.lua

31 lines
1.2 KiB
Lua

require'nvim-treesitter.configs'.setup {
ensure_installed = { "bash", "c", "clojure", "cpp", "fennel", "fish", "java", "javascript", "jsdoc", "json", "lua", "nix", "python", "rust", "toml" },
highlight = { enable = true, },
textobjects = {
select = {
enable = true,
keymaps = {
["<Leader><Leader>ab"] = "@block.outer" ,
["<Leader><Leader>ib"] = "@block.inner" ,
["<Leader><Leader>aC"] = "@call.outer" ,
["<Leader><Leader>iC"] = "@call.inner" ,
["<Leader><Leader>ao"] = "@class.outer" ,
["<Leader><Leader>io"] = "@class.inner" ,
["<Leader><Leader>at"] = "@comment.outer" ,
["<Leader><Leader>ac"] = "@conditional.outer",
["<Leader><Leader>ic"] = "@conditional.inner",
["<Leader><Leader>af"] = "@function.outer" ,
["<Leader><Leader>if"] = "@function.inner" ,
["<Leader><Leader>al"] = "@loop.outer" ,
["<Leader><Leader>il"] = "@loop.inner" ,
["<Leader><Leader>ap"] = "@parameter.outer" ,
["<Leader><Leader>ip"] = "@parameter.inner" ,
["<Leader><Leader>is"] = "@scopename.inner" ,
["<Leader><Leader>as"] = "@statement.outer" ,
},
},
},
}
require'nvim-treesitter.install'.compilers = { "gcc" }