]> git.ipfire.org Git - thirdparty/vim.git/commit
patch 9.2.0349: cannot style non-current window separator v9.2.0349
authorHirohito Higashi <h.east.727@gmail.com>
Tue, 14 Apr 2026 18:39:52 +0000 (18:39 +0000)
committerChristian Brabandt <cb@256bit.org>
Tue, 14 Apr 2026 18:42:38 +0000 (18:42 +0000)
commitc72196529bbe73c4dbb966ed9e83c2f620f864ce
tree42a9979119808966598c1626c538487a391ccdcb
parent91b402f57575ed33649285043a3c631701165f4a
patch 9.2.0349: cannot style non-current window separator

Problem:  cannot style non-current window separator
Solution: Add the VertSplitNC highlighting group
          (Hirohito Higashi).

Add VertSplitNC highlight group for vertical separators of non-current
windows, similar to StatusLine/StatusLineNC distinction.  The separator
adjacent to the current window uses VertSplit, others use VertSplitNC.
Default: linked to VertSplit.

At the current window's status line rows, the separator cell is drawn as
a space with the StatusLine highlight so it blends into the status line
without a stray fillchar glyph.

Also:
- :redrawstatus[!] now also redraws vertical separators.
- statusline height changes trigger vsep redraw.

closes: #19951

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
104 files changed:
runtime/doc/options.txt
runtime/doc/syntax.txt
runtime/doc/tags
runtime/doc/version9.txt
runtime/syntax/vim.vim
src/drawscreen.c
src/ex_docmd.c
src/globals.h
src/highlight.c
src/optiondefs.h
src/proto/screen.pro
src/screen.c
src/testdir/dumps/Test_VertSplitNC_1.dump [new file with mode: 0644]
src/testdir/dumps/Test_VertSplitNC_2.dump [new file with mode: 0644]
src/testdir/dumps/Test_VertSplitNC_3.dump [new file with mode: 0644]
src/testdir/dumps/Test_VertSplitNC_fc_1.dump [new file with mode: 0644]
src/testdir/dumps/Test_VertSplitNC_fc_2.dump [new file with mode: 0644]
src/testdir/dumps/Test_VertSplitNC_stl_1.dump [new file with mode: 0644]
src/testdir/dumps/Test_VertSplitNC_stl_2.dump [new file with mode: 0644]
src/testdir/dumps/Test_VertSplitNC_stl_3.dump [new file with mode: 0644]
src/testdir/dumps/Test_diff_anchors_07.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_01.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_02.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_03.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_04.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_05.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_06.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_07.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_08.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_13.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_14.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_15.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_16.dump
src/testdir/dumps/Test_diff_anchors_scrollbind_topline_17.dump
src/testdir/dumps/Test_diff_get_put_linematch_16.dump
src/testdir/dumps/Test_diff_get_put_linematch_17.dump
src/testdir/dumps/Test_diff_get_put_linematch_18.dump
src/testdir/dumps/Test_diff_get_put_linematch_19.dump
src/testdir/dumps/Test_diff_get_put_linematch_3.dump
src/testdir/dumps/Test_diff_get_put_linematch_4.dump
src/testdir/dumps/Test_diff_inline_multiline_07.dump
src/testdir/dumps/Test_diff_inline_multiline_08.dump
src/testdir/dumps/Test_diff_inline_multiline_09.dump
src/testdir/dumps/Test_diff_inline_multiline_10.dump
src/testdir/dumps/Test_diff_rnu_01.dump
src/testdir/dumps/Test_diff_rnu_02.dump
src/testdir/dumps/Test_diff_rnu_03.dump
src/testdir/dumps/Test_diff_scroll_1.dump
src/testdir/dumps/Test_diff_scroll_2.dump
src/testdir/dumps/Test_diff_scroll_change_03.dump
src/testdir/dumps/Test_diff_topline_1.dump
src/testdir/dumps/Test_diff_topline_2.dump
src/testdir/dumps/Test_diff_topline_4.dump
src/testdir/dumps/Test_diff_with_cul_bri_01.dump
src/testdir/dumps/Test_diff_with_cul_bri_02.dump
src/testdir/dumps/Test_diff_with_cul_bri_03.dump
src/testdir/dumps/Test_diff_with_cul_bri_04.dump
src/testdir/dumps/Test_diff_with_cursorline_01.dump
src/testdir/dumps/Test_diff_with_cursorline_02.dump
src/testdir/dumps/Test_diff_with_cursorline_03.dump
src/testdir/dumps/Test_display_fillchars_1.dump
src/testdir/dumps/Test_display_fillchars_2.dump
src/testdir/dumps/Test_hor_scroll_1.dump
src/testdir/dumps/Test_hor_scroll_2.dump
src/testdir/dumps/Test_hor_scroll_3.dump
src/testdir/dumps/Test_hor_scroll_4.dump
src/testdir/dumps/Test_hor_scroll_5.dump
src/testdir/dumps/Test_laststatus_vsplit_row_height3_1.dump
src/testdir/dumps/Test_linematch_3diffs1.dump
src/testdir/dumps/Test_listchars_01.dump
src/testdir/dumps/Test_listchars_02.dump
src/testdir/dumps/Test_listchars_03.dump
src/testdir/dumps/Test_listchars_04.dump
src/testdir/dumps/Test_listchars_05.dump
src/testdir/dumps/Test_listchars_06.dump
src/testdir/dumps/Test_listchars_07.dump
src/testdir/dumps/Test_popup_prop_not_visible_01.dump
src/testdir/dumps/Test_popup_prop_not_visible_01a.dump
src/testdir/dumps/Test_popup_prop_not_visible_01b.dump
src/testdir/dumps/Test_popup_prop_not_visible_02.dump
src/testdir/dumps/Test_popup_prop_not_visible_03.dump
src/testdir/dumps/Test_prop_diff_mode_2.dump
src/testdir/dumps/Test_smooth_diff_change_line_1.dump
src/testdir/dumps/Test_smooth_diff_change_line_2.dump
src/testdir/dumps/Test_smooth_diff_change_line_3.dump
src/testdir/dumps/Test_smooth_diff_change_line_3a.dump
src/testdir/dumps/Test_smooth_diff_change_line_4.dump
src/testdir/dumps/Test_switchwin_clear_pum_02.dump
src/testdir/dumps/Test_tabpanel_drawing_scrolling_3.dump
src/testdir/dumps/Test_terminal_wincolor_split_MyWinCol.dump
src/testdir/dumps/Test_terminal_wincolor_split_MyWinCol2.dump
src/testdir/dumps/Test_winhighlight_14.dump
src/testdir/dumps/Test_winhighlight_15.dump
src/testdir/dumps/Test_winhighlight_2.dump
src/testdir/dumps/Test_winhighlight_6.dump
src/testdir/dumps/Test_winhighlight_hlsearch_2.dump
src/testdir/dumps/Test_winscrolled_once_only_1.dump
src/testdir/test_highlight.vim
src/testdir/test_options.vim
src/testdir/test_statusline.vim
src/testdir/test_window_cmd.vim
src/version.c
src/vim.h
src/window.c