summaryrefslogtreecommitdiff
path: root/lua/treesitter.lua
blob: dc281e180548b7b71f0ca32f330bcc1c950a7dd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
require("nvim-treesitter.configs").setup({
    ensured_installed = { "c", "cpp", "lua", "vim", "vimdoc" },
    auto_install = false,
    highlight = {
        enable = true,
    },
    incremental_selection = {
        enable = true,
        keymaps = {
            init_selection = "<c-s>",
            node_incremental = "<c-s>",
            node_decremental = "<m-s>",
        },
    },
    textobjects = {
        select = {
            enable = true,
            loookahead = true,
            keymaps = {
                ["aa"] = "@parameter.outer",
                ["ia"] = "@parameter.inner",
                ["af"] = "@function.outer",
                ["if"] = "@function.inner",
            },
        },
        move = {
            enable = true,
            goto_next_start = {
                [")a"] = "@parameter.inner",
            },
            goto_previous_start = {
                ["(a"] = "@parameter.inner",
            },
        },
        swap = {
            enable = true,
            swap_next = {
                ["<leader>a"] = "@parameter.inner",
            },
            swap_previous = {
                ["<leader>A"] = "@parameter.inner",
            },
        },
    },
    indent = { enable = false, disable = { "python" } },
    additional_vim_regex_highlighting = false,
})