changeset 3859:ba9c9d0c4ff4 v7.3.686

updated for version 7.3.686 Problem: Using CTRL-\ e mappings is useful also when entering an expression, but it doesn't work. (Marcin Szamotulski) Solution: Allow using CTRL-\ e when entering an expression if it was not typed.
author Bram Moolenaar <bram@vim.org>
date Thu, 11 Oct 2012 04:04:37 +0200
parents 7da5d8b24ad6
children cd8958972807
files src/ex_getln.c src/version.c
diffstat 2 files changed, 6 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -667,9 +667,10 @@ getcmdline(firstc, count, indent)
 	    c = plain_vgetc();
 	    --no_mapping;
 	    --allow_keys;
-	    /* CTRL-\ e doesn't work when obtaining an expression. */
-	    if (c != Ctrl_N && c != Ctrl_G
-				     && (c != 'e' || ccline.cmdfirstc == '='))
+	    /* CTRL-\ e doesn't work when obtaining an expression, unless it
+	     * is in a mapping. */
+	    if (c != Ctrl_N && c != Ctrl_G && (c != 'e'
+				    || (ccline.cmdfirstc == '=' && KeyTyped)))
 	    {
 		vungetc(c);
 		c = Ctrl_BSL;
--- a/src/version.c
+++ b/src/version.c
@@ -720,6 +720,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    686,
+/**/
     685,
 /**/
     684,