about summary refs log tree commit diff stats
path: root/home-manager/soispha/config/neovim/nixvim/plugins/treesitter/default.nix
blob: 7a8a3a26a4823d65387a667d5a0184dac2e8d367 (plain) (blame)
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
{...}: {
  programs.nixvim.plugins.treesitter = {
    enable = true;
    #  A list of parser names; or "all"
    #  ensure_installed = [ "c" "lua" "rust" ];
    ensure_installed = "all";

    # TODO make this work
    highlight = {
      #  `false` will disable the whole extension
      enable = true;
      disable = ["latex"];

      #  Setting this to true will run `:h syntax` and tree-sitter at the same time.
      #  Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
      #  Using this option may slow down your editor; and you may see some duplicate highlights.
      #  Instead of true it can also be a list of languages
      additional_vim_regex_highlighting = [""];
    };

    indent = {
      enable = true;
    };
    incremental_selection = {
      enable = true;
      keymaps = {
        # TODO include these
        init_selection = "gnn"; #  set to `false` to disable one of the mappings
        node_incremental = "grn";
        scope_incremental = "grc";
        node_decremental = "grm";
      };
    };
  };
}