mirror of
https://github.com/neovim/neovim.git
synced 2025-09-29 22:48:34 +00:00
vim-patch:9.0.1273: "1v" may select block with wrong size (#22092)
Problem: "1v" may select block with wrong size. (Evgeni Chasnovski)
Solution: Compute "curswant" in the right line. (closes vim/vim#11925)
8f531662e2
Co-authored-by: Bram Moolenaar <Bram@vim.org>
This commit is contained in:
@@ -5072,9 +5072,13 @@ static void nv_visual(cmdarg_T *cap)
|
||||
curwin->w_curswant = MAXCOL;
|
||||
coladvance(MAXCOL);
|
||||
} else if (VIsual_mode == Ctrl_V) {
|
||||
// Update curswant on the original line, that is where "col" is valid.
|
||||
linenr_T lnum = curwin->w_cursor.lnum;
|
||||
curwin->w_cursor.lnum = VIsual.lnum;
|
||||
update_curswant_force();
|
||||
assert(cap->count0 >= INT_MIN && cap->count0 <= INT_MAX);
|
||||
curwin->w_curswant += resel_VIsual_vcol * (int)cap->count0 - 1;
|
||||
curwin->w_cursor.lnum = lnum;
|
||||
coladvance(curwin->w_curswant);
|
||||
} else {
|
||||
curwin->w_set_curswant = true;
|
||||
|
Reference in New Issue
Block a user