nvim-treesitter-textobjects
nvim-treesitter-textobjects copied to clipboard
Broken rust query
Describe the bug Hey! I'm getting an error when opening rust files.
Error detected while processing BufReadPost Autocommands for "*":
Error executing lua callback: /usr/local/share/nvim/runtime/filetype.lua:24: Error executing lua: /usr/local/share/nvim/runtime/filetype.lua:25:
BufReadPost Autocommands for "*"..FileType Autocommands for "*": Vim(append):Error executing lua callback: /usr/local/share/nvim/runtime/lua/vi
m/treesitter/query.lua:259: query: invalid structure at position 5163 for language rust
stack traceback:
[C]: in function '_ts_parse_query'
/usr/local/share/nvim/runtime/lua/vim/treesitter/query.lua:259: in function 'get_query'
...r-textobjects/lua/nvim-treesitter/textobjects/shared.lua:99: in function 'available_textobjects'
...r-textobjects/lua/nvim-treesitter/textobjects/select.lua:172: in function 'attach'
...er/start/nvim-treesitter/lua/nvim-treesitter/configs.lua:509: in function 'attach_module'
...er/start/nvim-treesitter/lua/nvim-treesitter/configs.lua:532: in function 'reattach_module'
...er/start/nvim-treesitter/lua/nvim-treesitter/configs.lua:133: in function <...er/start/nvim-treesitter/lua/nvim-treesitter/configs.lu
a:132>
[C]: in function 'nvim_cmd'
/usr/local/share/nvim/runtime/filetype.lua:25: in function </usr/local/share/nvim/runtime/filetype.lua:24>
[C]: in function 'nvim_buf_call'
/usr/local/share/nvim/runtime/filetype.lua:24: in function </usr/local/share/nvim/runtime/filetype.lua:10>
stack traceback:
[C]: in function 'nvim_cmd'
/usr/local/share/nvim/runtime/filetype.lua:25: in function </usr/local/share/nvim/runtime/filetype.lua:24>
[C]: in function 'nvim_buf_call'
/usr/local/share/nvim/runtime/filetype.lua:24: in function </usr/local/share/nvim/runtime/filetype.lua:10>
stack traceback:
[C]: in function 'nvim_buf_call'
/usr/local/share/nvim/runtime/filetype.lua:24: in function </usr/local/share/nvim/runtime/filetype.lua:10>
Press ENTER or type command to continue
As far as I understand this tells me that some query is wrong. I tried to open queries for rust and saw that one of them is highlighted for some reason.
((token_tree
"," @_start . (_) @parameter.inner)
(#make-range! "parameter.outer" @_start @parameter.inner))
After commenting it out I don't see an error.
To Reproduce Steps to reproduce the behavior:
- Open any rust file
- See error
Expected behavior No error
Output of :checkhealth nvim-treesitter
==============================================================================
nvim-treesitter: require("nvim-treesitter.health").check()
Installation ~
- OK
tree-sitter
found 0.20.7 (parser generator, only needed for :TSInstallFromGrammar)
- OK
node
found v18.2.0 (only needed for :TSInstallFromGrammar)
- OK
git
executable found.
- OK
cc
executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
Version: Apple clang version 15.0.0 (clang-1500.0.40.1)
- OK Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.
OS Info:
{
machine = "arm64",
release = "22.6.0",
sysname = "Darwin",
version = "Darwin Kernel Version 22.6.0: Wed Jul 5 22:22:05 PDT 2023; root:xnu-8796.141.3~6/RELEASE_ARM64_T6000"
} ~
Parser/Features H L F I J
- bash ✓ ✓ ✓ . ✓
- c ✓ ✓ ✓ ✓ ✓
- comment ✓ . . . .
- fennel ✓ ✓ ✓ . ✓
- go ✓ ✓ ✓ ✓ ✓
- grpcnvim ✓ . . . ✓
- hocon ✓ . . . ✓
- http ✓ . . . ✓
- javascript ✓ ✓ ✓ ✓ ✓
- json ✓ ✓ ✓ ✓ .
- lua ✓ ✓ ✓ ✓ ✓
- markdown ✓ . ✓ ✓ ✓
- org ✓ . ✓ . ✓
- proto ✓ . ✓ . .
- python ✓ ✓ ✓ ✓ ✓
- query ✓ ✓ ✓ ✓ ✓
- rust ✓ ✓ ✓ ✓ ✓
- scala ✓ ✓ ✓ . ✓
- tlaplus ✓ ✓ ✓ . ✓
- toml ✓ ✓ ✓ ✓ ✓
- typescript ✓ ✓ ✓ ✓ ✓
- vim ✓ ✓ ✓ . ✓
- vimdoc ✓ . . . ✓
- yaml ✓ ✓ ✓ ✓ ✓
Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
+) multiple parsers found, only one will be used
x) errors found in the query, try to run :TSUpdate {lang} ~
Output of nvim --version
NVIM v0.9.4
Build type: Release
LuaJIT 2.1.1692716794
system vimrc file: "$VIM/sysinit.vim"
fall-back for $VIM: "/usr/local/share/nvim"
Run :checkhealth for more info
Additional context Didn't manage to fix this query myself, don't really understand what it does. But will contribute a fix if someone willing to help.
same, getting this after update
This issue happens after a7a9ba714bcc31f5453a60d48598186b6487b75c
commit.
Using previous commit - 73e44f43c70289c70195b5e7bc6a077ceffddda4
.
I also ran into the same problem. You can avoid the error by commenting out keymaps.
textobjects = {
select = {
keymaps = {
-- ["af"] = "@function.outer",
-- ["if"] = "@function.inner",
},
commit hash e69a504baf2951d52e1f1fbb05145d43f236cbf1
This issue happens after
a7a9ba714bcc31f5453a60d48598186b6487b75c
commit. Using previous commit -73e44f43c70289c70195b5e7bc6a077ceffddda4
.
If anyone is using Lazy for package management, just add the commit hash while adding the plugin and sync.
{
'nvim-treesitter/nvim-treesitter-textobjects',
commit = "73e44f43c70289c70195b5e7bc6a077ceffddda4",
config = ...
}
Mitigates the issue for now, until an upstream patch is available.