vim-patch:9.0.1759: Visual highlight not working with cursor at end of screen line (#24806)

Problem:  Visual highlight not working with cursor at end of screen line
          and 'showbreak'.
Solution: Only update "vcol_prev" when drawing buffer text.

closes: vim/vim#12865

8fc6a1dae0
This commit is contained in:
zeertzjq
2023-08-21 07:18:39 +08:00
committed by GitHub
parent 10459e1ed0
commit d21e6285e9
5 changed files with 119 additions and 80 deletions

View File

@@ -2940,9 +2940,12 @@ int win_line(win_T *wp, linenr_T lnum, int startrow, int endrow, bool number_onl
wlv.char_attr = hl_combine_attr(wlv.line_attr_lowprio, wlv.char_attr);
}
if (wlv.draw_state == WL_LINE) {
vcol_prev = wlv.vcol;
}
// Store character to be displayed.
// Skip characters that are left of the screen for 'nowrap'.
vcol_prev = wlv.vcol;
if (wlv.draw_state < WL_LINE || n_skip <= 0) {
// Store the character.
if (wp->w_p_rl && utf_char2cells(mb_c) > 1) {