commit d3e495ce03e3389c2c28ffcfe2e41c088a37f1ef
parent 8c81ed86786ad155b262cfa04bd56a5794fe97ec
Author: luukvbaal <luukvbaal@gmail.com>
Date: Tue, 22 Apr 2025 13:34:41 +0200
perf(snippet): use "[count]|" to move cursor #33571
Problem:
Flicker when using vim.snippet.jump().
Solution:
Pass count instead of multiple <right> keys.
Diffstat:
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/runtime/lua/vim/snippet.lua b/runtime/lua/vim/snippet.lua
@@ -284,9 +284,7 @@ local function select_tabstop(tabstop)
--- @param row integer
--- @param col integer
local function move_cursor_to(row, col)
- local line = vim.fn.getline(row) --[[ @as string ]]
- col = math.max(vim.fn.strchars(line:sub(1, col)) - 1, 0)
- feedkeys(string.format('%sG0%s', row, string.rep('<Right>', col)))
+ feedkeys(string.format('%sG%s|', row, col))
end
local range = tabstop:get_range()