updated for version 7.4a.007
Problem: After "g$" with 'virtualedit' set, "k" moves to a different
column. (Dimitar Dimitrov)
Solution: Set w_curswant. (Christian Brabandt)
diff --git a/src/normal.c b/src/normal.c
index b16ac87..762f319 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -8220,6 +8220,11 @@
i += ((curwin->w_virtcol - width1) / width2 + 1)
* width2;
coladvance((colnr_T)i);
+
+ /* Make sure we stick in this column. */
+ validate_virtcol();
+ curwin->w_curswant = curwin->w_virtcol;
+ curwin->w_set_curswant = FALSE;
#if defined(FEAT_LINEBREAK) || defined(FEAT_MBYTE)
if (curwin->w_cursor.col > 0 && curwin->w_p_wrap)
{
@@ -8228,7 +8233,6 @@
* the end of the line. We do not want to advance to
* the next screen line.
*/
- validate_virtcol();
if (curwin->w_virtcol > (colnr_T)i)
--curwin->w_cursor.col;
}