Compare commits
2 Commits
9f68bcffb5
...
2351d799a7
| Author | SHA1 | Date | |
|---|---|---|---|
| 2351d799a7 | |||
| 8be92eda71 |
@@ -1,22 +1,40 @@
|
||||
{pkgs, ...}: {
|
||||
programs.nixvim.plugins.treesitter = {
|
||||
programs.nixvim = {
|
||||
plugins.treesitter = {
|
||||
enable = true;
|
||||
nixGrammars = true;
|
||||
grammarPackages = pkgs.vimPlugins.nvim-treesitter.allGrammars;
|
||||
settings = {
|
||||
highlight.enable = true;
|
||||
indent.enable = true;
|
||||
};
|
||||
grammarPackages = with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [
|
||||
bash
|
||||
elixir
|
||||
fish
|
||||
heex
|
||||
json
|
||||
markdown
|
||||
nix
|
||||
toml
|
||||
tsx
|
||||
typescript
|
||||
yaml
|
||||
];
|
||||
};
|
||||
|
||||
# Register missing treesitter predicates for compatibility with newer grammars
|
||||
extraConfigLuaPre = ''
|
||||
do
|
||||
local query = require("vim.treesitter.query")
|
||||
local predicates = query.list_predicates()
|
||||
if not vim.tbl_contains(predicates, "is-not?") then
|
||||
query.add_predicate("is-not?", function(match, pattern, source, predicate)
|
||||
local dominated_by = predicate[2]
|
||||
local dominated = false
|
||||
for _, node in pairs(match) do
|
||||
if type(node) == "userdata" then
|
||||
local current = node:parent()
|
||||
while current do
|
||||
if current:type() == dominated_by then
|
||||
dominated = true
|
||||
break
|
||||
end
|
||||
current = current:parent()
|
||||
end
|
||||
end
|
||||
end
|
||||
return not dominated
|
||||
end, { force = true, all = true })
|
||||
end
|
||||
end
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
@@ -3,6 +3,9 @@
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
home.sessionVariables = {
|
||||
OPENCODE_EXPERIMENTAL_PLAN_MODE = 1;
|
||||
};
|
||||
programs.opencode = {
|
||||
enable = true;
|
||||
package = inputs.llm-agents.packages.${pkgs.stdenv.hostPlatform.system}.opencode;
|
||||
|
||||
Reference in New Issue
Block a user