# HG changeset patch # User Bram Moolenaar # Date 1373382509 -7200 # Node ID c624928fbc49408ab932e5c79f5f79e53327d700 # Parent f7add3891e95e4dab2e1294ffccd6e8aa55fdabf 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 --- a/src/normal.c +++ b/src/normal.c @@ -8220,6 +8220,11 @@ nv_g_cmd(cap) 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 @@ nv_g_cmd(cap) * 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; } diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 7, +/**/ 6, /**/ 5,