summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2013-04-24 18:34:45 +0200
committerBram Moolenaar <Bram@vim.org>2013-04-24 18:34:45 +0200
commit7afea82f507c0614a22b27d592adf65f5656c2df (patch)
treec53a0f469368085ff5ee5896948e5c230a32a51a
parent811fe63f398767db412c4f21a31f5e746951dd26 (diff)
downloadvim-git-7afea82f507c0614a22b27d592adf65f5656c2df.tar.gz
updated for version 7.3.918v7.3.918
Problem: Repeating an Ex command after using a Visual motion does not work. Solution: Check for an Ex command being used. (David Bürgin)
-rw-r--r--src/normal.c11
-rw-r--r--src/version.c2
2 files changed, 9 insertions, 4 deletions
diff --git a/src/normal.c b/src/normal.c
index 181dbcb35..879d5c358 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -1504,11 +1504,14 @@ do_pending_operator(cap, old_col, gui_yank)
}
#endif
- /* only redo yank when 'y' flag is in 'cpoptions' */
- /* never redo "zf" (define fold) */
+ /* Only redo yank when 'y' flag is in 'cpoptions'. */
+ /* Never redo "zf" (define fold). */
if ((vim_strchr(p_cpo, CPO_YANK) != NULL || oap->op_type != OP_YANK)
#ifdef FEAT_VISUAL
- && (!VIsual_active || oap->motion_force)
+ && ((!VIsual_active || oap->motion_force)
+ /* Also redo Operator-pending Visual mode mappings */
+ || (VIsual_active && cap->cmdchar == ':'
+ && oap->op_type != OP_COLON))
#endif
&& cap->cmdchar != 'D'
#ifdef FEAT_FOLDING
@@ -1797,7 +1800,7 @@ do_pending_operator(cap, old_col, gui_yank)
prep_redo(oap->regname, 0L, NUL, cap->cmdchar, cap->nchar,
get_op_char(oap->op_type),
get_extra_op_char(oap->op_type));
- else
+ else if (cap->cmdchar != ':')
prep_redo(oap->regname, 0L, NUL, 'v',
get_op_char(oap->op_type),
get_extra_op_char(oap->op_type),
diff --git a/src/version.c b/src/version.c
index aaa8fa794..311dc329d 100644
--- 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 */
/**/
+ 918,
+/**/
917,
/**/
916,