| { pkgs |
| , lib |
| , nixpkgs-minion |
| , system |
| , ... |
| }: |
| let |
| disabledGrammars = [ |
| /* "sql" */ |
| ]; |
| in |
| { |
| home.file.".config/nvim/after/queries/markdown/highlights.scm".source = ./highlights.scm; |
| programs.neovim = { |
| plugins = with pkgs.vimPlugins; [ |
| (nvim-treesitter.withPlugins (plugins: |
| (lib.pipe plugins [ |
| (lib.filterAttrs (name: value: builtins.substring 0 12 name == "tree-sitter-")) |
| (lib.filterAttrs (name: value: !builtins.elem |
| (builtins.substring 12 (builtins.stringLength name) name) |
| disabledGrammars |
| )) |
| # lib.traceVal |
| builtins.attrValues |
| ]) |
| ++ (with pkgs.vimPlugins; [ |
| nvim-ts-rainbow |
| nvim-ts-context-commentstring |
| nixpkgs-minion.legacyPackages.${system}.tree-sitter-grammars.tree-sitter-astro |
| ]))) |
| nvim-treesitter-context |
| playground |
| ]; |
| extraConfig = '' |
| source ${./setup.lua} |
| '' + builtins.readFile ./highlights.vim; |
| }; |
| } |