Mercurial > vim
view src/libvterm/t/63screen_resize.test @ 33676:46cd1fc257de v9.0.2075
patch 9.0.2075: TextChangedI may not always trigger
Commit: https://github.com/vim/vim/commit/4bca4897a12dfb91b3b27e3083fd5f370bd857d1
Author: Christian Brabandt <cb@256bit.org>
Date: Fri Oct 27 19:26:49 2023 +0200
patch 9.0.2075: TextChangedI may not always trigger
Problem: TextChangedI may not always trigger
Solution: trigger it in more cases: for insert/
append/change operations, and when
opening a new line,
fixes: #13367
closes: #13375
Signed-off-by: Christian Brabandt <cb@256bit.org>
Signed-off-by: Evgeni Chasnovski <evgeni.chasnovski@gmail.com>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 27 Oct 2023 19:45:04 +0200 |
parents | 2d2758ffd959 |
children |
line wrap: on
line source
INIT WANTSTATE WANTSCREEN !Resize wider preserves cells RESET RESIZE 25,80 PUSH "AB\r\nCD" ?screen_chars 0,0,1,80 = "AB" ?screen_chars 1,0,2,80 = "CD" RESIZE 25,100 ?screen_chars 0,0,1,100 = "AB" ?screen_chars 1,0,2,100 = "CD" !Resize wider allows print in new area RESET RESIZE 25,80 PUSH "AB\e[79GCD" ?screen_chars 0,0,1,2 = "AB" ?screen_chars 0,78,1,80 = "CD" RESIZE 25,100 ?screen_chars 0,0,1,2 = "AB" ?screen_chars 0,78,1,80 = "CD" PUSH "E" ?screen_chars 0,78,1,81 = "CDE" !Resize shorter with blanks just truncates RESET RESIZE 25,80 PUSH "Top\e[10HLine 10" ?screen_row 0 = "Top" ?screen_row 9 = "Line 10" ?cursor = 9,7 RESIZE 20,80 ?screen_row 0 = "Top" ?screen_row 9 = "Line 10" ?cursor = 9,7 !Resize shorter with content must scroll RESET RESIZE 25,80 PUSH "Top\e[25HLine 25\e[15H" ?screen_row 0 = "Top" ?screen_row 24 = "Line 25" ?cursor = 14,0 WANTSCREEN b RESIZE 20,80 sb_pushline 80 = 54 6F 70 sb_pushline 80 = sb_pushline 80 = sb_pushline 80 = sb_pushline 80 = ?screen_row 0 = "" ?screen_row 19 = "Line 25" ?cursor = 9,0 !Resize shorter does not lose line with cursor # See also https://github.com/neovim/libvterm/commit/1b745d29d45623aa8d22a7b9288c7b0e331c7088 RESET WANTSCREEN -b RESIZE 25,80 WANTSCREEN b PUSH "\e[24HLine 24\r\nLine 25\r\n" sb_pushline 80 = ?screen_row 23 = "Line 25" ?cursor = 24,0 RESIZE 24,80 sb_pushline 80 = ?screen_row 22 = "Line 25" ?cursor = 23,0 !Resize shorter does not send the cursor to a negative row # See also https://github.com/vim/vim/pull/6141 RESET WANTSCREEN -b RESIZE 25,80 WANTSCREEN b PUSH "\e[24HLine 24\r\nLine 25\e[H" ?cursor = 0,0 RESIZE 20,80 sb_pushline 80 = sb_pushline 80 = sb_pushline 80 = sb_pushline 80 = sb_pushline 80 = ?cursor = 0,0 !Resize taller attempts to pop scrollback RESET WANTSCREEN -b RESIZE 25,80 PUSH "Line 1\e[25HBottom\e[15H" ?screen_row 0 = "Line 1" ?screen_row 24 = "Bottom" ?cursor = 14,0 WANTSCREEN b RESIZE 30,80 sb_popline 80 sb_popline 80 sb_popline 80 sb_popline 80 sb_popline 80 ?screen_row 0 = "ABCDE" ?screen_row 5 = "Line 1" ?screen_row 29 = "Bottom" ?cursor = 19,0 WANTSCREEN -b !Resize can operate on altscreen RESET WANTSCREEN a RESIZE 25,80 PUSH "Main screen\e[?1049h\e[HAlt screen" RESIZE 30,80 ?screen_row 0 = "Alt screen" PUSH "\e[?1049l" ?screen_row 0 = "Main screen"