fix(api): consider multibyte characters in get_screen_cursor (cmdline) (#1352)

* fix(api): consider multibyte characters in get_screen_cursor (cmdline)

* style: format with stylua

* test: tell luacheck that it is intended unreachable code
This commit is contained in:
NAKAI Tsuyoshi
2022-12-15 20:27:02 +09:00
committed by GitHub
parent 10b1d11252
commit 8bbaeda725
4 changed files with 24 additions and 7 deletions

View File

@@ -55,7 +55,7 @@ end
api.get_screen_cursor = function()
if api.is_cmdline_mode() then
local cursor = api.get_cursor()
return { cursor[1], cursor[2] + 1 }
return { cursor[1], vim.fn.strdisplaywidth(string.sub(vim.fn.getcmdline(), 1, cursor[2] + 1)) }
end
local cursor = api.get_cursor()
local pos = vim.fn.screenpos(0, cursor[1], cursor[2] + 1)