]> granicus.if.org Git - vim/commitdiff
updated for version 7.0-177 v7.0.177
authorBram Moolenaar <Bram@vim.org>
Tue, 5 Dec 2006 20:43:17 +0000 (20:43 +0000)
committerBram Moolenaar <Bram@vim.org>
Tue, 5 Dec 2006 20:43:17 +0000 (20:43 +0000)
src/getchar.c
src/normal.c
src/version.c

index e623ce666c087c48749066a645b7a63c804c646c..6705202785bed8c34a54824f97be1eee64339a2c 100644 (file)
@@ -76,7 +76,7 @@ static int            maphash_valid = FALSE;
  */
 static mapblock_T      *first_abbr = NULL; /* first entry in abbrlist */
 
-static int             KeyNoremap = FALSE; /* remapping disabled */
+static int             KeyNoremap = 0;     /* remapping flags */
 
 /*
  * variables used by vgetorpeek() and flush_buffers()
@@ -1035,6 +1035,8 @@ ins_typebuf(str, noremap, offset, nottyped, silent)
 /*
  * Put character "c" back into the typeahead buffer.
  * Can be used for a character obtained by vgetc() that needs to be put back.
+ * Uses cmd_silent, KeyTyped and KeyNoremap to restore the flags belonging to
+ * the char.
  */
     void
 ins_char_typebuf(c)
@@ -1061,7 +1063,7 @@ ins_char_typebuf(c)
        buf[1] = NUL;
 #endif
     }
-    (void)ins_typebuf(buf, REMAP_YES, 0, !KeyTyped, FALSE);
+    (void)ins_typebuf(buf, KeyNoremap, 0, !KeyTyped, cmd_silent);
 }
 
 /*
@@ -2270,9 +2272,8 @@ vgetorpeek(advance)
                                        gotchars(typebuf.tb_buf
                                                         + typebuf.tb_off, 1);
                                    }
-                                   KeyNoremap = (typebuf.tb_noremap[
-                                                  typebuf.tb_off]
-                                                      & (RM_NONE|RM_SCRIPT));
+                                   KeyNoremap = typebuf.tb_noremap[
+                                                             typebuf.tb_off];
                                    del_typebuf(1, 0);
                                }
                                break;      /* got character, break for loop */
@@ -4196,7 +4197,8 @@ check_abbr(c, ptr, col, mincol)
 
     if (typebuf.tb_no_abbr_cnt)        /* abbrev. are not recursive */
        return FALSE;
-    if (KeyNoremap)            /* no remapping implies no abbreviation */
+    if ((KeyNoremap & (RM_NONE|RM_SCRIPT)) != 0)
+       /* no remapping implies no abbreviation */
        return FALSE;
 
     /*
index 94d98996be8c10afbf87505593403e006ab8b8bd..bd4b1779de96865cbd8b0fb9008e39bef4b01454 100644 (file)
@@ -651,9 +651,8 @@ normal_cmd(oap, toplevel)
        /* Fake a "c"hange command.  When "restart_edit" is set (e.g., because
         * 'insertmode' is set) fake a "d"elete command, Insert mode will
         * restart automatically.
-        * Insert the typed character in the typeahead buffer, so that it will
-        * be mapped in Insert mode.  Required for ":lmap" to work.  May cause
-        * mapping a character from ":vnoremap"... */
+        * Insert the typed character in the typeahead buffer, so that it can
+        * be mapped in Insert mode.  Required for ":lmap" to work. */
        ins_char_typebuf(c);
        if (restart_edit != 0)
            c = 'd';
index 531c126720a81d921e928f043fd67a87f512ec2c..e20349dc97307f8e75ff8636ce8216507eef998b 100644 (file)
@@ -666,6 +666,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    177,
 /**/
     176,
 /**/