--- /dev/null
+|<+0#4040ff13#ffffff0@2|e+0#0000000&| |l|i|n|e| |w|i|t|h| |l|o|t|s| |o|f| |t|e|x|t| |i|n| |o|n|e| |l|i|n|e|
+|w|i|t|h| |l|o|t|s| |o|f| |t|e|x|t| |i|n| |o|n|e| |l|i|n|e| |w|i|t|h| |l|o|t|s|
+|o|f| |t|e|x|t| |i|n| |o|n|e| |l|i|n|e| @20
+|~+0#4040ff13&| @38
+|[+1#0000000&|N|o| |N|a|m|e|]| |[|+|]| @8|1|,|1|2|1| @9|A|l@1
+|<+0#4040ff13&@2|e+0#0000000&| |l|i|n|e| |w|i|t|h| |l|o|t|s| |o|f| |t|e|x|t| |i|n| |o|n|e| |l|i|n|e|
+>w|i|t|h| |l|o|t|s| |o|f| |t|e|x|t| |i|n| |o|n|e| |l|i|n|e| |w|i|t|h| |l|o|t|s|
+|o|f| |t|e|x|t| |i|n| |o|n|e| |l|i|n|e| @20
+|~+0#4040ff13&| @38
+|~| @38
+|[+3#0000000&|N|o| |N|a|m|e|]| |[|+|]| @8|1|,|1|2|1| @9|A|l@1
+| +0&&@39
call StopVimInTerminal(buf)
endfunc
+" skipcol is not reset unnecessarily and is copied to new window
+func Test_splitkeep_skipcol()
+ CheckScreendump
+
+ let lines =<< trim END
+ set splitkeep=topline smoothscroll splitbelow scrolloff=0
+ call setline(1, 'with lots of text in one line '->repeat(6))
+ norm 2\ 5
+ wincmd s
+ END
+
+ call writefile(lines, 'XTestSplitkeepSkipcol', 'D')
+ let buf = RunVimInTerminal('-S XTestSplitkeepSkipcol', #{rows: 12, cols: 40})
+
+ call VerifyScreenDump(buf, 'Test_splitkeep_skipcol_1', {})
+endfunc
+
func Test_new_help_window_on_error()
help change.txt
execute "normal! /CTRL-@\<CR>"
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 1513,
/**/
1512,
/**/
if (*p_spk != 'c')
{
+ if (*p_spk == 't')
+ newp->w_skipcol = oldp->w_skipcol;
newp->w_botline = oldp->w_botline;
newp->w_prev_height = oldp->w_height - WINBAR_HEIGHT(oldp);
newp->w_prev_winrow = oldp->w_winrow + 2 * WINBAR_HEIGHT(oldp);
}
wp->w_height = height;
- wp->w_skipcol = 0;
wp->w_redr_status = TRUE;
win_comp_scroll(wp);
// There is no point in adjusting the scroll position when exiting. Some
// values might be invalid.
if (!exiting && *p_spk == 'c')
+ {
+ wp->w_skipcol = 0;
scroll_to_fraction(wp, prev_height);
+ }
}
void