| .github/workflows | ||
| generate-parsers | ||
| .envrc | ||
| .gitignore | ||
| flake.lock | ||
| flake.nix | ||
| generated.nix | ||
| LICENSE | ||
| overlay.nix | ||
| README.md | ||
nvim-treesitter-main
A Nixpkgs overlay for the nvim-treesitter plugin main branch rewrite
Overview
The nvim-treesitter main branch is a full, incompatible rewrite of the project, and the existing master branch is all but abandoned.
The nixpkgs nvim-treesitter plugin is not well equipped to handle the migration today, nor would it be a good idea to switch everyone over given the still-nascent ecosystem around the rewrite. Regardless, you're here because you're both a Nix and Neovim user, and you like to live on the bleeding edge.
nvim-treesitter-main is a flake that builds the new main branch nvim-treesitter, along with all of the parser versions from the parsers.lua file, as recommended by the project.
Usage
In your flake.nix:
inputs = {
nvim-treesitter-main.url = "github:iofq/nvim-treesitter-main";
};
# ... and import the overlay
pkgs = import nixpkgs {
inherit system;
overlays = [
inputs.nvim-treesitter-main.overlays.default
];
};
Updating
To update the list of parsers in generated.nix:
nix flake update
nix develop --command "generate-parsers"
This runs a lua script similar to the old update.py, but uses the nvim-treesitter as a source for version info instead of the NURR json file.