about summary refs log tree commit diff stats
path: root/hm/soispha/conf/nvim/plgs/treesitter/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hm/soispha/conf/nvim/plgs/treesitter/default.nix')
-rw-r--r--hm/soispha/conf/nvim/plgs/treesitter/default.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/hm/soispha/conf/nvim/plgs/treesitter/default.nix b/hm/soispha/conf/nvim/plgs/treesitter/default.nix
new file mode 100644
index 00000000..9d30d6b9
--- /dev/null
+++ b/hm/soispha/conf/nvim/plgs/treesitter/default.nix
@@ -0,0 +1,40 @@
+{...}: {
+  programs.nixvim.plugins.treesitter = {
+    enable = true;
+
+    ensureInstalled = "all";
+    indent = true;
+
+    # inject nixvim specific highlighting (eg in extraConfigLua).
+    nixvimInjections = true;
+
+    # TODO: It would we wonderfull, if we could use treesitter in latex
+    disabledLanguages = ["latex"];
+
+    /*
+    # TODO: this is not supported by the nixVim modlue, nixNeovim supports this though ..
+    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
+      additionalVimRegexHighlighting = [""];
+    };
+    */
+
+    incrementalSelection = {
+      enable = true;
+      keymaps = {
+        # TODO: include these
+        initSelection = "gnn"; #  set to `false` to disable one of the mappings
+        nodeIncremental = "grn";
+        scopeIncremental = "grc";
+        nodeDecremental = "grm";
+      };
+    };
+  };
+}