summary refs log tree commit diff
path: root/doc
diff options
context:
space:
mode:
authorGuillaume Girol <symphorien+git@xlumurb.eu>2021-07-14 12:00:00 +0000
committerGuillaume Girol <symphorien+git@xlumurb.eu>2021-07-18 14:40:49 +0200
commitf620722174e7b55ed5aa4ba6bcc000dba5e78d9e (patch)
treef902de8182bb3db5280c617d008f97a2a781da15 /doc
parent45fc7d4a35c5343e58541a7847f6415654ccbb37 (diff)
downloadnixpkgs-f620722174e7b55ed5aa4ba6bcc000dba5e78d9e.tar
nixpkgs-f620722174e7b55ed5aa4ba6bcc000dba5e78d9e.tar.gz
nixpkgs-f620722174e7b55ed5aa4ba6bcc000dba5e78d9e.tar.bz2
nixpkgs-f620722174e7b55ed5aa4ba6bcc000dba5e78d9e.tar.lz
nixpkgs-f620722174e7b55ed5aa4ba6bcc000dba5e78d9e.tar.xz
nixpkgs-f620722174e7b55ed5aa4ba6bcc000dba5e78d9e.tar.zst
nixpkgs-f620722174e7b55ed5aa4ba6bcc000dba5e78d9e.zip
vimPlugins.nvim-treesitter: document plugins
Diffstat (limited to 'doc')
-rw-r--r--doc/languages-frameworks/vim.section.md29
1 files changed, 28 insertions, 1 deletions
diff --git a/doc/languages-frameworks/vim.section.md b/doc/languages-frameworks/vim.section.md
index e170591605c..26a01a89aa5 100644
--- a/doc/languages-frameworks/vim.section.md
+++ b/doc/languages-frameworks/vim.section.md
@@ -120,7 +120,7 @@ After that you can install your special grafted `myVim` or `myNeovim` packages.
 
 If one of your favourite plugins isn't packaged, you can package it yourself:
 
-```
+```nix
 { config, pkgs, ... }:
 
 let
@@ -154,6 +154,33 @@ in
 }
 ```
 
+### Specificities for some plugins
+#### Tree sitter
+
+By default `nvim-treesitter` encourages you to download, compile and install
+the required tree-sitter grammars at run time with `:TSInstall`. This works
+poorly on NixOS.  Instead, to install the `nvim-treesitter` plugins with a set
+of precompiled grammars, you can use `nvim-treesitter.withPlugins` function:
+
+```nix
+(pkgs.neovim.override {
+  configure = {
+    packages.myPlugins = with pkgs.vimPlugins; {
+      start = [
+        (nvim-treesitter.withPlugins (
+          plugins: with plugins; [
+            tree-sitter-nix
+            tree-sitter-python
+          ]
+        ))
+      ];
+    };
+  };
+})
+```
+
+To enable all grammars packaged in nixpkgs, use `(pkgs.vimPlugins.nvim-treesitter.withPlugins (plugins: pkgs.tree-sitter.allGrammars))`.
+
 ## Managing plugins with vim-plug {#managing-plugins-with-vim-plug}
 
 To use [vim-plug](https://github.com/junegunn/vim-plug) to manage your Vim