vim-patch:9.1.1407: Can't use getpos('v') in OptionSet when using setbufvar() (#34177)

Problem:  Can't use getpos('v') in OptionSet when using setbufvar().
Solution: Don't reset Visual selection when switching to the same
          buffer (zeertzjq).

closes: vim/vim#17373

5717ee33db
(cherry picked from commit bd01bd6564)
This commit is contained in:
zeertzjq
2025-05-26 06:51:15 +08:00
committed by github-actions[bot]
parent 5e0ef6afc7
commit d1ca551983
4 changed files with 63 additions and 3 deletions

View File

@@ -3930,6 +3930,17 @@ stack traceback:
]]
)
end)
it('can get Visual selection in current buffer #34162', function()
insert('foo bar baz')
feed('gg0fbvtb')
local text = exec_lua([[
return vim.api.nvim_buf_call(0, function()
return vim.fn.getregion(vim.fn.getpos('.'), vim.fn.getpos('v'))
end)
]])
eq({ 'bar ' }, text)
end)
end)
describe('vim.api.nvim_win_call', function()