components/vim/vim72-patches/7.2.346
changeset 198 172fc01ce997
equal deleted inserted replaced
197:fd801ec0737c 198:172fc01ce997
       
     1 To: [email protected]
       
     2 Subject: Patch 7.2.346
       
     3 Fcc: outbox
       
     4 From: Bram Moolenaar <[email protected]>
       
     5 Mime-Version: 1.0
       
     6 Content-Type: text/plain; charset=UTF-8
       
     7 Content-Transfer-Encoding: 8bit
       
     8 ------------
       
     9 
       
    10 Patch 7.2.346
       
    11 Problem:    Repeating a command with @: causes a mapping to be applied twice.
       
    12 Solution:   Do not remap characters inserted in the typeahead buffer. (Kana
       
    13 	    Natsuno)
       
    14 Files:	    src/ops.c
       
    15 
       
    16 
       
    17 *** ../vim-7.2.345/src/ops.c	2010-01-19 14:59:14.000000000 +0100
       
    18 --- src/ops.c	2010-01-19 13:04:46.000000000 +0100
       
    19 ***************
       
    20 *** 1301,1310 ****
       
    21       }
       
    22   }
       
    23   
       
    24       static int
       
    25   put_in_typebuf(s, esc, colon, silent)
       
    26       char_u	*s;
       
    27 !     int		esc;	    /* Escape CSI characters */
       
    28       int		colon;	    /* add ':' before the line */
       
    29       int		silent;
       
    30   {
       
    31 --- 1301,1316 ----
       
    32       }
       
    33   }
       
    34   
       
    35 + /*
       
    36 +  * Insert register contents "s" into the typeahead buffer, so that it will be
       
    37 +  * executed again.
       
    38 +  * When "esc" is TRUE it is to be taken literally: Escape CSI characters and
       
    39 +  * no remapping.
       
    40 +  */
       
    41       static int
       
    42   put_in_typebuf(s, esc, colon, silent)
       
    43       char_u	*s;
       
    44 !     int		esc;
       
    45       int		colon;	    /* add ':' before the line */
       
    46       int		silent;
       
    47   {
       
    48 ***************
       
    49 *** 1312,1318 ****
       
    50   
       
    51       put_reedit_in_typebuf(silent);
       
    52       if (colon)
       
    53 ! 	retval = ins_typebuf((char_u *)"\n", REMAP_YES, 0, TRUE, silent);
       
    54       if (retval == OK)
       
    55       {
       
    56   	char_u	*p;
       
    57 --- 1318,1324 ----
       
    58   
       
    59       put_reedit_in_typebuf(silent);
       
    60       if (colon)
       
    61 ! 	retval = ins_typebuf((char_u *)"\n", REMAP_NONE, 0, TRUE, silent);
       
    62       if (retval == OK)
       
    63       {
       
    64   	char_u	*p;
       
    65 ***************
       
    66 *** 1324,1335 ****
       
    67   	if (p == NULL)
       
    68   	    retval = FAIL;
       
    69   	else
       
    70 ! 	    retval = ins_typebuf(p, REMAP_YES, 0, TRUE, silent);
       
    71   	if (esc)
       
    72   	    vim_free(p);
       
    73       }
       
    74       if (colon && retval == OK)
       
    75 ! 	retval = ins_typebuf((char_u *)":", REMAP_YES, 0, TRUE, silent);
       
    76       return retval;
       
    77   }
       
    78   
       
    79 --- 1330,1342 ----
       
    80   	if (p == NULL)
       
    81   	    retval = FAIL;
       
    82   	else
       
    83 ! 	    retval = ins_typebuf(p, esc ? REMAP_NONE : REMAP_YES,
       
    84 ! 							     0, TRUE, silent);
       
    85   	if (esc)
       
    86   	    vim_free(p);
       
    87       }
       
    88       if (colon && retval == OK)
       
    89 ! 	retval = ins_typebuf((char_u *)":", REMAP_NONE, 0, TRUE, silent);
       
    90       return retval;
       
    91   }
       
    92   
       
    93 *** ../vim-7.2.345/src/version.c	2010-01-27 15:57:17.000000000 +0100
       
    94 --- src/version.c	2010-01-27 16:25:55.000000000 +0100
       
    95 ***************
       
    96 *** 683,684 ****
       
    97 --- 683,686 ----
       
    98   {   /* Add new patch number below this line */
       
    99 + /**/
       
   100 +     346,
       
   101   /**/
       
   102 
       
   103 -- 
       
   104 hundred-and-one symptoms of being an internet addict:
       
   105 155. You forget to eat because you're too busy surfing the net.
       
   106 
       
   107  /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
       
   108 ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
       
   109 \\\        download, build and distribute -- http://www.A-A-P.org        ///
       
   110  \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///