diff options
author | KillTheMule <KillTheMule@users.noreply.github.com> | 2020-08-08 15:33:41 +0200 |
---|---|---|
committer | KillTheMule <KillTheMule@users.noreply.github.com> | 2020-09-30 20:10:05 +0200 |
commit | ba515622fb84e6c570e12743630e75acf5f83839 (patch) | |
tree | 3e413bee093af22b29e22a102f033c425ede86a0 /test/functional/lua/buffer_updates_spec.lua | |
parent | e5d98d85693245fec811307e5a2ccfdea3a350cd (diff) | |
download | rneovim-ba515622fb84e6c570e12743630e75acf5f83839.tar.gz rneovim-ba515622fb84e6c570e12743630e75acf5f83839.tar.bz2 rneovim-ba515622fb84e6c570e12743630e75acf5f83839.zip |
Fix buffer_updates on blockwise paste
Fixes #12718.
Diffstat (limited to 'test/functional/lua/buffer_updates_spec.lua')
-rw-r--r-- | test/functional/lua/buffer_updates_spec.lua | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/functional/lua/buffer_updates_spec.lua b/test/functional/lua/buffer_updates_spec.lua index 439cc12192..ac3048aafd 100644 --- a/test/functional/lua/buffer_updates_spec.lua +++ b/test/functional/lua/buffer_updates_spec.lua @@ -245,6 +245,31 @@ describe('lua buffer event callbacks: on_lines', function() helpers.assert_alive() end) + it('#12718 lnume', function() + meths.buf_set_lines(0, 0, -1, true, {'1', '2', '3'}) + exec_lua([[ + vim.api.nvim_buf_attach(0, false, { + on_lines = function(...) + vim.api.nvim_set_var('linesev', { ... }) + end, + }) + ]]) + feed('1G0') + feed('y<C-v>2j') + feed('G0') + feed('p') + -- Is the last arg old_byte_size correct? Doesn't matter for this PR + eq(meths.get_var('linesev'), { "lines", 1, 4, 2, 3, 5, 4 }) + + feed('2G0') + feed('p') + eq(meths.get_var('linesev'), { "lines", 1, 5, 1, 4, 4, 8 }) + + feed('1G0') + feed('P') + eq(meths.get_var('linesev'), { "lines", 1, 6, 0, 3, 3, 9 }) + + end) end) describe('lua: nvim_buf_attach on_bytes', function() |