feat(treesitter): use new version of treesitter
This commit is contained in:
73
flake.lock
generated
73
flake.lock
generated
@@ -48,11 +48,82 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1767379071,
|
||||
"narHash": "sha256-EgE0pxsrW9jp9YFMkHL9JMXxcqi/OoumPJYwf+Okucw=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fb7944c166a3b630f177938e478f0378e64ce108",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nvim-treesitter": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767460514,
|
||||
"narHash": "sha256-LX0rKTZ56Rp0uQfIXZ2JrcWxuCA/t8NJjK05aKiT0Yw=",
|
||||
"owner": "nvim-treesitter",
|
||||
"repo": "nvim-treesitter",
|
||||
"rev": "300b906a9514d5e0ce02911d371445382fe35a31",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nvim-treesitter",
|
||||
"ref": "main",
|
||||
"repo": "nvim-treesitter",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nvim-treesitter-main": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"nvim-treesitter": "nvim-treesitter",
|
||||
"nvim-treesitter-textobjects": "nvim-treesitter-textobjects"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1767660784,
|
||||
"narHash": "sha256-ej7y4nhiJNFE/HcZSPTEIrU6/WQmkMJo+bVQfgT3abE=",
|
||||
"owner": "iofq",
|
||||
"repo": "nvim-treesitter-main",
|
||||
"rev": "d82b04e1a05f88ed88c6221672ca0636dc8d6ef7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "iofq",
|
||||
"repo": "nvim-treesitter-main",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nvim-treesitter-textobjects": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767434017,
|
||||
"narHash": "sha256-5VeIAW09my+4fqXbzVG7RnLXrjpXAk/g2vd7RbhNws8=",
|
||||
"owner": "nvim-treesitter",
|
||||
"repo": "nvim-treesitter-textobjects",
|
||||
"rev": "28a3494c075ef0f353314f627546537e43c09592",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nvim-treesitter",
|
||||
"ref": "main",
|
||||
"repo": "nvim-treesitter-textobjects",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"godotdev": "godotdev",
|
||||
"mdfmt": "mdfmt",
|
||||
"nixpkgs": "nixpkgs"
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nvim-treesitter-main": "nvim-treesitter-main"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
15
flake.nix
15
flake.nix
@@ -2,6 +2,8 @@
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
|
||||
nvim-treesitter-main.url = "github:iofq/nvim-treesitter-main";
|
||||
|
||||
mdfmt = {
|
||||
url = "github:moorereason/mdfmt";
|
||||
flake = false;
|
||||
@@ -28,7 +30,18 @@
|
||||
forAllSystems = f:
|
||||
nixpkgs.lib.genAttrs systems (
|
||||
system: let
|
||||
pkgs = import nixpkgs {inherit system;};
|
||||
overlays = [
|
||||
inputs.nvim-treesitter-main.overlays.default
|
||||
(final: prev: {
|
||||
vimPlugins = prev.vimPlugins.extend (f: p: {
|
||||
nvim-treesitter = p.nvim-treesitter.withAllGrammars;
|
||||
nvim-treesitter-textobjects = p.nvim-treesitter-textobjects.overrideAttrs {
|
||||
dependencies = [f.nvim-treesitter];
|
||||
};
|
||||
});
|
||||
})
|
||||
];
|
||||
pkgs = import nixpkgs {inherit system overlays;};
|
||||
in
|
||||
f {
|
||||
inherit pkgs;
|
||||
|
||||
@@ -90,95 +90,7 @@ require("dot.keymaps")
|
||||
-- Theme
|
||||
vim.cmd.colorscheme("catppuccin")
|
||||
|
||||
require("nvim-treesitter.configs").setup({
|
||||
auto_install = false,
|
||||
highlight = { enable = true },
|
||||
indent = { enable = true },
|
||||
incremental_selection = {
|
||||
enable = true,
|
||||
keymaps = {
|
||||
init_selection = "<c-space>",
|
||||
node_incremental = "<c-space>",
|
||||
scope_incremental = "<c-s>",
|
||||
node_decremental = "<M-space>",
|
||||
},
|
||||
},
|
||||
textobjects = {
|
||||
select = {
|
||||
enable = true,
|
||||
lookahead = true,
|
||||
keymaps = {
|
||||
["aa"] = "@parameter.outer",
|
||||
["ia"] = "@parameter.inner",
|
||||
["af"] = "@function.outer",
|
||||
["if"] = "@function.inner",
|
||||
["ac"] = "@class.outer",
|
||||
["ic"] = "@class.inner",
|
||||
},
|
||||
},
|
||||
move = {
|
||||
enable = true,
|
||||
set_jumps = true,
|
||||
goto_next_start = {
|
||||
["]m"] = "@function.outer",
|
||||
["]]"] = "@class.outer",
|
||||
},
|
||||
goto_next_end = {
|
||||
["]M"] = "@function.outer",
|
||||
["]["] = "@class.outer",
|
||||
},
|
||||
goto_previous_start = {
|
||||
["[m"] = "@function.outer",
|
||||
["[["] = "@class.outer",
|
||||
},
|
||||
goto_previous_end = {
|
||||
["[M"] = "@function.outer",
|
||||
["[]"] = "@class.outer",
|
||||
},
|
||||
},
|
||||
},
|
||||
textsubjects = {
|
||||
enable = true,
|
||||
prev_selection = ",",
|
||||
keymaps = {
|
||||
["."] = "textsubjects-smart",
|
||||
[";"] = "textsubjects-container-outer",
|
||||
["i;"] = "textsubjects-container-inner",
|
||||
},
|
||||
},
|
||||
swap = {
|
||||
enable = true,
|
||||
swap_next = {
|
||||
["<leader>a"] = "@parameter.inner",
|
||||
},
|
||||
swap_previous = {
|
||||
["<leader>A"] = "@parameter.inner",
|
||||
},
|
||||
},
|
||||
playground = {
|
||||
enable = true,
|
||||
disable = {},
|
||||
updatetime = 25,
|
||||
persist_queries = false,
|
||||
keybindings = {
|
||||
toggle_query_editor = "o",
|
||||
toggle_hl_groups = "i",
|
||||
toggle_injected_languages = "t",
|
||||
toggle_anonymous_nodes = "a",
|
||||
toggle_language_display = "I",
|
||||
focus_language = "f",
|
||||
unfocus_language = "F",
|
||||
update = "R",
|
||||
goto_node = "<cr>",
|
||||
show_help = "?",
|
||||
},
|
||||
},
|
||||
query_linter = {
|
||||
enable = true,
|
||||
use_virtual_text = true,
|
||||
lint_events = { "BugWrite", "CursorHold" },
|
||||
},
|
||||
})
|
||||
vim.bo.syntax = "OFF"
|
||||
|
||||
vim.api.nvim_create_autocmd("TextYankPost", {
|
||||
desc = "Highlight when yanking text",
|
||||
|
||||
@@ -182,11 +182,26 @@ lze.load({
|
||||
-- Treesitter (Syntax Highlighting)
|
||||
{
|
||||
"nvim-treesitter",
|
||||
after = function()
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = require("nvim-treesitter.config").get_installed(),
|
||||
callback = function()
|
||||
vim.treesitter.start()
|
||||
end,
|
||||
})
|
||||
end,
|
||||
event = "FileType",
|
||||
dep_of = { "godotdev", "indent-blankline.nvim" },
|
||||
on_require = "nvim-treesitter",
|
||||
},
|
||||
{ "nvim-treesitter-textobjects", dep_of = "nvim-treesitter" },
|
||||
{ "nvim-treesitter-textsubjects", dep_of = "nvim-treesitter" },
|
||||
-- {
|
||||
-- "nvim-treesitter-textobjects",
|
||||
-- after = function()
|
||||
-- vim.g.no_plugin_maps = false
|
||||
-- end,
|
||||
-- dep_of = "nvim-treesitter",
|
||||
-- },
|
||||
-- { "nvim-treesitter-textsubjects", dep_of = "nvim-treesitter" },
|
||||
|
||||
-- Appearance
|
||||
{
|
||||
|
||||
@@ -37,9 +37,9 @@ in
|
||||
friendly-snippets # Snippets
|
||||
|
||||
# Treesitter (Syntax Highlighting)
|
||||
nvim-treesitter.withAllGrammars
|
||||
nvim-treesitter-textobjects # Dependency
|
||||
nvim-treesitter-textsubjects # Dependency
|
||||
nvim-treesitter
|
||||
# nvim-treesitter-textobjects # Dependency
|
||||
# nvim-treesitter-textsubjects # Dependency
|
||||
|
||||
(dot-nvim.overrideAttrs {doCheck = false;})
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user