]> git.ipfire.org Git - thirdparty/vim.git/commit
patch 9.2.0453: vertical separator of statusline blend into active statusline v9.2.0453
authorHirohito Higashi <h.east.727@gmail.com>
Fri, 8 May 2026 20:57:34 +0000 (20:57 +0000)
committerChristian Brabandt <cb@256bit.org>
Fri, 8 May 2026 21:03:12 +0000 (21:03 +0000)
commitc895390e58fb080f94dcc1c60757a3d697698515
treec64690fe9da75cdb505939ee4dc85562e5ae8dfb
parentb9871cef1073dfbcb74b73d9b939b374d6bd50e5
patch 9.2.0453: vertical separator of statusline blend into active statusline

Problem:  Since v9.2.0349, the vertical separator cell at status line
  rows is drawn as a space with StatusLine highlight, hiding the
  user's 'fillchars' "vert" or "stl"/"stlnc" character at that
  cell (after v9.2.0349)
Solution: Drop the status line blend.  At status line rows the separator
  cell goes back to using the status fillchar when adjacent
  status lines are connected, or the vsep character otherwise.
  (Same as before v9.2.0348)

Keep the VertSplitNC highlight group introduced in v9.2.0349.  The
highlight (VertSplit vs VertSplitNC) is selected based on whether the
current window is adjacent to the separator at the row.

Vertical separators are redrawn on current-window changes and on
:redrawstatus[!] so the VertSplit/VertSplitNC highlight is updated
immediately.

fixes:   #20089
related: #19951
closes:  #20167

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
97 files changed:
runtime/doc/syntax.txt
runtime/syntax/vim.vim
src/drawscreen.c
src/proto/screen.pro
src/screen.c
src/testdir/dumps/Test_VertSplitNC_2.dump
src/testdir/dumps/Test_VertSplitNC_3.dump
src/testdir/dumps/Test_VertSplitNC_fc_1.dump [deleted file]
src/testdir/dumps/Test_VertSplitNC_fc_2.dump [deleted file]
src/testdir/dumps/Test_VertSplitNC_stl_1.dump [deleted file]
src/testdir/dumps/Test_VertSplitNC_stl_2.dump [deleted file]
src/testdir/dumps/Test_VertSplitNC_stl_3.dump [deleted file]
src/testdir/dumps/Test_VertSplitNC_whl2.dump
src/testdir/dumps/Test_VertSplitNC_winbar_1.dump
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_statusline.vim
src/testdir/test_window_cmd.vim
src/version.c
src/vim.h
src/window.c