Problem: With 'virtualedit' set to "all" and 'cursorcolumn' set, the wrong
column may be highlighted after a command that moved the cursor
into virtual space and back.
Solution: Make sure the virtual column is up to date before drawing the
window.
fixes: #2576
set virtualedit=all
set cursorcolumn
call setline(1, ['', '', ''])
call cursor(3, 1)
Pressing <Del> highlights the second column while the cursor is in the
first one.
"x" is translated to "dl", and with 'virtualedit' the "l" succeeds on an
empty line, so coladvance() sets w_virtcol for the virtual position. When
the operator puts the cursor back, do_pending_operator() resets
VALID_VIRTCOL, but the old value stays in w_virtcol and nothing computes it
again: only the ruler validates it, in win_redr_ruler().
This was in todo.txt, the entry is removed.
https://github.com/vim/vim/pull/20902
(4 files)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications, keep track of coding agent tasks and review pull requests on the go with GitHub Mobile for iOS and Android. Download it today!
You are receiving this because you are subscribed to this thread.![]()