Description
Describe the bug
vaf/vif not working in Lua code
To Reproduce
- install nvim-treesitter and nvim-treesitter-textobjects
- load a .lua file
- move cursor inside a Lua function definition
- use vaf/vif to attempt to mark the function
Expected behavior
I expect the lines comprising the function to be selected. Instead, it just changes into visual mode
The following work, however:
- marking functions with vif/vaf in Python code works
- marking paragraphs with vip/vap in Lua code works
- :InspectTree shows that the function is properly recognized by the parser
Output of :checkhealth nvim-treesitter
==============================================================================
nvim-treesitter: require("nvim-treesitter.health").check()
Installation ~
- OK
tree-sitter
found 0.23.0 (parser generator, only needed for :TSInstallFromGrammar)
- OK
node
found v18.20.4 (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.3.9.4)
- 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 = "23.5.0",
sysname = "Darwin",
version = "Darwin Kernel Version 23.5.0: Wed May 1 20:12:58 PDT 2024; root:xnu-10063.121.3~5/RELEASE_ARM64_T6000"
} ~
Parser/Features H L F I J
- c ✓ ✓ ✓ ✓ ✓
- cpp ✓ ✓ ✓ ✓ ✓
- fortran ✓ . ✓ ✓ ✓
- go ✓ ✓ ✓ ✓ ✓
- haskell ✓ ✓ ✓ . ✓
- lua ✓ ✓ ✓ ✓ ✓
- markdown ✓ . ✓ ✓ ✓
- markdown_inline ✓ . . . ✓
- python ✓ ✓ ✓ ✓ ✓
- query ✓ ✓ ✓ ✓ ✓
- vim ✓ ✓ ✓ . ✓
- vimdoc ✓ . . . ✓
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 -version
NVIM v0.10.1
Build type: Release
LuaJIT 2.1.1724512491
Run "nvim -V1 -v" for more info
Additional context
I'm using this init.lua file with -u to isolate the problem, but I get the same problem with my full .lua file:
-- Packer setup to manage plugins
require('packer').startup({
function(use)
-- Packer manages itself
use 'wbthomason/packer.nvim'
-- Treesitter for syntax highlighting and textobjects
use {
'nvim-treesitter/nvim-treesitter',
run = ':TSUpdate',
config = function()
require('nvim-treesitter.configs').setup {
ensure_installed = { "lua" }, -- Install Lua parser
highlight = { enable = true }, -- Enable syntax highlighting
textobjects = { enable = true } -- Enable textobjects
}
end
}
-- Treesitter Textobjects support
use 'nvim-treesitter/nvim-treesitter-textobjects'
end,
config = {
auto_clean = false, -- Disable automatic cleanup of unused plugins
}
})
-- Basic Neovim settings
vim.opt.number = true -- Show line numbers
vim.opt.relativenumber = true -- Show relative line numbers
vim.opt.expandtab = true -- Use spaces instead of tabs
vim.opt.shiftwidth = 2 -- Number of spaces for each indentation
vim.opt.tabstop = 2 -- Number of spaces per tab
Activity