fix(move): check the correct buffer

This commit is contained in:
zeertzjq
2023-10-18 09:26:09 +08:00
parent bc5dfda441
commit 56ffab5522
2 changed files with 31 additions and 1 deletions

View File

@@ -247,7 +247,7 @@ void update_topline(win_T *wp)
int old_topfill = wp->w_topfill;
// If the buffer is empty, always set topline to 1.
if (buf_is_empty(curbuf)) { // special case - file is empty
if (buf_is_empty(wp->w_buffer)) { // special case - file is empty
if (wp->w_topline != 1) {
redraw_later(wp, UPD_NOT_VALID);
}

View File

@@ -3095,6 +3095,36 @@ it(':substitute with inccommand works properly if undo is not synced #20029', fu
baz]])
end)
it(':substitute with inccommand does not unexpectedly change viewport #25697', function()
clear()
local screen = Screen.new(45, 5)
common_setup(screen, 'nosplit', long_multiline_text)
command('vnew | tabnew | tabclose')
screen:expect([[
^ │£ m n |
{15:~ }│t œ ¥ |
{15:~ }│ |
{11:[No Name] }{10:[No Name] [+] }|
|
]])
feed(':s/')
screen:expect([[
│£ m n |
{15:~ }│t œ ¥ |
{15:~ }│ |
{11:[No Name] }{10:[No Name] [+] }|
:s/^ |
]])
feed('<Esc>')
screen:expect([[
^ │£ m n |
{15:~ }│t œ ¥ |
{15:~ }│ |
{11:[No Name] }{10:[No Name] [+] }|
|
]])
end)
it('long :%s/ with inccommand does not collapse cmdline', function()
clear()
local screen = Screen.new(10,5)