41 lines
840 B
Nix
41 lines
840 B
Nix
{ lib
|
|
, fetchFromGitHub
|
|
, ...
|
|
} @ inputs:
|
|
|
|
|
|
let
|
|
inherit (builtins) readFile;
|
|
|
|
extraGrammars = {
|
|
tree-sitter-d2 = {
|
|
language = "d2";
|
|
src = fetchFromGitHub {
|
|
owner = "pleshevskiy";
|
|
repo = "tree-sitter-d2";
|
|
rev = "a1a2091ebf4521d965e13c918a601b5acb4d1a72";
|
|
sha256 = "sha256-1ZcWhbtmdPDkBoFfswfhlwbFLb2Uwq7lbSTs5wqiFzY=";
|
|
};
|
|
version = "0.0.0";
|
|
};
|
|
};
|
|
|
|
tree-sitter = (inputs.tree-sitter.override { inherit extraGrammars; });
|
|
grammars = tree-sitter.withPlugins (g: tree-sitter.allGrammars);
|
|
|
|
nvim-treesitter = inputs.nvim-treesitter.overrideAttrs (oldAttrs: {
|
|
postPatch = ''
|
|
rm -r parser
|
|
ln -s ${grammars} parser
|
|
|
|
ln -s ${../.}/queries queries/d2
|
|
'';
|
|
});
|
|
in
|
|
{
|
|
luaConfig = readFile ./treesitter.lua;
|
|
|
|
plugins = [
|
|
nvim-treesitter
|
|
];
|
|
}
|