Karsten Hopp fed541
To: vim-dev@vim.org
Karsten Hopp fed541
Subject: Patch 7.2.431
Karsten Hopp fed541
Fcc: outbox
Karsten Hopp fed541
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp fed541
Mime-Version: 1.0
Karsten Hopp fed541
Content-Type: text/plain; charset=UTF-8
Karsten Hopp fed541
Content-Transfer-Encoding: 8bit
Karsten Hopp fed541
------------
Karsten Hopp fed541
Karsten Hopp fed541
Patch 7.2.431
Karsten Hopp fed541
Problem:    ":amenu" moves the cursor when in Insert mode.
Karsten Hopp fed541
Solution:   Use CTRL-\ CTRL-O instead of CTRL-O. (Christian Brabandt)
Karsten Hopp fed541
Files:	    src/menu.c
Karsten Hopp fed541
Karsten Hopp fed541
Karsten Hopp fed541
*** ../vim-7.2.430/src/menu.c	2009-05-17 13:30:58.000000000 +0200
Karsten Hopp fed541
--- src/menu.c	2010-05-14 21:18:00.000000000 +0200
Karsten Hopp fed541
***************
Karsten Hopp fed541
*** 490,495 ****
Karsten Hopp fed541
--- 490,496 ----
Karsten Hopp fed541
      char_u	*next_name;
Karsten Hopp fed541
      int		i;
Karsten Hopp fed541
      int		c;
Karsten Hopp fed541
+     int		d;
Karsten Hopp fed541
  #ifdef FEAT_GUI
Karsten Hopp fed541
      int		idx;
Karsten Hopp fed541
      int		new_idx;
Karsten Hopp fed541
***************
Karsten Hopp fed541
*** 746,751 ****
Karsten Hopp fed541
--- 747,753 ----
Karsten Hopp fed541
  		 * Don't do this if adding a tearbar (addtearoff == FALSE).
Karsten Hopp fed541
  		 * Don't do this for "<Nop>". */
Karsten Hopp fed541
  		c = 0;
Karsten Hopp fed541
+ 		d = 0;
Karsten Hopp fed541
  		if (amenu && call_data != NULL && *call_data != NUL
Karsten Hopp fed541
  #ifdef FEAT_GUI_W32
Karsten Hopp fed541
  		       && addtearoff
Karsten Hopp fed541
***************
Karsten Hopp fed541
*** 761,778 ****
Karsten Hopp fed541
  			    c = Ctrl_C;
Karsten Hopp fed541
  			    break;
Karsten Hopp fed541
  			case MENU_INSERT_MODE:
Karsten Hopp fed541
! 			    c = Ctrl_O;
Karsten Hopp fed541
  			    break;
Karsten Hopp fed541
  		    }
Karsten Hopp fed541
  		}
Karsten Hopp fed541
  
Karsten Hopp fed541
! 		if (c)
Karsten Hopp fed541
  		{
Karsten Hopp fed541
! 		    menu->strings[i] = alloc((unsigned)(STRLEN(call_data) + 4));
Karsten Hopp fed541
  		    if (menu->strings[i] != NULL)
Karsten Hopp fed541
  		    {
Karsten Hopp fed541
  			menu->strings[i][0] = c;
Karsten Hopp fed541
! 			STRCPY(menu->strings[i] + 1, call_data);
Karsten Hopp fed541
  			if (c == Ctrl_C)
Karsten Hopp fed541
  			{
Karsten Hopp fed541
  			    int	    len = (int)STRLEN(menu->strings[i]);
Karsten Hopp fed541
--- 763,787 ----
Karsten Hopp fed541
  			    c = Ctrl_C;
Karsten Hopp fed541
  			    break;
Karsten Hopp fed541
  			case MENU_INSERT_MODE:
Karsten Hopp fed541
! 			    c = Ctrl_BSL;
Karsten Hopp fed541
! 			    d = Ctrl_O;
Karsten Hopp fed541
  			    break;
Karsten Hopp fed541
  		    }
Karsten Hopp fed541
  		}
Karsten Hopp fed541
  
Karsten Hopp fed541
! 		if (c != 0)
Karsten Hopp fed541
  		{
Karsten Hopp fed541
! 		    menu->strings[i] = alloc((unsigned)(STRLEN(call_data) + 5 ));
Karsten Hopp fed541
  		    if (menu->strings[i] != NULL)
Karsten Hopp fed541
  		    {
Karsten Hopp fed541
  			menu->strings[i][0] = c;
Karsten Hopp fed541
! 			if (d == 0)
Karsten Hopp fed541
! 			    STRCPY(menu->strings[i] + 1, call_data);
Karsten Hopp fed541
! 			else
Karsten Hopp fed541
! 			{
Karsten Hopp fed541
! 			    menu->strings[i][1] = d;
Karsten Hopp fed541
! 			    STRCPY(menu->strings[i] + 2, call_data);
Karsten Hopp fed541
! 			}
Karsten Hopp fed541
  			if (c == Ctrl_C)
Karsten Hopp fed541
  			{
Karsten Hopp fed541
  			    int	    len = (int)STRLEN(menu->strings[i]);
Karsten Hopp fed541
*** ../vim-7.2.430/src/version.c	2010-05-14 20:41:00.000000000 +0200
Karsten Hopp fed541
--- src/version.c	2010-05-14 21:11:40.000000000 +0200
Karsten Hopp fed541
***************
Karsten Hopp fed541
*** 683,684 ****
Karsten Hopp fed541
--- 683,686 ----
Karsten Hopp fed541
  {   /* Add new patch number below this line */
Karsten Hopp fed541
+ /**/
Karsten Hopp fed541
+     431,
Karsten Hopp fed541
  /**/
Karsten Hopp fed541
Karsten Hopp fed541
-- 
Karsten Hopp fed541
Despite the cost of living, have you noticed how it remains so popular?
Karsten Hopp fed541
Karsten Hopp fed541
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp fed541
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp fed541
\\\        download, build and distribute -- http://www.A-A-P.org        ///
Karsten Hopp fed541
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///