Karsten Hopp ab2b52
To: vim-dev@vim.org
Karsten Hopp ab2b52
Subject: patch 7.0.223
Karsten Hopp ab2b52
Fcc: outbox
Karsten Hopp ab2b52
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp ab2b52
Mime-Version: 1.0
Karsten Hopp ab2b52
Content-Type: text/plain; charset=ISO-8859-1
Karsten Hopp ab2b52
Content-Transfer-Encoding: 8bit
Karsten Hopp ab2b52
------------
Karsten Hopp ab2b52
Karsten Hopp ab2b52
Patch 7.0.223
Karsten Hopp ab2b52
Problem:    Unprintable characters in completion text mess up the popup menu.
Karsten Hopp ab2b52
	    (Gombault Damien)
Karsten Hopp ab2b52
Solution:   Use strtrans() to make the text printable.
Karsten Hopp ab2b52
Files:	    src/charset.c, src/popupmnu.c
Karsten Hopp ab2b52
Karsten Hopp ab2b52
Karsten Hopp ab2b52
*** ../vim-7.0.222/src/charset.c	Tue Apr 18 00:04:40 2006
Karsten Hopp ab2b52
--- src/charset.c	Sat Mar 24 21:10:37 2007
Karsten Hopp ab2b52
***************
Karsten Hopp ab2b52
*** 317,323 ****
Karsten Hopp ab2b52
      }
Karsten Hopp ab2b52
  }
Karsten Hopp ab2b52
  
Karsten Hopp ab2b52
! #if defined(FEAT_EVAL) || defined(FEAT_TITLE) || defined(PROTO)
Karsten Hopp ab2b52
  /*
Karsten Hopp ab2b52
   * Translate a string into allocated memory, replacing special chars with
Karsten Hopp ab2b52
   * printable chars.  Returns NULL when out of memory.
Karsten Hopp ab2b52
--- 317,324 ----
Karsten Hopp ab2b52
      }
Karsten Hopp ab2b52
  }
Karsten Hopp ab2b52
  
Karsten Hopp ab2b52
! #if defined(FEAT_EVAL) || defined(FEAT_TITLE) || defined(FEAT_INS_EXPAND) \
Karsten Hopp ab2b52
! 	|| defined(PROTO)
Karsten Hopp ab2b52
  /*
Karsten Hopp ab2b52
   * Translate a string into allocated memory, replacing special chars with
Karsten Hopp ab2b52
   * printable chars.  Returns NULL when out of memory.
Karsten Hopp ab2b52
*** ../vim-7.0.222/src/popupmnu.c	Tue Aug 22 21:51:18 2006
Karsten Hopp ab2b52
--- src/popupmnu.c	Sat Mar 24 21:07:39 2007
Karsten Hopp ab2b52
***************
Karsten Hopp ab2b52
*** 280,287 ****
Karsten Hopp ab2b52
  		    w = ptr2cells(p);
Karsten Hopp ab2b52
  		    if (*p == NUL || *p == TAB || totwidth + w > pum_width)
Karsten Hopp ab2b52
  		    {
Karsten Hopp ab2b52
! 			/* Display the text that fits or comes before a Tab. */
Karsten Hopp ab2b52
! 			screen_puts_len(s, (int)(p - s), row, col, attr);
Karsten Hopp ab2b52
  			col += width;
Karsten Hopp ab2b52
  
Karsten Hopp ab2b52
  			if (*p != TAB)
Karsten Hopp ab2b52
--- 280,299 ----
Karsten Hopp ab2b52
  		    w = ptr2cells(p);
Karsten Hopp ab2b52
  		    if (*p == NUL || *p == TAB || totwidth + w > pum_width)
Karsten Hopp ab2b52
  		    {
Karsten Hopp ab2b52
! 			/* Display the text that fits or comes before a Tab.
Karsten Hopp ab2b52
! 			 * First convert it to printable characters. */
Karsten Hopp ab2b52
! 			char_u *st;
Karsten Hopp ab2b52
! 			int  saved = *p;
Karsten Hopp ab2b52
! 
Karsten Hopp ab2b52
! 			*p = NUL;
Karsten Hopp ab2b52
! 			st = transstr(s);
Karsten Hopp ab2b52
! 			*p = saved;
Karsten Hopp ab2b52
! 			if (st != NULL)
Karsten Hopp ab2b52
! 			{
Karsten Hopp ab2b52
! 			    screen_puts_len(st, (int)STRLEN(st), row, col,
Karsten Hopp ab2b52
! 									attr);
Karsten Hopp ab2b52
! 			    vim_free(st);
Karsten Hopp ab2b52
! 			}
Karsten Hopp ab2b52
  			col += width;
Karsten Hopp ab2b52
  
Karsten Hopp ab2b52
  			if (*p != TAB)
Karsten Hopp ab2b52
*** ../vim-7.0.222/src/version.c	Tue Mar 27 11:00:43 2007
Karsten Hopp ab2b52
--- src/version.c	Tue Mar 27 12:42:15 2007
Karsten Hopp ab2b52
***************
Karsten Hopp ab2b52
*** 668,669 ****
Karsten Hopp ab2b52
--- 668,671 ----
Karsten Hopp ab2b52
  {   /* Add new patch number below this line */
Karsten Hopp ab2b52
+ /**/
Karsten Hopp ab2b52
+     223,
Karsten Hopp ab2b52
  /**/
Karsten Hopp ab2b52
Karsten Hopp ab2b52
-- 
Karsten Hopp ab2b52
Violators can be fined, arrested or jailed for making ugly faces at a dog.
Karsten Hopp ab2b52
		[real standing law in Oklahoma, United States of America]
Karsten Hopp ab2b52
Karsten Hopp ab2b52
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp ab2b52
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp ab2b52
\\\        download, build and distribute -- http://www.A-A-P.org        ///
Karsten Hopp ab2b52
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///