diff options
Diffstat (limited to 'src/ops.c')
-rw-r--r-- | src/ops.c | 12 |
1 files changed, 8 insertions, 4 deletions
@@ -3724,13 +3724,17 @@ end: && curwin->w_cursor.col > 0 && !(restart_edit || (State & INSERT))) { -#ifdef FEAT_VIRTUALEDIT - col = curwin->w_cursor.col; -#endif + /* Put the cursor on the last character in the line. */ dec_cursor(); #ifdef FEAT_VIRTUALEDIT if (ve_flags == VE_ALL) - curwin->w_cursor.coladd = col - curwin->w_cursor.col; + { + colnr_T scol, ecol; + + /* Coladd is set to the width of the last character. */ + getvcol(curwin, &curwin->w_cursor, &scol, NULL, &ecol); + curwin->w_cursor.coladd = ecol - scol + 1; + } #endif } } |