Karsten Hopp 81c285
To: vim-dev@vim.org
Karsten Hopp 81c285
Subject: Patch 7.2.166
Karsten Hopp 81c285
Fcc: outbox
Karsten Hopp 81c285
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp 81c285
Mime-Version: 1.0
Karsten Hopp 81c285
Content-Type: text/plain; charset=ISO-8859-1
Karsten Hopp 81c285
Content-Transfer-Encoding: 8bit
Karsten Hopp 81c285
------------
Karsten Hopp 81c285
Karsten Hopp 81c285
Patch 7.2.166
Karsten Hopp 81c285
Problem:    No completion for ":sign" command.
Karsten Hopp 81c285
Solution:   Add ":sign" completion. (Dominique Pelle)
Karsten Hopp 81c285
Files:	    src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c, src/vim.h,
Karsten Hopp 81c285
	    src/proto/ex_cmds.pro
Karsten Hopp 81c285
Karsten Hopp 81c285
Karsten Hopp 81c285
*** ../vim-7.2.165/src/ex_cmds.c	Tue Feb 24 04:28:40 2009
Karsten Hopp 81c285
--- src/ex_cmds.c	Wed Apr 29 17:08:27 2009
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 6543,6562 ****
Karsten Hopp 81c285
  static void sign_list_defined __ARGS((sign_T *sp));
Karsten Hopp 81c285
  static void sign_undefine __ARGS((sign_T *sp, sign_T *sp_prev));
Karsten Hopp 81c285
  
Karsten Hopp 81c285
! /*
Karsten Hopp 81c285
!  * ":sign" command
Karsten Hopp 81c285
!  */
Karsten Hopp 81c285
!     void
Karsten Hopp 81c285
! ex_sign(eap)
Karsten Hopp 81c285
!     exarg_T	*eap;
Karsten Hopp 81c285
! {
Karsten Hopp 81c285
!     char_u	*arg = eap->arg;
Karsten Hopp 81c285
!     char_u	*p;
Karsten Hopp 81c285
!     int		idx;
Karsten Hopp 81c285
!     sign_T	*sp;
Karsten Hopp 81c285
!     sign_T	*sp_prev;
Karsten Hopp 81c285
!     buf_T	*buf;
Karsten Hopp 81c285
!     static char	*cmds[] = {
Karsten Hopp 81c285
  			"define",
Karsten Hopp 81c285
  #define SIGNCMD_DEFINE	0
Karsten Hopp 81c285
  			"undefine",
Karsten Hopp 81c285
--- 6543,6549 ----
Karsten Hopp 81c285
  static void sign_list_defined __ARGS((sign_T *sp));
Karsten Hopp 81c285
  static void sign_undefine __ARGS((sign_T *sp, sign_T *sp_prev));
Karsten Hopp 81c285
  
Karsten Hopp 81c285
! static char *cmds[] = {
Karsten Hopp 81c285
  			"define",
Karsten Hopp 81c285
  #define SIGNCMD_DEFINE	0
Karsten Hopp 81c285
  			"undefine",
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 6569,6590 ****
Karsten Hopp 81c285
  #define SIGNCMD_UNPLACE	4
Karsten Hopp 81c285
  			"jump",
Karsten Hopp 81c285
  #define SIGNCMD_JUMP	5
Karsten Hopp 81c285
  #define SIGNCMD_LAST	6
Karsten Hopp 81c285
!     };
Karsten Hopp 81c285
  
Karsten Hopp 81c285
      /* Parse the subcommand. */
Karsten Hopp 81c285
      p = skiptowhite(arg);
Karsten Hopp 81c285
!     if (*p != NUL)
Karsten Hopp 81c285
! 	*p++ = NUL;
Karsten Hopp 81c285
!     for (idx = 0; ; ++idx)
Karsten Hopp 81c285
      {
Karsten Hopp 81c285
! 	if (idx == SIGNCMD_LAST)
Karsten Hopp 81c285
! 	{
Karsten Hopp 81c285
! 	    EMSG2(_("E160: Unknown sign command: %s"), arg);
Karsten Hopp 81c285
! 	    return;
Karsten Hopp 81c285
! 	}
Karsten Hopp 81c285
! 	if (STRCMP(arg, cmds[idx]) == 0)
Karsten Hopp 81c285
! 	    break;
Karsten Hopp 81c285
      }
Karsten Hopp 81c285
      arg = skipwhite(p);
Karsten Hopp 81c285
  
Karsten Hopp 81c285
--- 6556,6606 ----
Karsten Hopp 81c285
  #define SIGNCMD_UNPLACE	4
Karsten Hopp 81c285
  			"jump",
Karsten Hopp 81c285
  #define SIGNCMD_JUMP	5
Karsten Hopp 81c285
+ 			NULL
Karsten Hopp 81c285
  #define SIGNCMD_LAST	6
Karsten Hopp 81c285
! };
Karsten Hopp 81c285
! 
Karsten Hopp 81c285
! /*
Karsten Hopp 81c285
!  * Find index of a ":sign" subcmd from its name.
Karsten Hopp 81c285
!  * "*end_cmd" must be writable.
Karsten Hopp 81c285
!  */
Karsten Hopp 81c285
!     static int
Karsten Hopp 81c285
! sign_cmd_idx(begin_cmd, end_cmd)
Karsten Hopp 81c285
!     char	*begin_cmd;	/* begin of sign subcmd */
Karsten Hopp 81c285
!     char	*end_cmd;	/* just after sign subcmd */
Karsten Hopp 81c285
! {
Karsten Hopp 81c285
!     int		idx;
Karsten Hopp 81c285
!     char	save = *end_cmd;
Karsten Hopp 81c285
! 
Karsten Hopp 81c285
!     *end_cmd = NUL;
Karsten Hopp 81c285
!     for (idx = 0; ; ++idx)
Karsten Hopp 81c285
! 	if (cmds[idx] == NULL || STRCMP(begin_cmd, cmds[idx]) == 0)
Karsten Hopp 81c285
! 	    break;
Karsten Hopp 81c285
!     *end_cmd = save;
Karsten Hopp 81c285
!     return idx;
Karsten Hopp 81c285
! }
Karsten Hopp 81c285
! 
Karsten Hopp 81c285
! /*
Karsten Hopp 81c285
!  * ":sign" command
Karsten Hopp 81c285
!  */
Karsten Hopp 81c285
!     void
Karsten Hopp 81c285
! ex_sign(eap)
Karsten Hopp 81c285
!     exarg_T	*eap;
Karsten Hopp 81c285
! {
Karsten Hopp 81c285
!     char_u	*arg = eap->arg;
Karsten Hopp 81c285
!     char_u	*p;
Karsten Hopp 81c285
!     int		idx;
Karsten Hopp 81c285
!     sign_T	*sp;
Karsten Hopp 81c285
!     sign_T	*sp_prev;
Karsten Hopp 81c285
!     buf_T	*buf;
Karsten Hopp 81c285
  
Karsten Hopp 81c285
      /* Parse the subcommand. */
Karsten Hopp 81c285
      p = skiptowhite(arg);
Karsten Hopp 81c285
!     idx = sign_cmd_idx(arg, p);
Karsten Hopp 81c285
!     if (idx == SIGNCMD_LAST)
Karsten Hopp 81c285
      {
Karsten Hopp 81c285
! 	EMSG2(_("E160: Unknown sign command: %s"), arg);
Karsten Hopp 81c285
! 	return;
Karsten Hopp 81c285
      }
Karsten Hopp 81c285
      arg = skipwhite(p);
Karsten Hopp 81c285
  
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 7110,7115 ****
Karsten Hopp 81c285
--- 7126,7311 ----
Karsten Hopp 81c285
  }
Karsten Hopp 81c285
  #endif
Karsten Hopp 81c285
  
Karsten Hopp 81c285
+ #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
Karsten Hopp 81c285
+ static enum
Karsten Hopp 81c285
+ {
Karsten Hopp 81c285
+     EXP_SUBCMD,		/* expand :sign sub-commands */
Karsten Hopp 81c285
+     EXP_DEFINE,		/* expand :sign define {name} args */
Karsten Hopp 81c285
+     EXP_PLACE,		/* expand :sign place {id} args */
Karsten Hopp 81c285
+     EXP_UNPLACE,	/* expand :sign unplace" */
Karsten Hopp 81c285
+     EXP_SIGN_NAMES	/* expand with name of placed signs */
Karsten Hopp 81c285
+ } expand_what;
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+ /*
Karsten Hopp 81c285
+  * Function given to ExpandGeneric() to obtain the sign command
Karsten Hopp 81c285
+  * expansion.
Karsten Hopp 81c285
+  */
Karsten Hopp 81c285
+ /*ARGSUSED*/
Karsten Hopp 81c285
+     char_u *
Karsten Hopp 81c285
+ get_sign_name(xp, idx)
Karsten Hopp 81c285
+     expand_T	*xp;
Karsten Hopp 81c285
+     int		idx;
Karsten Hopp 81c285
+ {
Karsten Hopp 81c285
+     sign_T	*sp;
Karsten Hopp 81c285
+     int		current_idx;
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     switch (expand_what)
Karsten Hopp 81c285
+     {
Karsten Hopp 81c285
+     case EXP_SUBCMD:
Karsten Hopp 81c285
+ 	return (char_u *)cmds[idx];
Karsten Hopp 81c285
+     case EXP_DEFINE:
Karsten Hopp 81c285
+ 	{
Karsten Hopp 81c285
+ 	    char *define_arg[] =
Karsten Hopp 81c285
+ 	    {
Karsten Hopp 81c285
+ 		"icon=", "linehl=", "text=", "texthl=", NULL
Karsten Hopp 81c285
+ 	    };
Karsten Hopp 81c285
+ 	    return (char_u *)define_arg[idx];
Karsten Hopp 81c285
+ 	}
Karsten Hopp 81c285
+     case EXP_PLACE:
Karsten Hopp 81c285
+ 	{
Karsten Hopp 81c285
+ 	    char *place_arg[] =
Karsten Hopp 81c285
+ 	    {
Karsten Hopp 81c285
+ 		"line=", "name=", "file=", "buffer=", NULL
Karsten Hopp 81c285
+ 	    };
Karsten Hopp 81c285
+ 	    return (char_u *)place_arg[idx];
Karsten Hopp 81c285
+ 	}
Karsten Hopp 81c285
+     case EXP_UNPLACE:
Karsten Hopp 81c285
+ 	{
Karsten Hopp 81c285
+ 	    char *unplace_arg[] = { "file=", "buffer=", NULL };
Karsten Hopp 81c285
+ 	    return (char_u *)unplace_arg[idx];
Karsten Hopp 81c285
+ 	}
Karsten Hopp 81c285
+     case EXP_SIGN_NAMES:
Karsten Hopp 81c285
+ 	/* Complete with name of signs already defined */
Karsten Hopp 81c285
+ 	current_idx = 0;
Karsten Hopp 81c285
+ 	for (sp = first_sign; sp != NULL; sp = sp->sn_next)
Karsten Hopp 81c285
+ 	    if (current_idx++ == idx)
Karsten Hopp 81c285
+ 		return sp->sn_name;
Karsten Hopp 81c285
+ 	return NULL;
Karsten Hopp 81c285
+     default:
Karsten Hopp 81c285
+ 	return NULL;
Karsten Hopp 81c285
+     }
Karsten Hopp 81c285
+ }
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+ /*
Karsten Hopp 81c285
+  * Handle command line completion for :sign command.
Karsten Hopp 81c285
+  */
Karsten Hopp 81c285
+     void
Karsten Hopp 81c285
+ set_context_in_sign_cmd(xp, arg)
Karsten Hopp 81c285
+     expand_T	*xp;
Karsten Hopp 81c285
+     char_u	*arg;
Karsten Hopp 81c285
+ {
Karsten Hopp 81c285
+     char_u	*p;
Karsten Hopp 81c285
+     char_u	*end_subcmd;
Karsten Hopp 81c285
+     char_u	*last;
Karsten Hopp 81c285
+     int		cmd_idx;
Karsten Hopp 81c285
+     char_u	*begin_subcmd_args;
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     /* Default: expand subcommands. */
Karsten Hopp 81c285
+     xp->xp_context = EXPAND_SIGN;
Karsten Hopp 81c285
+     expand_what = EXP_SUBCMD;
Karsten Hopp 81c285
+     xp->xp_pattern = arg;
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     end_subcmd = skiptowhite(arg);
Karsten Hopp 81c285
+     if (*end_subcmd == NUL)
Karsten Hopp 81c285
+ 	/* expand subcmd name
Karsten Hopp 81c285
+ 	 * :sign {subcmd}<CTRL-D>*/
Karsten Hopp 81c285
+ 	return;
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     cmd_idx = sign_cmd_idx(arg, end_subcmd);
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     /* :sign {subcmd} {subcmd_args}
Karsten Hopp 81c285
+      *                |
Karsten Hopp 81c285
+      *                begin_subcmd_args */
Karsten Hopp 81c285
+     begin_subcmd_args = skipwhite(end_subcmd);
Karsten Hopp 81c285
+     p = skiptowhite(begin_subcmd_args);
Karsten Hopp 81c285
+     if (*p == NUL)
Karsten Hopp 81c285
+     {
Karsten Hopp 81c285
+ 	/*
Karsten Hopp 81c285
+ 	 * Expand first argument of subcmd when possible.
Karsten Hopp 81c285
+ 	 * For ":jump {id}" and ":unplace {id}", we could
Karsten Hopp 81c285
+ 	 * possibly expand the ids of all signs already placed.
Karsten Hopp 81c285
+ 	 */
Karsten Hopp 81c285
+ 	xp->xp_pattern = begin_subcmd_args;
Karsten Hopp 81c285
+ 	switch (cmd_idx)
Karsten Hopp 81c285
+ 	{
Karsten Hopp 81c285
+ 	    case SIGNCMD_LIST:
Karsten Hopp 81c285
+ 	    case SIGNCMD_UNDEFINE:
Karsten Hopp 81c285
+ 		/* :sign list <CTRL-D>
Karsten Hopp 81c285
+ 		 * :sign undefine <CTRL-D> */
Karsten Hopp 81c285
+ 		expand_what = EXP_SIGN_NAMES;
Karsten Hopp 81c285
+ 		break;
Karsten Hopp 81c285
+ 	    default:
Karsten Hopp 81c285
+ 		xp->xp_context = EXPAND_NOTHING;
Karsten Hopp 81c285
+ 	}
Karsten Hopp 81c285
+ 	return;
Karsten Hopp 81c285
+     }
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     /* expand last argument of subcmd */
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     /* :sign define {name} {args}...
Karsten Hopp 81c285
+      *              |
Karsten Hopp 81c285
+      *              p */
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     /* Loop until reaching last argument. */
Karsten Hopp 81c285
+     do
Karsten Hopp 81c285
+     {
Karsten Hopp 81c285
+ 	p = skipwhite(p);
Karsten Hopp 81c285
+ 	last = p;
Karsten Hopp 81c285
+ 	p = skiptowhite(p);
Karsten Hopp 81c285
+     } while (*p != NUL);
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     p = vim_strchr(last, '=');
Karsten Hopp 81c285
+ 
Karsten Hopp 81c285
+     /* :sign define {name} {args}... {last}=
Karsten Hopp 81c285
+      *                               |     |
Karsten Hopp 81c285
+      *                            last     p */
Karsten Hopp 81c285
+     if (p == NUL)
Karsten Hopp 81c285
+     {
Karsten Hopp 81c285
+ 	/* Expand last argument name (before equal sign). */
Karsten Hopp 81c285
+ 	xp->xp_pattern = last;
Karsten Hopp 81c285
+ 	switch (cmd_idx)
Karsten Hopp 81c285
+ 	{
Karsten Hopp 81c285
+ 	    case SIGNCMD_DEFINE:
Karsten Hopp 81c285
+ 		expand_what = EXP_DEFINE;
Karsten Hopp 81c285
+ 		break;
Karsten Hopp 81c285
+ 	    case SIGNCMD_PLACE:
Karsten Hopp 81c285
+ 		expand_what = EXP_PLACE;
Karsten Hopp 81c285
+ 		break;
Karsten Hopp 81c285
+ 	    case SIGNCMD_JUMP:
Karsten Hopp 81c285
+ 	    case SIGNCMD_UNPLACE:
Karsten Hopp 81c285
+ 		expand_what = EXP_UNPLACE;
Karsten Hopp 81c285
+ 		break;
Karsten Hopp 81c285
+ 	    default:
Karsten Hopp 81c285
+ 		xp->xp_context = EXPAND_NOTHING;
Karsten Hopp 81c285
+ 	}
Karsten Hopp 81c285
+     }
Karsten Hopp 81c285
+     else
Karsten Hopp 81c285
+     {
Karsten Hopp 81c285
+ 	/* Expand last argument value (after equal sign). */
Karsten Hopp 81c285
+ 	xp->xp_pattern = p + 1;
Karsten Hopp 81c285
+ 	switch (cmd_idx)
Karsten Hopp 81c285
+ 	{
Karsten Hopp 81c285
+ 	    case SIGNCMD_DEFINE:
Karsten Hopp 81c285
+ 		if (STRNCMP(last, "texthl", p - last) == 0 ||
Karsten Hopp 81c285
+ 		    STRNCMP(last, "linehl", p - last) == 0)
Karsten Hopp 81c285
+ 		    xp->xp_context = EXPAND_HIGHLIGHT;
Karsten Hopp 81c285
+ 		else if (STRNCMP(last, "icon", p - last) == 0)
Karsten Hopp 81c285
+ 		    xp->xp_context = EXPAND_FILES;
Karsten Hopp 81c285
+ 		else
Karsten Hopp 81c285
+ 		    xp->xp_context = EXPAND_NOTHING;
Karsten Hopp 81c285
+ 		break;
Karsten Hopp 81c285
+ 	    case SIGNCMD_PLACE:
Karsten Hopp 81c285
+ 		if (STRNCMP(last, "name", p - last) == 0)
Karsten Hopp 81c285
+ 		    expand_what = EXP_SIGN_NAMES;
Karsten Hopp 81c285
+ 		else
Karsten Hopp 81c285
+ 		    xp->xp_context = EXPAND_NOTHING;
Karsten Hopp 81c285
+ 		break;
Karsten Hopp 81c285
+ 	    default:
Karsten Hopp 81c285
+ 		xp->xp_context = EXPAND_NOTHING;
Karsten Hopp 81c285
+ 	}
Karsten Hopp 81c285
+     }
Karsten Hopp 81c285
+ }
Karsten Hopp 81c285
+ #endif
Karsten Hopp 81c285
  #endif
Karsten Hopp 81c285
  
Karsten Hopp 81c285
  #if defined(FEAT_GUI) || defined(FEAT_CLIENTSERVER) || defined(PROTO)
Karsten Hopp 81c285
*** ../vim-7.2.165/src/ex_docmd.c	Wed Apr 22 16:22:44 2009
Karsten Hopp 81c285
--- src/ex_docmd.c	Wed Apr 29 17:05:23 2009
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 3695,3700 ****
Karsten Hopp 81c285
--- 3695,3705 ----
Karsten Hopp 81c285
  	    set_context_in_cscope_cmd(xp, arg, ea.cmdidx);
Karsten Hopp 81c285
  	    break;
Karsten Hopp 81c285
  #endif
Karsten Hopp 81c285
+ #ifdef FEAT_SIGNS
Karsten Hopp 81c285
+ 	case CMD_sign:
Karsten Hopp 81c285
+ 	    set_context_in_sign_cmd(xp, arg);
Karsten Hopp 81c285
+ 	    break;
Karsten Hopp 81c285
+ #endif
Karsten Hopp 81c285
  #ifdef FEAT_LISTCMDS
Karsten Hopp 81c285
  	case CMD_bdelete:
Karsten Hopp 81c285
  	case CMD_bwipeout:
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 5218,5223 ****
Karsten Hopp 81c285
--- 5223,5231 ----
Karsten Hopp 81c285
      {EXPAND_MENUS, "menu"},
Karsten Hopp 81c285
      {EXPAND_SETTINGS, "option"},
Karsten Hopp 81c285
      {EXPAND_SHELLCMD, "shellcmd"},
Karsten Hopp 81c285
+ #if defined(FEAT_SIGNS)
Karsten Hopp 81c285
+     {EXPAND_SIGN, "sign"},
Karsten Hopp 81c285
+ #endif
Karsten Hopp 81c285
      {EXPAND_TAGS, "tag"},
Karsten Hopp 81c285
      {EXPAND_TAGS_LISTFILES, "tag_listfiles"},
Karsten Hopp 81c285
      {EXPAND_USER_VARS, "var"},
Karsten Hopp 81c285
*** ../vim-7.2.165/src/ex_getln.c	Wed Apr 29 12:03:35 2009
Karsten Hopp 81c285
--- src/ex_getln.c	Wed Apr 29 12:51:42 2009
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 325,331 ****
Karsten Hopp 81c285
  #endif
Karsten Hopp 81c285
  
Karsten Hopp 81c285
  #ifdef FEAT_DIGRAPHS
Karsten Hopp 81c285
!     do_digraph(-1);		/* init digraph typahead */
Karsten Hopp 81c285
  #endif
Karsten Hopp 81c285
  
Karsten Hopp 81c285
      /*
Karsten Hopp 81c285
--- 325,331 ----
Karsten Hopp 81c285
  #endif
Karsten Hopp 81c285
  
Karsten Hopp 81c285
  #ifdef FEAT_DIGRAPHS
Karsten Hopp 81c285
!     do_digraph(-1);		/* init digraph typeahead */
Karsten Hopp 81c285
  #endif
Karsten Hopp 81c285
  
Karsten Hopp 81c285
      /*
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 4521,4526 ****
Karsten Hopp 81c285
--- 4521,4529 ----
Karsten Hopp 81c285
  #ifdef FEAT_CSCOPE
Karsten Hopp 81c285
  	    {EXPAND_CSCOPE, get_cscope_name, TRUE},
Karsten Hopp 81c285
  #endif
Karsten Hopp 81c285
+ #ifdef FEAT_SIGNS
Karsten Hopp 81c285
+ 	    {EXPAND_SIGN, get_sign_name, TRUE},
Karsten Hopp 81c285
+ #endif
Karsten Hopp 81c285
  #if (defined(HAVE_LOCALE_H) || defined(X_LOCALE)) \
Karsten Hopp 81c285
  	&& (defined(FEAT_GETTEXT) || defined(FEAT_MBYTE))
Karsten Hopp 81c285
  	    {EXPAND_LANGUAGE, get_lang_arg, TRUE},
Karsten Hopp 81c285
*** ../vim-7.2.165/src/vim.h	Wed Mar 18 12:50:58 2009
Karsten Hopp 81c285
--- src/vim.h	Wed Apr 29 12:51:42 2009
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 709,714 ****
Karsten Hopp 81c285
--- 709,715 ----
Karsten Hopp 81c285
  #define EXPAND_USER_LIST	31
Karsten Hopp 81c285
  #define EXPAND_SHELLCMD		32
Karsten Hopp 81c285
  #define EXPAND_CSCOPE		33
Karsten Hopp 81c285
+ #define EXPAND_SIGN		34
Karsten Hopp 81c285
  
Karsten Hopp 81c285
  /* Values for exmode_active (0 is no exmode) */
Karsten Hopp 81c285
  #define EXMODE_NORMAL		1
Karsten Hopp 81c285
*** ../vim-7.2.165/src/proto/ex_cmds.pro	Tue Feb 24 04:28:40 2009
Karsten Hopp 81c285
--- src/proto/ex_cmds.pro	Wed Apr 29 17:10:29 2009
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 40,46 ****
Karsten Hopp 81c285
  int read_viminfo_sub_string __ARGS((vir_T *virp, int force));
Karsten Hopp 81c285
  void write_viminfo_sub_string __ARGS((FILE *fp));
Karsten Hopp 81c285
  void free_old_sub __ARGS((void));
Karsten Hopp 81c285
- void free_signs __ARGS((void));
Karsten Hopp 81c285
  int prepare_tagpreview __ARGS((int undo_sync));
Karsten Hopp 81c285
  void ex_help __ARGS((exarg_T *eap));
Karsten Hopp 81c285
  char_u *check_help_lang __ARGS((char_u *arg));
Karsten Hopp 81c285
--- 40,45 ----
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 56,60 ****
Karsten Hopp 81c285
--- 55,62 ----
Karsten Hopp 81c285
  char_u *sign_get_text __ARGS((int typenr));
Karsten Hopp 81c285
  void *sign_get_image __ARGS((int typenr));
Karsten Hopp 81c285
  char_u *sign_typenr2name __ARGS((int typenr));
Karsten Hopp 81c285
+ void free_signs __ARGS((void));
Karsten Hopp 81c285
+ char_u *get_sign_name __ARGS((expand_T *xp, int idx));
Karsten Hopp 81c285
+ void set_context_in_sign_cmd __ARGS((expand_T *xp, char_u *arg));
Karsten Hopp 81c285
  void ex_drop __ARGS((exarg_T *eap));
Karsten Hopp 81c285
  /* vim: set ft=c : */
Karsten Hopp 81c285
*** ../vim-7.2.165/src/version.c	Wed Apr 29 18:01:23 2009
Karsten Hopp 81c285
--- src/version.c	Wed Apr 29 18:43:14 2009
Karsten Hopp 81c285
***************
Karsten Hopp 81c285
*** 678,679 ****
Karsten Hopp 81c285
--- 678,681 ----
Karsten Hopp 81c285
  {   /* Add new patch number below this line */
Karsten Hopp 81c285
+ /**/
Karsten Hopp 81c285
+     166,
Karsten Hopp 81c285
  /**/
Karsten Hopp 81c285
Karsten Hopp 81c285
-- 
Karsten Hopp 81c285
Did you ever stop to think...  and forget to start again?
Karsten Hopp 81c285
                                  -- Steven Wright
Karsten Hopp 81c285
Karsten Hopp 81c285
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp 81c285
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp 81c285
\\\        download, build and distribute -- http://www.A-A-P.org        ///
Karsten Hopp 81c285
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///