nvim-treesitter / nvim-treesitter-textobjects

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

auto-center option for the move submodule

perrin4869 opened this issue · comments

Is your feature request related to a problem? Please describe.
Would be nice to have an option to automatically enable auto-centering when executing a move command, similar to the following mappings:

nmap G Gzz
nmap n nzz
nmap N Nzz
nmap } }zz
nmap { {zz
nmap ) )zz
nmap ( (zz

Describe the solution you'd like
Have an option such as autocenter = true/false inside the move submodule that would execute zz after each move... or maybe better, have a TreesitterTextObjMove autocmd to be able to execute zz in after each move?

Up on this.
Is anyone able to somehow achieve this ?

At the moment, i reset the binding in the config and use TS command directly .
It works great

map(
	"n",
	"]]",
	":TSTextobjectGotoNextStart @function.outer | lua vim.cmd('norm zz') <CR>",
	{ remap = true, desc = "Go to next function and center the cursor" }
)

map(
	"n",
	"[[",
	":TSTextobjectGotoPreviousStart @function.outer | lua vim.cmd('norm zz') <CR>",
	{ remap = true, desc = "Go to previous function and center the cursor" }
)