r1020 - in /trunk/packages/vim: debian/ upstream/patches/

jamessan at users.alioth.debian.org jamessan at users.alioth.debian.org
Fri Sep 14 22:19:44 UTC 2007


Author: jamessan
Date: Fri Sep 14 22:19:43 2007
New Revision: 1020

URL: http://svn.debian.org/wsvn/pkg-vim/?sc=1&rev=1020
Log:
* New upstream patches (057 - 108), see README.gz for details.

Added:
    trunk/packages/vim/upstream/patches/7.1.057
    trunk/packages/vim/upstream/patches/7.1.058
    trunk/packages/vim/upstream/patches/7.1.059
    trunk/packages/vim/upstream/patches/7.1.060
    trunk/packages/vim/upstream/patches/7.1.061
    trunk/packages/vim/upstream/patches/7.1.062
    trunk/packages/vim/upstream/patches/7.1.063
    trunk/packages/vim/upstream/patches/7.1.064
    trunk/packages/vim/upstream/patches/7.1.065
    trunk/packages/vim/upstream/patches/7.1.066
    trunk/packages/vim/upstream/patches/7.1.067
    trunk/packages/vim/upstream/patches/7.1.068
    trunk/packages/vim/upstream/patches/7.1.069
    trunk/packages/vim/upstream/patches/7.1.070
    trunk/packages/vim/upstream/patches/7.1.071
    trunk/packages/vim/upstream/patches/7.1.072
    trunk/packages/vim/upstream/patches/7.1.073
    trunk/packages/vim/upstream/patches/7.1.074
    trunk/packages/vim/upstream/patches/7.1.075
    trunk/packages/vim/upstream/patches/7.1.076
    trunk/packages/vim/upstream/patches/7.1.077
    trunk/packages/vim/upstream/patches/7.1.078
    trunk/packages/vim/upstream/patches/7.1.079
    trunk/packages/vim/upstream/patches/7.1.080
    trunk/packages/vim/upstream/patches/7.1.081
    trunk/packages/vim/upstream/patches/7.1.082
    trunk/packages/vim/upstream/patches/7.1.083
    trunk/packages/vim/upstream/patches/7.1.084
    trunk/packages/vim/upstream/patches/7.1.085
    trunk/packages/vim/upstream/patches/7.1.086
    trunk/packages/vim/upstream/patches/7.1.087
    trunk/packages/vim/upstream/patches/7.1.088
    trunk/packages/vim/upstream/patches/7.1.089
    trunk/packages/vim/upstream/patches/7.1.090
    trunk/packages/vim/upstream/patches/7.1.091
    trunk/packages/vim/upstream/patches/7.1.092
    trunk/packages/vim/upstream/patches/7.1.093
    trunk/packages/vim/upstream/patches/7.1.094
    trunk/packages/vim/upstream/patches/7.1.095
    trunk/packages/vim/upstream/patches/7.1.096
    trunk/packages/vim/upstream/patches/7.1.097
    trunk/packages/vim/upstream/patches/7.1.098
    trunk/packages/vim/upstream/patches/7.1.099
    trunk/packages/vim/upstream/patches/7.1.100
    trunk/packages/vim/upstream/patches/7.1.101
    trunk/packages/vim/upstream/patches/7.1.102
    trunk/packages/vim/upstream/patches/7.1.103
    trunk/packages/vim/upstream/patches/7.1.104
    trunk/packages/vim/upstream/patches/7.1.105
    trunk/packages/vim/upstream/patches/7.1.106
    trunk/packages/vim/upstream/patches/7.1.107
    trunk/packages/vim/upstream/patches/7.1.108
Modified:
    trunk/packages/vim/debian/README
    trunk/packages/vim/debian/changelog

Modified: trunk/packages/vim/debian/README
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/debian/README?rev=1020&op=diff
==============================================================================
--- trunk/packages/vim/debian/README (original)
+++ trunk/packages/vim/debian/README Fri Sep 14 22:19:43 2007
@@ -81,3 +81,54 @@
   4451  7.1.054  accessing uninitialized memory when displaying the fold column
   5414  7.1.055  using strcpy() with arguments that overlap
   3151  7.1.056  scrolling back at more prompt doesn't work properly
+  2514  7.1.057  CursorHold causes problems for Normal and Visual mode commands
+ 10612  7.1.058  completion menu doesn't work properly when 'righleft' is set
+  3350  7.1.059  in Ex mode "g/^/vi" and pressing CTRL-C: Vim hangs and beeps
+  5066  7.1.060  splitting quickfix window messes up window layout
+  6320  7.1.061  with latin1 'ignorecase' doesn't work for umlauts
+  1550  7.1.062  (after 7.0.038) C comment indent can be wrong
+  1391  7.1.063  compiler warning for uninitialized variable
+  1405  7.1.064  on interix some files appear not to exist
+  2983  7.1.065  Win32: MingW Compilation problem for newer version of w32api
+  4553  7.1.066  when 'bomb' is changed the file should be considered modified
+  7701  7.1.067  'infercase' doesn't work for thesaurus completion
+  6709  7.1.068  'equalalways' equalizes windows too often
+  2757  7.1.069  GTK GUI: confirm() dialog has a default button when not wanted
+  1560  7.1.070  (extra) Win32 GUI: same confirm() default button problem
+  5534  7.1.071  (after 7.1.040) add a basic test for regexp patterns
+  5705  7.1.072  (extra, after 7.1.041 and 7.1.071) extra part of 7.1.071
+  3595  7.1.073  (after 7.1.062) crash when 'preserveindent' is set
+  5259  7.1.074  crash when using string() on a recursively nested List
+  1686  7.1.075  ":let v:statusmsg" reads memory already freed
+  2376  7.1.076  a couple more strcpy() with overlapping arguments
+  2678  7.1.078  dropping file name on gvim containing CSI byte doesn't work
+  2922  7.1.079  "@" character in 'isfname' doesn't pick up umlauts for latin1
+  2960  7.1.080  (extra) Compiler warnings for gvimex.cpp
+  3253  7.1.081  completion doesn't work after ":!cat <foo"
+  3464  7.1.082  matchparen plugin doesn't update after window split
+  3448  7.1.083  (after 7.1.081) completion doesn't work with wildcards
+  1671  7.1.084  netbeans doesn't get fileOpened events when using -nb twice
+  2496  7.1.085  after ":split fold.c" folds in one window disappear
+  3561  7.1.086  crash when using specific Python syntax highlighting
+  4165  7.1.087  cscope: reading past command end; writing past buffer end
+  2276  7.1.088  (extra) window position wrong when using ":winpos"
+ 13841  7.1.089  when listing variables text of command is not cleared
+  2372  7.1.090  compiler warning on Mac OS X 10.5 for sigaltstack()
+ 10488  7.1.091  (extra) Win32: add --windowid argument
+  2901  7.1.092  (extra, after 7.1.088) wrong args for MoveWindowStructure()
+ 15955  7.1.093  read past end of screen line when checking for double width
+  1901  7.1.094  using wrong buffer to check if syntax HL is present
+  5809  7.1.095  autocmmand for focus events may cause problems
+  2287  7.1.096  reading past end of a string when resizing Vim
+  1620  7.1.097  "setlocal stl=%!expr" doesn't work
+  1780  7.1.098  ":call s:var()" doesn't work if "s:var" is a Funcref
+  4552  7.1.099  ":mkvimrc" doesn't work properly when 'paste' or 'keymap' set
+ 14551  7.1.100  Win32: Executing cscope doesn't always work properly
+  1614  7.1.101  Ruby: The Buffer.line= method does not work
+  3276  7.1.102  Perl interface doesn't compile with new version of Perl
+  1976  7.1.103  "dw" past end of last line deletes a character
+ 14346  7.1.104  (after 7.1.095) when 'lazyredraw' set redraw may be postponed
+  2426  7.1.105  internal error when using "0 ? {'a': 1} : {}"
+  1580  7.1.106  ":messages" doesn't quit listing on ":"
+  4081  7.1.107  Visual block mode "s" that auto-indents fails in other lines
+  2633  7.1.108  (after 7.1.100) Win32: compilation problems in Cscope code

Modified: trunk/packages/vim/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/debian/changelog?rev=1020&op=diff
==============================================================================
--- trunk/packages/vim/debian/changelog (original)
+++ trunk/packages/vim/debian/changelog Fri Sep 14 22:19:43 2007
@@ -1,10 +1,13 @@
-vim (1:7.1-056+3) UNRELEASED; urgency=low
+vim (1:7.1-108+1) UNRELEASED; urgency=low
+
+  [ Debian Vim Maintainers ]
+  * New upstream patches (057 - 108), see README.gz for details.
 
   [ Stefano Zacchiroli ]
   * debian/control
     - removing idle contributors from the Uploaders field
 
- -- Stefano Zacchiroli <zack at debian.org>  Fri, 17 Aug 2007 13:34:43 +0200
+ -- James Vega <jamessan at debian.org>  Fri, 14 Sep 2007 18:17:25 -0400
 
 vim (1:7.1-056+2) unstable; urgency=low
 

Added: trunk/packages/vim/upstream/patches/7.1.057
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.057?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.057 (added)
+++ trunk/packages/vim/upstream/patches/7.1.057 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,91 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.057
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.057
+Problem:    Problem with CursorHoldI when using "r" in Visual mode (Max
+            Dyckhoff)
+Solution:   Ignore CursorHold(I) when getting a second character for a Normal
+            mode command.  Also abort the "r" command in Visual when a special
+            key is typed.
+Files:      src/normal.c
+
+
+*** ../vim-7.1.056/src/normal.c	Tue Jul 10 14:02:51 2007
+--- src/normal.c	Sun Aug  5 21:57:43 2007
+***************
+*** 889,894 ****
+--- 889,899 ----
+  
+  	++no_mapping;
+  	++allow_keys;		/* no mapping for nchar, but allow key codes */
++ #ifdef FEAT_AUTOCMD
++ 	/* Don't generate a CursorHold event here, most commands can't handle
++ 	 * it, e.g., nv_replace(), nv_csearch(). */
++ 	did_cursorhold = TRUE;
++ #endif
+  	if (ca.cmdchar == 'g')
+  	{
+  	    /*
+***************
+*** 6662,6667 ****
+--- 6668,6680 ----
+      else
+  	had_ctrl_v = NUL;
+  
++     /* Abort if the character is a special key. */
++     if (IS_SPECIAL(cap->nchar))
++     {
++ 	clearopbeep(cap->oap);
++ 	return;
++     }
++ 
+  #ifdef FEAT_VISUAL
+      /* Visual mode "r" */
+      if (VIsual_active)
+***************
+*** 6688,6698 ****
+      }
+  #endif
+  
+!     /*
+!      * Check for a special key or not enough characters to replace.
+!      */
+      ptr = ml_get_cursor();
+!     if (IS_SPECIAL(cap->nchar) || STRLEN(ptr) < (unsigned)cap->count1
+  #ifdef FEAT_MBYTE
+  	    || (has_mbyte && mb_charlen(ptr) < cap->count1)
+  #endif
+--- 6701,6709 ----
+      }
+  #endif
+  
+!     /* Abort if not enough characters to replace. */
+      ptr = ml_get_cursor();
+!     if (STRLEN(ptr) < (unsigned)cap->count1
+  #ifdef FEAT_MBYTE
+  	    || (has_mbyte && mb_charlen(ptr) < cap->count1)
+  #endif
+*** ../vim-7.1.056/src/version.c	Tue Aug  7 21:59:26 2007
+--- src/version.c	Wed Aug  8 21:39:43 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     57,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+95. Only communication in your household is through email.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.058
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.058?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.058 (added)
+++ trunk/packages/vim/upstream/patches/7.1.058 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,397 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.058
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.058
+Problem:    When 'rightleft' is set the completion menu is positioned wrong.
+	    (Baha-Eddine MOKADEM)
+Solution:   Fix the completion menu. (Martin Toft)
+Files:	    src/popupmnu.c, src/proto/search.pro, src/search.c
+
+
+*** ../vim-7.1.057/src/popupmnu.c	Thu Jun 28 21:23:52 2007
+--- src/popupmnu.c	Wed Aug  1 15:43:06 2007
+***************
+*** 75,81 ****
+  
+      row = curwin->w_cline_row + W_WINROW(curwin);
+      height = curwin->w_cline_height;
+-     col = curwin->w_wcol + W_WINCOL(curwin) - curwin->w_leftcol;
+  
+      if (firstwin->w_p_pvw)
+  	top_clear = firstwin->w_height;
+--- 75,80 ----
+***************
+*** 167,172 ****
+--- 166,180 ----
+      pum_base_width = max_width;
+      pum_kind_width = kind_width;
+  
++     /* Calculate column */
++ #ifdef FEAT_RIGHTLEFT
++     if (curwin->w_p_rl)
++ 	col = W_WINCOL(curwin) + W_WIDTH(curwin) - curwin->w_wcol -
++ 							curwin->w_leftcol - 1;
++     else
++ #endif
++ 	col = W_WINCOL(curwin) + curwin->w_wcol - curwin->w_leftcol;
++ 
+      /* if there are more items than room we need a scrollbar */
+      if (pum_height < size)
+      {
+***************
+*** 179,189 ****
+      if (def_width < max_width)
+  	def_width = max_width;
+  
+!     if (col < Columns - PUM_DEF_WIDTH || col < Columns - max_width)
+      {
+  	/* align pum column with "col" */
+  	pum_col = col;
+! 	pum_width = Columns - pum_col - pum_scrollbar;
+  	if (pum_width > max_width + kind_width + extra_width + 1
+  						 && pum_width > PUM_DEF_WIDTH)
+  	{
+--- 187,209 ----
+      if (def_width < max_width)
+  	def_width = max_width;
+  
+!     if (((col < Columns - PUM_DEF_WIDTH || col < Columns - max_width)
+! #ifdef FEAT_RIGHTLEFT
+! 		&& !curwin->w_p_rl)
+! 	    || (curwin->w_p_rl && (col > PUM_DEF_WIDTH || col > max_width)
+! #endif
+!        ))
+      {
+  	/* align pum column with "col" */
+  	pum_col = col;
+! 
+! #ifdef FEAT_RIGHTLEFT
+! 	if (curwin->w_p_rl)
+! 	    pum_width = pum_col - pum_scrollbar + 1;
+! 	else
+! #endif
+! 	    pum_width = Columns - pum_col - pum_scrollbar;
+! 
+  	if (pum_width > max_width + kind_width + extra_width + 1
+  						 && pum_width > PUM_DEF_WIDTH)
+  	{
+***************
+*** 195,208 ****
+      else if (Columns < def_width)
+      {
+  	/* not enough room, will use what we have */
+! 	pum_col = 0;
+  	pum_width = Columns - 1;
+      }
+      else
+      {
+  	if (max_width > PUM_DEF_WIDTH)
+  	    max_width = PUM_DEF_WIDTH;	/* truncate */
+! 	pum_col = Columns - max_width;
+  	pum_width = max_width - pum_scrollbar;
+      }
+  
+--- 215,238 ----
+      else if (Columns < def_width)
+      {
+  	/* not enough room, will use what we have */
+! #ifdef FEAT_RIGHTLEFT
+! 	if (curwin->w_p_rl)
+! 	    pum_col = Columns - 1;
+! 	else
+! #endif
+! 	    pum_col = 0;
+  	pum_width = Columns - 1;
+      }
+      else
+      {
+  	if (max_width > PUM_DEF_WIDTH)
+  	    max_width = PUM_DEF_WIDTH;	/* truncate */
+! #ifdef FEAT_RIGHTLEFT
+! 	if (curwin->w_p_rl)
+! 	    pum_col = max_width - 1;
+! 	else
+! #endif
+! 	    pum_col = Columns - max_width;
+  	pum_width = max_width - pum_scrollbar;
+      }
+  
+***************
+*** 255,262 ****
+  	attr = (idx == pum_selected) ? attr_select : attr_norm;
+  
+  	/* prepend a space if there is room */
+! 	if (pum_col > 0)
+! 	    screen_putchar(' ', row, pum_col - 1, attr);
+  
+  	/* Display each entry, use two spaces for a Tab.
+  	 * Do this 3 times: For the main text, kind and extra info */
+--- 285,300 ----
+  	attr = (idx == pum_selected) ? attr_select : attr_norm;
+  
+  	/* prepend a space if there is room */
+! #ifdef FEAT_RIGHTLEFT
+! 	if (curwin->w_p_rl)
+! 	{
+! 	    if (pum_col < W_WINCOL(curwin) + W_WIDTH(curwin) - 1)
+! 		screen_putchar(' ', row, pum_col + 1, attr);
+! 	}
+! 	else
+! #endif
+! 	    if (pum_col > 0)
+! 		screen_putchar(' ', row, pum_col - 1, attr);
+  
+  	/* Display each entry, use two spaces for a Tab.
+  	 * Do this 3 times: For the main text, kind and extra info */
+***************
+*** 282,307 ****
+  		    {
+  			/* Display the text that fits or comes before a Tab.
+  			 * First convert it to printable characters. */
+! 			char_u *st;
+! 			int  saved = *p;
+  
+  			*p = NUL;
+  			st = transstr(s);
+  			*p = saved;
+! 			if (st != NULL)
+  			{
+! 			    screen_puts_len(st, (int)STRLEN(st), row, col,
+  									attr);
+! 			    vim_free(st);
+  			}
+- 			col += width;
+  
+  			if (*p != TAB)
+  			    break;
+  
+  			/* Display two spaces for a Tab. */
+! 			screen_puts_len((char_u *)"  ", 2, row, col, attr);
+! 			col += 2;
+  			totwidth += 2;
+  			s = NULL;	    /* start text at next char */
+  			width = 0;
+--- 320,386 ----
+  		    {
+  			/* Display the text that fits or comes before a Tab.
+  			 * First convert it to printable characters. */
+! 			char_u	*st;
+! 			int	saved = *p;
+  
+  			*p = NUL;
+  			st = transstr(s);
+  			*p = saved;
+! #ifdef FEAT_RIGHTLEFT
+! 			if (curwin->w_p_rl)
+  			{
+! 			    if (st != NULL)
+! 			    {
+! 				char_u	*rt = reverse_text(st);
+! 				char_u	*rt_saved = rt;
+! 				int	len, j;
+! 
+! 				if (rt != NULL)
+! 				{
+! 				    len = STRLEN(rt);
+! 				    if (len > pum_width)
+! 				    {
+! 					for (j = pum_width; j < len; ++j)
+! 					    mb_ptr_adv(rt);
+! 					len = pum_width;
+! 				    }
+! 				    screen_puts_len(rt, len, row,
+! 							col - len + 1, attr);
+! 				    vim_free(rt_saved);
+! 				}
+! 				vim_free(st);
+! 			    }
+! 			    col -= width;
+! 			}
+! 			else
+! #endif
+! 			{
+! 			    if (st != NULL)
+! 			    {
+! 				screen_puts_len(st, (int)STRLEN(st), row, col,
+  									attr);
+! 				vim_free(st);
+! 			    }
+! 			    col += width;
+  			}
+  
+  			if (*p != TAB)
+  			    break;
+  
+  			/* Display two spaces for a Tab. */
+! #ifdef FEAT_RIGHTLEFT
+! 			if (curwin->w_p_rl)
+! 			{
+! 			    screen_puts_len((char_u *)"  ", 2, row, col - 1,
+! 									attr);
+! 			    col -= 2;
+! 			}
+! 			else
+! #endif
+! 			{
+! 			    screen_puts_len((char_u *)"  ", 2, row, col, attr);
+! 			    col += 2;
+! 			}
+  			totwidth += 2;
+  			s = NULL;	    /* start text at next char */
+  			width = 0;
+***************
+*** 322,338 ****
+  					  && pum_array[idx].pum_extra == NULL)
+  		    || pum_base_width + n >= pum_width)
+  		break;
+! 	    screen_fill(row, row + 1, col, pum_col + pum_base_width + n,
+  							      ' ', ' ', attr);
+! 	    col = pum_col + pum_base_width + n;
+  	    totwidth = pum_base_width + n;
+  	}
+  
+! 	screen_fill(row, row + 1, col, pum_col + pum_width, ' ', ' ', attr);
+  	if (pum_scrollbar > 0)
+! 	    screen_putchar(' ', row, pum_col + pum_width,
+! 		    i >= thumb_pos && i < thumb_pos + thumb_heigth
+  						  ? attr_thumb : attr_scroll);
+  
+  	++row;
+      }
+--- 401,444 ----
+  					  && pum_array[idx].pum_extra == NULL)
+  		    || pum_base_width + n >= pum_width)
+  		break;
+! #ifdef FEAT_RIGHTLEFT
+! 	    if (curwin->w_p_rl)
+! 	    {
+! 		screen_fill(row, row + 1, pum_col - pum_base_width - n + 1,
+! 						    col + 1, ' ', ' ', attr);
+! 		col = pum_col - pum_base_width - n + 1;
+! 	    }
+! 	    else
+! #endif
+! 	    {
+! 		screen_fill(row, row + 1, col, pum_col + pum_base_width + n,
+  							      ' ', ' ', attr);
+! 		col = pum_col + pum_base_width + n;
+! 	    }
+  	    totwidth = pum_base_width + n;
+  	}
+  
+! #ifdef FEAT_RIGHTLEFT
+! 	if (curwin->w_p_rl)
+! 	    screen_fill(row, row + 1, pum_col - pum_width + 1, col + 1, ' ',
+! 								    ' ', attr);
+! 	else
+! #endif
+! 	    screen_fill(row, row + 1, col, pum_col + pum_width, ' ', ' ',
+! 									attr);
+  	if (pum_scrollbar > 0)
+! 	{
+! #ifdef FEAT_RIGHTLEFT
+! 	    if (curwin->w_p_rl)
+! 		screen_putchar(' ', row, pum_col - pum_width,
+! 			i >= thumb_pos && i < thumb_pos + thumb_heigth
+  						  ? attr_thumb : attr_scroll);
++ 	    else
++ #endif
++ 		screen_putchar(' ', row, pum_col + pum_width,
++ 			i >= thumb_pos && i < thumb_pos + thumb_heigth
++ 						  ? attr_thumb : attr_scroll);
++ 	}
+  
+  	++row;
+      }
+*** ../vim-7.1.057/src/proto/search.pro	Sat May  5 20:20:36 2007
+--- src/proto/search.pro	Wed Aug  1 12:41:25 2007
+***************
+*** 1,6 ****
+--- 1,7 ----
+  /* search.c */
+  int search_regcomp __ARGS((char_u *pat, int pat_save, int pat_use, int options, regmmatch_T *regmatch));
+  char_u *get_search_pat __ARGS((void));
++ char_u *reverse_text __ARGS((char_u *s));
+  void save_search_patterns __ARGS((void));
+  void restore_search_patterns __ARGS((void));
+  void free_search_patterns __ARGS((void));
+*** ../vim-7.1.057/src/search.c	Tue Jul 10 13:27:46 2007
+--- src/search.c	Wed Aug  1 12:39:22 2007
+***************
+*** 101,107 ****
+  static char_u	    *mr_pattern = NULL;	/* pattern used by search_regcomp() */
+  #ifdef FEAT_RIGHTLEFT
+  static int	    mr_pattern_alloced = FALSE; /* mr_pattern was allocated */
+- static char_u	    *reverse_text __ARGS((char_u *s));
+  #endif
+  
+  #ifdef FEAT_FIND_ID
+--- 101,106 ----
+***************
+*** 228,239 ****
+      return mr_pattern;
+  }
+  
+! #ifdef FEAT_RIGHTLEFT
+  /*
+   * Reverse text into allocated memory.
+   * Returns the allocated string, NULL when out of memory.
+   */
+!     static char_u *
+  reverse_text(s)
+      char_u *s;
+  {
+--- 227,238 ----
+      return mr_pattern;
+  }
+  
+! #if defined(FEAT_RIGHTLEFT) || defined(PROTO)
+  /*
+   * Reverse text into allocated memory.
+   * Returns the allocated string, NULL when out of memory.
+   */
+!     char_u *
+  reverse_text(s)
+      char_u *s;
+  {
+***************
+*** 1898,1904 ****
+      }
+  
+  #ifdef FEAT_RIGHTLEFT
+!     /* This is just guessing: when 'rightleft' is set, search for a maching
+       * paren/brace in the other direction. */
+      if (curwin->w_p_rl && vim_strchr((char_u *)"()[]{}<>", initc) != NULL)
+  	backwards = !backwards;
+--- 1897,1903 ----
+      }
+  
+  #ifdef FEAT_RIGHTLEFT
+!     /* This is just guessing: when 'rightleft' is set, search for a matching
+       * paren/brace in the other direction. */
+      if (curwin->w_p_rl && vim_strchr((char_u *)"()[]{}<>", initc) != NULL)
+  	backwards = !backwards;
+*** ../vim-7.1.057/src/version.c	Wed Aug  8 21:41:19 2007
+--- src/version.c	Wed Aug  8 22:44:49 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     58,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+99. The hum of a cooling fan and the click of keys is comforting to you.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.059
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.059?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.059 (added)
+++ trunk/packages/vim/upstream/patches/7.1.059 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,104 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.059
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.059
+Problem:    When in Ex mode and doing "g/^/vi" and then pressing CTRL-C Vim
+	    hangs and beeps. (Antony Scriven)
+Solution:   Clear "got_int" in the main loop to avoid the hang.  When typing
+	    CTRL-C twice in a row abort the ":g" command.  This is Vi
+	    compatible.
+Files:	    src/main.c
+
+
+*** ../vim-7.1.058/src/main.c	Tue Jun 19 20:30:46 2007
+--- src/main.c	Tue Aug  7 22:40:35 2007
+***************
+*** 954,960 ****
+      int		cmdwin;	    /* TRUE when working in the command-line window */
+      int		noexmode;   /* TRUE when return on entering Ex mode */
+  {
+!     oparg_T	oa;	/* operator arguments */
+  
+  #if defined(FEAT_X11) && defined(FEAT_XCLIPBOARD)
+      /* Setup to catch a terminating error from the X server.  Just ignore
+--- 954,961 ----
+      int		cmdwin;	    /* TRUE when working in the command-line window */
+      int		noexmode;   /* TRUE when return on entering Ex mode */
+  {
+!     oparg_T	oa;				/* operator arguments */
+!     int		previous_got_int = FALSE;	/* "got_int" was TRUE */
+  
+  #if defined(FEAT_X11) && defined(FEAT_XCLIPBOARD)
+      /* Setup to catch a terminating error from the X server.  Just ignore
+***************
+*** 1015,1026 ****
+  		need_fileinfo = FALSE;
+  	    }
+  	}
+! 	if (got_int && !global_busy)
+  	{
+! 	    if (!quit_more)
+! 		(void)vgetc();		/* flush all buffers */
+! 	    got_int = FALSE;
+  	}
+  	if (!exmode_active)
+  	    msg_scroll = FALSE;
+  	quit_more = FALSE;
+--- 1016,1047 ----
+  		need_fileinfo = FALSE;
+  	    }
+  	}
+! 
+! 	/* Reset "got_int" now that we got back to the main loop.  Except when
+! 	 * inside a ":g/pat/cmd" command, then the "got_int" needs to abort
+! 	 * the ":g" command.
+! 	 * For ":g/pat/vi" we reset "got_int" when used once.  When used
+! 	 * a second time we go back to Ex mode and abort the ":g" command. */
+! 	if (got_int)
+  	{
+! 	    if (noexmode && global_busy && !exmode_active && previous_got_int)
+! 	    {
+! 		/* Typed two CTRL-C in a row: go back to ex mode as if "Q" was
+! 		 * used and keep "got_int" set, so that it aborts ":g". */
+! 		exmode_active = EXMODE_NORMAL;
+! 		State = NORMAL;
+! 	    }
+! 	    else if (!global_busy || !exmode_active)
+! 	    {
+! 		if (!quit_more)
+! 		    (void)vgetc();		/* flush all buffers */
+! 		got_int = FALSE;
+! 	    }
+! 	    previous_got_int = TRUE;
+  	}
++ 	else
++ 	    previous_got_int = FALSE;
++ 
+  	if (!exmode_active)
+  	    msg_scroll = FALSE;
+  	quit_more = FALSE;
+*** ../vim-7.1.058/src/version.c	Wed Aug  8 22:48:16 2007
+--- src/version.c	Fri Aug 10 21:30:39 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     59,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+116. You are living with your boyfriend who networks your respective
+     computers so you can sit in separate rooms and email each other
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.060
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.060?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.060 (added)
+++ trunk/packages/vim/upstream/patches/7.1.060 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,176 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.060
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.060
+Problem:    Splitting quickfix window messes up window layout. (Marius
+	    Gedminas)
+Solution:   Compute the window size in a smarter way. (Martin Toft)
+Files:	    src/window.c
+
+
+*** ../vim-7.1.059/src/window.c	Sun Aug  5 18:49:07 2007
+--- src/window.c	Sun Aug  5 17:17:51 2007
+***************
+*** 2121,2127 ****
+  	if (wp->w_p_pvw || bt_quickfix(wp->w_buffer))
+  	{
+  	    /*
+! 	     * The cursor goes to the preview or the quickfix window, try
+  	     * finding another window to go to.
+  	     */
+  	    for (;;)
+--- 2121,2127 ----
+  	if (wp->w_p_pvw || bt_quickfix(wp->w_buffer))
+  	{
+  	    /*
+! 	     * If the cursor goes to the preview or the quickfix window, try
+  	     * finding another window to go to.
+  	     */
+  	    for (;;)
+***************
+*** 2308,2314 ****
+      frame_T	*frp, *frp2, *frp3;
+      frame_T	*frp_close = win->w_frame;
+      win_T	*wp;
+-     int		old_size = 0;
+  
+      /*
+       * If there is only one window there is nothing to remove.
+--- 2308,2313 ----
+***************
+*** 2329,2361 ****
+      if (frp_close->fr_parent->fr_layout == FR_COL)
+      {
+  #endif
+! 	/* When 'winfixheight' is set, remember its old size and restore
+! 	 * it later (it's a simplistic solution...).  Don't do this if the
+! 	 * window will occupy the full height of the screen. */
+! 	if (frp2->fr_win != NULL
+! 		&& (frp2->fr_next != NULL || frp2->fr_prev != NULL)
+! 		&& frp2->fr_win->w_p_wfh)
+! 	    old_size = frp2->fr_win->w_height;
+  	frame_new_height(frp2, frp2->fr_height + frp_close->fr_height,
+  			    frp2 == frp_close->fr_next ? TRUE : FALSE, FALSE);
+- 	if (old_size != 0)
+- 	    win_setheight_win(old_size, frp2->fr_win);
+  #ifdef FEAT_VERTSPLIT
+  	*dirp = 'v';
+      }
+      else
+      {
+! 	/* When 'winfixwidth' is set, remember its old size and restore
+! 	 * it later (it's a simplistic solution...).  Don't do this if the
+! 	 * window will occupy the full width of the screen. */
+! 	if (frp2->fr_win != NULL
+! 		&& (frp2->fr_next != NULL || frp2->fr_prev != NULL)
+! 		&& frp2->fr_win->w_p_wfw)
+! 	    old_size = frp2->fr_win->w_width;
+  	frame_new_width(frp2, frp2->fr_width + frp_close->fr_width,
+  			    frp2 == frp_close->fr_next ? TRUE : FALSE, FALSE);
+- 	if (old_size != 0)
+- 	    win_setwidth_win(old_size, frp2->fr_win);
+  	*dirp = 'h';
+      }
+  #endif
+--- 2328,2404 ----
+      if (frp_close->fr_parent->fr_layout == FR_COL)
+      {
+  #endif
+! 	/* When 'winfixheight' is set, try to find another frame in the column
+! 	 * (as close to the closed frame as possible) to distribute the height
+! 	 * to. */
+! 	if (frp2->fr_win != NULL && frp2->fr_win->w_p_wfh)
+! 	{
+! 	    frp = frp_close->fr_prev;
+! 	    frp3 = frp_close->fr_next;
+! 	    while (frp != NULL || frp3 != NULL)
+! 	    {
+! 		if (frp != NULL)
+! 		{
+! 		    if (frp->fr_win != NULL && !frp->fr_win->w_p_wfh)
+! 		    {
+! 			frp2 = frp;
+! 			wp = frp->fr_win;
+! 			break;
+! 		    }
+! 		    frp = frp->fr_prev;
+! 		}
+! 		if (frp3 != NULL)
+! 		{
+! 		    if (frp3->fr_win != NULL && !frp3->fr_win->w_p_wfh)
+! 		    {
+! 			frp2 = frp3;
+! 			wp = frp3->fr_win;
+! 			break;
+! 		    }
+! 		    frp3 = frp3->fr_next;
+! 		}
+! 	    }
+! 	}
+  	frame_new_height(frp2, frp2->fr_height + frp_close->fr_height,
+  			    frp2 == frp_close->fr_next ? TRUE : FALSE, FALSE);
+  #ifdef FEAT_VERTSPLIT
+  	*dirp = 'v';
+      }
+      else
+      {
+! 	/* When 'winfixwidth' is set, try to find another frame in the column
+! 	 * (as close to the closed frame as possible) to distribute the width
+! 	 * to. */
+! 	if (frp2->fr_win != NULL && frp2->fr_win->w_p_wfw)
+! 	{
+! 	    frp = frp_close->fr_prev;
+! 	    frp3 = frp_close->fr_next;
+! 	    while (frp != NULL || frp3 != NULL)
+! 	    {
+! 		if (frp != NULL)
+! 		{
+! 		    if (frp->fr_win != NULL && !frp->fr_win->w_p_wfw)
+! 		    {
+! 			frp2 = frp;
+! 			wp = frp->fr_win;
+! 			break;
+! 		    }
+! 		    frp = frp->fr_prev;
+! 		}
+! 		if (frp3 != NULL)
+! 		{
+! 		    if (frp3->fr_win != NULL && !frp3->fr_win->w_p_wfw)
+! 		    {
+! 			frp2 = frp3;
+! 			wp = frp3->fr_win;
+! 			break;
+! 		    }
+! 		    frp3 = frp3->fr_next;
+! 		}
+! 	    }
+! 	}
+  	frame_new_width(frp2, frp2->fr_width + frp_close->fr_width,
+  			    frp2 == frp_close->fr_next ? TRUE : FALSE, FALSE);
+  	*dirp = 'h';
+      }
+  #endif
+*** ../vim-7.1.059/src/version.c	Fri Aug 10 21:32:41 2007
+--- src/version.c	Sat Aug 11 13:34:42 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     60,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+117. You are more comfortable typing in html.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.061
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.061?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.061 (added)
+++ trunk/packages/vim/upstream/patches/7.1.061 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,222 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.061
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.061
+Problem:    Win32: When 'encoding' is "latin1" 'ignorecase' doesn't work for
+	    characters with umlaut. (Joachim Hofmann)
+Solution:   Do not use islower()/isupper()/tolower()/toupper() but our own
+	    functions. (Chris Lubinski)
+Files:	    src/mbyte.c, src/regexp.c, src/vim.h
+
+
+*** ../vim-7.1.060/src/mbyte.c	Thu May 10 19:45:20 2007
+--- src/mbyte.c	Sat Aug  4 13:44:36 2007
+***************
+*** 2320,2326 ****
+  		/* Single byte: first check normally, then with ignore case. */
+  		if (s1[i] != s2[i])
+  		{
+! 		    cdiff = TOLOWER_LOC(s1[i]) - TOLOWER_LOC(s2[i]);
+  		    if (cdiff != 0)
+  			return cdiff;
+  		}
+--- 2320,2326 ----
+  		/* Single byte: first check normally, then with ignore case. */
+  		if (s1[i] != s2[i])
+  		{
+! 		    cdiff = MB_TOLOWER(s1[i]) - MB_TOLOWER(s2[i]);
+  		    if (cdiff != 0)
+  			return cdiff;
+  		}
+*** ../vim-7.1.060/src/regexp.c	Mon Aug  6 22:27:13 2007
+--- src/regexp.c	Sun Aug  5 15:43:27 2007
+***************
+*** 2220,2226 ****
+  				break;
+  			    case CLASS_LOWER:
+  				for (cu = 1; cu <= 255; cu++)
+! 				    if (islower(cu))
+  					regc(cu);
+  				break;
+  			    case CLASS_PRINT:
+--- 2220,2226 ----
+  				break;
+  			    case CLASS_LOWER:
+  				for (cu = 1; cu <= 255; cu++)
+! 				    if (MB_ISLOWER(cu))
+  					regc(cu);
+  				break;
+  			    case CLASS_PRINT:
+***************
+*** 2240,2246 ****
+  				break;
+  			    case CLASS_UPPER:
+  				for (cu = 1; cu <= 255; cu++)
+! 				    if (isupper(cu))
+  					regc(cu);
+  				break;
+  			    case CLASS_XDIGIT:
+--- 2240,2246 ----
+  				break;
+  			    case CLASS_UPPER:
+  				for (cu = 1; cu <= 255; cu++)
+! 				    if (MB_ISUPPER(cu))
+  					regc(cu);
+  				break;
+  			    case CLASS_XDIGIT:
+***************
+*** 3465,3471 ****
+  			(enc_utf8 && utf_fold(prog->regstart) == utf_fold(c)))
+  			|| (c < 255 && prog->regstart < 255 &&
+  #endif
+! 			    TOLOWER_LOC(prog->regstart) == TOLOWER_LOC(c)))))
+  	    retval = regtry(prog, col);
+  	else
+  	    retval = 0;
+--- 3465,3471 ----
+  			(enc_utf8 && utf_fold(prog->regstart) == utf_fold(c)))
+  			|| (c < 255 && prog->regstart < 255 &&
+  #endif
+! 			    MB_TOLOWER(prog->regstart) == MB_TOLOWER(c)))))
+  	    retval = regtry(prog, col);
+  	else
+  	    retval = 0;
+***************
+*** 4200,4206 ****
+  #ifdef FEAT_MBYTE
+  			    !enc_utf8 &&
+  #endif
+! 			    TOLOWER_LOC(*opnd) != TOLOWER_LOC(*reginput))))
+  		    status = RA_NOMATCH;
+  		else if (*opnd == NUL)
+  		{
+--- 4200,4206 ----
+  #ifdef FEAT_MBYTE
+  			    !enc_utf8 &&
+  #endif
+! 			    MB_TOLOWER(*opnd) != MB_TOLOWER(*reginput))))
+  		    status = RA_NOMATCH;
+  		else if (*opnd == NUL)
+  		{
+***************
+*** 4733,4742 ****
+  		    rst.nextb = *OPERAND(next);
+  		    if (ireg_ic)
+  		    {
+! 			if (isupper(rst.nextb))
+! 			    rst.nextb_ic = TOLOWER_LOC(rst.nextb);
+  			else
+! 			    rst.nextb_ic = TOUPPER_LOC(rst.nextb);
+  		    }
+  		    else
+  			rst.nextb_ic = rst.nextb;
+--- 4733,4742 ----
+  		    rst.nextb = *OPERAND(next);
+  		    if (ireg_ic)
+  		    {
+! 			if (MB_ISUPPER(rst.nextb))
+! 			    rst.nextb_ic = MB_TOLOWER(rst.nextb);
+  			else
+! 			    rst.nextb_ic = MB_TOUPPER(rst.nextb);
+  		    }
+  		    else
+  			rst.nextb_ic = rst.nextb;
+***************
+*** 5558,5568 ****
+  	    int	    cu, cl;
+  
+  	    /* This doesn't do a multi-byte character, because a MULTIBYTECODE
+! 	     * would have been used for it. */
+  	    if (ireg_ic)
+  	    {
+! 		cu = TOUPPER_LOC(*opnd);
+! 		cl = TOLOWER_LOC(*opnd);
+  		while (count < maxcount && (*scan == cu || *scan == cl))
+  		{
+  		    count++;
+--- 5558,5569 ----
+  	    int	    cu, cl;
+  
+  	    /* This doesn't do a multi-byte character, because a MULTIBYTECODE
+! 	     * would have been used for it.  It does handle single-byte
+! 	     * characters, such as latin1. */
+  	    if (ireg_ic)
+  	    {
+! 		cu = MB_TOUPPER(*opnd);
+! 		cl = MB_TOLOWER(*opnd);
+  		while (count < maxcount && (*scan == cu || *scan == cl))
+  		{
+  		    count++;
+***************
+*** 6490,6499 ****
+  	cc = utf_fold(c);
+      else
+  #endif
+! 	 if (isupper(c))
+! 	cc = TOLOWER_LOC(c);
+!     else if (islower(c))
+! 	cc = TOUPPER_LOC(c);
+      else
+  	return vim_strchr(s, c);
+  
+--- 6491,6500 ----
+  	cc = utf_fold(c);
+      else
+  #endif
+! 	 if (MB_ISUPPER(c))
+! 	cc = MB_TOLOWER(c);
+!     else if (MB_ISLOWER(c))
+! 	cc = MB_TOUPPER(c);
+      else
+  	return vim_strchr(s, c);
+  
+*** ../vim-7.1.060/src/vim.h	Sat May 12 15:08:22 2007
+--- src/vim.h	Sat Aug  4 13:57:36 2007
+***************
+*** 1380,1387 ****
+  #endif
+  
+  #ifdef FEAT_MBYTE
+! # define MB_STRICMP(d, s)	(has_mbyte ? mb_strnicmp((char_u *)(d), (char_u *)(s), (int)MAXCOL) : STRICMP((d), (s)))
+! # define MB_STRNICMP(d, s, n)	(has_mbyte ? mb_strnicmp((char_u *)(d), (char_u *)(s), (int)(n)) : STRNICMP((d), (s), (n)))
+  #else
+  # define MB_STRICMP(d, s)	STRICMP((d), (s))
+  # define MB_STRNICMP(d, s, n)	STRNICMP((d), (s), (n))
+--- 1380,1393 ----
+  #endif
+  
+  #ifdef FEAT_MBYTE
+! /* We need to call mb_stricmp() even when we aren't dealing with a multi-byte
+!  * encoding because mb_stricmp() takes care of all ascii and non-ascii
+!  * encodings, including characters with umluats in latin1, etc., while
+!  * STRICMP() only handles the system locale version, which often does not
+!  * handle non-ascii properly. */
+! 
+! # define MB_STRICMP(d, s)	mb_strnicmp((char_u *)(d), (char_u *)(s), (int)MAXCOL)
+! # define MB_STRNICMP(d, s, n)	mb_strnicmp((char_u *)(d), (char_u *)(s), (int)(n))
+  #else
+  # define MB_STRICMP(d, s)	STRICMP((d), (s))
+  # define MB_STRNICMP(d, s, n)	STRNICMP((d), (s), (n))
+*** ../vim-7.1.060/src/version.c	Sat Aug 11 13:37:36 2007
+--- src/version.c	Sat Aug 11 13:55:24 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     61,
+  /**/
+
+-- 
+Support your right to bare arms!  Wear short sleeves!
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.062
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.062?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.062 (added)
+++ trunk/packages/vim/upstream/patches/7.1.062 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,55 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.062
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.062 (after 7.1.038)
+Problem:    Indents of C comments can be wrong. (John Mullin)
+Solution:   Adjust ind_len. (Chris Lubinski)
+Files:	    src/misc1.c
+
+
+*** ../vim-7.1.061/src/misc1.c	Mon Aug  6 22:27:13 2007
+--- src/misc1.c	Fri Aug 10 19:41:42 2007
+***************
+*** 222,228 ****
+  	 * than old) */
+  	while (vim_iswhite(*p))
+  	    (void)*p++;
+! 	todo = size-ind_done;
+      }
+      else
+      {
+--- 222,231 ----
+  	 * than old) */
+  	while (vim_iswhite(*p))
+  	    (void)*p++;
+! 	todo = size - ind_done;
+! 	ind_len += todo;    /* Set total length of indent in characters,
+! 			     * which may have been undercounted until now  */
+! 
+      }
+      else
+      {
+*** ../vim-7.1.061/src/version.c	Sat Aug 11 13:57:31 2007
+--- src/version.c	Sat Aug 11 14:30:52 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     62,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+120. You ask a friend, "What's that big shiny thing?" He says, "It's the sun."
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.063
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.063?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.063 (added)
+++ trunk/packages/vim/upstream/patches/7.1.063 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,52 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.063
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.063 (after 7.1.040)
+Problem:    Warning for unitialized variable.
+Solution:   Initialise it to NULL.
+Files:	    src/ex_docmd.c
+
+
+*** ../vim-7.1.062/src/ex_docmd.c	Thu Jul 26 22:55:11 2007
+--- src/ex_docmd.c	Wed Aug  8 22:28:33 2007
+***************
+*** 10817,10823 ****
+      exarg_T	*eap;
+  {
+      char_u	*p;
+!     char_u	*g;
+      char_u	*end;
+      int		c;
+      int		id;
+--- 10818,10824 ----
+      exarg_T	*eap;
+  {
+      char_u	*p;
+!     char_u	*g = NULL;
+      char_u	*end;
+      int		c;
+      int		id;
+*** ../vim-7.1.062/src/version.c	Sat Aug 11 14:32:10 2007
+--- src/version.c	Sat Aug 11 15:58:55 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     63,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+124. You begin conversations with, "Who is your internet service provider?"
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.064
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.064?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.064 (added)
+++ trunk/packages/vim/upstream/patches/7.1.064 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,50 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.064
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.064
+Problem:    On Interix some files appear not to exist.
+Solution:   Remove the top bit from st_mode. (Ligesh)
+Files:	    src/os_unix.c
+
+
+*** ../vim-7.1.063/src/os_unix.c	Thu May 10 19:42:47 2007
+--- src/os_unix.c	Fri Aug 10 19:32:20 2007
+***************
+*** 2499,2505 ****
+--- 2499,2511 ----
+      if (stat((char *)name, &statb))
+  #endif
+  	return -1;
++ #ifdef __INTERIX
++     /* The top bit makes the value negative, which means the file doesn't
++      * exist.  Remove the bit, we don't use it. */
++     return statb.st_mode & ~S_ADDACE;
++ #else
+      return statb.st_mode;
++ #endif
+  }
+  
+  /*
+*** ../vim-7.1.063/src/version.c	Sat Aug 11 15:59:44 2007
+--- src/version.c	Sat Aug 11 22:21:35 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     64,
+  /**/
+
+-- 
+I have a watch cat! Just break in and she'll watch.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.065
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.065?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.065 (added)
+++ trunk/packages/vim/upstream/patches/7.1.065 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,113 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.065 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.065 (extra)
+Problem:    Win32: Compilation problem for newer version of w32api.
+Solution:   Only define __IID_DEFINED__ when needed. (Chris Sutcliffe)
+Files:	    src/Make_ming.mak, src/iid_ole.c
+
+
+*** ../vim-7.1.064/src/Make_ming.mak	Thu May 10 19:35:54 2007
+--- src/Make_ming.mak	Sat Aug 11 14:52:11 2007
+***************
+*** 572,579 ****
+  $(OUTDIR)/if_cscope.o:	if_cscope.c $(INCL) if_cscope.h
+  	$(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o
+  
+  $(OUTDIR)/if_ole.o: if_ole.cpp $(INCL)
+! 	$(CC) $(CFLAGS) -D__IID_DEFINED__ -c -o $(OUTDIR)/if_ole.o if_ole.cpp
+  
+  $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL)
+  ifeq (16, $(RUBY))
+--- 572,580 ----
+  $(OUTDIR)/if_cscope.o:	if_cscope.c $(INCL) if_cscope.h
+  	$(CC) -c $(CFLAGS) if_cscope.c -o $(OUTDIR)/if_cscope.o
+  
++ # Remove -D__IID_DEFINED__ for newer versions of the w32api
+  $(OUTDIR)/if_ole.o: if_ole.cpp $(INCL)
+! 	$(CC) $(CFLAGS) -c -o $(OUTDIR)/if_ole.o if_ole.cpp
+  
+  $(OUTDIR)/if_ruby.o: if_ruby.c $(INCL)
+  ifeq (16, $(RUBY))
+*** ../vim-7.1.064/src/iid_ole.c	Sun Jun 13 18:45:30 2004
+--- src/iid_ole.c	Sat Aug 11 14:57:58 2007
+***************
+*** 16,24 ****
+  extern "C"{
+  #endif
+  
+  
+  #ifndef __IID_DEFINED__
+! #define __IID_DEFINED__
+  
+  typedef struct _IID
+  {
+--- 16,33 ----
+  extern "C"{
+  #endif
+  
++ #ifdef __MINGW32__
++ # include <w32api.h>
++ 
++ # if __W32API_MAJOR_VERSION == 3 && __W32API_MINOR_VERSION < 10
++    /* This define is missing from older MingW versions of w32api, even though
++     * IID is defined. */
++ #  define __IID_DEFINED__
++ # endif
++ #endif
+  
+  #ifndef __IID_DEFINED__
+! # define __IID_DEFINED__
+  
+  typedef struct _IID
+  {
+***************
+*** 28,39 ****
+      unsigned char  c[8];
+  } IID;
+  
+! #endif // __IID_DEFINED__
+  
+  #ifndef CLSID_DEFINED
+! #define CLSID_DEFINED
+  typedef IID CLSID;
+! #endif // CLSID_DEFINED
+  
+  const IID IID_IVim = {0x0F0BFAE2,0x4C90,0x11d1,{0x82,0xD7,0x00,0x04,0xAC,0x36,0x85,0x19}};
+  
+--- 37,48 ----
+      unsigned char  c[8];
+  } IID;
+  
+! #endif
+  
+  #ifndef CLSID_DEFINED
+! # define CLSID_DEFINED
+  typedef IID CLSID;
+! #endif
+  
+  const IID IID_IVim = {0x0F0BFAE2,0x4C90,0x11d1,{0x82,0xD7,0x00,0x04,0xAC,0x36,0x85,0x19}};
+  
+*** ../vim-7.1.064/src/version.c	Sat Aug 11 22:22:56 2007
+--- src/version.c	Sun Aug 12 15:21:34 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     65,
+  /**/
+
+-- 
+I'm writing a book.  I've got the page numbers done.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.066
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.066?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.066 (added)
+++ trunk/packages/vim/upstream/patches/7.1.066 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,152 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.066
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.066
+Problem:    When 'bomb' is set or reset the file should be considered
+	    modified.  (Tony Mechelynck)
+Solution:   Handle like 'endofline'. (Martin Toft)
+Files:	    src/buffer.c, src/fileio.c, src/option.c, src/structs.h
+
+
+*** ../vim-7.1.065/src/buffer.c	Mon Aug  6 22:27:12 2007
+--- src/buffer.c	Sat Aug 11 16:56:57 2007
+***************
+*** 502,507 ****
+--- 502,508 ----
+      buf->b_start_eol = TRUE;
+  #ifdef FEAT_MBYTE
+      buf->b_p_bomb = FALSE;
++     buf->b_start_bomb = FALSE;
+  #endif
+      buf->b_ml.ml_mfp = NULL;
+      buf->b_ml.ml_flags = ML_EMPTY;		/* empty buffer */
+*** ../vim-7.1.065/src/fileio.c	Tue Jul 10 17:09:51 2007
+--- src/fileio.c	Sat Aug 11 16:56:57 2007
+***************
+*** 654,659 ****
+--- 654,660 ----
+  	curbuf->b_start_eol = TRUE;
+  #ifdef FEAT_MBYTE
+  	curbuf->b_p_bomb = FALSE;
++ 	curbuf->b_start_bomb = FALSE;
+  #endif
+      }
+  
+***************
+*** 912,918 ****
+--- 913,922 ----
+  	file_rewind = FALSE;
+  #ifdef FEAT_MBYTE
+  	if (set_options)
++ 	{
+  	    curbuf->b_p_bomb = FALSE;
++ 	    curbuf->b_start_bomb = FALSE;
++ 	}
+  	conv_error = 0;
+  #endif
+      }
+***************
+*** 1361,1367 ****
+--- 1365,1374 ----
+  		    size -= blen;
+  		    mch_memmove(ptr, ptr + blen, (size_t)size);
+  		    if (set_options)
++ 		    {
+  			curbuf->b_p_bomb = TRUE;
++ 			curbuf->b_start_bomb = TRUE;
++ 		    }
+  		}
+  
+  		if (fio_flags == FIO_UCSBOM)
+*** ../vim-7.1.065/src/option.c	Tue Jul 24 14:57:16 2007
+--- src/option.c	Sat Aug 11 16:56:57 2007
+***************
+*** 7118,7123 ****
+--- 7118,7128 ----
+      /* when 'endofline' is changed, redraw the window title */
+      else if ((int *)varp == &curbuf->b_p_eol)
+  	need_maketitle = TRUE;
++ #ifdef FEAT_MBYTE
++     /* when 'bomb' is changed, redraw the window title */
++     else if ((int *)varp == &curbuf->b_p_bomb)
++ 	need_maketitle = TRUE;
++ #endif
+  #endif
+  
+      /* when 'bin' is set also set some other options */
+***************
+*** 10604,10609 ****
+--- 10609,10616 ----
+      buf->b_start_ffc = *buf->b_p_ff;
+      buf->b_start_eol = buf->b_p_eol;
+  #ifdef FEAT_MBYTE
++     buf->b_start_bomb = buf->b_p_bomb;
++ 
+      /* Only use free/alloc when necessary, they take time. */
+      if (buf->b_start_fenc == NULL
+  			     || STRCMP(buf->b_start_fenc, buf->b_p_fenc) != 0)
+***************
+*** 10617,10623 ****
+  /*
+   * Return TRUE if 'fileformat' and/or 'fileencoding' has a different value
+   * from when editing started (save_file_ff() called).
+!  * Also when 'endofline' was changed and 'binary' is set.
+   * Don't consider a new, empty buffer to be changed.
+   */
+      int
+--- 10624,10631 ----
+  /*
+   * Return TRUE if 'fileformat' and/or 'fileencoding' has a different value
+   * from when editing started (save_file_ff() called).
+!  * Also when 'endofline' was changed and 'binary' is set, or when 'bomb' was
+!  * changed and 'binary' is not set.
+   * Don't consider a new, empty buffer to be changed.
+   */
+      int
+***************
+*** 10636,10641 ****
+--- 10644,10651 ----
+      if (buf->b_p_bin && buf->b_start_eol != buf->b_p_eol)
+  	return TRUE;
+  #ifdef FEAT_MBYTE
++     if (!buf->b_p_bin && buf->b_start_bomb != buf->b_p_bomb)
++ 	return TRUE;
+      if (buf->b_start_fenc == NULL)
+  	return (*buf->b_p_fenc != NUL);
+      return (STRCMP(buf->b_start_fenc, buf->b_p_fenc) != 0);
+*** ../vim-7.1.065/src/structs.h	Thu Jul 26 22:55:11 2007
+--- src/structs.h	Sat Aug 11 16:56:57 2007
+***************
+*** 1453,1458 ****
+--- 1453,1459 ----
+  #ifdef FEAT_MBYTE
+      char_u	*b_start_fenc;	/* 'fileencoding' when edit started or NULL */
+      int		b_bad_char;	/* "++bad=" argument when edit started or 0 */
++     int		b_start_bomb;	/* 'bomb' when it was read */
+  #endif
+  
+  #ifdef FEAT_EVAL
+*** ../vim-7.1.065/src/version.c	Sun Aug 12 15:24:05 2007
+--- src/version.c	Sun Aug 12 15:48:34 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     66,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+127. You bring your laptop and cellular phone to church.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.067
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.067?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.067 (added)
+++ trunk/packages/vim/upstream/patches/7.1.067 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,302 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.067
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.067
+Problem:    'thesaurus' doesn't work when 'infercase' is set. (Mohsin)
+Solution:   Don't copy the characters being completed but check the case and
+	    apply it to the suggested word.  Also fix that the first word in
+	    the thesaurus line is not used.  (Martin Toft)
+Files:	    src/edit.c
+
+
+*** ../vim-7.1.066/src/edit.c	Sun Jul 29 15:02:34 2007
+--- src/edit.c	Sat Aug 11 17:16:51 2007
+***************
+*** 2057,2063 ****
+   * case of the originally typed text is used, and the case of the completed
+   * text is inferred, ie this tries to work out what case you probably wanted
+   * the rest of the word to be in -- webb
+-  * TODO: make this work for multi-byte characters.
+   */
+      int
+  ins_compl_add_infercase(str, len, icase, fname, dir, flags)
+--- 2057,2062 ----
+***************
+*** 2068,2121 ****
+      int		dir;
+      int		flags;
+  {
+      int		has_lower = FALSE;
+      int		was_letter = FALSE;
+-     int		idx;
+  
+!     if (p_ic && curbuf->b_p_inf && len < IOSIZE)
+      {
+! 	/* Infer case of completed part -- webb */
+! 	/* Use IObuff, str would change text in buffer! */
+! 	vim_strncpy(IObuff, str, len);
+  
+! 	/* Rule 1: Were any chars converted to lower? */
+! 	for (idx = 0; idx < compl_length; ++idx)
+  	{
+! 	    if (islower(compl_orig_text[idx]))
+  	    {
+! 		has_lower = TRUE;
+! 		if (isupper(IObuff[idx]))
+! 		{
+! 		    /* Rule 1 is satisfied */
+! 		    for (idx = compl_length; idx < len; ++idx)
+! 			IObuff[idx] = TOLOWER_LOC(IObuff[idx]);
+! 		    break;
+! 		}
+  	    }
+  	}
+  
+! 	/*
+! 	 * Rule 2: No lower case, 2nd consecutive letter converted to
+! 	 * upper case.
+! 	 */
+! 	if (!has_lower)
+  	{
+! 	    for (idx = 0; idx < compl_length; ++idx)
+  	    {
+! 		if (was_letter && isupper(compl_orig_text[idx])
+! 						      && islower(IObuff[idx]))
+  		{
+! 		    /* Rule 2 is satisfied */
+! 		    for (idx = compl_length; idx < len; ++idx)
+! 			IObuff[idx] = TOUPPER_LOC(IObuff[idx]);
+! 		    break;
+  		}
+- 		was_letter = isalpha(compl_orig_text[idx]);
+  	    }
+- 	}
+  
+! 	/* Copy the original case of the part we typed */
+! 	STRNCPY(IObuff, compl_orig_text, compl_length);
+  
+  	return ins_compl_add(IObuff, len, icase, fname, NULL, dir,
+  								flags, FALSE);
+--- 2067,2213 ----
+      int		dir;
+      int		flags;
+  {
++     char_u	*p;
++     int		i, c;
++     int		actual_len;		/* Take multi-byte characters */
++     int		actual_compl_length;	/* into account. */
++     int		*wca;		        /* Wide character array. */
+      int		has_lower = FALSE;
+      int		was_letter = FALSE;
+  
+!     if (p_ic && curbuf->b_p_inf)
+      {
+! 	/* Infer case of completed part. */
+  
+! 	/* Find actual length of completion. */
+! #ifdef FEAT_MBYTE
+! 	if (has_mbyte)
+  	{
+! 	    p = str;
+! 	    actual_len = 0;
+! 	    while (*p != NUL)
+  	    {
+! 		mb_ptr_adv(p);
+! 		++actual_len;
+  	    }
+  	}
++ 	else
++ #endif
++ 	    actual_len = len;
+  
+! 	/* Find actual length of original text. */
+! #ifdef FEAT_MBYTE
+! 	if (has_mbyte)
+  	{
+! 	    p = compl_orig_text;
+! 	    actual_compl_length = 0;
+! 	    while (*p != NUL)
+  	    {
+! 		mb_ptr_adv(p);
+! 		++actual_compl_length;
+! 	    }
+! 	}
+! 	else
+! #endif
+! 	    actual_compl_length = compl_length;
+! 
+! 	/* Allocate wide character array for the completion and fill it. */
+! 	wca = (int *)alloc(actual_len * sizeof(int));
+! 	if (wca != NULL)
+! 	{
+! 	    p = str;
+! 	    for (i = 0; i < actual_len; ++i)
+! #ifdef FEAT_MBYTE
+! 		if (has_mbyte)
+! 		    wca[i] = mb_ptr2char_adv(&p);
+! 		else
+! #endif
+! 		    wca[i] = *(p++);
+! 
+! 	    /* Rule 1: Were any chars converted to lower? */
+! 	    p = compl_orig_text;
+! 	    for (i = 0; i < actual_compl_length; ++i)
+! 	    {
+! #ifdef FEAT_MBYTE
+! 		if (has_mbyte)
+! 		    c = mb_ptr2char_adv(&p);
+! 		else
+! #endif
+! 		    c = *(p++);
+! 		if (MB_ISLOWER(c))
+  		{
+! 		    has_lower = TRUE;
+! 		    if (MB_ISUPPER(wca[i]))
+! 		    {
+! 			/* Rule 1 is satisfied. */
+! 			for (i = actual_compl_length; i < actual_len; ++i)
+! 			    wca[i] = MB_TOLOWER(wca[i]);
+! 			break;
+! 		    }
+  		}
+  	    }
+  
+! 	    /*
+! 	     * Rule 2: No lower case, 2nd consecutive letter converted to
+! 	     * upper case.
+! 	     */
+! 	    if (!has_lower)
+! 	    {
+! 		p = compl_orig_text;
+! 		for (i = 0; i < actual_compl_length; ++i)
+! 		{
+! #ifdef FEAT_MBYTE
+! 		    if (has_mbyte)
+! 			c = mb_ptr2char_adv(&p);
+! 		    else
+! #endif
+! 			c = *(p++);
+! 		    if (was_letter && MB_ISUPPER(c) && MB_ISLOWER(wca[i]))
+! 		    {
+! 			/* Rule 2 is satisfied. */
+! 			for (i = actual_compl_length; i < actual_len; ++i)
+! 			    wca[i] = MB_TOUPPER(wca[i]);
+! 			break;
+! 		    }
+! 		    was_letter = MB_ISLOWER(c) || MB_ISUPPER(c);
+! 		}
+! 	    }
+! 
+! 	    /* Copy the original case of the part we typed. */
+! 	    p = compl_orig_text;
+! 	    for (i = 0; i < actual_compl_length; ++i)
+! 	    {
+! #ifdef FEAT_MBYTE
+! 		if (has_mbyte)
+! 		    c = mb_ptr2char_adv(&p);
+! 		else
+! #endif
+! 		    c = *(p++);
+! 		if (MB_ISLOWER(c))
+! 		    wca[i] = MB_TOLOWER(wca[i]);
+! 		else if (MB_ISUPPER(c))
+! 		    wca[i] = MB_TOUPPER(wca[i]);
+! 	    }
+! 
+! 	    /* 
+! 	     * Generate encoding specific output from wide character array.
+! 	     * Multi-byte characters can occupy up to five bytes more than
+! 	     * ASCII characters, and we also need one byte for NUL, so stay
+! 	     * six bytes away from the edge of IObuff.
+! 	     */
+! 	    p = IObuff;
+! 	    i = 0;
+! 	    while (i < actual_len && (p - IObuff + 6) < IOSIZE)
+! #ifdef FEAT_MBYTE
+! 		if (has_mbyte)
+! 		    p += mb_char2bytes(wca[i++], p);
+! 		else
+! #endif
+! 		    *(p++) = wca[i++];
+! 	    *p = NUL;
+! 
+! 	    vim_free(wca);
+! 	}
+  
+  	return ins_compl_add(IObuff, len, icase, fname, NULL, dir,
+  								flags, FALSE);
+***************
+*** 2842,2847 ****
+--- 2934,2940 ----
+  			/*
+  			 * Add the other matches on the line
+  			 */
++ 			ptr = buf;
+  			while (!got_int)
+  			{
+  			    /* Find start of the next word.  Skip white
+***************
+*** 2851,2857 ****
+  				break;
+  			    wstart = ptr;
+  
+! 			    /* Find end of the word and add it. */
+  #ifdef FEAT_MBYTE
+  			    if (has_mbyte)
+  				/* Japanese words may have characters in
+--- 2944,2950 ----
+  				break;
+  			    wstart = ptr;
+  
+! 			    /* Find end of the word. */
+  #ifdef FEAT_MBYTE
+  			    if (has_mbyte)
+  				/* Japanese words may have characters in
+***************
+*** 2868,2876 ****
+  			    else
+  #endif
+  				ptr = find_word_end(ptr);
+! 			    add_r = ins_compl_add_infercase(wstart,
+! 				    (int)(ptr - wstart),
+! 				    p_ic, files[i], *dir, 0);
+  			}
+  		    }
+  		    if (add_r == OK)
+--- 2961,2972 ----
+  			    else
+  #endif
+  				ptr = find_word_end(ptr);
+! 
+! 			    /* Add the word. Skip the regexp match. */
+! 			    if (wstart != regmatch->startp[0])
+! 				add_r = ins_compl_add_infercase(wstart,
+! 					(int)(ptr - wstart),
+! 					p_ic, files[i], *dir, 0);
+  			}
+  		    }
+  		    if (add_r == OK)
+*** ../vim-7.1.066/src/version.c	Sun Aug 12 15:50:26 2007
+--- src/version.c	Sun Aug 12 16:36:34 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     67,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+128. You can access the Net -- via your portable and cellular phone.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.068
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.068?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.068 (added)
+++ trunk/packages/vim/upstream/patches/7.1.068 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,206 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.068
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.068
+Problem:    When 'equalalways' is set and splitting a window, it's possible
+	    that another small window gets bigger.
+Solution:   Only equalize window sizes when after a split the windows are
+	    smaller than another window. (Martin Toft)
+Files:	    runtime/doc/options.txt, runtime/doc/windows.txt, src/window.c
+
+
+*** ../vim-7.1.067/runtime/doc/options.txt	Sat May 12 16:27:04 2007
+--- runtime/doc/options.txt	Sat Aug 11 17:25:38 2007
+***************
+*** 1,4 ****
+! *options.txt*	For Vim version 7.1.  Last change: 2007 May 11
+  
+  
+  		  VIM REFERENCE MANUAL	  by Bram Moolenaar
+--- 1,4 ----
+! *options.txt*	For Vim version 7.1.  Last change: 2007 Aug 10
+  
+  
+  		  VIM REFERENCE MANUAL	  by Bram Moolenaar
+***************
+*** 2415,2422 ****
+  	When mixing vertically and horizontally split windows, a minimal size
+  	is computed and some windows may be larger if there is room.  The
+  	'eadirection' option tells in which direction the size is affected.
+! 	Changing the height of a window can be avoided by setting
+! 	'winfixheight'.
+  
+  						*'equalprg'* *'ep'*
+  'equalprg' 'ep'		string	(default "")
+--- 2418,2425 ----
+  	When mixing vertically and horizontally split windows, a minimal size
+  	is computed and some windows may be larger if there is room.  The
+  	'eadirection' option tells in which direction the size is affected.
+! 	Changing the height and width of a window can be avoided by setting
+! 	'winfixheight' and 'winfixwidth', respectively.
+  
+  						*'equalprg'* *'ep'*
+  'equalprg' 'ep'		string	(default "")
+*** ../vim-7.1.067/runtime/doc/windows.txt	Sat May 12 16:42:48 2007
+--- runtime/doc/windows.txt	Sat Aug 11 17:25:38 2007
+***************
+*** 132,138 ****
+  		the same file.  Make new window N high (default is to use half
+  		the height of the current window).  Reduces the current window
+  		height to create room (and others, if the 'equalalways' option
+! 		is set and 'eadirection' isn't "hor").
+  		Note: CTRL-S does not work on all terminals and might block
+  		further input, use CTRL-Q to get going again.
+  		Also see |++opt| and |+cmd|.
+--- 132,139 ----
+  		the same file.  Make new window N high (default is to use half
+  		the height of the current window).  Reduces the current window
+  		height to create room (and others, if the 'equalalways' option
+! 		is set, 'eadirection' isn't "hor", and one of them is higher
+! 		than the current or the new window).
+  		Note: CTRL-S does not work on all terminals and might block
+  		further input, use CTRL-Q to get going again.
+  		Also see |++opt| and |+cmd|.
+***************
+*** 140,148 ****
+  CTRL-W CTRL-V						*CTRL-W_CTRL-V*
+  CTRL-W v						*CTRL-W_v*
+  :[N]vs[plit] [++opt] [+cmd] [file]			*:vs* *:vsplit*
+! 		Like |:split|, but split vertically.  If 'equalalways' is set
+! 		and 'eadirection' isn't "ver" the windows will be spread out
+! 		horizontally, unless a width was specified.
+  		Note: In other places CTRL-Q does the same as CTRL-V, but here
+  		it doesn't!
+  
+--- 141,153 ----
+  CTRL-W CTRL-V						*CTRL-W_CTRL-V*
+  CTRL-W v						*CTRL-W_v*
+  :[N]vs[plit] [++opt] [+cmd] [file]			*:vs* *:vsplit*
+! 		Like |:split|, but split vertically.  The windows will be
+! 		spread out horizontally if
+! 		1. a width was not specified,
+! 		2. 'equalalways' is set,
+! 		3. 'eadirection' isn't "ver", and
+! 		4. one of the other windows are wider than the current or new
+! 		   window.
+  		Note: In other places CTRL-Q does the same as CTRL-V, but here
+  		it doesn't!
+  
+*** ../vim-7.1.067/src/window.c	Sat Aug 11 13:37:36 2007
+--- src/window.c	Sat Aug 11 17:25:38 2007
+***************
+*** 733,739 ****
+      if (flags & WSP_VERT)
+      {
+  	layout = FR_ROW;
+- 	do_equal = (p_ea && new_size == 0 && *p_ead != 'v');
+  
+  	/*
+  	 * Check if we are able to split the current window and compute its
+--- 733,738 ----
+***************
+*** 770,785 ****
+  	 * instead, if possible. */
+  	if (oldwin->w_p_wfw)
+  	    win_setwidth_win(oldwin->w_width + new_size, oldwin);
+      }
+      else
+  #endif
+      {
+  	layout = FR_COL;
+- 	do_equal = (p_ea && new_size == 0
+- #ifdef FEAT_VERTSPLIT
+- 		&& *p_ead != 'h'
+- #endif
+- 		);
+  
+  	/*
+  	 * Check if we are able to split the current window and compute its
+--- 769,799 ----
+  	 * instead, if possible. */
+  	if (oldwin->w_p_wfw)
+  	    win_setwidth_win(oldwin->w_width + new_size, oldwin);
++ 
++ 	/* Only make all windows the same width if one of them (except oldwin)
++ 	 * is wider than one of the split windows. */
++ 	if (!do_equal && p_ea && size == 0 && *p_ead != 'v'
++ 	   && oldwin->w_frame->fr_parent != NULL)
++ 	{
++ 	    frp = oldwin->w_frame->fr_parent->fr_child;
++ 	    while (frp != NULL)
++ 	    {
++ 		if (frp->fr_win != oldwin && frp->fr_win != NULL
++ 			&& (frp->fr_win->w_width > new_size
++ 			    || frp->fr_win->w_width > oldwin->w_width
++ 						   - new_size - STATUS_HEIGHT))
++ 		{
++ 		    do_equal = TRUE;
++ 		    break;
++ 		}
++ 		frp = frp->fr_next;
++ 	    }
++ 	}
+      }
+      else
+  #endif
+      {
+  	layout = FR_COL;
+  
+  	/*
+  	 * Check if we are able to split the current window and compute its
+***************
+*** 831,836 ****
+--- 845,873 ----
+  	    oldwin_height = oldwin->w_height;
+  	    if (need_status)
+  		oldwin_height -= STATUS_HEIGHT;
++ 	}
++ 
++ 	/* Only make all windows the same height if one of them (except oldwin)
++ 	 * is higher than one of the split windows. */
++ 	if (!do_equal && p_ea && size == 0
++ #ifdef FEAT_VERTSPLIT
++ 		&& *p_ead != 'h'
++ #endif
++ 	   && oldwin->w_frame->fr_parent != NULL)
++ 	{
++ 	    frp = oldwin->w_frame->fr_parent->fr_child;
++ 	    while (frp != NULL)
++ 	    {
++ 		if (frp->fr_win != oldwin && frp->fr_win != NULL
++ 			&& (frp->fr_win->w_height > new_size
++ 			    || frp->fr_win->w_height > oldwin_height - new_size
++ 							      - STATUS_HEIGHT))
++ 		{
++ 		    do_equal = TRUE;
++ 		    break;
++ 		}
++ 		frp = frp->fr_next;
++ 	    }
+  	}
+      }
+  
+*** ../vim-7.1.067/src/version.c	Sun Aug 12 16:38:03 2007
+--- src/version.c	Sun Aug 12 16:51:36 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     68,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+129. You cancel your newspaper subscription.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.069
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.069?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.069 (added)
+++ trunk/packages/vim/upstream/patches/7.1.069 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,82 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.069
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.069
+Problem:    GTK GUI: When using confirm() without a default button there still
+	    is a default choice.
+Solution:   Ignore Enter and Space when there is no default button. (Chris
+	    Lubinski)
+Files:	    src/gui_gtk.c
+
+
+*** ../vim-7.1.068/src/gui_gtk.c	Mon May 14 19:35:51 2007
+--- src/gui_gtk.c	Sat Aug 11 17:38:03 2007
+***************
+*** 1630,1640 ****
+   */
+  /*ARGSUSED*/
+      static int
+! dlg_key_press_event(GtkWidget * widget, GdkEventKey * event, CancelData *data)
+  {
+!     /* Ignore hitting Enter when there is no default button. */
+!     if (data->ignore_enter && event->keyval == GDK_Return)
+  	return TRUE;
+  
+      if (event->keyval != GDK_Escape && event->keyval != GDK_Return)
+  	return FALSE;
+--- 1630,1643 ----
+   */
+  /*ARGSUSED*/
+      static int
+! dlg_key_press_event(GtkWidget *widget, GdkEventKey *event, CancelData *data)
+  {
+!     /* Ignore hitting Enter (or Space) when there is no default button. */
+!     if (data->ignore_enter && (event->keyval == GDK_Return
+! 						     || event->keyval == ' '))
+  	return TRUE;
++     else    /* A different key was pressed, return to normal behavior */
++ 	data->ignore_enter = FALSE;
+  
+      if (event->keyval != GDK_Escape && event->keyval != GDK_Return)
+  	return FALSE;
+***************
+*** 2223,2228 ****
+--- 2226,2238 ----
+  dialog_key_press_event_cb(GtkWidget *widget, GdkEventKey *event, gpointer data)
+  {
+      DialogInfo *di = (DialogInfo *)data;
++ 
++     /* Ignore hitting Enter (or Space) when there is no default button. */
++     if (di->ignore_enter && (event->keyval == GDK_Return
++ 						     || event->keyval == ' '))
++ 	return TRUE;
++     else    /* A different key was pressed, return to normal behavior */
++ 	di->ignore_enter = FALSE;
+  
+      /* Close the dialog when hitting "Esc". */
+      if (event->keyval == GDK_Escape)
+*** ../vim-7.1.068/src/version.c	Sun Aug 12 16:55:01 2007
+--- src/version.c	Tue Aug 14 14:58:36 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     69,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+148. You find it easier to dial-up the National Weather Service
+     Weather/your_town/now.html than to simply look out the window.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.070
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.070?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.070 (added)
+++ trunk/packages/vim/upstream/patches/7.1.070 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,49 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.070 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.070 (extra)
+Problem:    Win32 GUI: When using confirm() without a default button there
+	    still is a default choice.
+Solution:   Set focus on something else than a button. (Chris Lubinski)
+Files:	    src/gui_w32.c
+
+
+*** ../vim-7.1.069/src/gui_w32.c	Tue Jun 19 10:09:15 2007
+--- src/gui_w32.c	Sat Aug 11 17:39:50 2007
+***************
+*** 2894,2899 ****
+--- 2894,2903 ----
+  	(void)SetFocus(hwnd);
+  	if (dialog_default_button > IDCANCEL)
+  	    (void)SetFocus(GetDlgItem(hwnd, dialog_default_button));
++ 	else
++ 	    /* We don't have a default, set focus on another element of the
++ 	     * dialog window, probably the icon */
++ 	    (void)SetFocus(GetDlgItem(hwnd, DLG_NONBUTTON_CONTROL));
+  	return FALSE;
+      }
+  
+*** ../vim-7.1.069/src/version.c	Tue Aug 14 14:59:41 2007
+--- src/version.c	Tue Aug 14 16:55:41 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     70,
+  /**/
+
+-- 
+You are not really successful until someone claims he sat
+beside you in school.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.071
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.071?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.071 (added)
+++ trunk/packages/vim/upstream/patches/7.1.071 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,169 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.071
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.071 (after 7.1.040)
+Problem:    Regexp patterns are not tested.
+Solution:   Add a basic test, to be expanded later.
+	    Also add (commented-out) support for valgrind.
+Files:	    src/testdir/Makefile, src/testdir/test64.in, src/testdir/test64.ok
+
+
+*** ../vim-7.1.070/src/testdir/Makefile	Thu Jul 26 22:55:11 2007
+--- src/testdir/Makefile	Tue Aug 14 15:16:08 2007
+***************
+*** 4,9 ****
+--- 4,13 ----
+  
+  VIMPROG = ../vim
+  
++ # Uncomment this line for using valgrind.
++ # The output goes into a file "valgrind.$PID" (sorry, no test number).
++ # VALGRIND = valgrind --tool=memcheck --num-callers=15 --logfile=valgrind
++ 
+  SCRIPTS = test1.out test2.out test3.out test4.out test5.out test6.out \
+  		test7.out test8.out test9.out test10.out test11.out \
+  		test12.out  test13.out test14.out test15.out test17.out \
+***************
+*** 15,21 ****
+  		test43.out test44.out test45.out test46.out test47.out \
+  		test48.out test49.out test51.out test52.out test53.out \
+  		test54.out test55.out test56.out test57.out test58.out \
+! 		test59.out test60.out test61.out test62.out test63.out
+  
+  SCRIPTS_GUI = test16.out
+  
+--- 19,26 ----
+  		test43.out test44.out test45.out test46.out test47.out \
+  		test48.out test49.out test51.out test52.out test53.out \
+  		test54.out test55.out test56.out test57.out test58.out \
+! 		test59.out test60.out test61.out test62.out test63.out \
+! 		test64.out
+  
+  SCRIPTS_GUI = test16.out
+  
+***************
+*** 38,44 ****
+  
+  test1.out: test1.in
+  	-rm -f $*.failed tiny.vim small.vim mbyte.vim test.ok X* viminfo
+! 	$(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
+  	@/bin/sh -c "if diff test.out $*.ok; \
+  		then mv -f test.out $*.out; \
+  		else echo; \
+--- 43,49 ----
+  
+  test1.out: test1.in
+  	-rm -f $*.failed tiny.vim small.vim mbyte.vim test.ok X* viminfo
+! 	$(VALGRIND) $(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
+  	@/bin/sh -c "if diff test.out $*.ok; \
+  		then mv -f test.out $*.out; \
+  		else echo; \
+***************
+*** 51,57 ****
+  	cp $*.ok test.ok
+  	# Sleep a moment to avoid that the xterm title is messed up
+  	@-sleep .2
+! 	-$(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
+  	@/bin/sh -c "if test -f test.out; then\
+  		  if diff test.out $*.ok; \
+  		  then mv -f test.out $*.out; \
+--- 56,62 ----
+  	cp $*.ok test.ok
+  	# Sleep a moment to avoid that the xterm title is messed up
+  	@-sleep .2
+! 	-$(VALGRIND) $(VIMPROG) -u unix.vim -U NONE --noplugin -s dotest.in $*.in
+  	@/bin/sh -c "if test -f test.out; then\
+  		  if diff test.out $*.ok; \
+  		  then mv -f test.out $*.out; \
+*** ../vim-7.1.070/src/testdir/test64.in	Tue Aug 14 17:26:28 2007
+--- src/testdir/test64.in	Tue Aug 14 16:03:44 2007
+***************
+*** 0 ****
+--- 1,52 ----
++ Test for regexp patterns.
++ 
++ A pattern that gives the expected result produces OK, so that we know it was
++ actually tried.
++ 
++ STARTTEST
++ :so small.vim
++ :" tl is a List of Lists with:
++ :"    regexp pattern
++ :"    text to test the pattern on
++ :"    expected match (optional)
++ :"    expected submatch 1 (optional)
++ :"    expected submatch 2 (optional)
++ :"    etc.
++ :"  When there is no match use only the first two items.
++ :let tl = []
++ :call add(tl, ['b', 'abcdef', 'b'])
++ :call add(tl, ['bc*', 'abccccdef', 'bcccc'])
++ :call add(tl, ['bc\{-}', 'abccccdef', 'b'])
++ :call add(tl, ['bc\{-}\(d\)', 'abccccdef', 'bccccd', 'd'])
++ :call add(tl, ['x', 'abcdef'])
++ :"
++ :for t in tl
++ :  let l = matchlist(t[1], t[0])
++ :" check the match itself
++ :  if len(l) == 0 && len(t) > 2
++ :    $put ='ERROR: pat: \"' . t[0] . '\", text: \"' . t[1] . '\", did not match, expected: \"' . t[2] . '\"'
++ :  elseif len(l) > 0 && len(t) == 2
++ :    $put ='ERROR: pat: \"' . t[0] . '\", text: \"' . t[1] . '\", match: \"' . l[0] . '\", expected no match'
++ :  elseif len(t) > 2 && l[0] != t[2]
++ :    $put ='ERROR: pat: \"' . t[0] . '\", text: \"' . t[1] . '\", match: \"' . l[0] . '\", expected: \"' . t[2] . '\"'
++ :  else
++ :    $put ='OK'
++ :  endif
++ :  if len(l) > 0
++ :"   check all the nine submatches
++ :    for i in range(1, 9)
++ :      if len(t) <= i + 2
++ :        let e = ''
++ :      else
++ :        let e = t[i + 2]
++ :      endif
++ :      if l[i] != e
++ :        $put ='ERROR: pat: \"' . t[0] . '\", text: \"' . t[1] . '\", submatch ' . i . ': \"' . l[i] . '\", expected: \"' . e . '\"'
++ :      endif
++ :    endfor
++ :  endif
++ :endfor
++ :/^Results/,$wq! test.out
++ ENDTEST
++ 
++ Results of test64:
+*** ../vim-7.1.070/src/testdir/test64.ok	Tue Aug 14 17:26:28 2007
+--- src/testdir/test64.ok	Tue Aug 14 16:01:47 2007
+***************
+*** 0 ****
+--- 1,6 ----
++ Results of test64:
++ OK
++ OK
++ OK
++ OK
++ OK
+*** ../vim-7.1.070/src/version.c	Tue Aug 14 16:57:04 2007
+--- src/version.c	Tue Aug 14 17:25:20 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     71,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+150. You find yourself counting emoticons to get to sleep.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.072
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.072?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.072 (added)
+++ trunk/packages/vim/upstream/patches/7.1.072 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,177 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.072 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.072 (extra, after 7.1.041 and 7.1.071)
+Problem:    Some changes for patch 7.1.071 are in extra files.
+Solution:   Update the extra files.  Also fix a few warnings from the DOS test
+	    makefile.
+Files:	    src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak,
+	    src/testdir/Make_os2.mak, src/testdir/Make_vms.mms
+
+
+*** ../vim-7.1.071/src/testdir/Make_amiga.mak	Thu Jul 26 23:10:50 2007
+--- src/testdir/Make_amiga.mak	Tue Aug 14 15:14:03 2007
+***************
+*** 25,31 ****
+  		test43.out test44.out test45.out test46.out test47.out \
+  		test48.out test51.out test53.out test54.out test55.out \
+  		test56.out test57.out test58.out test59.out test60.out \
+! 		test61.out test62.out test63.out
+  
+  .SUFFIXES: .in .out
+  
+--- 25,31 ----
+  		test43.out test44.out test45.out test46.out test47.out \
+  		test48.out test51.out test53.out test54.out test55.out \
+  		test56.out test57.out test58.out test59.out test60.out \
+! 		test61.out test62.out test63.out test64.out
+  
+  .SUFFIXES: .in .out
+  
+***************
+*** 108,110 ****
+--- 108,111 ----
+  test61.out: test61.in
+  test62.out: test62.in
+  test63.out: test63.in
++ test64.out: test64.in
+*** ../vim-7.1.071/src/testdir/Make_dos.mak	Thu Jul 26 23:10:50 2007
+--- src/testdir/Make_dos.mak	Tue Aug 14 15:14:25 2007
+***************
+*** 19,25 ****
+  		test44.out test45.out test46.out test47.out \
+  		test48.out test51.out test53.out test54.out \
+  		test55.out test56.out test57.out test58.out test59.out \
+! 		test60.out test61.out test62.out test63.out
+  
+  SCRIPTS =	test3.out test4.out test5.out test6.out test7.out \
+  		test8.out test9.out test11.out test13.out test14.out \
+--- 19,25 ----
+  		test44.out test45.out test46.out test47.out \
+  		test48.out test51.out test53.out test54.out \
+  		test55.out test56.out test57.out test58.out test59.out \
+! 		test60.out test61.out test62.out test63.out test64.out
+  
+  SCRIPTS =	test3.out test4.out test5.out test6.out test7.out \
+  		test8.out test9.out test11.out test13.out test14.out \
+***************
+*** 51,69 ****
+  
+  clean:
+  	-del *.out
+! 	-del test.ok
+! 	-del small.vim
+! 	-del tiny.vim
+! 	-del mbyte.vim
+  	-del X*
+! 	-del viminfo
+  
+  .in.out:
+  	copy $*.ok test.ok
+  	$(VIMPROG) -u dos.vim -U NONE --noplugin -s dotest.in $*.in
+  	diff test.out $*.ok
+! 	-del $*.out
+  	rename test.out $*.out
+  	-del X*
+  	-del test.ok
+! 	-del viminfo
+--- 51,69 ----
+  
+  clean:
+  	-del *.out
+! 	-if exist test.ok del test.ok
+! 	-if exist small.vim del small.vim
+! 	-if exist tiny.vim del tiny.vim
+! 	-if exist mbyte.vim del mbyte.vim
+  	-del X*
+! 	-if exist viminfo del viminfo
+  
+  .in.out:
+  	copy $*.ok test.ok
+  	$(VIMPROG) -u dos.vim -U NONE --noplugin -s dotest.in $*.in
+  	diff test.out $*.ok
+! 	-if exist $*.out del $*.out
+  	rename test.out $*.out
+  	-del X*
+  	-del test.ok
+! 	-if exist viminfo del viminfo
+*** ../vim-7.1.071/src/testdir/Make_os2.mak	Thu Jul 26 23:10:50 2007
+--- src/testdir/Make_os2.mak	Tue Aug 14 15:14:44 2007
+***************
+*** 25,31 ****
+  		test43.out test44.out test45.out test46.out test47.out \
+  		test48.out test51.out test53.out test54.out test55.out \
+  		test56.out test57.out test58.out test59.out test60.out \
+! 		test61.out test62.out test63.out
+  
+  .SUFFIXES: .in .out
+  
+--- 25,31 ----
+  		test43.out test44.out test45.out test46.out test47.out \
+  		test48.out test51.out test53.out test54.out test55.out \
+  		test56.out test57.out test58.out test59.out test60.out \
+! 		test61.out test62.out test63.out test64.out
+  
+  .SUFFIXES: .in .out
+  
+*** ../vim-7.1.071/src/testdir/Make_vms.mms	Thu Jul 26 23:10:50 2007
+--- src/testdir/Make_vms.mms	Tue Aug 14 15:15:56 2007
+***************
+*** 4,10 ****
+  # Authors:	Zoltan Arpadffy, <arpadffy at polarhome.com>
+  #		Sandor Kopanyi,  <sandor.kopanyi at mailbox.hu>
+  #
+! # Last change:  2007 Jul 24
+  #
+  # This has been tested on VMS 6.2 to 7.2 on DEC Alpha and VAX.
+  # Edit the lines in the Configuration section below to select.
+--- 4,10 ----
+  # Authors:	Zoltan Arpadffy, <arpadffy at polarhome.com>
+  #		Sandor Kopanyi,  <sandor.kopanyi at mailbox.hu>
+  #
+! # Last change:  2007 Aug 14
+  #
+  # This has been tested on VMS 6.2 to 7.2 on DEC Alpha and VAX.
+  # Edit the lines in the Configuration section below to select.
+***************
+*** 59,65 ****
+  	 test43.out test44.out test45.out test46.out \
+  	 test48.out test51.out test53.out test54.out test55.out \
+  	 test56.out test57.out test58.out test59.out test60.out \
+! 	 test61.out test62.out test63.out
+  
+  .IFDEF WANT_GUI
+  SCRIPT_GUI = test16.out
+--- 59,65 ----
+  	 test43.out test44.out test45.out test46.out \
+  	 test48.out test51.out test53.out test54.out test55.out \
+  	 test56.out test57.out test58.out test59.out test60.out \
+! 	 test61.out test62.out test63.out test64.out
+  
+  .IFDEF WANT_GUI
+  SCRIPT_GUI = test16.out
+*** ../vim-7.1.071/src/version.c	Tue Aug 14 17:28:14 2007
+--- src/version.c	Tue Aug 14 17:51:21 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     72,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+152. You find yourself falling for someone you've never seen or hardly
+     know, but, boy can he/she TYPE!!!!!!
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.073
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.073?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.073 (added)
+++ trunk/packages/vim/upstream/patches/7.1.073 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,113 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.073
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.073 (after 7.1.062)
+Problem:    Wrong cursor position and crash when 'preserveindent' is set.
+	    (Charles Campbell)
+Solution:   Handle the situation that we start without indent. (Chris
+	    Lubinski)
+Files:	    src/misc1.c
+
+
+*** ../vim-7.1.072/src/misc1.c	Sat Aug 11 14:32:10 2007
+--- src/misc1.c	Tue Aug 14 21:21:49 2007
+***************
+*** 104,110 ****
+      int		ind_done = 0;	    /* measured in spaces */
+      int		tab_pad;
+      int		retval = FALSE;
+!     int		orig_char_len = 0;  /* number of initial whitespace chars when
+  				       'et' and 'pi' are both set */
+  
+      /*
+--- 104,110 ----
+      int		ind_done = 0;	    /* measured in spaces */
+      int		tab_pad;
+      int		retval = FALSE;
+!     int		orig_char_len = -1; /* number of initial whitespace chars when
+  				       'et' and 'pi' are both set */
+  
+      /*
+***************
+*** 159,165 ****
+  
+  	    /* Fill to next tabstop with a tab, if possible */
+  	    tab_pad = (int)curbuf->b_p_ts - (ind_done % (int)curbuf->b_p_ts);
+! 	    if (todo >= tab_pad && orig_char_len == 0)
+  	    {
+  		doit = TRUE;
+  		todo -= tab_pad;
+--- 159,165 ----
+  
+  	    /* Fill to next tabstop with a tab, if possible */
+  	    tab_pad = (int)curbuf->b_p_ts - (ind_done % (int)curbuf->b_p_ts);
+! 	    if (todo >= tab_pad && orig_char_len == -1)
+  	    {
+  		doit = TRUE;
+  		todo -= tab_pad;
+***************
+*** 206,216 ****
+      /* If 'preserveindent' and 'expandtab' are both set keep the original
+       * characters and allocate accordingly.  We will fill the rest with spaces
+       * after the if (!curbuf->b_p_et) below. */
+!     if (orig_char_len != 0)
+      {
+  	newline = alloc(orig_char_len + size - ind_done + line_len);
+  	if (newline == NULL)
+  	    return FALSE;
+  	p = oldline;
+  	s = newline;
+  	while (orig_char_len > 0)
+--- 206,220 ----
+      /* If 'preserveindent' and 'expandtab' are both set keep the original
+       * characters and allocate accordingly.  We will fill the rest with spaces
+       * after the if (!curbuf->b_p_et) below. */
+!     if (orig_char_len != -1)
+      {
+  	newline = alloc(orig_char_len + size - ind_done + line_len);
+  	if (newline == NULL)
+  	    return FALSE;
++ 	todo = size - ind_done;
++ 	ind_len = orig_char_len + todo;    /* Set total length of indent in
++ 					    * characters, which may have been
++ 					    * undercounted until now  */
+  	p = oldline;
+  	s = newline;
+  	while (orig_char_len > 0)
+***************
+*** 222,230 ****
+  	 * than old) */
+  	while (vim_iswhite(*p))
+  	    (void)*p++;
+- 	todo = size - ind_done;
+- 	ind_len += todo;    /* Set total length of indent in characters,
+- 			     * which may have been undercounted until now  */
+  
+      }
+      else
+--- 226,231 ----
+*** ../vim-7.1.072/src/version.c	Tue Aug 14 17:54:37 2007
+--- src/version.c	Tue Aug 14 22:14:54 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     73,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+157. You fum through a magazine, you first check to see if it has a web
+     address.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.074
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.074?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.074 (added)
+++ trunk/packages/vim/upstream/patches/7.1.074 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,171 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.074
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.074
+Problem:    Crash when calling string() on a recurively nested List.
+Solution:   Check result value for being NULL. (Yukihiro Nakadaira)
+Files:	    src/eval.c
+
+
+*** ../vim-7.1.073/src/eval.c	Mon Aug  6 22:27:12 2007
+--- src/eval.c	Tue Aug 14 22:01:12 2007
+***************
+*** 6802,6808 ****
+   * "numbuf" is used for a number.
+   * Does not put quotes around strings, as ":echo" displays values.
+   * When "copyID" is not NULL replace recursive lists and dicts with "...".
+!  * May return NULL;
+   */
+      static char_u *
+  echo_string(tv, tofree, numbuf, copyID)
+--- 6802,6808 ----
+   * "numbuf" is used for a number.
+   * Does not put quotes around strings, as ":echo" displays values.
+   * When "copyID" is not NULL replace recursive lists and dicts with "...".
+!  * May return NULL.
+   */
+      static char_u *
+  echo_string(tv, tofree, numbuf, copyID)
+***************
+*** 6887,6893 ****
+   * If the memory is allocated "tofree" is set to it, otherwise NULL.
+   * "numbuf" is used for a number.
+   * Puts quotes around strings, so that they can be parsed back by eval().
+!  * May return NULL;
+   */
+      static char_u *
+  tv2string(tv, tofree, numbuf, copyID)
+--- 6887,6893 ----
+   * If the memory is allocated "tofree" is set to it, otherwise NULL.
+   * "numbuf" is used for a number.
+   * Puts quotes around strings, so that they can be parsed back by eval().
+!  * May return NULL.
+   */
+      static char_u *
+  tv2string(tv, tofree, numbuf, copyID)
+***************
+*** 14974,14979 ****
+--- 14974,14983 ----
+  
+      p1 = tv2string(&(*(listitem_T **)s1)->li_tv, &tofree1, numbuf1, 0);
+      p2 = tv2string(&(*(listitem_T **)s2)->li_tv, &tofree2, numbuf2, 0);
++     if (p1 == NULL)
++ 	p1 = (char_u *)"";
++     if (p2 == NULL)
++ 	p2 = (char_u *)"";
+      if (item_compare_ic)
+  	res = STRICMP(p1, p2);
+      else
+***************
+*** 15463,15469 ****
+  
+      rettv->v_type = VAR_STRING;
+      rettv->vval.v_string = tv2string(&argvars[0], &tofree, numbuf, 0);
+!     if (tofree == NULL)
+  	rettv->vval.v_string = vim_strsave(rettv->vval.v_string);
+  }
+  
+--- 15467,15474 ----
+  
+      rettv->v_type = VAR_STRING;
+      rettv->vval.v_string = tv2string(&argvars[0], &tofree, numbuf, 0);
+!     /* Make a copy if we have a value but it's not in allocate memory. */
+!     if (rettv->vval.v_string != NULL && tofree == NULL)
+  	rettv->vval.v_string = vim_strsave(rettv->vval.v_string);
+  }
+  
+***************
+*** 20167,20172 ****
+--- 20174,20180 ----
+  		char_u	buf[MSG_BUF_LEN];
+  		char_u	numbuf2[NUMBUFLEN];
+  		char_u	*tofree;
++ 		char_u	*s;
+  
+  		msg_puts((char_u *)"(");
+  		for (i = 0; i < argcount; ++i)
+***************
+*** 20177,20186 ****
+  			msg_outnum((long)argvars[i].vval.v_number);
+  		    else
+  		    {
+! 			trunc_string(tv2string(&argvars[i], &tofree,
+! 					      numbuf2, 0), buf, MSG_BUF_CLEN);
+! 			msg_puts(buf);
+! 			vim_free(tofree);
+  		    }
+  		}
+  		msg_puts((char_u *)")");
+--- 20185,20197 ----
+  			msg_outnum((long)argvars[i].vval.v_number);
+  		    else
+  		    {
+! 			s = tv2string(&argvars[i], &tofree, numbuf2, 0);
+! 			if (s != NULL)
+! 			{
+! 			    trunc_string(s, buf, MSG_BUF_CLEN);
+! 			    msg_puts(buf);
+! 			    vim_free(tofree);
+! 			}
+  		    }
+  		}
+  		msg_puts((char_u *)")");
+***************
+*** 20258,20271 ****
+  	    char_u	buf[MSG_BUF_LEN];
+  	    char_u	numbuf2[NUMBUFLEN];
+  	    char_u	*tofree;
+  
+  	    /* The value may be very long.  Skip the middle part, so that we
+  	     * have some idea how it starts and ends. smsg() would always
+  	     * truncate it at the end. */
+! 	    trunc_string(tv2string(fc.rettv, &tofree, numbuf2, 0),
+! 							   buf, MSG_BUF_CLEN);
+! 	    smsg((char_u *)_("%s returning %s"), sourcing_name, buf);
+! 	    vim_free(tofree);
+  	}
+  	msg_puts((char_u *)"\n");   /* don't overwrite this either */
+  
+--- 20269,20286 ----
+  	    char_u	buf[MSG_BUF_LEN];
+  	    char_u	numbuf2[NUMBUFLEN];
+  	    char_u	*tofree;
++ 	    char_u	*s;
+  
+  	    /* The value may be very long.  Skip the middle part, so that we
+  	     * have some idea how it starts and ends. smsg() would always
+  	     * truncate it at the end. */
+! 	    s = tv2string(fc.rettv, &tofree, numbuf2, 0);
+! 	    if (s != NULL)
+! 	    {
+! 		trunc_string(s, buf, MSG_BUF_CLEN);
+! 		smsg((char_u *)_("%s returning %s"), sourcing_name, buf);
+! 		vim_free(tofree);
+! 	    }
+  	}
+  	msg_puts((char_u *)"\n");   /* don't overwrite this either */
+  
+*** ../vim-7.1.073/src/version.c	Tue Aug 14 22:15:53 2007
+--- src/version.c	Tue Aug 14 22:27:24 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     74,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+159. You get excited whenever discussing your hard drive.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.075
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.075?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.075 (added)
+++ trunk/packages/vim/upstream/patches/7.1.075 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,55 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.075
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.075
+Problem:    ":let v:statusmsg" reads memory already freed.
+Solution:   Don't set v:statusmsg when listing it.
+Files:	    src/eval.c
+
+
+*** ../vim-7.1.074/src/eval.c	Tue Aug 14 22:28:35 2007
+--- src/eval.c	Tue Aug 14 22:01:12 2007
+***************
+*** 18022,18028 ****
+      int		type;
+      char_u	*string;
+  {
+!     msg_attr(prefix, 0);    /* don't use msg(), it overwrites "v:statusmsg" */
+      if (name != NULL)	/* "a:" vars don't have a name stored */
+  	msg_puts(name);
+      msg_putchar(' ');
+--- 18022,18030 ----
+      int		type;
+      char_u	*string;
+  {
+!     /* don't use msg() or msg_attr() to avoid overwriting "v:statusmsg" */
+!     msg_start();
+!     msg_puts(prefix);
+      if (name != NULL)	/* "a:" vars don't have a name stored */
+  	msg_puts(name);
+      msg_putchar(' ');
+*** ../vim-7.1.074/src/version.c	Tue Aug 14 22:28:35 2007
+--- src/version.c	Tue Aug 14 22:39:49 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     75,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+160. You get in the elevator and double-click the button for the floor
+     you want.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.076
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.076?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.076 (added)
+++ trunk/packages/vim/upstream/patches/7.1.076 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,74 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.076
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.076
+Problem:    Another strcpy() with overlapping arguments.
+Solution:   Use mch_memmove(). (Dominique Pelle)  And another one.
+Files:	    src/ex_docmd.c, src/normal.c
+
+
+*** ../vim-7.1.075/src/ex_docmd.c	Sat Aug 11 15:59:44 2007
+--- src/ex_docmd.c	Wed Aug  8 22:28:33 2007
+***************
+*** 4493,4499 ****
+  	    if (eap->argt & (USECTRLV | XFILE))
+  		++p;		/* skip CTRL-V and next char */
+  	    else
+! 		STRCPY(p, p + 1);	/* remove CTRL-V and skip next char */
+  	    if (*p == NUL)		/* stop at NUL after CTRL-V */
+  		break;
+  	}
+--- 4493,4500 ----
+  	    if (eap->argt & (USECTRLV | XFILE))
+  		++p;		/* skip CTRL-V and next char */
+  	    else
+! 				/* remove CTRL-V and skip next char */
+! 		mch_memmove(p, p + 1, STRLEN(p));
+  	    if (*p == NUL)		/* stop at NUL after CTRL-V */
+  		break;
+  	}
+*** ../vim-7.1.075/src/normal.c	Wed Aug  8 21:41:19 2007
+--- src/normal.c	Sun Aug 12 17:35:20 2007
+***************
+*** 3760,3766 ****
+      extra_len = (int)STRLEN(p);
+      overflow = old_len + extra_len - SHOWCMD_COLS;
+      if (overflow > 0)
+! 	STRCPY(showcmd_buf, showcmd_buf + overflow);
+      STRCAT(showcmd_buf, p);
+  
+      if (char_avail())
+--- 3760,3767 ----
+      extra_len = (int)STRLEN(p);
+      overflow = old_len + extra_len - SHOWCMD_COLS;
+      if (overflow > 0)
+! 	mch_memmove(showcmd_buf, showcmd_buf + overflow,
+! 						      old_len - overflow + 1);
+      STRCAT(showcmd_buf, p);
+  
+      if (char_avail())
+*** ../vim-7.1.075/src/version.c	Tue Aug 14 22:40:13 2007
+--- src/version.c	Tue Aug 14 22:53:13 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     76,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+161. You get up before the sun rises to check your e-mail, and you
+     find yourself in the very same chair long after the sun has set.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.077
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.077?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.077 (added)
+++ trunk/packages/vim/upstream/patches/7.1.077 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,50 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.077
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.077
+Problem:    Using "can_spell" without initializing it. (Dominique Pelle)
+Solution:   Set a default for get_syntax_attr().
+Files:	    src/syntax.c
+
+
+*** ../vim-7.1.076/src/syntax.c	Thu Jul 26 22:55:11 2007
+--- src/syntax.c	Sun Aug 12 19:49:07 2007
+***************
+*** 1727,1732 ****
+--- 1727,1739 ----
+  {
+      int	    attr = 0;
+  
++     if (can_spell != NULL)
++ 	/* Default: Only do spelling when there is no @Spell cluster or when
++ 	 * ":syn spell toplevel" was used. */
++ 	*can_spell = syn_buf->b_syn_spell == SYNSPL_DEFAULT
++ 		    ? (syn_buf->b_spell_cluster_id == 0)
++ 		    : (syn_buf->b_syn_spell == SYNSPL_TOP);
++ 
+      /* check for out of memory situation */
+      if (syn_buf->b_sst_array == NULL)
+  	return 0;
+*** ../vim-7.1.076/src/version.c	Tue Aug 14 22:54:00 2007
+--- src/version.c	Tue Aug 14 23:06:26 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     77,
+  /**/
+
+-- 
+Send $25.00 for handy leaflet on how to make money by selling leaflets
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.078
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.078?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.078 (added)
+++ trunk/packages/vim/upstream/patches/7.1.078 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,86 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.078
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.078
+Problem:    Dropping a file name on gvim that contains a CSI byte doesn't work
+	    when editing the command line.
+Solution:   Escape the CSI byte when inserting in the input buffer. (Yukihiro
+	    Nakadaira)
+Files:	    src/gui.c, src/ui.c
+
+
+*** ../vim-7.1.077/src/gui.c	Thu May 10 19:19:15 2007
+--- src/gui.c	Tue Aug 14 12:41:43 2007
+***************
+*** 5117,5123 ****
+  		p = vim_strsave_escaped(fnames[i], (char_u *)"\\ \t\"|");
+  # endif
+  		if (p != NULL)
+! 		    add_to_input_buf(p, (int)STRLEN(p));
+  		vim_free(p);
+  		vim_free(fnames[i]);
+  	    }
+--- 5117,5123 ----
+  		p = vim_strsave_escaped(fnames[i], (char_u *)"\\ \t\"|");
+  # endif
+  		if (p != NULL)
+! 		    add_to_input_buf_csi(p, (int)STRLEN(p));
+  		vim_free(p);
+  		vim_free(fnames[i]);
+  	    }
+*** ../vim-7.1.077/src/ui.c	Thu May 10 21:14:11 2007
+--- src/ui.c	Tue Aug 14 12:41:42 2007
+***************
+*** 1603,1610 ****
+  #if defined(FEAT_GUI) || defined(FEAT_MOUSE_GPM) \
+  	|| defined(FEAT_XCLIPBOARD) || defined(VMS) \
+  	|| defined(FEAT_SNIFF) || defined(FEAT_CLIENTSERVER) \
+- 	|| (defined(FEAT_GUI) && (!defined(USE_ON_FLY_SCROLL) \
+- 		|| defined(FEAT_MENU))) \
+  	|| defined(PROTO)
+  /*
+   * Add the given bytes to the input buffer
+--- 1603,1608 ----
+***************
+*** 1630,1636 ****
+  }
+  #endif
+  
+! #if (defined(FEAT_XIM) && defined(FEAT_GUI_GTK)) \
+  	|| (defined(FEAT_MBYTE) && defined(FEAT_MBYTE_IME)) \
+  	|| (defined(FEAT_GUI) && (!defined(USE_ON_FLY_SCROLL) \
+  		|| defined(FEAT_MENU))) \
+--- 1628,1636 ----
+  }
+  #endif
+  
+! #if ((defined(FEAT_XIM) || defined(FEAT_DND)) && defined(FEAT_GUI_GTK)) \
+! 	|| defined(FEAT_GUI_MSWIN) \
+! 	|| defined(FEAT_GUI_MAC) \
+  	|| (defined(FEAT_MBYTE) && defined(FEAT_MBYTE_IME)) \
+  	|| (defined(FEAT_GUI) && (!defined(USE_ON_FLY_SCROLL) \
+  		|| defined(FEAT_MENU))) \
+*** ../vim-7.1.077/src/version.c	Tue Aug 14 23:06:51 2007
+--- src/version.c	Wed Aug 15 20:07:06 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     78,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+164. You got out to buy software, instead of going out for a beer.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.079
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.079?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.079 (added)
+++ trunk/packages/vim/upstream/patches/7.1.079 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,84 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.079
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.079
+Problem:    When the locale is "C" and 'encoding' is "latin1" then the "@"
+	    character in 'isfname', 'isprint', etc. doesn't pick up accented
+	    characters.
+Solution:   Instead of isalpha() use MB_ISLOWER() and MB_ISUPPER().
+Files:	    src/charset.c, src/macros.h
+
+
+*** ../vim-7.1.078/src/charset.c	Mon Aug  6 22:27:12 2007
+--- src/charset.c	Tue Aug 14 13:43:30 2007
+***************
+*** 207,213 ****
+  	    }
+  	    while (c <= c2)
+  	    {
+! 		if (!do_isalpha || isalpha(c)
+  #ifdef FEAT_FKMAP
+  			|| (p_altkeymap && (F_isalpha(c) || F_isdigit(c)))
+  #endif
+--- 207,216 ----
+  	    }
+  	    while (c <= c2)
+  	    {
+! 		/* Use the MB_ functions here, because isalpha() doesn't
+! 		 * work properly when 'encoding' is "latin1" and the locale is
+! 		 * "C".  */
+! 		if (!do_isalpha || MB_ISLOWER(c) || MB_ISUPPER(c)
+  #ifdef FEAT_FKMAP
+  			|| (p_altkeymap && (F_isalpha(c) || F_isdigit(c)))
+  #endif
+*** ../vim-7.1.078/src/macros.h	Thu May 10 19:21:00 2007
+--- src/macros.h	Sat Aug  4 13:44:18 2007
+***************
+*** 54,63 ****
+  
+  /*
+   * toupper() and tolower() that use the current locale.
+!  * On some systems toupper()/tolower() only work on lower/uppercase characters
+   * Careful: Only call TOUPPER_LOC() and TOLOWER_LOC() with a character in the
+   * range 0 - 255.  toupper()/tolower() on some systems can't handle others.
+!  * Note: for UTF-8 use utf_toupper() and utf_tolower().
+   */
+  #ifdef MSWIN
+  #  define TOUPPER_LOC(c)	toupper_tab[(c) & 255]
+--- 54,65 ----
+  
+  /*
+   * toupper() and tolower() that use the current locale.
+!  * On some systems toupper()/tolower() only work on lower/uppercase
+!  * characters, first use islower() or isupper() then.
+   * Careful: Only call TOUPPER_LOC() and TOLOWER_LOC() with a character in the
+   * range 0 - 255.  toupper()/tolower() on some systems can't handle others.
+!  * Note: It is often better to use MB_TOLOWER() and MB_TOUPPER(), because many
+!  * toupper() and tolower() implementations only work for ASCII.
+   */
+  #ifdef MSWIN
+  #  define TOUPPER_LOC(c)	toupper_tab[(c) & 255]
+*** ../vim-7.1.078/src/version.c	Wed Aug 15 20:07:53 2007
+--- src/version.c	Wed Aug 15 20:39:18 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     79,
+  /**/
+
+-- 
+You're as much use as a condom machine at the Vatican.
+                  -- Rimmer to Holly in Red Dwarf 'Queeg'
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.080
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.080?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.080 (added)
+++ trunk/packages/vim/upstream/patches/7.1.080 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,104 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.080 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.080 (extra)
+Problem:    Compiler warnings for using "const char *" for "char *".
+Solution:   Add type casts. (Chris Sutcliffe)
+Files:	    src/GvimExt/gvimext.cpp
+
+
+*** ../vim-7.1.079/src/GvimExt/gvimext.cpp	Thu May 10 21:09:38 2007
+--- src/GvimExt/gvimext.cpp	Thu Aug 16 21:25:56 2007
+***************
+*** 69,82 ****
+  
+      // Registry didn't work, use the search path.
+      if (name[0] == 0)
+! 	strcpy(name, searchpath("gvim.exe"));
+  
+      if (!runtime)
+      {
+  	// Only when looking for the executable, not the runtime dir, we can
+  	// search for the batch file or a name without a path.
+  	if (name[0] == 0)
+! 	    strcpy(name, searchpath("gvim.bat"));
+  	if (name[0] == 0)
+  	    strcpy(name, "gvim");	// finds gvim.bat or gvim.exe
+  
+--- 69,82 ----
+  
+      // Registry didn't work, use the search path.
+      if (name[0] == 0)
+! 	strcpy(name, searchpath((char *)"gvim.exe"));
+  
+      if (!runtime)
+      {
+  	// Only when looking for the executable, not the runtime dir, we can
+  	// search for the batch file or a name without a path.
+  	if (name[0] == 0)
+! 	    strcpy(name, searchpath((char *)"gvim.bat"));
+  	if (name[0] == 0)
+  	    strcpy(name, "gvim");	// finds gvim.bat or gvim.exe
+  
+***************
+*** 152,160 ****
+  	FARPROC	    *ptr;
+      } libintl_entry[] =
+      {
+! 	{"gettext",		(FARPROC*)&dyn_libintl_gettext},
+! 	{"textdomain",		(FARPROC*)&dyn_libintl_textdomain},
+! 	{"bindtextdomain",	(FARPROC*)&dyn_libintl_bindtextdomain},
+  	{NULL, NULL}
+      };
+  
+--- 152,160 ----
+  	FARPROC	    *ptr;
+      } libintl_entry[] =
+      {
+! 	{(char *)"gettext",		(FARPROC*)&dyn_libintl_gettext},
+! 	{(char *)"textdomain",		(FARPROC*)&dyn_libintl_textdomain},
+! 	{(char *)"bindtextdomain",	(FARPROC*)&dyn_libintl_bindtextdomain},
+  	{NULL, NULL}
+      };
+  
+***************
+*** 835,841 ****
+  		    (LPTSTR)location) > (HINSTANCE)32)
+  	    return location;
+      }
+!     return "";
+  }
+  # endif
+  #endif
+--- 835,841 ----
+  		    (LPTSTR)location) > (HINSTANCE)32)
+  	    return location;
+      }
+!     return (char *)"";
+  }
+  # endif
+  #endif
+*** ../vim-7.1.079/src/version.c	Wed Aug 15 20:40:45 2007
+--- src/version.c	Sat Aug 18 16:58:36 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     80,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+192. Your boss asks you to "go fer" coffee and you come up with 235 FTP sites.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.081
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.081?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.081 (added)
+++ trunk/packages/vim/upstream/patches/7.1.081 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,143 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.081
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.081
+Problem:    Command line completion for a shell command: "cat </tmp/file<Tab>"
+	    doesn't work.
+Solution:   Start the file name at any character that can't be in a file name.
+	    (Martin Toft)
+Files:	    src/ex_docmd.c
+
+
+*** ../vim-7.1.080/src/ex_docmd.c	Tue Aug 14 22:54:00 2007
+--- src/ex_docmd.c	Sat Aug 18 14:58:53 2007
+***************
+*** 3281,3319 ****
+  
+      if (ea.argt & XFILE)
+      {
+! 	int in_quote = FALSE;
+! 	char_u *bow = NULL;	/* Beginning of word */
+  
+  	/*
+  	 * Allow spaces within back-quotes to count as part of the argument
+  	 * being expanded.
+  	 */
+  	xp->xp_pattern = skipwhite(arg);
+! 	for (p = xp->xp_pattern; *p; )
+  	{
+! 	    if (*p == '\\' && p[1] != NUL)
+  		++p;
+  #ifdef SPACE_IN_FILENAME
+! 	    else if (vim_iswhite(*p) && (!(ea.argt & NOSPC) || usefilter))
+  #else
+! 	    else if (vim_iswhite(*p))
+  #endif
+  	    {
+! 		p = skipwhite(p);
+  		if (in_quote)
+  		    bow = p;
+  		else
+  		    xp->xp_pattern = p;
+! 		--p;
+! 	    }
+! 	    else if (*p == '`')
+! 	    {
+! 		if (!in_quote)
+! 		{
+! 		    xp->xp_pattern = p;
+! 		    bow = p + 1;
+! 		}
+! 		in_quote = !in_quote;
+  	    }
+  	    mb_ptr_adv(p);
+  	}
+--- 3281,3344 ----
+  
+      if (ea.argt & XFILE)
+      {
+! 	int	c;
+! 	int	in_quote = FALSE;
+! 	char_u	*bow = NULL;	/* Beginning of word */
+  
+  	/*
+  	 * Allow spaces within back-quotes to count as part of the argument
+  	 * being expanded.
+  	 */
+  	xp->xp_pattern = skipwhite(arg);
+! 	p = xp->xp_pattern;
+! 	while (*p != NUL)
+  	{
+! #ifdef FEAT_MBYTE
+! 	    if (has_mbyte)
+! 		c = mb_ptr2char(p);
+! 	    else
+! #endif
+! 		c = *p;
+! 	    if (c == '\\' && p[1] != NUL)
+  		++p;
++ 	    else if (c == '`')
++ 	    {
++ 		if (!in_quote)
++ 		{
++ 		    xp->xp_pattern = p;
++ 		    bow = p + 1;
++ 		}
++ 		in_quote = !in_quote;
++ 	    }
+  #ifdef SPACE_IN_FILENAME
+! 	    else if (!vim_isfilec(c) && (!(ea.argt & NOSPC) || usefilter))
+  #else
+! 	    else if (!vim_isfilec(c))
+  #endif
+  	    {
+! 		while (*p != NUL)
+! 		{
+! #ifdef FEAT_MBYTE
+! 		    if (has_mbyte)
+! 			c = mb_ptr2char(p);
+! 		    else
+! #endif
+! 			c = *p;
+! 		    if (c == '`' || vim_isfilec(c))
+! 			break;
+! #ifdef FEAT_MBYTE
+! 		    if (has_mbyte)
+! 			len = (*mb_ptr2len)(p);
+! 		    else
+! #endif
+! 			len = 1;
+! 		    mb_ptr_adv(p);
+! 		}
+  		if (in_quote)
+  		    bow = p;
+  		else
+  		    xp->xp_pattern = p;
+! 		p -= len;
+  	    }
+  	    mb_ptr_adv(p);
+  	}
+*** ../vim-7.1.080/src/version.c	Sat Aug 18 16:59:43 2007
+--- src/version.c	Sat Aug 18 17:45:54 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     81,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+194. Your business cards contain your e-mail and home page address.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.082
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.082?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.082 (added)
+++ trunk/packages/vim/upstream/patches/7.1.082 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,107 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.082
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.082
+Problem:    After a ":split" the matchparen highlighting isn't there.
+Solution:   Install a WinEnter autocommand.  Also fixes that after
+	    ":NoMatchParen" only the current window is updated. (Martin Toft)
+Files:	    runtime/doc/pi_paren.txt, runtime/plugin/matchparen.vim
+
+
+*** ../vim-7.1.081/runtime/doc/pi_paren.txt	Sat May 12 16:23:41 2007
+--- runtime/doc/pi_paren.txt	Sat Aug 18 15:08:32 2007
+***************
+*** 12,19 ****
+  You can avoid loading this plugin by setting the "loaded_matchparen" variable: >
+  	:let loaded_matchparen = 1
+  
+! The plugin installs CursorMoved autocommands to redefine the match
+! highlighting.
+  
+  To disable the plugin after it was loaded use this command: >
+  
+--- 12,19 ----
+  You can avoid loading this plugin by setting the "loaded_matchparen" variable: >
+  	:let loaded_matchparen = 1
+  
+! The plugin installs CursorMoved, CursorMovedI and WinEnter autocommands to
+! redefine the match highlighting.
+  
+  To disable the plugin after it was loaded use this command: >
+  
+*** ../vim-7.1.081/runtime/plugin/matchparen.vim	Thu Aug  2 23:00:06 2007
+--- runtime/plugin/matchparen.vim	Sat Aug 18 15:08:32 2007
+***************
+*** 1,6 ****
+  " Vim plugin for showing matching parens
+  " Maintainer:  Bram Moolenaar <Bram at vim.org>
+! " Last Change: 2007 Jul 30
+  
+  " Exit quickly when:
+  " - this plugin was already loaded (or disabled)
+--- 1,6 ----
+  " Vim plugin for showing matching parens
+  " Maintainer:  Bram Moolenaar <Bram at vim.org>
+! " Last Change: 2007 Aug 8
+  
+  " Exit quickly when:
+  " - this plugin was already loaded (or disabled)
+***************
+*** 13,19 ****
+  
+  augroup matchparen
+    " Replace all matchparen autocommands
+!   autocmd! CursorMoved,CursorMovedI * call s:Highlight_Matching_Pair()
+  augroup END
+  
+  " Skip the rest if it was already done.
+--- 13,19 ----
+  
+  augroup matchparen
+    " Replace all matchparen autocommands
+!   autocmd! CursorMoved,CursorMovedI,WinEnter * call s:Highlight_Matching_Pair()
+  augroup END
+  
+  " Skip the rest if it was already done.
+***************
+*** 126,132 ****
+  endfunction
+  
+  " Define commands that will disable and enable the plugin.
+! command! NoMatchParen 3match none | unlet! g:loaded_matchparen | au! matchparen
+! command! DoMatchParen runtime plugin/matchparen.vim | doau CursorMoved
+  
+  let &cpo = cpo_save
+--- 126,133 ----
+  endfunction
+  
+  " Define commands that will disable and enable the plugin.
+! command! NoMatchParen windo 3match none | unlet! g:loaded_matchparen |
+! 	  \ au! matchparen
+! command! DoMatchParen runtime plugin/matchparen.vim | windo doau CursorMoved
+  
+  let &cpo = cpo_save
+*** ../vim-7.1.081/src/version.c	Sat Aug 18 17:46:50 2007
+--- src/version.c	Sat Aug 18 18:19:20 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     82,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+195. Your cat has its own home page.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.083
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.083?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.083 (added)
+++ trunk/packages/vim/upstream/patches/7.1.083 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,123 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.083
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.083 (after 7.1.081)
+Problem:    Command line completion doesn't work with wildcards.
+Solution:   Add vim_isfilec_or_wc() and use it. (Martin Toft)
+Files:	    src/charset.c, src/proto/charset.pro, src/ex_docmd.c
+
+
+*** ../vim-7.1.082/src/charset.c	Wed Aug 15 20:40:45 2007
+--- src/charset.c	Sun Aug 19 22:30:25 2007
+***************
+*** 932,937 ****
+--- 932,954 ----
+  }
+  
+  /*
++  * return TRUE if 'c' is a valid file-name character or a wildcard character
++  * Assume characters above 0x100 are valid (multi-byte).
++  * Explicitly interpret ']' as a wildcard character as mch_has_wildcard("]")
++  * returns false.
++  */
++     int
++ vim_isfilec_or_wc(c)
++     int c;
++ {
++     char_u buf[2];
++ 
++     buf[0] = (char_u)c;
++     buf[1] = NUL;
++     return vim_isfilec(c) || c == ']' || mch_has_wildcard(buf);
++ }
++ 
++ /*
+   * return TRUE if 'c' is a printable character
+   * Assume characters above 0x100 are printable (multi-byte), except for
+   * Unicode.
+*** ../vim-7.1.082/src/proto/charset.pro	Sat May  5 19:21:32 2007
+--- src/proto/charset.pro	Sun Aug 19 22:30:28 2007
+***************
+*** 21,26 ****
+--- 21,27 ----
+  int vim_iswordp __ARGS((char_u *p));
+  int vim_iswordc_buf __ARGS((char_u *p, buf_T *buf));
+  int vim_isfilec __ARGS((int c));
++ int vim_isfilec_or_wc __ARGS((int c));
+  int vim_isprintc __ARGS((int c));
+  int vim_isprintc_strict __ARGS((int c));
+  int lbr_chartabsize __ARGS((unsigned char *s, colnr_T col));
+*** ../vim-7.1.082/src/ex_docmd.c	Sat Aug 18 17:46:50 2007
+--- src/ex_docmd.c	Sun Aug 19 22:29:17 2007
+***************
+*** 3311,3319 ****
+  		in_quote = !in_quote;
+  	    }
+  #ifdef SPACE_IN_FILENAME
+! 	    else if (!vim_isfilec(c) && (!(ea.argt & NOSPC) || usefilter))
+  #else
+! 	    else if (!vim_isfilec(c))
+  #endif
+  	    {
+  		while (*p != NUL)
+--- 3311,3320 ----
+  		in_quote = !in_quote;
+  	    }
+  #ifdef SPACE_IN_FILENAME
+! 	    else if (!vim_isfilec_or_wc(c)
+! 					 && (!(ea.argt & NOSPC) || usefilter))
+  #else
+! 	    else if (!vim_isfilec_or_wc(c))
+  #endif
+  	    {
+  		while (*p != NUL)
+***************
+*** 3324,3330 ****
+  		    else
+  #endif
+  			c = *p;
+! 		    if (c == '`' || vim_isfilec(c))
+  			break;
+  #ifdef FEAT_MBYTE
+  		    if (has_mbyte)
+--- 3325,3331 ----
+  		    else
+  #endif
+  			c = *p;
+! 		    if (c == '`' || vim_isfilec_or_wc(c))
+  			break;
+  #ifdef FEAT_MBYTE
+  		    if (has_mbyte)
+*** ../vim-7.1.082/src/version.c	Sat Aug 18 18:20:57 2007
+--- src/version.c	Sun Aug 19 22:31:43 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     83,
+  /**/
+
+-- 
+    "You mean there really is an answer?"
+    "Yes! But you're not going to like it!"
+    "Oh do please tell us!"
+    "You're really not going to like it!"
+    "but we MUST know - tell us"
+    "Alright, the answer is...."
+    "yes..."
+    "... is ..."
+    "yes... come on!"
+    "is 42!"
+		(Douglas Adams - The Hitchhiker's Guide to the Galaxy)
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.084
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.084?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.084 (added)
+++ trunk/packages/vim/upstream/patches/7.1.084 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,53 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.084
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.084
+Problem:    Using the "-nb" argument twice causes netbeans not to get
+	    fileOpened events.
+Solution:   Change "&" to "&&". (Xavier de Gaye)
+Files:	    src/ex_cmds.c
+
+
+*** ../vim-7.1.083/src/ex_cmds.c	Wed Jul 25 22:55:22 2007
+--- src/ex_cmds.c	Tue Aug 21 15:02:43 2007
+***************
+*** 3776,3782 ****
+  	    workshop_file_opened((char *)curbuf->b_ffname, curbuf->b_p_ro);
+  # endif
+  # ifdef FEAT_NETBEANS_INTG
+! 	if (usingNetbeans & ((flags & ECMD_SET_HELP) != ECMD_SET_HELP))
+  	    netbeans_file_opened(curbuf);
+  # endif
+      }
+--- 3787,3793 ----
+  	    workshop_file_opened((char *)curbuf->b_ffname, curbuf->b_p_ro);
+  # endif
+  # ifdef FEAT_NETBEANS_INTG
+! 	if (usingNetbeans && ((flags & ECMD_SET_HELP) != ECMD_SET_HELP))
+  	    netbeans_file_opened(curbuf);
+  # endif
+      }
+*** ../vim-7.1.083/src/version.c	Sun Aug 19 22:42:27 2007
+--- src/version.c	Tue Aug 21 15:04:03 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     84,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+220. Your wife asks for sex and you tell her where to find you on IRC.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.085
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.085?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.085 (added)
+++ trunk/packages/vim/upstream/patches/7.1.085 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,85 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.085
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.085
+Problem:    ":e fold.c" then ":sp fold.c" results in folds of original window
+	    to disappear. (Akita Noek)
+Solution:   Invoke foldUpdateAll() for all windows of the changed buffer.
+	    (Martin Toft)
+Files:	    src/ex_cmds.c
+
+
+*** ../vim-7.1.084/src/ex_cmds.c	Tue Aug 21 15:05:54 2007
+--- src/ex_cmds.c	Tue Aug 21 15:02:43 2007
+***************
+*** 2974,2980 ****
+   * 'fnum' is the number of the file, if zero use ffname/sfname.
+   *
+   * Return 1 for "normal" error, 2 for "not written" error, 0 for success
+!  * -1 for succesfully opening another file.
+   * 'lnum' is the line number for the cursor in the new file (if non-zero).
+   */
+      int
+--- 2974,2980 ----
+   * 'fnum' is the number of the file, if zero use ffname/sfname.
+   *
+   * Return 1 for "normal" error, 2 for "not written" error, 0 for success
+!  * -1 for successfully opening another file.
+   * 'lnum' is the line number for the cursor in the new file (if non-zero).
+   */
+      int
+***************
+*** 3584,3592 ****
+  	curwin_init();
+  
+  #ifdef FEAT_FOLDING
+! 	/* It's like all lines in the buffer changed.  Need to update
+! 	 * automatic folding. */
+  	foldUpdateAll(curwin);
+  #endif
+  
+  	/* Change directories when the 'acd' option is set. */
+--- 3584,3603 ----
+  	curwin_init();
+  
+  #ifdef FEAT_FOLDING
+! 	/* It's possible that all lines in the buffer changed.  Need to update
+! 	 * automatic folding for all windows where it's used. */
+! # ifdef FEAT_WINDOWS
+! 	{
+! 	    win_T	    *win;
+! 	    tabpage_T	    *tp;
+! 
+! 	    FOR_ALL_TAB_WINDOWS(tp, win)
+! 		if (win->w_buffer == curbuf)
+! 		    foldUpdateAll(win);
+! 	}
+! # else
+  	foldUpdateAll(curwin);
++ # endif
+  #endif
+  
+  	/* Change directories when the 'acd' option is set. */
+*** ../vim-7.1.084/src/version.c	Tue Aug 21 15:05:54 2007
+--- src/version.c	Tue Aug 21 15:26:43 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     85,
+  /**/
+
+-- 
+Your fault: core dumped
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.086
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.086?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.086 (added)
+++ trunk/packages/vim/upstream/patches/7.1.086 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,123 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.086
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.086
+Problem:    Crash when using specific Python syntax highlighting.  (Quirk)
+Solution:   Check for a negative index, coming from a keyword match at the
+	    start of a line from a saved state.
+Files:	    src/syntax.c
+
+
+*** ../vim-7.1.085/src/syntax.c	Tue Aug 14 23:06:51 2007
+--- src/syntax.c	Tue Aug 21 17:13:51 2007
+***************
+*** 279,285 ****
+   */
+  typedef struct state_item
+  {
+!     int		si_idx;			/* index of syntax pattern */
+      int		si_id;			/* highlight group ID for keywords */
+      int		si_trans_id;		/* idem, transparancy removed */
+      int		si_m_lnum;		/* lnum of the match */
+--- 279,286 ----
+   */
+  typedef struct state_item
+  {
+!     int		si_idx;			/* index of syntax pattern or
+! 					   KEYWORD_IDX */
+      int		si_id;			/* highlight group ID for keywords */
+      int		si_trans_id;		/* idem, transparancy removed */
+      int		si_m_lnum;		/* lnum of the match */
+***************
+*** 837,845 ****
+  			    current_lnum = end_lnum;
+  			    break;
+  			}
+! 			spp = &(SYN_ITEMS(syn_buf)[cur_si->si_idx]);
+! 			found_flags = spp->sp_flags;
+! 			found_match_idx = spp->sp_sync_idx;
+  			found_current_lnum = current_lnum;
+  			found_current_col = current_col;
+  			found_m_endpos = cur_si->si_m_endpos;
+--- 838,855 ----
+  			    current_lnum = end_lnum;
+  			    break;
+  			}
+! 			if (cur_si->si_idx < 0)
+! 			{
+! 			    /* Cannot happen? */
+! 			    found_flags = 0;
+! 			    found_match_idx = KEYWORD_IDX;
+! 			}
+! 			else
+! 			{
+! 			    spp = &(SYN_ITEMS(syn_buf)[cur_si->si_idx]);
+! 			    found_flags = spp->sp_flags;
+! 			    found_match_idx = spp->sp_sync_idx;
+! 			}
+  			found_current_lnum = current_lnum;
+  			found_current_col = current_col;
+  			found_m_endpos = cur_si->si_m_endpos;
+***************
+*** 2533,2538 ****
+--- 2543,2552 ----
+      stateitem_T	*sip = &CUR_STATE(idx);
+      synpat_T	*spp;
+  
++     /* This should not happen... */
++     if (sip->si_idx < 0)
++ 	return;
++ 
+      spp = &(SYN_ITEMS(syn_buf)[sip->si_idx]);
+      if (sip->si_flags & HL_MATCH)
+  	sip->si_id = spp->sp_syn_match_id;
+***************
+*** 2648,2653 ****
+--- 2662,2671 ----
+      lpos_T	end_endpos;
+      int		end_idx;
+  
++     /* return quickly for a keyword */
++     if (sip->si_idx < 0)
++ 	return;
++ 
+      /* Don't update when it's already done.  Can be a match of an end pattern
+       * that started in a previous line.  Watch out: can also be a "keepend"
+       * from a containing item. */
+***************
+*** 2759,2764 ****
+--- 2777,2786 ----
+      lpos_T	pos;
+      char_u	*line;
+      int		had_match = FALSE;
++ 
++     /* just in case we are invoked for a keyword */
++     if (idx < 0)
++ 	return;
+  
+      /*
+       * Check for being called with a START pattern.
+*** ../vim-7.1.085/src/version.c	Tue Aug 21 15:28:32 2007
+--- src/version.c	Tue Aug 21 17:21:06 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     86,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+222. You send more than 20 personal e-mails a day.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.087
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.087?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.087 (added)
+++ trunk/packages/vim/upstream/patches/7.1.087 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,151 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.087
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.087
+Problem:    Reading past ":cscope find" command.  Writing past end of a buffer.
+Solution:   Check length of the argument before using the pattern.  Use
+	    vim_strncpy().  (Dominique Pelle)
+Files:	    if_cscope.c
+
+
+*** ../vim-7.1.086/src/if_cscope.c	Sun Mar 11 15:48:29 2007
+--- src/if_cscope.c	Sun Aug 19 22:17:09 2007
+***************
+*** 73,78 ****
+--- 73,80 ----
+  
+  
+  static csinfo_T	    csinfo[CSCOPE_MAX_CONNECTIONS];
++ static int	    eap_arg_len;    /* length of eap->arg, set in
++ 				       cs_lookup_cmd() */
+  static cscmd_T	    cs_cmds[] =
+  {
+      { "add",	cs_add,
+***************
+*** 260,273 ****
+  
+      if ((p = cs_manage_matches(NULL, NULL, -1, Get)) == NULL)
+  	return TRUE;
+! 
+!     if ((int)strlen(p) > size)
+!     {
+! 	strncpy((char *)buf, p, size - 1);
+! 	buf[size] = '\0';
+!     }
+!     else
+! 	(void)strcpy((char *)buf, p);
+  
+      return FALSE;
+  } /* cs_fgets */
+--- 262,268 ----
+  
+      if ((p = cs_manage_matches(NULL, NULL, -1, Get)) == NULL)
+  	return TRUE;
+!     vim_strncpy(buf, (char_u *)p, size - 1);
+  
+      return FALSE;
+  } /* cs_fgets */
+***************
+*** 386,392 ****
+   * PRIVATE: cs_add
+   *
+   * add cscope database or a directory name (to look for cscope.out)
+!  * the the cscope connection list
+   *
+   * MAXPATHL 256
+   */
+--- 381,387 ----
+   * PRIVATE: cs_add
+   *
+   * add cscope database or a directory name (to look for cscope.out)
+!  * to the cscope connection list
+   *
+   * MAXPATHL 256
+   */
+***************
+*** 966,972 ****
+      }
+  
+      pat = opt + strlen(opt) + 1;
+!     if (pat == NULL || (pat != NULL && pat[0] == '\0'))
+      {
+  	cs_usage_msg(Find);
+  	return FALSE;
+--- 961,967 ----
+      }
+  
+      pat = opt + strlen(opt) + 1;
+!     if (pat >= (char *)eap->arg + eap_arg_len)
+      {
+  	cs_usage_msg(Find);
+  	return FALSE;
+***************
+*** 1317,1323 ****
+  #else
+  	    /* compare pathnames first */
+  	    && ((fullpathcmp(csinfo[j].fname, fname, FALSE) & FPC_SAME)
+! 		/* if not Windows 9x, test index file atributes too */
+  		|| (!mch_windows95()
+  		    && csinfo[j].nVolume == bhfi.dwVolumeSerialNumber
+  		    && csinfo[j].nIndexHigh == bhfi.nFileIndexHigh
+--- 1312,1318 ----
+  #else
+  	    /* compare pathnames first */
+  	    && ((fullpathcmp(csinfo[j].fname, fname, FALSE) & FPC_SAME)
+! 		/* if not Windows 9x, test index file attributes too */
+  		|| (!mch_windows95()
+  		    && csinfo[j].nVolume == bhfi.dwVolumeSerialNumber
+  		    && csinfo[j].nIndexHigh == bhfi.nFileIndexHigh
+***************
+*** 1401,1406 ****
+--- 1396,1404 ----
+      if (eap->arg == NULL)
+  	return NULL;
+  
++     /* Store length of eap->arg before it gets modified by strtok(). */
++     eap_arg_len = STRLEN(eap->arg);
++ 
+      if ((stok = strtok((char *)(eap->arg), (const char *)" ")) == NULL)
+  	return NULL;
+  
+***************
+*** 2195,2201 ****
+  	    cs_add_common(dblist[i], pplist[i], fllist[i]);
+  	    if (p_csverbose)
+  	    {
+! 		/* dont' use smsg_attr because want to display
+  		 * connection number in the same line as
+  		 * "Added cscope database..."
+  		 */
+--- 2193,2199 ----
+  	    cs_add_common(dblist[i], pplist[i], fllist[i]);
+  	    if (p_csverbose)
+  	    {
+! 		/* don't use smsg_attr() because we want to display the
+  		 * connection number in the same line as
+  		 * "Added cscope database..."
+  		 */
+*** ../vim-7.1.086/src/version.c	Tue Aug 21 17:29:04 2007
+--- src/version.c	Tue Aug 21 17:59:42 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     87,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+223. You set up a web-cam as your home's security system.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.088
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.088?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.088 (added)
+++ trunk/packages/vim/upstream/patches/7.1.088 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,70 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.088 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.088 (extra)
+Problem:    The coordinates used by ":winpos" differ from what getwinposx()
+	    and getwinposy() return.
+Solution:   Use MoveWindowStructure() instead of MoveWindow(). (Michael Henry)
+Files:	    src/gui_mac.c
+
+
+*** ../vim-7.1.087/src/gui_mac.c	Tue Jun 19 16:33:53 2007
+--- src/gui_mac.c	Wed Aug 29 20:33:34 2007
+***************
+*** 3149,3155 ****
+      /* TODO:  Should make sure the window is move within range
+       *	      e.g.: y > ~16 [Menu bar], x > 0, x < screen width
+       */
+!     MoveWindow(gui.VimWindow, x, y, TRUE);
+  }
+  
+      void
+--- 3149,3155 ----
+      /* TODO:  Should make sure the window is move within range
+       *	      e.g.: y > ~16 [Menu bar], x > 0, x < screen width
+       */
+!     MoveWindowStructure(gui.VimWindow, x, y, TRUE);
+  }
+  
+      void
+***************
+*** 5556,5562 ****
+   * SetDialogTracksCursor() : Get the I-beam cursor over input box
+   * MoveDialogItem():	    Probably better than SetDialogItem
+   * SizeDialogItem():		(but is it Carbon Only?)
+!  * AutoSizeDialog():	    Magic resize of dialog based on text lenght
+   */
+  }
+  #endif /* FEAT_DIALOG_GUI */
+--- 5556,5562 ----
+   * SetDialogTracksCursor() : Get the I-beam cursor over input box
+   * MoveDialogItem():	    Probably better than SetDialogItem
+   * SizeDialogItem():		(but is it Carbon Only?)
+!  * AutoSizeDialog():	    Magic resize of dialog based on text length
+   */
+  }
+  #endif /* FEAT_DIALOG_GUI */
+*** ../vim-7.1.087/src/version.c	Tue Aug 21 18:02:58 2007
+--- src/version.c	Thu Aug 30 10:32:28 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     88,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+10E. You start counting in hex.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.089
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.089?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.089 (added)
+++ trunk/packages/vim/upstream/patches/7.1.089 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,494 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.089
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.089
+Problem:    ":let loaded_getscriptPlugin" doesn't clear to eol, result is
+	    "#1in".
+Solution:   Clear to the end of the screen after displaying the first variable
+	    value.
+Files:	    src/eval.c
+
+
+*** ../vim-7.1.088/src/eval.c	Tue Aug 14 22:40:13 2007
+--- src/eval.c	Wed Aug 29 22:40:15 2007
+***************
+*** 369,385 ****
+  static int ex_let_vars __ARGS((char_u *arg, typval_T *tv, int copy, int semicolon, int var_count, char_u *nextchars));
+  static char_u *skip_var_list __ARGS((char_u *arg, int *var_count, int *semicolon));
+  static char_u *skip_var_one __ARGS((char_u *arg));
+! static void list_hashtable_vars __ARGS((hashtab_T *ht, char_u *prefix, int empty));
+! static void list_glob_vars __ARGS((void));
+! static void list_buf_vars __ARGS((void));
+! static void list_win_vars __ARGS((void));
+  #ifdef FEAT_WINDOWS
+! static void list_tab_vars __ARGS((void));
+  #endif
+! static void list_vim_vars __ARGS((void));
+! static void list_script_vars __ARGS((void));
+! static void list_func_vars __ARGS((void));
+! static char_u *list_arg_vars __ARGS((exarg_T *eap, char_u *arg));
+  static char_u *ex_let_one __ARGS((char_u *arg, typval_T *tv, int copy, char_u *endchars, char_u *op));
+  static int check_changedtick __ARGS((char_u *arg));
+  static char_u *get_lval __ARGS((char_u *name, typval_T *rettv, lval_T *lp, int unlet, int skip, int quiet, int fne_flags));
+--- 369,385 ----
+  static int ex_let_vars __ARGS((char_u *arg, typval_T *tv, int copy, int semicolon, int var_count, char_u *nextchars));
+  static char_u *skip_var_list __ARGS((char_u *arg, int *var_count, int *semicolon));
+  static char_u *skip_var_one __ARGS((char_u *arg));
+! static void list_hashtable_vars __ARGS((hashtab_T *ht, char_u *prefix, int empty, int *first));
+! static void list_glob_vars __ARGS((int *first));
+! static void list_buf_vars __ARGS((int *first));
+! static void list_win_vars __ARGS((int *first));
+  #ifdef FEAT_WINDOWS
+! static void list_tab_vars __ARGS((int *first));
+  #endif
+! static void list_vim_vars __ARGS((int *first));
+! static void list_script_vars __ARGS((int *first));
+! static void list_func_vars __ARGS((int *first));
+! static char_u *list_arg_vars __ARGS((exarg_T *eap, char_u *arg, int *first));
+  static char_u *ex_let_one __ARGS((char_u *arg, typval_T *tv, int copy, char_u *endchars, char_u *op));
+  static int check_changedtick __ARGS((char_u *arg));
+  static char_u *get_lval __ARGS((char_u *name, typval_T *rettv, lval_T *lp, int unlet, int skip, int quiet, int fne_flags));
+***************
+*** 704,711 ****
+  static hashtab_T *find_var_ht __ARGS((char_u *name, char_u **varname));
+  static void vars_clear_ext __ARGS((hashtab_T *ht, int free_val));
+  static void delete_var __ARGS((hashtab_T *ht, hashitem_T *hi));
+! static void list_one_var __ARGS((dictitem_T *v, char_u *prefix));
+! static void list_one_var_a __ARGS((char_u *prefix, char_u *name, int type, char_u *string));
+  static void set_var __ARGS((char_u *name, typval_T *varp, int copy));
+  static int var_check_ro __ARGS((int flags, char_u *name));
+  static int var_check_fixed __ARGS((int flags, char_u *name));
+--- 704,711 ----
+  static hashtab_T *find_var_ht __ARGS((char_u *name, char_u **varname));
+  static void vars_clear_ext __ARGS((hashtab_T *ht, int free_val));
+  static void delete_var __ARGS((hashtab_T *ht, hashitem_T *hi));
+! static void list_one_var __ARGS((dictitem_T *v, char_u *prefix, int *first));
+! static void list_one_var_a __ARGS((char_u *prefix, char_u *name, int type, char_u *string, int *first));
+  static void set_var __ARGS((char_u *name, typval_T *varp, int copy));
+  static int var_check_ro __ARGS((int flags, char_u *name));
+  static int var_check_fixed __ARGS((int flags, char_u *name));
+***************
+*** 1699,1704 ****
+--- 1699,1705 ----
+      int		semicolon = 0;
+      char_u	op[2];
+      char_u	*argend;
++     int		first = TRUE;
+  
+      argend = skip_var_list(arg, &var_count, &semicolon);
+      if (argend == NULL)
+***************
+*** 1715,1733 ****
+  	    EMSG(_(e_invarg));
+  	else if (!ends_excmd(*arg))
+  	    /* ":let var1 var2" */
+! 	    arg = list_arg_vars(eap, arg);
+  	else if (!eap->skip)
+  	{
+  	    /* ":let" */
+! 	    list_glob_vars();
+! 	    list_buf_vars();
+! 	    list_win_vars();
+  #ifdef FEAT_WINDOWS
+! 	    list_tab_vars();
+  #endif
+! 	    list_script_vars();
+! 	    list_func_vars();
+! 	    list_vim_vars();
+  	}
+  	eap->nextcmd = check_nextcmd(arg);
+      }
+--- 1716,1734 ----
+  	    EMSG(_(e_invarg));
+  	else if (!ends_excmd(*arg))
+  	    /* ":let var1 var2" */
+! 	    arg = list_arg_vars(eap, arg, &first);
+  	else if (!eap->skip)
+  	{
+  	    /* ":let" */
+! 	    list_glob_vars(&first);
+! 	    list_buf_vars(&first);
+! 	    list_win_vars(&first);
+  #ifdef FEAT_WINDOWS
+! 	    list_tab_vars(&first);
+  #endif
+! 	    list_script_vars(&first);
+! 	    list_func_vars(&first);
+! 	    list_vim_vars(&first);
+  	}
+  	eap->nextcmd = check_nextcmd(arg);
+      }
+***************
+*** 1932,1941 ****
+   * If "empty" is TRUE also list NULL strings as empty strings.
+   */
+      static void
+! list_hashtable_vars(ht, prefix, empty)
+      hashtab_T	*ht;
+      char_u	*prefix;
+      int		empty;
+  {
+      hashitem_T	*hi;
+      dictitem_T	*di;
+--- 1933,1943 ----
+   * If "empty" is TRUE also list NULL strings as empty strings.
+   */
+      static void
+! list_hashtable_vars(ht, prefix, empty, first)
+      hashtab_T	*ht;
+      char_u	*prefix;
+      int		empty;
++     int		*first;
+  {
+      hashitem_T	*hi;
+      dictitem_T	*di;
+***************
+*** 1950,1956 ****
+  	    di = HI2DI(hi);
+  	    if (empty || di->di_tv.v_type != VAR_STRING
+  					   || di->di_tv.vval.v_string != NULL)
+! 		list_one_var(di, prefix);
+  	}
+      }
+  }
+--- 1952,1958 ----
+  	    di = HI2DI(hi);
+  	    if (empty || di->di_tv.v_type != VAR_STRING
+  					   || di->di_tv.vval.v_string != NULL)
+! 		list_one_var(di, prefix, first);
+  	}
+      }
+  }
+***************
+*** 1959,1990 ****
+   * List global variables.
+   */
+      static void
+! list_glob_vars()
+  {
+!     list_hashtable_vars(&globvarht, (char_u *)"", TRUE);
+  }
+  
+  /*
+   * List buffer variables.
+   */
+      static void
+! list_buf_vars()
+  {
+      char_u	numbuf[NUMBUFLEN];
+  
+!     list_hashtable_vars(&curbuf->b_vars.dv_hashtab, (char_u *)"b:", TRUE);
+  
+      sprintf((char *)numbuf, "%ld", (long)curbuf->b_changedtick);
+!     list_one_var_a((char_u *)"b:", (char_u *)"changedtick", VAR_NUMBER, numbuf);
+  }
+  
+  /*
+   * List window variables.
+   */
+      static void
+! list_win_vars()
+  {
+!     list_hashtable_vars(&curwin->w_vars.dv_hashtab, (char_u *)"w:", TRUE);
+  }
+  
+  #ifdef FEAT_WINDOWS
+--- 1961,1998 ----
+   * List global variables.
+   */
+      static void
+! list_glob_vars(first)
+!     int *first;
+  {
+!     list_hashtable_vars(&globvarht, (char_u *)"", TRUE, first);
+  }
+  
+  /*
+   * List buffer variables.
+   */
+      static void
+! list_buf_vars(first)
+!     int *first;
+  {
+      char_u	numbuf[NUMBUFLEN];
+  
+!     list_hashtable_vars(&curbuf->b_vars.dv_hashtab, (char_u *)"b:",
+! 								 TRUE, first);
+  
+      sprintf((char *)numbuf, "%ld", (long)curbuf->b_changedtick);
+!     list_one_var_a((char_u *)"b:", (char_u *)"changedtick", VAR_NUMBER,
+! 							       numbuf, first);
+  }
+  
+  /*
+   * List window variables.
+   */
+      static void
+! list_win_vars(first)
+!     int *first;
+  {
+!     list_hashtable_vars(&curwin->w_vars.dv_hashtab,
+! 						 (char_u *)"w:", TRUE, first);
+  }
+  
+  #ifdef FEAT_WINDOWS
+***************
+*** 1992,2000 ****
+   * List tab page variables.
+   */
+      static void
+! list_tab_vars()
+  {
+!     list_hashtable_vars(&curtab->tp_vars.dv_hashtab, (char_u *)"t:", TRUE);
+  }
+  #endif
+  
+--- 2000,2010 ----
+   * List tab page variables.
+   */
+      static void
+! list_tab_vars(first)
+!     int *first;
+  {
+!     list_hashtable_vars(&curtab->tp_vars.dv_hashtab,
+! 						 (char_u *)"t:", TRUE, first);
+  }
+  #endif
+  
+***************
+*** 2002,2040 ****
+   * List Vim variables.
+   */
+      static void
+! list_vim_vars()
+  {
+!     list_hashtable_vars(&vimvarht, (char_u *)"v:", FALSE);
+  }
+  
+  /*
+   * List script-local variables, if there is a script.
+   */
+      static void
+! list_script_vars()
+  {
+      if (current_SID > 0 && current_SID <= ga_scripts.ga_len)
+! 	list_hashtable_vars(&SCRIPT_VARS(current_SID), (char_u *)"s:", FALSE);
+  }
+  
+  /*
+   * List function variables, if there is a function.
+   */
+      static void
+! list_func_vars()
+  {
+      if (current_funccal != NULL)
+  	list_hashtable_vars(&current_funccal->l_vars.dv_hashtab,
+! 						       (char_u *)"l:", FALSE);
+  }
+  
+  /*
+   * List variables in "arg".
+   */
+      static char_u *
+! list_arg_vars(eap, arg)
+      exarg_T	*eap;
+      char_u	*arg;
+  {
+      int		error = FALSE;
+      int		len;
+--- 2012,2055 ----
+   * List Vim variables.
+   */
+      static void
+! list_vim_vars(first)
+!     int *first;
+  {
+!     list_hashtable_vars(&vimvarht, (char_u *)"v:", FALSE, first);
+  }
+  
+  /*
+   * List script-local variables, if there is a script.
+   */
+      static void
+! list_script_vars(first)
+!     int *first;
+  {
+      if (current_SID > 0 && current_SID <= ga_scripts.ga_len)
+! 	list_hashtable_vars(&SCRIPT_VARS(current_SID),
+! 						(char_u *)"s:", FALSE, first);
+  }
+  
+  /*
+   * List function variables, if there is a function.
+   */
+      static void
+! list_func_vars(first)
+!     int *first;
+  {
+      if (current_funccal != NULL)
+  	list_hashtable_vars(&current_funccal->l_vars.dv_hashtab,
+! 						(char_u *)"l:", FALSE, first);
+  }
+  
+  /*
+   * List variables in "arg".
+   */
+      static char_u *
+! list_arg_vars(eap, arg, first)
+      exarg_T	*eap;
+      char_u	*arg;
++     int		*first;
+  {
+      int		error = FALSE;
+      int		len;
+***************
+*** 2091,2105 ****
+  			{
+  			    switch (*name)
+  			    {
+! 				case 'g': list_glob_vars(); break;
+! 				case 'b': list_buf_vars(); break;
+! 				case 'w': list_win_vars(); break;
+  #ifdef FEAT_WINDOWS
+! 				case 't': list_tab_vars(); break;
+  #endif
+! 				case 'v': list_vim_vars(); break;
+! 				case 's': list_script_vars(); break;
+! 				case 'l': list_func_vars(); break;
+  				default:
+  					  EMSG2(_("E738: Can't list variables for %s"), name);
+  			    }
+--- 2106,2120 ----
+  			{
+  			    switch (*name)
+  			    {
+! 				case 'g': list_glob_vars(first); break;
+! 				case 'b': list_buf_vars(first); break;
+! 				case 'w': list_win_vars(first); break;
+  #ifdef FEAT_WINDOWS
+! 				case 't': list_tab_vars(first); break;
+  #endif
+! 				case 'v': list_vim_vars(first); break;
+! 				case 's': list_script_vars(first); break;
+! 				case 'l': list_func_vars(first); break;
+  				default:
+  					  EMSG2(_("E738: Can't list variables for %s"), name);
+  			    }
+***************
+*** 2116,2122 ****
+  			    *arg = NUL;
+  			    list_one_var_a((char_u *)"",
+  				    arg == arg_subsc ? name : name_start,
+! 				    tv.v_type, s == NULL ? (char_u *)"" : s);
+  			    *arg = c;
+  			    vim_free(tf);
+  			}
+--- 2131,2139 ----
+  			    *arg = NUL;
+  			    list_one_var_a((char_u *)"",
+  				    arg == arg_subsc ? name : name_start,
+! 				    tv.v_type,
+! 				    s == NULL ? (char_u *)"" : s,
+! 				    first);
+  			    *arg = c;
+  			    vim_free(tf);
+  			}
+***************
+*** 18001,18009 ****
+   * List the value of one internal variable.
+   */
+      static void
+! list_one_var(v, prefix)
+      dictitem_T	*v;
+      char_u	*prefix;
+  {
+      char_u	*tofree;
+      char_u	*s;
+--- 18024,18033 ----
+   * List the value of one internal variable.
+   */
+      static void
+! list_one_var(v, prefix, first)
+      dictitem_T	*v;
+      char_u	*prefix;
++     int		*first;
+  {
+      char_u	*tofree;
+      char_u	*s;
+***************
+*** 18011,18026 ****
+  
+      s = echo_string(&v->di_tv, &tofree, numbuf, ++current_copyID);
+      list_one_var_a(prefix, v->di_key, v->di_tv.v_type,
+! 						s == NULL ? (char_u *)"" : s);
+      vim_free(tofree);
+  }
+  
+      static void
+! list_one_var_a(prefix, name, type, string)
+      char_u	*prefix;
+      char_u	*name;
+      int		type;
+      char_u	*string;
+  {
+      /* don't use msg() or msg_attr() to avoid overwriting "v:statusmsg" */
+      msg_start();
+--- 18035,18051 ----
+  
+      s = echo_string(&v->di_tv, &tofree, numbuf, ++current_copyID);
+      list_one_var_a(prefix, v->di_key, v->di_tv.v_type,
+! 					 s == NULL ? (char_u *)"" : s, first);
+      vim_free(tofree);
+  }
+  
+      static void
+! list_one_var_a(prefix, name, type, string, first)
+      char_u	*prefix;
+      char_u	*name;
+      int		type;
+      char_u	*string;
++     int		*first;  /* when TRUE clear rest of screen and set to FALSE */
+  {
+      /* don't use msg() or msg_attr() to avoid overwriting "v:statusmsg" */
+      msg_start();
+***************
+*** 18052,18057 ****
+--- 18077,18087 ----
+  
+      if (type == VAR_FUNC)
+  	msg_puts((char_u *)"()");
++     if (*first)
++     {
++ 	msg_clr_eos();
++ 	*first = FALSE;
++     }
+  }
+  
+  /*
+*** ../vim-7.1.088/src/version.c	Thu Aug 30 10:34:19 2007
+--- src/version.c	Thu Aug 30 11:06:32 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     89,
+  /**/
+
+-- 
+Edison's greatest achievement came in 1879, when he invented the
+electric company.  Edison's design was a brilliant adaptation of the
+simple electrical circuit: the electric company sends electricity
+through a wire to a customer, then immediately gets the electricity
+back through another wire
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.090
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.090?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.090 (added)
+++ trunk/packages/vim/upstream/patches/7.1.090 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,75 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.090
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.090
+Problem:    Compiler warning on Mac OS X 10.5.
+Solution:   Don't redeclare sigaltstack(). (Hisashi T Fujinaka)
+Files:	    src/os_unix.c
+
+
+*** ../vim-7.1.089/src/os_unix.c	Sat Aug 11 22:22:56 2007
+--- src/os_unix.c	Wed Aug 22 22:28:48 2007
+***************
+*** 753,759 ****
+      if (signal_stack != NULL)
+      {
+  # ifdef HAVE_SIGALTSTACK
+! #  ifdef __APPLE__
+  	/* missing prototype.  Adding it to osdef?.h.in doesn't work, because
+  	 * "struct sigaltstack" needs to be declared. */
+  	extern int sigaltstack __ARGS((const struct sigaltstack *ss, struct sigaltstack *oss));
+--- 753,760 ----
+      if (signal_stack != NULL)
+      {
+  # ifdef HAVE_SIGALTSTACK
+! #  if defined(__APPLE__) && (!defined(MAC_OS_X_VERSION_MAX_ALLOWED) \
+! 		|| MAC_OS_X_VERSION_MAX_ALLOWED <= 1040)
+  	/* missing prototype.  Adding it to osdef?.h.in doesn't work, because
+  	 * "struct sigaltstack" needs to be declared. */
+  	extern int sigaltstack __ARGS((const struct sigaltstack *ss, struct sigaltstack *oss));
+***************
+*** 5688,5694 ****
+  
+  /*
+   * Closes connection to gpm
+!  * returns non-zero if connection succesfully closed
+   */
+      static void
+  gpm_close()
+--- 5689,5695 ----
+  
+  /*
+   * Closes connection to gpm
+!  * returns non-zero if connection successfully closed
+   */
+      static void
+  gpm_close()
+*** ../vim-7.1.089/src/version.c	Thu Aug 30 11:10:38 2007
+--- src/version.c	Thu Aug 30 11:46:07 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     90,
+  /**/
+
+-- 
+       We're knights of the round table
+       We dance whene'er we're able
+       We do routines and chorus scenes
+       With footwork impeccable.
+       We dine well here in Camelot
+       We eat ham and jam and spam a lot.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.091
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.091?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.091 (added)
+++ trunk/packages/vim/upstream/patches/7.1.091 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,355 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.091 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.091 (extra)
+Problem:    Win32: Can't embed Vim inside another application.
+Solution:   Add the --windowid argument. (Nageshwar)
+Files:	    runtime/doc/gui_w32.txt, runtime/doc/starting.txt,
+	    runtime/doc/vi_diff.txt, src/globals.h, src/gui_w32.c, src/main.c
+
+
+*** ../vim-7.1.090/runtime/doc/gui_w32.txt	Sat May 12 15:35:53 2007
+--- runtime/doc/gui_w32.txt	Tue Aug 14 17:32:27 2007
+***************
+*** 1,4 ****
+! *gui_w32.txt*   For Vim version 7.1.  Last change: 2007 May 03
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+--- 1,4 ----
+! *gui_w32.txt*   For Vim version 7.1.  Last change: 2007 Aug 14
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+***************
+*** 52,57 ****
+--- 52,67 ----
+  								*gui-w32s*
+  There is a specific version of gvim.exe that runs under the Win32s subsystem
+  of Windows 3.1 or 3.11.  See |win32s|.
++ 
++ 
++ Using Vim as a plugin					*gui-w32-windowid*
++ 
++ When gvim starts up normally, it creates its own top level window.  If you
++ pass Vim the command-line option |--windowid| with a decimal or hexadecimal
++ value, Vim will create a window that is a child of the window with the given
++ ID.  This enables Vim to act as a plugin in another application.  This really
++ is a programmer's interface, and is of no use without a supporting application
++ to spawn Vim correctly.
+  
+  ==============================================================================
+  2. Vim as default editor				*vim-default-editor*
+*** ../vim-7.1.090/runtime/doc/starting.txt	Sat May 12 16:56:17 2007
+--- runtime/doc/starting.txt	Tue Aug 14 17:34:22 2007
+***************
+*** 1,4 ****
+! *starting.txt*  For Vim version 7.1.  Last change: 2007 May 12
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+--- 1,4 ----
+! *starting.txt*  For Vim version 7.1.  Last change: 2007 Aug 14
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+***************
+*** 547,552 ****
+--- 547,557 ----
+  		GTK+ GUI Vim only.  Make gvim try to use GtkPlug mechanism, so
+  		that it runs inside another window.  See |gui-gtk-socketid|
+  		for details. {not in Vi}
++ 
++ --windowid {id}						*--windowid*
++ 		Win32 GUI Vim only.  Make gvim try to use the window {id} as a
++ 		parent, so that it runs inside that window.  See
++ 		|gui-w32-windowid| for details. {not in Vi}
+  
+  --echo-wid						*--echo-wid*
+  		GTK+ GUI Vim only.  Make gvim echo the Window ID on stdout,
+*** ../vim-7.1.090/runtime/doc/vi_diff.txt	Sat May 12 14:54:28 2007
+--- runtime/doc/vi_diff.txt	Tue Aug 14 17:35:10 2007
+***************
+*** 1,4 ****
+! *vi_diff.txt*   For Vim version 7.1.  Last change: 2007 May 07
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+--- 1,4 ----
+! *vi_diff.txt*   For Vim version 7.1.  Last change: 2007 Aug 14
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+***************
+*** 826,831 ****
+--- 826,833 ----
+  --servername {name}	Vim: Specify Vim server name
+  
+  --socketid {id}		Vim: GTK window socket to run Vim in
++ 
++ --windowid {id}		Vim: Win32 window ID to run Vim in
+  
+  --version	Vim: show version message and exit.
+  
+*** ../vim-7.1.090/src/globals.h	Thu May 10 19:26:02 2007
+--- src/globals.h	Wed Aug 29 22:27:45 2007
+***************
+*** 876,882 ****
+  EXTERN int no_mapping INIT(= FALSE);	/* currently no mapping allowed */
+  EXTERN int no_zero_mapping INIT(= 0);	/* mapping zero not allowed */
+  EXTERN int allow_keys INIT(= FALSE);	/* allow key codes when no_mapping
+! 					     * is set */
+  EXTERN int no_u_sync INIT(= 0);		/* Don't call u_sync() */
+  
+  EXTERN int restart_edit INIT(= 0);	/* call edit when next cmd finished */
+--- 876,882 ----
+  EXTERN int no_mapping INIT(= FALSE);	/* currently no mapping allowed */
+  EXTERN int no_zero_mapping INIT(= 0);	/* mapping zero not allowed */
+  EXTERN int allow_keys INIT(= FALSE);	/* allow key codes when no_mapping
+! 					 * is set */
+  EXTERN int no_u_sync INIT(= 0);		/* Don't call u_sync() */
+  
+  EXTERN int restart_edit INIT(= 0);	/* call edit when next cmd finished */
+***************
+*** 1250,1255 ****
+--- 1250,1263 ----
+  #ifdef FEAT_GUI_GTK
+  EXTERN guint32	gtk_socket_id INIT(= 0);
+  EXTERN int	echo_wid_arg INIT(= FALSE);	/* --echo-wid argument */
++ #endif
++ 
++ #ifdef FEAT_GUI_W32
++ /*
++  * The value of the --windowid argument.
++  * For embedding gvim inside another application.
++  */
++ EXTERN int	win_socket_id INIT(= 0);
+  #endif
+  
+  #if defined(FEAT_CLIENTSERVER) || defined(FEAT_EVAL)
+*** ../vim-7.1.090/src/gui_w32.c	Tue Aug 14 16:57:04 2007
+--- src/gui_w32.c	Tue Aug 14 17:13:41 2007
+***************
+*** 23,28 ****
+--- 23,30 ----
+   * e.g., replace LONG with LONG_PTR, etc.
+   */
+  
++ #include "vim.h"
++ 
+  /*
+   * These are new in Windows ME/XP, only defined in recent compilers.
+   */
+***************
+*** 1432,1447 ****
+  	}
+      }
+      else
+! 	/* Open toplevel window. */
+  	s_hwnd = CreateWindow(
+! 	    szVimWndClass, "Vim MSWindows GUI",
+! 	    WS_OVERLAPPEDWINDOW,
+! 	    gui_win_x == -1 ? CW_USEDEFAULT : gui_win_x,
+! 	    gui_win_y == -1 ? CW_USEDEFAULT : gui_win_y,
+! 	    100,				/* Any value will do */
+! 	    100,				/* Any value will do */
+! 	    NULL, NULL,
+! 	    s_hinst, NULL);
+  
+      if (s_hwnd == NULL)
+  	return FAIL;
+--- 1434,1462 ----
+  	}
+      }
+      else
+!     {
+! 	/* If the provided windowid is not valid reset it to zero, so that it
+! 	 * is ignored and we open our own window. */
+! 	if (IsWindow((HWND)win_socket_id) <= 0)
+! 	    win_socket_id = 0;
+! 
+! 	/* Create a window.  If win_socket_id is not zero without border and
+! 	 * titlebar, it will be reparented below. */
+  	s_hwnd = CreateWindow(
+! 		szVimWndClass, "Vim MSWindows GUI",
+! 		win_socket_id == 0 ? WS_OVERLAPPEDWINDOW : WS_POPUP,
+! 		gui_win_x == -1 ? CW_USEDEFAULT : gui_win_x,
+! 		gui_win_y == -1 ? CW_USEDEFAULT : gui_win_y,
+! 		100,				/* Any value will do */
+! 		100,				/* Any value will do */
+! 		NULL, NULL,
+! 		s_hinst, NULL);
+! 	if (s_hwnd != NULL && win_socket_id != 0)
+! 	{
+! 	    SetParent(s_hwnd, (HWND)win_socket_id);
+! 	    ShowWindow(s_hwnd, SW_SHOWMAXIMIZED);
+! 	}
+!     }
+  
+      if (s_hwnd == NULL)
+  	return FAIL;
+*** ../vim-7.1.090/src/main.c	Fri Aug 10 21:32:41 2007
+--- src/main.c	Tue Aug 14 17:22:52 2007
+***************
+*** 275,280 ****
+--- 275,281 ----
+       *   -display or --display
+       *   --server...
+       *   --socketid
++      *   --windowid
+       */
+      early_arg_scan(&params);
+  
+***************
+*** 1489,1495 ****
+   * Get the name of the display, before gui_prepare() removes it from
+   * argv[].  Used for the xterm-clipboard display.
+   *
+!  * Also find the --server... arguments and --socketid
+   */
+  /*ARGSUSED*/
+      static void
+--- 1490,1496 ----
+   * Get the name of the display, before gui_prepare() removes it from
+   * argv[].  Used for the xterm-clipboard display.
+   *
+!  * Also find the --server... arguments and --socketid and --windowid
+   */
+  /*ARGSUSED*/
+      static void
+***************
+*** 1536,1559 ****
+  #  endif
+  	}
+  # endif
+! # ifdef FEAT_GUI_GTK
+  	else if (STRICMP(argv[i], "--socketid") == 0)
+  	{
+! 	    unsigned int    socket_id;
+  	    int		    count;
+  
+  	    if (i == argc - 1)
+  		mainerr_arg_missing((char_u *)argv[i]);
+  	    if (STRNICMP(argv[i+1], "0x", 2) == 0)
+! 		count = sscanf(&(argv[i + 1][2]), "%x", &socket_id);
+  	    else
+! 		count = sscanf(argv[i+1], "%u", &socket_id);
+  	    if (count != 1)
+  		mainerr(ME_INVALID_ARG, (char_u *)argv[i]);
+  	    else
+! 		gtk_socket_id = socket_id;
+  	    i++;
+  	}
+  	else if (STRICMP(argv[i], "--echo-wid") == 0)
+  	    echo_wid_arg = TRUE;
+  # endif
+--- 1537,1571 ----
+  #  endif
+  	}
+  # endif
+! 
+! # if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_W32)
+! #  ifdef FEAT_GUI_W32
+! 	else if (STRICMP(argv[i], "--windowid") == 0)
+! #  else
+  	else if (STRICMP(argv[i], "--socketid") == 0)
++ #  endif
+  	{
+! 	    unsigned int    id;
+  	    int		    count;
+  
+  	    if (i == argc - 1)
+  		mainerr_arg_missing((char_u *)argv[i]);
+  	    if (STRNICMP(argv[i+1], "0x", 2) == 0)
+! 		count = sscanf(&(argv[i + 1][2]), "%x", &id);
+  	    else
+! 		count = sscanf(argv[i+1], "%u", &id);
+  	    if (count != 1)
+  		mainerr(ME_INVALID_ARG, (char_u *)argv[i]);
+  	    else
+! #  ifdef FEAT_GUI_W32
+! 		win_socket_id = id;
+! #  else
+! 		gtk_socket_id = id;
+! #  endif
+  	    i++;
+  	}
++ # endif
++ # ifdef FEAT_GUI_GTK
+  	else if (STRICMP(argv[i], "--echo-wid") == 0)
+  	    echo_wid_arg = TRUE;
+  # endif
+***************
+*** 1683,1690 ****
+  		    }
+  		}
+  #endif
+! #ifdef FEAT_GUI_GTK
+  		else if (STRNICMP(argv[0] + argv_idx, "socketid", 8) == 0)
+  		{
+  		    /* already processed -- snatch the following arg */
+  		    if (argc > 1)
+--- 1695,1706 ----
+  		    }
+  		}
+  #endif
+! #if defined(FEAT_GUI_GTK) || defined(FEAT_GUI_W32)
+! # ifdef FEAT_GUI_GTK
+  		else if (STRNICMP(argv[0] + argv_idx, "socketid", 8) == 0)
++ # else
++ 		else if (STRNICMP(argv[0] + argv_idx, "windowid", 8) == 0)
++ # endif
+  		{
+  		    /* already processed -- snatch the following arg */
+  		    if (argc > 1)
+***************
+*** 1693,1698 ****
+--- 1709,1716 ----
+  			++argv;
+  		    }
+  		}
++ #endif
++ #ifdef FEAT_GUI_GTK
+  		else if (STRNICMP(argv[0] + argv_idx, "echo-wid", 8) == 0)
+  		{
+  		    /* already processed, skip */
+***************
+*** 3120,3125 ****
+--- 3138,3144 ----
+  #endif
+  #ifdef FEAT_GUI_W32
+      main_msg(_("-P <parent title>\tOpen Vim inside parent application"));
++     main_msg(_("--windowid <HWND>\tOpen Vim inside another win32 widget"));
+  #endif
+  
+  #ifdef FEAT_GUI_GNOME
+*** ../vim-7.1.090/src/version.c	Thu Aug 30 11:46:46 2007
+--- src/version.c	Thu Aug 30 12:21:02 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     91,
+  /**/
+
+-- 
+       We're knights of the Round Table
+       Our shows are formidable
+       But many times
+       We're given rhymes
+       That are quite unsingable
+       We're opera mad in Camelot
+       We sing from the diaphragm a lot.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.092
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.092?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.092 (added)
+++ trunk/packages/vim/upstream/patches/7.1.092 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,92 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.092 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.092 (extra, after 7.1.088)
+Problem:    Wrong arguments for MoveWindowStructure().
+Solution:   Remove "TRUE". (Michael Henry)
+Files:	    src/gui_mac.c
+
+
+*** ../vim-7.1.091/src/gui_mac.c	Thu Aug 30 10:34:19 2007
+--- src/gui_mac.c	Thu Aug 30 12:48:41 2007
+***************
+*** 3149,3155 ****
+      /* TODO:  Should make sure the window is move within range
+       *	      e.g.: y > ~16 [Menu bar], x > 0, x < screen width
+       */
+!     MoveWindowStructure(gui.VimWindow, x, y, TRUE);
+  }
+  
+      void
+--- 3149,3155 ----
+      /* TODO:  Should make sure the window is move within range
+       *	      e.g.: y > ~16 [Menu bar], x > 0, x < screen width
+       */
+!     MoveWindowStructure(gui.VimWindow, x, y);
+  }
+  
+      void
+***************
+*** 5293,5299 ****
+      short	itemType;
+      short	useIcon;
+      short	width;
+!     short	totalButtonWidth = 0;   /* the width of all button together
+  					   including spacing */
+      short	widestButton = 0;
+      short	dfltButtonEdge     = 20;  /* gut feeling */
+--- 5293,5299 ----
+      short	itemType;
+      short	useIcon;
+      short	width;
+!     short	totalButtonWidth = 0;   /* the width of all buttons together
+  					   including spacing */
+      short	widestButton = 0;
+      short	dfltButtonEdge     = 20;  /* gut feeling */
+***************
+*** 5483,5489 ****
+      {
+  
+  	macMoveDialogItem(theDialog, button, buttonItm.box.left, buttonItm.box.top, &box);
+! 	/* With vertical, it's better to have all button the same lenght */
+  	if (vertical)
+  	{
+  	    macSizeDialogItem(theDialog, button, widestButton, 0);
+--- 5483,5489 ----
+      {
+  
+  	macMoveDialogItem(theDialog, button, buttonItm.box.left, buttonItm.box.top, &box);
+! 	/* With vertical, it's better to have all buttons the same length */
+  	if (vertical)
+  	{
+  	    macSizeDialogItem(theDialog, button, widestButton, 0);
+*** ../vim-7.1.091/src/version.c	Thu Aug 30 12:24:21 2007
+--- src/version.c	Thu Aug 30 12:47:24 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     92,
+  /**/
+
+-- 
+       In war we're tough and able.
+       Quite indefatigable
+       Between our quests
+       We sequin vests
+       And impersonate Clark Gable
+       It's a busy life in Camelot.
+       I have to push the pram a lot.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.093
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.093?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.093 (added)
+++ trunk/packages/vim/upstream/patches/7.1.093 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,551 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.093
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.093
+Problem:    Reading past end of a screen line when determining cell width.
+	    (Dominique Pelle)
+Solution:   Add an argument to mb_off2cells() for the maximum offset.
+Files:	    src/globals.h, src/gui.c, src/mbyte.c, src/proto/mbyte.pro,
+	    src/screen.c
+
+
+*** ../vim-7.1.092/src/globals.h	Thu Aug 30 12:24:21 2007
+--- src/globals.h	Wed Aug 29 22:27:45 2007
+***************
+*** 801,807 ****
+  EXTERN int (*mb_char2bytes) __ARGS((int c, char_u *buf)) INIT(= latin_char2bytes);
+  EXTERN int (*mb_ptr2cells) __ARGS((char_u *p)) INIT(= latin_ptr2cells);
+  EXTERN int (*mb_char2cells) __ARGS((int c)) INIT(= latin_char2cells);
+! EXTERN int (*mb_off2cells) __ARGS((unsigned off)) INIT(= latin_off2cells);
+  EXTERN int (*mb_ptr2char) __ARGS((char_u *p)) INIT(= latin_ptr2char);
+  EXTERN int (*mb_head_off) __ARGS((char_u *base, char_u *p)) INIT(= latin_head_off);
+  
+--- 801,807 ----
+  EXTERN int (*mb_char2bytes) __ARGS((int c, char_u *buf)) INIT(= latin_char2bytes);
+  EXTERN int (*mb_ptr2cells) __ARGS((char_u *p)) INIT(= latin_ptr2cells);
+  EXTERN int (*mb_char2cells) __ARGS((int c)) INIT(= latin_char2cells);
+! EXTERN int (*mb_off2cells) __ARGS((unsigned off, unsigned max_off)) INIT(= latin_off2cells);
+  EXTERN int (*mb_ptr2char) __ARGS((char_u *p)) INIT(= latin_ptr2char);
+  EXTERN int (*mb_head_off) __ARGS((char_u *base, char_u *p)) INIT(= latin_head_off);
+  
+*** ../vim-7.1.092/src/gui.c	Wed Aug 15 20:07:53 2007
+--- src/gui.c	Wed Aug 29 22:16:51 2007
+***************
+*** 1080,1086 ****
+  		cur_width = gui.char_width;
+  	    }
+  #ifdef FEAT_MBYTE
+! 	    if (has_mbyte && (*mb_off2cells)(LineOffset[gui.row] + gui.col) > 1)
+  	    {
+  		/* Double wide character. */
+  		if (shape_table[idx].shape != SHAPE_VER)
+--- 1080,1087 ----
+  		cur_width = gui.char_width;
+  	    }
+  #ifdef FEAT_MBYTE
+! 	    if (has_mbyte && (*mb_off2cells)(LineOffset[gui.row] + gui.col,
+! 				    LineOffset[gui.row] + screen_Columns) > 1)
+  	    {
+  		/* Double wide character. */
+  		if (shape_table[idx].shape != SHAPE_VER)
+***************
+*** 1159,1165 ****
+  #endif
+  
+  # if defined(FEAT_GUI_TABLINE) && (defined(FEAT_GUI_MSWIN) \
+!  	|| defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_MAC))
+      if (gui_has_tabline())
+  	text_area_y += gui.tabline_height;
+  #endif
+--- 1160,1166 ----
+  #endif
+  
+  # if defined(FEAT_GUI_TABLINE) && (defined(FEAT_GUI_MSWIN) \
+! 	|| defined(FEAT_GUI_MOTIF) || defined(FEAT_GUI_MAC))
+      if (gui_has_tabline())
+  	text_area_y += gui.tabline_height;
+  #endif
+*** ../vim-7.1.092/src/mbyte.c	Sat Aug 11 13:57:31 2007
+--- src/mbyte.c	Thu Aug 30 13:48:30 2007
+***************
+*** 1310,1329 ****
+  /*
+   * mb_off2cells() function pointer.
+   * Return number of display cells for char at ScreenLines[off].
+!  * Caller must make sure "off" and "off + 1" are valid!
+   */
+  /*ARGSUSED*/
+      int
+! latin_off2cells(off)
+      unsigned	off;
+  {
+      return 1;
+  }
+  
+      int
+! dbcs_off2cells(off)
+      unsigned	off;
+  {
+      /* Number of cells is equal to number of bytes, except for euc-jp when
+       * the first byte is 0x8e. */
+      if (enc_dbcs == DBCS_JPNU && ScreenLines[off] == 0x8e)
+--- 1310,1335 ----
+  /*
+   * mb_off2cells() function pointer.
+   * Return number of display cells for char at ScreenLines[off].
+!  * We make sure that the offset used is less than "max_off".
+   */
+  /*ARGSUSED*/
+      int
+! latin_off2cells(off, max_off)
+      unsigned	off;
++     unsigned	max_off;
+  {
+      return 1;
+  }
+  
+      int
+! dbcs_off2cells(off, max_off)
+      unsigned	off;
++     unsigned	max_off;
+  {
++     /* never check beyond end of the line */
++     if (off >= max_off)
++ 	return 1;
++ 
+      /* Number of cells is equal to number of bytes, except for euc-jp when
+       * the first byte is 0x8e. */
+      if (enc_dbcs == DBCS_JPNU && ScreenLines[off] == 0x8e)
+***************
+*** 1332,1341 ****
+  }
+  
+      int
+! utf_off2cells(off)
+      unsigned	off;
+  {
+!     return ScreenLines[off + 1] == 0 ? 2 : 1;
+  }
+  
+  /*
+--- 1338,1348 ----
+  }
+  
+      int
+! utf_off2cells(off, max_off)
+      unsigned	off;
++     unsigned	max_off;
+  {
+!     return (off + 1 < max_off && ScreenLines[off + 1] == 0) ? 2 : 1;
+  }
+  
+  /*
+***************
+*** 2899,2910 ****
+      if (composing_hangul)
+  	return TRUE;
+  #endif
+!     if (enc_dbcs != 0)
+! 	return dbcs_off2cells(LineOffset[row] + col) > 1;
+!     if (enc_utf8)
+! 	return (col + 1 < Columns
+! 		&& ScreenLines[LineOffset[row] + col + 1] == 0);
+!     return FALSE;
+  }
+  
+  # if defined(FEAT_CLIPBOARD) || defined(FEAT_GUI) || defined(FEAT_RIGHTLEFT) \
+--- 2906,2913 ----
+      if (composing_hangul)
+  	return TRUE;
+  #endif
+!     return (*mb_off2cells)(LineOffset[row] + col,
+! 					LineOffset[row] + screen_Columns) > 1;
+  }
+  
+  # if defined(FEAT_CLIPBOARD) || defined(FEAT_GUI) || defined(FEAT_RIGHTLEFT) \
+*** ../vim-7.1.092/src/proto/mbyte.pro	Sat May  5 20:02:52 2007
+--- src/proto/mbyte.pro	Wed Aug 29 20:49:02 2007
+***************
+*** 12,20 ****
+  int utf_ptr2cells __ARGS((char_u *p));
+  int dbcs_ptr2cells __ARGS((char_u *p));
+  int latin_char2cells __ARGS((int c));
+! int latin_off2cells __ARGS((unsigned off));
+! int dbcs_off2cells __ARGS((unsigned off));
+! int utf_off2cells __ARGS((unsigned off));
+  int latin_ptr2char __ARGS((char_u *p));
+  int utf_ptr2char __ARGS((char_u *p));
+  int mb_ptr2char_adv __ARGS((char_u **pp));
+--- 12,20 ----
+  int utf_ptr2cells __ARGS((char_u *p));
+  int dbcs_ptr2cells __ARGS((char_u *p));
+  int latin_char2cells __ARGS((int c));
+! int latin_off2cells __ARGS((unsigned off, unsigned max_off));
+! int dbcs_off2cells __ARGS((unsigned off, unsigned max_off));
+! int utf_off2cells __ARGS((unsigned off, unsigned max_off));
+  int latin_ptr2char __ARGS((char_u *p));
+  int utf_ptr2char __ARGS((char_u *p));
+  int mb_ptr2char_adv __ARGS((char_u **pp));
+*** ../vim-7.1.092/src/screen.c	Sun Aug  5 20:10:16 2007
+--- src/screen.c	Thu Aug 30 10:31:26 2007
+***************
+*** 1024,1030 ****
+  	    type = VALID;
+      }
+  
+!     /* Trick: we want to avoid clearning the screen twice.  screenclear() will
+       * set "screen_cleared" to TRUE.  The special value MAYBE (which is still
+       * non-zero and thus not FALSE) will indicate that screenclear() was not
+       * called. */
+--- 1024,1030 ----
+  	    type = VALID;
+      }
+  
+!     /* Trick: we want to avoid clearing the screen twice.  screenclear() will
+       * set "screen_cleared" to TRUE.  The special value MAYBE (which is still
+       * non-zero and thus not FALSE) will indicate that screenclear() was not
+       * called. */
+***************
+*** 4632,4638 ****
+  
+  	/*
+  	 * At end of screen line and there is more to come: Display the line
+! 	 * so far.  If there is no more to display it is catched above.
+  	 */
+  	if ((
+  #ifdef FEAT_RIGHTLEFT
+--- 4632,4638 ----
+  
+  	/*
+  	 * At end of screen line and there is more to come: Display the line
+! 	 * so far.  If there is no more to display it is caught above.
+  	 */
+  	if ((
+  #ifdef FEAT_RIGHTLEFT
+***************
+*** 4709,4717 ****
+  #endif
+  #ifdef FEAT_MBYTE
+  			 && !(has_mbyte
+! 			     && ((*mb_off2cells)(LineOffset[screen_row]) == 2
+  				 || (*mb_off2cells)(LineOffset[screen_row - 1]
+! 							+ (int)Columns - 2) == 2))
+  #endif
+  		   )
+  		{
+--- 4709,4721 ----
+  #endif
+  #ifdef FEAT_MBYTE
+  			 && !(has_mbyte
+! 			     && ((*mb_off2cells)(LineOffset[screen_row],
+! 				     LineOffset[screen_row] + screen_Columns)
+! 									  == 2
+  				 || (*mb_off2cells)(LineOffset[screen_row - 1]
+! 							+ (int)Columns - 2,
+! 				     LineOffset[screen_row] + screen_Columns)
+! 									== 2))
+  #endif
+  		   )
+  		{
+***************
+*** 4871,4876 ****
+--- 4875,4884 ----
+  {
+      unsigned	    off_from;
+      unsigned	    off_to;
++ #ifdef FEAT_MBYTE
++     unsigned	    max_off_from;
++     unsigned	    max_off_to;
++ #endif
+      int		    col = 0;
+  #if defined(FEAT_GUI) || defined(UNIX) || defined(FEAT_VERTSPLIT)
+      int		    hl;
+***************
+*** 4897,4902 ****
+--- 4905,4914 ----
+  
+      off_from = (unsigned)(current_ScreenLine - ScreenLines);
+      off_to = LineOffset[row] + coloff;
++ #ifdef FEAT_MBYTE
++     max_off_from = off_from + screen_Columns;
++     max_off_to = LineOffset[row] + screen_Columns;
++ #endif
+  
+  #ifdef FEAT_RIGHTLEFT
+      if (rlflag)
+***************
+*** 4931,4937 ****
+      {
+  #ifdef FEAT_MBYTE
+  	if (has_mbyte && (col + 1 < endcol))
+! 	    char_cells = (*mb_off2cells)(off_from);
+  	else
+  	    char_cells = 1;
+  #endif
+--- 4943,4949 ----
+      {
+  #ifdef FEAT_MBYTE
+  	if (has_mbyte && (col + 1 < endcol))
+! 	    char_cells = (*mb_off2cells)(off_from, max_off_from);
+  	else
+  	    char_cells = 1;
+  #endif
+***************
+*** 5008,5014 ****
+  		 * ScreenLinesUC[] is sufficient. */
+  		if (char_cells == 1
+  			&& col + 1 < endcol
+! 			&& (*mb_off2cells)(off_to) > 1)
+  		{
+  		    /* Writing a single-cell character over a double-cell
+  		     * character: need to redraw the next cell. */
+--- 5020,5026 ----
+  		 * ScreenLinesUC[] is sufficient. */
+  		if (char_cells == 1
+  			&& col + 1 < endcol
+! 			&& (*mb_off2cells)(off_to, max_off_to) > 1)
+  		{
+  		    /* Writing a single-cell character over a double-cell
+  		     * character: need to redraw the next cell. */
+***************
+*** 5017,5024 ****
+  		}
+  		else if (char_cells == 2
+  			&& col + 2 < endcol
+! 			&& (*mb_off2cells)(off_to) == 1
+! 			&& (*mb_off2cells)(off_to + 1) > 1)
+  		{
+  		    /* Writing the second half of a double-cell character over
+  		     * a double-cell character: need to redraw the second
+--- 5029,5036 ----
+  		}
+  		else if (char_cells == 2
+  			&& col + 2 < endcol
+! 			&& (*mb_off2cells)(off_to, max_off_to) == 1
+! 			&& (*mb_off2cells)(off_to + 1, max_off_to) > 1)
+  		{
+  		    /* Writing the second half of a double-cell character over
+  		     * a double-cell character: need to redraw the second
+***************
+*** 5037,5046 ****
+  	     * char over the left halve of an existing one. */
+  	    if (has_mbyte && col + char_cells == endcol
+  		    && ((char_cells == 1
+! 			    && (*mb_off2cells)(off_to) > 1)
+  			|| (char_cells == 2
+! 			    && (*mb_off2cells)(off_to) == 1
+! 			    && (*mb_off2cells)(off_to + 1) > 1)))
+  		clear_next = TRUE;
+  #endif
+  
+--- 5049,5058 ----
+  	     * char over the left halve of an existing one. */
+  	    if (has_mbyte && col + char_cells == endcol
+  		    && ((char_cells == 1
+! 			    && (*mb_off2cells)(off_to, max_off_to) > 1)
+  			|| (char_cells == 2
+! 			    && (*mb_off2cells)(off_to, max_off_to) == 1
+! 			    && (*mb_off2cells)(off_to + 1, max_off_to) > 1)))
+  		clear_next = TRUE;
+  #endif
+  
+***************
+*** 5180,5189 ****
+  			/* find previous character by counting from first
+  			 * column and get its width. */
+  			unsigned off = LineOffset[row];
+  
+  			while (off < off_to)
+  			{
+! 			    prev_cells = (*mb_off2cells)(off);
+  			    off += prev_cells;
+  			}
+  		    }
+--- 5192,5202 ----
+  			/* find previous character by counting from first
+  			 * column and get its width. */
+  			unsigned off = LineOffset[row];
++ 			unsigned max_off = LineOffset[row] + screen_Columns;
+  
+  			while (off < off_to)
+  			{
+! 			    prev_cells = (*mb_off2cells)(off, max_off);
+  			    off += prev_cells;
+  			}
+  		    }
+***************
+*** 5369,5375 ****
+  static int skip_status_match_char __ARGS((expand_T *xp, char_u *s));
+  
+  /*
+!  * Get the lenght of an item as it will be shown in the status line.
+   */
+      static int
+  status_match_len(xp, s)
+--- 5382,5388 ----
+  static int skip_status_match_char __ARGS((expand_T *xp, char_u *s));
+  
+  /*
+!  * Get the length of an item as it will be shown in the status line.
+   */
+      static int
+  status_match_len(xp, s)
+***************
+*** 5435,5441 ****
+      int		row;
+      char_u	*buf;
+      int		len;
+!     int		clen;		/* lenght in screen cells */
+      int		fillchar;
+      int		attr;
+      int		i;
+--- 5448,5454 ----
+      int		row;
+      char_u	*buf;
+      int		len;
+!     int		clen;		/* length in screen cells */
+      int		fillchar;
+      int		attr;
+      int		i;
+***************
+*** 6187,6192 ****
+--- 6200,6206 ----
+      char_u	*ptr = text;
+      int		c;
+  #ifdef FEAT_MBYTE
++     unsigned	max_off;
+      int		mbyte_blen = 1;
+      int		mbyte_cells = 1;
+      int		u8c = 0;
+***************
+*** 6203,6208 ****
+--- 6217,6225 ----
+  	return;
+  
+      off = LineOffset[row] + col;
++ #ifdef FEAT_MBYTE
++     max_off = LineOffset[row] + screen_Columns;
++ #endif
+      while (col < screen_Columns
+  	    && (len < 0 || (int)(ptr - text) < len)
+  	    && *ptr != NUL)
+***************
+*** 6326,6344 ****
+  	    else if (has_mbyte
+  		    && (len < 0 ? ptr[mbyte_blen] == NUL
+  					     : ptr + mbyte_blen >= text + len)
+! 		    && ((mbyte_cells == 1 && (*mb_off2cells)(off) > 1)
+  			|| (mbyte_cells == 2
+! 			    && (*mb_off2cells)(off) == 1
+! 			    && (*mb_off2cells)(off + 1) > 1)))
+  		clear_next_cell = TRUE;
+  
+  	    /* Make sure we never leave a second byte of a double-byte behind,
+  	     * it confuses mb_off2cells(). */
+  	    if (enc_dbcs
+! 		    && ((mbyte_cells == 1 && (*mb_off2cells)(off) > 1)
+  			|| (mbyte_cells == 2
+! 			    && (*mb_off2cells)(off) == 1
+! 			    && (*mb_off2cells)(off + 1) > 1)))
+  		ScreenLines[off + mbyte_blen] = 0;
+  #endif
+  	    ScreenLines[off] = c;
+--- 6343,6361 ----
+  	    else if (has_mbyte
+  		    && (len < 0 ? ptr[mbyte_blen] == NUL
+  					     : ptr + mbyte_blen >= text + len)
+! 		    && ((mbyte_cells == 1 && (*mb_off2cells)(off, max_off) > 1)
+  			|| (mbyte_cells == 2
+! 			    && (*mb_off2cells)(off, max_off) == 1
+! 			    && (*mb_off2cells)(off + 1, max_off) > 1)))
+  		clear_next_cell = TRUE;
+  
+  	    /* Make sure we never leave a second byte of a double-byte behind,
+  	     * it confuses mb_off2cells(). */
+  	    if (enc_dbcs
+! 		    && ((mbyte_cells == 1 && (*mb_off2cells)(off, max_off) > 1)
+  			|| (mbyte_cells == 2
+! 			    && (*mb_off2cells)(off, max_off) == 1
+! 			    && (*mb_off2cells)(off + 1, max_off) > 1)))
+  		ScreenLines[off + mbyte_blen] = 0;
+  #endif
+  	    ScreenLines[off] = c;
+***************
+*** 6924,6929 ****
+--- 6941,6949 ----
+  {
+      int		r, c;
+      int		off;
++ #ifdef FEAT_MBYTE
++     int		max_off;
++ #endif
+  
+      /* Can't use ScreenLines unless initialized */
+      if (ScreenLines == NULL)
+***************
+*** 6934,6943 ****
+      for (r = row; r < row + height; ++r)
+      {
+  	off = LineOffset[r];
+  	for (c = col; c < col + width; ++c)
+  	{
+  #ifdef FEAT_MBYTE
+! 	    if (enc_dbcs != 0 && dbcs_off2cells(off + c) > 1)
+  	    {
+  		screen_char_2(off + c, r, c);
+  		++c;
+--- 6954,6966 ----
+      for (r = row; r < row + height; ++r)
+      {
+  	off = LineOffset[r];
++ #ifdef FEAT_MBYTE
++ 	max_off = off + screen_Columns;
++ #endif
+  	for (c = col; c < col + width; ++c)
+  	{
+  #ifdef FEAT_MBYTE
+! 	    if (enc_dbcs != 0 && dbcs_off2cells(off + c, max_off) > 1)
+  	    {
+  		screen_char_2(off + c, r, c);
+  		++c;
+***************
+*** 6947,6953 ****
+  	    {
+  		screen_char(off + c, r, c);
+  #ifdef FEAT_MBYTE
+! 		if (utf_off2cells(off + c) > 1)
+  		    ++c;
+  #endif
+  	    }
+--- 6970,6976 ----
+  	    {
+  		screen_char(off + c, r, c);
+  #ifdef FEAT_MBYTE
+! 		if (utf_off2cells(off + c, max_off) > 1)
+  		    ++c;
+  #endif
+  	    }
+*** ../vim-7.1.092/src/version.c	Thu Aug 30 12:50:00 2007
+--- src/version.c	Thu Aug 30 13:45:25 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     93,
+  /**/
+
+-- 
+There is a fine line between courage and foolishness.
+Unfortunately, it's not a fence.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.094
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.094?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.094 (added)
+++ trunk/packages/vim/upstream/patches/7.1.094 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,58 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.094
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.094
+Problem:    When checking if syntax highlighting is present, looking in the
+	    current buffer instead of the specified one.
+Solution:   Use "buf" instead of "curbuf".
+Files:	    src/syntax.c
+
+
+*** ../vim-7.1.093/src/syntax.c	Tue Aug 21 17:29:04 2007
+--- src/syntax.c	Wed Aug 29 23:27:52 2007
+***************
+*** 5987,5994 ****
+  {
+      return (buf->b_syn_patterns.ga_len != 0
+  	    || buf->b_syn_clusters.ga_len != 0
+! 	    || curbuf->b_keywtab.ht_used > 0
+! 	    || curbuf->b_keywtab_ic.ht_used > 0);
+  }
+  
+  #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
+--- 5987,5994 ----
+  {
+      return (buf->b_syn_patterns.ga_len != 0
+  	    || buf->b_syn_clusters.ga_len != 0
+! 	    || buf->b_keywtab.ht_used > 0
+! 	    || buf->b_keywtab_ic.ht_used > 0);
+  }
+  
+  #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
+*** ../vim-7.1.093/src/version.c	Thu Aug 30 13:51:52 2007
+--- src/version.c	Thu Aug 30 19:35:52 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     94,
+  /**/
+
+-- 
+MAN:     You don't frighten us, English pig-dog!  Go and boil your bottoms,
+         son of a silly person.  I blow my nose on you, so-called Arthur-king,
+         you and your silly English K...kaniggets.
+   He puts hands to his ears and blows a raspberry.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.095
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.095?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.095 (added)
+++ trunk/packages/vim/upstream/patches/7.1.095 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,210 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.095
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.095
+Problem:    The FocusLost and FocusGained autocommands are triggered
+	    asynchronously in the GUI.  This may cause arbitrary problems.
+Solution:   Put the focus event in the input buffer and handle it when ready
+	    for it.
+Files:	    src/eval.c, src/getchar.c, src/gui.c, src/gui_gtk_x11.c,
+	    src/keymap.h
+
+
+*** ../vim-7.1.094/src/eval.c	Thu Aug 30 11:10:38 2007
+--- src/eval.c	Mon Sep  3 22:48:09 2007
+***************
+*** 9912,9929 ****
+  
+      ++no_mapping;
+      ++allow_keys;
+!     if (argvars[0].v_type == VAR_UNKNOWN)
+! 	/* getchar(): blocking wait. */
+! 	n = safe_vgetc();
+!     else if (get_tv_number_chk(&argvars[0], &error) == 1)
+! 	/* getchar(1): only check if char avail */
+! 	n = vpeekc();
+!     else if (error || vpeekc() == NUL)
+! 	/* illegal argument or getchar(0) and no char avail: return zero */
+! 	n = 0;
+!     else
+! 	/* getchar(0) and char avail: return char */
+! 	n = safe_vgetc();
+      --no_mapping;
+      --allow_keys;
+  
+--- 9912,9935 ----
+  
+      ++no_mapping;
+      ++allow_keys;
+!     for (;;)
+!     {
+! 	if (argvars[0].v_type == VAR_UNKNOWN)
+! 	    /* getchar(): blocking wait. */
+! 	    n = safe_vgetc();
+! 	else if (get_tv_number_chk(&argvars[0], &error) == 1)
+! 	    /* getchar(1): only check if char avail */
+! 	    n = vpeekc();
+! 	else if (error || vpeekc() == NUL)
+! 	    /* illegal argument or getchar(0) and no char avail: return zero */
+! 	    n = 0;
+! 	else
+! 	    /* getchar(0) and char avail: return char */
+! 	    n = safe_vgetc();
+! 	if (n == K_IGNORE)
+! 	    continue;
+! 	break;
+!     }
+      --no_mapping;
+      --allow_keys;
+  
+*** ../vim-7.1.094/src/getchar.c	Thu May 10 18:43:02 2007
+--- src/getchar.c	Wed Aug 29 22:38:49 2007
+***************
+*** 1596,1603 ****
+  		continue;
+  	    }
+  #endif
+- 
+  #ifdef FEAT_GUI
+  	    /* Translate K_CSI to CSI.  The special key is only used to avoid
+  	     * it being recognized as the start of a special key. */
+  	    if (c == K_CSI)
+--- 1596,1610 ----
+  		continue;
+  	    }
+  #endif
+  #ifdef FEAT_GUI
++ 	    /* The caller doesn't need to know that the focus event is delayed
++ 	     * until getting a character. */
++ 	    if (c == K_FOCUSGAINED || c == K_FOCUSLOST)
++ 	    {
++ 		ui_focus_change(c == K_FOCUSGAINED);
++ 		continue;
++ 	    }
++ 
+  	    /* Translate K_CSI to CSI.  The special key is only used to avoid
+  	     * it being recognized as the start of a special key. */
+  	    if (c == K_CSI)
+*** ../vim-7.1.094/src/gui.c	Thu Aug 30 13:51:52 2007
+--- src/gui.c	Thu Aug 30 14:10:48 2007
+***************
+*** 4519,4525 ****
+      xim_set_focus(in_focus);
+  # endif
+  
+!     ui_focus_change(in_focus);
+  #endif
+  }
+  
+--- 4519,4536 ----
+      xim_set_focus(in_focus);
+  # endif
+  
+!     /* Put events in the input queue only when allowed.
+!      * ui_focus_change() isn't called directly, because it invokes
+!      * autocommands and that must not happen asynchronously. */
+!     if (!hold_gui_events)
+!     {
+! 	char_u  bytes[3];
+! 
+! 	bytes[0] = CSI;
+! 	bytes[1] = KS_EXTRA;
+! 	bytes[2] = in_focus ? (int)KE_FOCUSGAINED : (int)KE_FOCUSLOST;
+! 	add_to_input_buf(bytes, 3);
+!     }
+  #endif
+  }
+  
+*** ../vim-7.1.094/src/gui_gtk_x11.c	Tue Jun 19 18:07:52 2007
+--- src/gui_gtk_x11.c	Wed Aug 29 22:43:34 2007
+***************
+*** 813,822 ****
+      if (blink_state == BLINK_NONE)
+  	gui_mch_start_blink();
+  
+!     /* make sure keyboard input goes to the draw area (if this is focus for a window) */
+      if (widget != gui.drawarea)
+  	gtk_widget_grab_focus(gui.drawarea);
+  
+      return TRUE;
+  }
+  
+--- 813,827 ----
+      if (blink_state == BLINK_NONE)
+  	gui_mch_start_blink();
+  
+!     /* make sure keyboard input goes to the draw area (if this is focus for a
+!      * window) */
+      if (widget != gui.drawarea)
+  	gtk_widget_grab_focus(gui.drawarea);
+  
++     /* make sure the input buffer is read */
++     if (gtk_main_level() > 0)
++ 	gtk_main_quit();
++ 
+      return TRUE;
+  }
+  
+***************
+*** 828,833 ****
+--- 833,842 ----
+  
+      if (blink_state != BLINK_NONE)
+  	gui_mch_stop_blink();
++ 
++     /* make sure the input buffer is read */
++     if (gtk_main_level() > 0)
++ 	gtk_main_quit();
+  
+      return TRUE;
+  }
+*** ../vim-7.1.094/src/keymap.h	Sat May  5 19:34:22 2007
+--- src/keymap.h	Wed Aug 29 22:17:51 2007
+***************
+*** 254,259 ****
+--- 254,261 ----
+      , KE_DROP		/* DnD data is available */
+      , KE_CURSORHOLD	/* CursorHold event */
+      , KE_NOP		/* doesn't do something */
++     , KE_FOCUSGAINED	/* focus gained */
++     , KE_FOCUSLOST	/* focus lost */
+  };
+  
+  /*
+***************
+*** 445,450 ****
+--- 447,454 ----
+  #define K_CMDWIN	TERMCAP2KEY(KS_EXTRA, KE_CMDWIN)
+  
+  #define K_DROP		TERMCAP2KEY(KS_EXTRA, KE_DROP)
++ #define K_FOCUSGAINED	TERMCAP2KEY(KS_EXTRA, KE_FOCUSGAINED)
++ #define K_FOCUSLOST	TERMCAP2KEY(KS_EXTRA, KE_FOCUSLOST)
+  
+  #define K_CURSORHOLD	TERMCAP2KEY(KS_EXTRA, KE_CURSORHOLD)
+  
+*** ../vim-7.1.094/src/version.c	Thu Aug 30 19:36:52 2007
+--- src/version.c	Wed Sep  5 21:42:41 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     95,
+  /**/
+
+-- 
+ARTHUR:      Who are you?
+TALL KNIGHT: We are the Knights Who Say "Ni"!
+BEDEVERE:    No!  Not the Knights Who Say "Ni"!
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.096
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.096?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.096 (added)
+++ trunk/packages/vim/upstream/patches/7.1.096 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,89 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.096
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.096
+Problem:    Reading past end of a string when resizing Vim. (Dominique Pelle)
+Solution:   Check the string pointer before getting the char it points to.
+Files:	    src/message.c
+
+
+*** ../vim-7.1.095/src/message.c	Tue Aug  7 21:59:26 2007
+--- src/message.c	Thu Aug 30 22:53:03 2007
+***************
+*** 944,949 ****
+--- 944,950 ----
+  		c = K_IGNORE;
+  	    }
+  #endif
++ 
+  	    /*
+  	     * Allow scrolling back in the messages.
+  	     * Also accept scroll-down commands when messages fill the screen,
+***************
+*** 1840,1845 ****
+--- 1841,1847 ----
+      char_u	*sb_str = str;
+      int		sb_col = msg_col;
+      int		wrap;
++     int		did_last_char;
+  
+      did_wait_return = FALSE;
+      while ((maxlen < 0 || (int)(s - str) < maxlen) && *s != NUL)
+***************
+*** 1909,1915 ****
+--- 1911,1920 ----
+  		else
+  #endif
+  		    msg_screen_putchar(*s++, attr);
++ 		did_last_char = TRUE;
+  	    }
++ 	    else
++ 		did_last_char = FALSE;
+  
+  	    if (p_more)
+  		/* store text for scrolling back */
+***************
+*** 1944,1954 ****
+  
+  	    /* When we displayed a char in last column need to check if there
+  	     * is still more. */
+! 	    if (*s >= ' '
+! #ifdef FEAT_RIGHTLEFT
+! 		    && !cmdmsg_rl
+! #endif
+! 	       )
+  		continue;
+  	}
+  
+--- 1949,1955 ----
+  
+  	    /* When we displayed a char in last column need to check if there
+  	     * is still more. */
+! 	    if (did_last_char)
+  		continue;
+  	}
+  
+*** ../vim-7.1.095/src/version.c	Wed Sep  5 21:45:54 2007
+--- src/version.c	Thu Sep  6 12:31:28 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     96,
+  /**/
+
+-- 
+Yah, well, we had to carve our electrons out of driftwood we'd
+find.  In the winter.  Uphill.  Both ways.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.097
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.097?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.097 (added)
+++ trunk/packages/vim/upstream/patches/7.1.097 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,51 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.097
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.097
+Problem:    ":setlocal stl=%!1+1" does not work.
+Solution:   Adjust check for pointer. (Politz)
+Files:	    src/option.c
+
+
+*** ../vim-7.1.096/src/option.c	Sun Aug 12 15:50:26 2007
+--- src/option.c	Wed Sep  5 22:34:27 2007
+***************
+*** 6348,6354 ****
+  		errmsg = check_stl_option(p_ruf);
+  	}
+  	/* check 'statusline' only if it doesn't start with "%!" */
+! 	else if (varp != &p_stl || s[0] != '%' || s[1] != '!')
+  	    errmsg = check_stl_option(s);
+  	if (varp == &p_ruf && errmsg == NULL)
+  	    comp_col();
+--- 6352,6358 ----
+  		errmsg = check_stl_option(p_ruf);
+  	}
+  	/* check 'statusline' only if it doesn't start with "%!" */
+! 	else if (varp == &p_ruf || s[0] != '%' || s[1] != '!')
+  	    errmsg = check_stl_option(s);
+  	if (varp == &p_ruf && errmsg == NULL)
+  	    comp_col();
+*** ../vim-7.1.096/src/version.c	Thu Sep  6 12:53:59 2007
+--- src/version.c	Thu Sep  6 13:31:37 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     97,
+  /**/
+
+-- 
+Not too long ago, cut and paste was done with scissors and glue...
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.098
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.098?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.098 (added)
+++ trunk/packages/vim/upstream/patches/7.1.098 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,65 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.098
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.098
+Problem:    ":call s:var()" doesn't work if "s:var" is a Funcref. (Andy Wokula)
+Solution:   Before converting "s:" into a script ID, check if it is a Funcref.
+Files:	    src/eval.c
+
+
+*** ../vim-7.1.097/src/eval.c	Wed Sep  5 21:45:54 2007
+--- src/eval.c	Thu Sep  6 12:11:19 2007
+***************
+*** 19367,19372 ****
+--- 19367,19394 ----
+      if (lv.ll_name == NULL)
+      {
+  	/* Error found, but continue after the function name. */
++ 	*pp = end;
++ 	goto theend;
++     }
++ 
++     /* Check if the name is a Funcref.  If so, use the value. */
++     if (lv.ll_exp_name != NULL)
++     {
++ 	len = (int)STRLEN(lv.ll_exp_name);
++ 	name = deref_func_name(lv.ll_exp_name, &len);
++ 	if (name == lv.ll_exp_name)
++ 	    name = NULL;
++     }
++     else
++     {
++ 	len = (int)(end - *pp);
++ 	name = deref_func_name(*pp, &len);
++ 	if (name == *pp)
++ 	    name = NULL;
++     }
++     if (name != NULL)
++     {
++ 	name = vim_strsave(name);
+  	*pp = end;
+  	goto theend;
+      }
+*** ../vim-7.1.097/src/version.c	Thu Sep  6 13:32:53 2007
+--- src/version.c	Thu Sep  6 14:24:10 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     98,
+  /**/
+
+-- 
+Not too long ago, a program was something you watched on TV...
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.099
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.099?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.099 (added)
+++ trunk/packages/vim/upstream/patches/7.1.099 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,137 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.099
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.099
+Problem:    When the 'keymap' and 'paste' options have a non-default value,
+	    ":mkexrc" and ":mksession" do not correctly set the options.
+Solution:   Set the options with side effects before other options.
+Files:	    src/option.c
+
+ 
+*** ../vim-7.1.098/src/option.c	Thu Sep  6 13:32:53 2007
+--- src/option.c	Wed Sep  5 22:34:27 2007
+***************
+*** 427,432 ****
+--- 427,434 ----
+  #define P_NOGLOB       0x100000L/* do not use local value for global vimrc */
+  #define P_NFNAME       0x200000L/* only normal file name chars allowed */
+  #define P_INSECURE     0x400000L/* option was set from a modeline */
++ #define P_PRI_MKRC     0x800000L/* priority for :mkvimrc (setting option has
++ 				   side effects) */
+  
+  #define ISK_LATIN1  (char_u *)"@,48-57,_,192-255"
+  
+***************
+*** 773,778 ****
+--- 775,782 ----
+  			    {(char_u *)0L, (char_u *)0L}
+  #endif
+  			    },
++ 			    /* P_PRI_MKRC isn't needed here, optval_default()
++ 			     * always returns TRUE for 'compatible' */
+      {"compatible",  "cp",   P_BOOL|P_RALL,
+  			    (char_u *)&p_cp, PV_NONE,
+  			    {(char_u *)TRUE, (char_u *)FALSE}},
+***************
+*** 1515,1521 ****
+  			    {(char_u *)0L, (char_u *)0L}
+  #endif
+  			    },
+!     {"keymap",	    "kmp",  P_STRING|P_ALLOCED|P_VI_DEF|P_RBUF|P_RSTAT|P_NFNAME,
+  #ifdef FEAT_KEYMAP
+  			    (char_u *)&p_keymap, PV_KMAP,
+  			    {(char_u *)"", (char_u *)0L}
+--- 1519,1525 ----
+  			    {(char_u *)0L, (char_u *)0L}
+  #endif
+  			    },
+!     {"keymap",	    "kmp",  P_STRING|P_ALLOCED|P_VI_DEF|P_RBUF|P_RSTAT|P_NFNAME|P_PRI_MKRC,
+  #ifdef FEAT_KEYMAP
+  			    (char_u *)&p_keymap, PV_KMAP,
+  			    {(char_u *)"", (char_u *)0L}
+***************
+*** 1836,1842 ****
+      {"paragraphs",  "para", P_STRING|P_VI_DEF,
+  			    (char_u *)&p_para, PV_NONE,
+  			    {(char_u *)"IPLPPPQPP LIpplpipbp", (char_u *)0L}},
+!     {"paste",	    NULL,   P_BOOL|P_VI_DEF,
+  			    (char_u *)&p_paste, PV_NONE,
+  			    {(char_u *)FALSE, (char_u *)0L}},
+      {"pastetoggle", "pt",   P_STRING|P_VI_DEF,
+--- 1840,1846 ----
+      {"paragraphs",  "para", P_STRING|P_VI_DEF,
+  			    (char_u *)&p_para, PV_NONE,
+  			    {(char_u *)"IPLPPPQPP LIpplpipbp", (char_u *)0L}},
+!     {"paste",	    NULL,   P_BOOL|P_VI_DEF|P_PRI_MKRC,
+  			    (char_u *)&p_paste, PV_NONE,
+  			    {(char_u *)FALSE, (char_u *)0L}},
+      {"pastetoggle", "pt",   P_STRING|P_VI_DEF,
+***************
+*** 8535,8547 ****
+      char_u		*varp_local = NULL;	/* fresh value */
+      char		*cmd;
+      int			round;
+  
+      /*
+       * The options that don't have a default (terminal name, columns, lines)
+       * are never written.  Terminal options are also not written.
+       */
+!     for (p = &options[0]; !istermoption(p); p++)
+! 	if (!(p->flags & P_NO_MKRC) && !istermoption(p))
+  	{
+  	    /* skip global option when only doing locals */
+  	    if (p->indir == PV_NONE && !(opt_flags & OPT_GLOBAL))
+--- 8539,8558 ----
+      char_u		*varp_local = NULL;	/* fresh value */
+      char		*cmd;
+      int			round;
++     int			pri;
+  
+      /*
+       * The options that don't have a default (terminal name, columns, lines)
+       * are never written.  Terminal options are also not written.
++      * Do the loop over "options[]" twice: once for options with the
++      * P_PRI_MKRC flag and once without.
+       */
+!     for (pri = 1; pri >= 0; --pri)
+!     {
+!       for (p = &options[0]; !istermoption(p); p++)
+! 	if (!(p->flags & P_NO_MKRC)
+! 		&& !istermoption(p)
+! 		&& ((pri == 1) == ((p->flags & P_PRI_MKRC) != 0)))
+  	{
+  	    /* skip global option when only doing locals */
+  	    if (p->indir == PV_NONE && !(opt_flags & OPT_GLOBAL))
+***************
+*** 8637,8642 ****
+--- 8648,8654 ----
+  		}
+  	    }
+  	}
++     }
+      return OK;
+  }
+  
+*** ../vim-7.1.098/src/version.c	Thu Sep  6 14:25:50 2007
+--- src/version.c	Thu Sep  6 16:32:31 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     99,
+  /**/
+
+-- 
+Not too long ago, a keyboard was something to make music with...
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.100
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.100?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.100 (added)
+++ trunk/packages/vim/upstream/patches/7.1.100 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,513 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.100
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.100
+Problem:    Win32: Executing cscope doesn't always work properly.
+Solution:   Use another way to invoke cscope. (Mike Williams)
+Files:	    src/if_cscope.c, src/if_cscope.h, src/main.c,
+	    src/proto/if_cscope.pro
+
+
+*** ../vim-7.1.099/src/if_cscope.c	Tue Aug 21 18:02:58 2007
+--- src/if_cscope.c	Sun Sep  2 16:50:50 2007
+***************
+*** 24,34 ****
+      /* not UNIX, must be WIN32 */
+  # include "vimio.h"
+  # include <fcntl.h>
+- # include <process.h>
+- # define STDIN_FILENO    0
+- # define STDOUT_FILENO   1
+- # define STDERR_FILENO   2
+- # define pipe(fds) _pipe(fds, 256, O_TEXT|O_NOINHERIT)
+  #endif
+  #include "if_cscope.h"
+  
+--- 24,29 ----
+***************
+*** 65,71 ****
+  static char *	    cs_parse_results __ARGS((int cnumber, char *buf, int bufsize, char **context, char **linenumber, char **search));
+  static char *	    cs_pathcomponents __ARGS((char *path));
+  static void	    cs_print_tags_priv __ARGS((char **, char **, int));
+! static int	    cs_read_prompt __ARGS((int ));
+  static void	    cs_release_csp __ARGS((int, int freefnpp));
+  static int	    cs_reset __ARGS((exarg_T *eap));
+  static char *	    cs_resolve_file __ARGS((int, char *));
+--- 60,66 ----
+  static char *	    cs_parse_results __ARGS((int cnumber, char *buf, int bufsize, char **context, char **linenumber, char **search));
+  static char *	    cs_pathcomponents __ARGS((char *path));
+  static void	    cs_print_tags_priv __ARGS((char **, char **, int));
+! static int	    cs_read_prompt __ARGS((int));
+  static void	    cs_release_csp __ARGS((int, int freefnpp));
+  static int	    cs_reset __ARGS((exarg_T *eap));
+  static char *	    cs_resolve_file __ARGS((int, char *));
+***************
+*** 504,510 ****
+  #if defined(UNIX)
+      else if (S_ISREG(statbuf.st_mode) || S_ISLNK(statbuf.st_mode))
+  #else
+! 	/* substitute define S_ISREG from os_unix.h */
+      else if (((statbuf.st_mode) & S_IFMT) == S_IFREG)
+  #endif
+      {
+--- 499,505 ----
+  #if defined(UNIX)
+      else if (S_ISREG(statbuf.st_mode) || S_ISLNK(statbuf.st_mode))
+  #else
+! 	/* WIN32 - substitute define S_ISREG from os_unix.h */
+      else if (((statbuf.st_mode) & S_IFMT) == S_IFREG)
+  #endif
+      {
+***************
+*** 717,733 ****
+  cs_create_connection(i)
+      int i;
+  {
+!     int to_cs[2], from_cs[2], len;
+!     char *prog, *cmd, *ppath = NULL;
+! #ifndef UNIX
+!     int in_save, out_save, err_save;
+!     long_i ph;
+! # ifdef FEAT_GUI
+!     HWND activewnd = NULL;
+!     HWND consolewnd = NULL;
+! # endif
+  #endif
+  
+      /*
+       * Cscope reads from to_cs[0] and writes to from_cs[1]; vi reads from
+       * from_cs[0] and writes to to_cs[1].
+--- 712,734 ----
+  cs_create_connection(i)
+      int i;
+  {
+! #ifdef UNIX
+!     int		to_cs[2], from_cs[2];
+! #endif
+!     int		len;
+!     char	*prog, *cmd, *ppath = NULL;
+! #ifdef WIN32
+!     int		fd;
+!     SECURITY_ATTRIBUTES sa;
+!     PROCESS_INFORMATION pi;
+!     STARTUPINFO si;
+!     BOOL	pipe_stdin = FALSE, pipe_stdout = FALSE;
+!     HANDLE	stdin_rd, stdout_rd;
+!     HANDLE	stdout_wr, stdin_wr;
+!     BOOL	created;
+  #endif
+  
++ #if defined(UNIX)
+      /*
+       * Cscope reads from to_cs[0] and writes to from_cs[1]; vi reads from
+       * from_cs[0] and writes to to_cs[1].
+***************
+*** 748,765 ****
+  	return CSCOPE_FAILURE;
+      }
+  
+- #if defined(UNIX)
+      switch (csinfo[i].pid = fork())
+      {
+      case -1:
+  	(void)EMSG(_("E622: Could not fork for cscope"));
+  	goto err_closing;
+      case 0:				/* child: run cscope. */
+- #else
+- 	in_save = dup(STDIN_FILENO);
+- 	out_save = dup(STDOUT_FILENO);
+- 	err_save = dup(STDERR_FILENO);
+- #endif
+  	if (dup2(to_cs[0], STDIN_FILENO) == -1)
+  	    PERROR("cs_create_connection 1");
+  	if (dup2(from_cs[1], STDOUT_FILENO) == -1)
+--- 749,760 ----
+***************
+*** 768,782 ****
+  	    PERROR("cs_create_connection 3");
+  
+  	/* close unused */
+- #if defined(UNIX)
+  	(void)close(to_cs[1]);
+  	(void)close(from_cs[0]);
+  #else
+! 	/* On win32 we must close opposite ends because we are the parent */
+! 	(void)close(to_cs[0]);
+! 	to_cs[0] = -1;
+! 	(void)close(from_cs[1]);
+! 	from_cs[1] = -1;
+  #endif
+  	/* expand the cscope exec for env var's */
+  	if ((prog = (char *)alloc(MAXPATHL + 1)) == NULL)
+--- 763,794 ----
+  	    PERROR("cs_create_connection 3");
+  
+  	/* close unused */
+  	(void)close(to_cs[1]);
+  	(void)close(from_cs[0]);
+  #else
+! 	/* WIN32 */
+! 	/* Create pipes to communicate with cscope */
+! 	sa.nLength = sizeof(SECURITY_ATTRIBUTES);
+! 	sa.bInheritHandle = TRUE;
+! 	sa.lpSecurityDescriptor = NULL;
+! 
+! 	if (!(pipe_stdin = CreatePipe(&stdin_rd, &stdin_wr, &sa, 0))
+! 		|| !(pipe_stdout = CreatePipe(&stdout_rd, &stdout_wr, &sa, 0)))
+! 	{
+! 	    (void)EMSG(_("E566: Could not create cscope pipes"));
+! err_closing:
+! 	    if (pipe_stdin)
+! 	    {
+! 		CloseHandle(stdin_rd);
+! 		CloseHandle(stdin_wr);
+! 	    }
+! 	    if (pipe_stdout)
+! 	    {
+! 		CloseHandle(stdout_rd);
+! 		CloseHandle(stdout_wr);
+! 	    }
+! 	    return CSCOPE_FAILURE;
+! 	}
+  #endif
+  	/* expand the cscope exec for env var's */
+  	if ((prog = (char *)alloc(MAXPATHL + 1)) == NULL)
+***************
+*** 784,789 ****
+--- 796,802 ----
+  #ifdef UNIX
+  	    return CSCOPE_FAILURE;
+  #else
++ 	    /* WIN32 */
+  	    goto err_closing;
+  #endif
+  	}
+***************
+*** 800,805 ****
+--- 813,819 ----
+  #ifdef UNIX
+  		return CSCOPE_FAILURE;
+  #else
++ 		/* WIN32 */
+  		goto err_closing;
+  #endif
+  	    }
+***************
+*** 818,823 ****
+--- 832,838 ----
+  #ifdef UNIX
+  	    return CSCOPE_FAILURE;
+  #else
++ 	    /* WIN32 */
+  	    goto err_closing;
+  #endif
+  	}
+***************
+*** 826,831 ****
+--- 841,847 ----
+  #if defined(UNIX)
+  	(void)sprintf(cmd, "exec %s -dl -f %s", prog, csinfo[i].fname);
+  #else
++ 	/* WIN32 */
+  	(void)sprintf(cmd, "%s -dl -f %s", prog, csinfo[i].fname);
+  #endif
+  	if (csinfo[i].ppath != NULL)
+***************
+*** 851,910 ****
+  	exit(127);
+  	/* NOTREACHED */
+      default:	/* parent. */
+- #else
+- # ifdef FEAT_GUI
+- 	activewnd = GetForegroundWindow(); /* on win9x cscope steals focus */
+- 	/* Dirty hack to hide annoying console window */
+- 	if (AllocConsole())
+- 	{
+- 	    char *title;
+- 	    title = (char *)alloc(1024);
+- 	    if (title == NULL)
+- 		FreeConsole();
+- 	    else
+- 	    {
+- 		GetConsoleTitle(title, 1024); /* save for future restore */
+- 		SetConsoleTitle(
+- 		    "GVIMCS{5499421B-CBEF-45b0-85EF-38167FDEA5C5}GVIMCS");
+- 		Sleep(40); /* as stated in MS KB we must wait 40 ms */
+- 		consolewnd = FindWindow(NULL,
+- 			"GVIMCS{5499421B-CBEF-45b0-85EF-38167FDEA5C5}GVIMCS");
+- 		if (consolewnd != NULL)
+- 		    ShowWindow(consolewnd, SW_HIDE);
+- 		SetConsoleTitle(title);
+- 		vim_free(title);
+- 	    }
+- 	}
+- # endif
+- 	/* May be use &shell, &shellquote etc */
+- # ifdef __BORLANDC__
+- 	/* BCC 5.5 uses a different function name for spawnlp */
+- 	ph = (long_i)spawnlp(P_NOWAIT, prog, cmd, NULL);
+- # else
+- 	ph = (long_i)_spawnlp(_P_NOWAIT, prog, cmd, NULL);
+- # endif
+- 	vim_free(prog);
+- 	vim_free(cmd);
+- # ifdef FEAT_GUI
+- 	/* Dirty hack part two */
+- 	if (activewnd != NULL)
+- 	    /* restoring focus */
+- 	    SetForegroundWindow(activewnd);
+- 	if (consolewnd != NULL)
+- 	    FreeConsole();
+- 
+- # endif
+- 	if (ph == -1)
+- 	{
+- 	    PERROR(_("cs_create_connection exec failed"));
+- 	    (void)EMSG(_("E623: Could not spawn cscope process"));
+- 	    goto err_closing;
+- 	}
+- 	/* else */
+- 	csinfo[i].pid = 0;
+- 	csinfo[i].hProc = (HANDLE)ph;
+- 
+- #endif /* !UNIX */
+  	/*
+  	 * Save the file descriptors for later duplication, and
+  	 * reopen as streams.
+--- 867,872 ----
+***************
+*** 914,935 ****
+  	if ((csinfo[i].fr_fp = fdopen(from_cs[0], "r")) == NULL)
+  	    PERROR(_("cs_create_connection: fdopen for fr_fp failed"));
+  
+- #if defined(UNIX)
+  	/* close unused */
+  	(void)close(to_cs[0]);
+  	(void)close(from_cs[1]);
+  
+  	break;
+      }
+  #else
+! 	/* restore stdhandles */
+!     dup2(in_save, STDIN_FILENO);
+!     dup2(out_save, STDOUT_FILENO);
+!     dup2(err_save, STDERR_FILENO);
+!     close(in_save);
+!     close(out_save);
+!     close(err_save);
+! #endif
+      return CSCOPE_SUCCESS;
+  } /* cs_create_connection */
+  
+--- 876,927 ----
+  	if ((csinfo[i].fr_fp = fdopen(from_cs[0], "r")) == NULL)
+  	    PERROR(_("cs_create_connection: fdopen for fr_fp failed"));
+  
+  	/* close unused */
+  	(void)close(to_cs[0]);
+  	(void)close(from_cs[1]);
+  
+  	break;
+      }
++ 
+  #else
+!     /* WIN32 */
+!     /* Create a new process to run cscope and use pipes to talk with it */
+!     GetStartupInfo(&si);
+!     si.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW;
+!     si.wShowWindow = SW_HIDE;  /* Hide child application window */
+!     si.hStdOutput = stdout_wr;
+!     si.hStdError  = stdout_wr;
+!     si.hStdInput  = stdin_rd;
+!     created = CreateProcess(NULL, cmd, NULL, NULL, TRUE, CREATE_NEW_CONSOLE,
+! 							NULL, NULL, &si, &pi);
+!     vim_free(prog);
+!     vim_free(cmd);
+! 
+!     if (!created)
+!     {
+! 	PERROR(_("cs_create_connection exec failed"));
+! 	(void)EMSG(_("E623: Could not spawn cscope process"));
+! 	goto err_closing;
+!     }
+!     /* else */
+!     csinfo[i].pid = pi.dwProcessId;
+!     csinfo[i].hProc = pi.hProcess;
+!     CloseHandle(pi.hThread);
+! 
+!     /* TODO - tidy up after failure to create files on pipe handles. */
+!     if (((fd = _open_osfhandle((intptr_t)stdin_wr, _O_TEXT|_O_APPEND)) < 0)
+! 	    || ((csinfo[i].to_fp = _fdopen(fd, "w")) == NULL))
+! 	PERROR(_("cs_create_connection: fdopen for to_fp failed"));
+!     if (((fd = _open_osfhandle((intptr_t)stdout_rd, _O_TEXT|_O_RDONLY)) < 0)
+! 	    || ((csinfo[i].fr_fp = _fdopen(fd, "r")) == NULL))
+! 	PERROR(_("cs_create_connection: fdopen for fr_fp failed"));
+! 
+!     /* Close handles for file descriptors inherited by the cscope process */
+!     CloseHandle(stdin_rd);
+!     CloseHandle(stdout_wr);
+! 
+! #endif /* !UNIX */
+! 
+      return CSCOPE_SUCCESS;
+  } /* cs_create_connection */
+  
+***************
+*** 2097,2104 ****
+  /*
+   * PRIVATE: cs_release_csp
+   *
+!  * does the actual free'ing for the cs ptr with an optional flag of whether
+!  * or not to free the filename.  called by cs_kill and cs_reset.
+   */
+      static void
+  cs_release_csp(i, freefnpp)
+--- 2089,2096 ----
+  /*
+   * PRIVATE: cs_release_csp
+   *
+!  * Does the actual free'ing for the cs ptr with an optional flag of whether
+!  * or not to free the filename.  Called by cs_kill and cs_reset.
+   */
+      static void
+  cs_release_csp(i, freefnpp)
+***************
+*** 2116,2125 ****
+  	(void)fputs("q\n", csinfo[i].to_fp);
+  	(void)fflush(csinfo[i].to_fp);
+      }
+!     /* give cscope chance to exit normally */
+!     if (csinfo[i].hProc != NULL
+! 	    && WaitForSingleObject(csinfo[i].hProc, 1000) == WAIT_TIMEOUT)
+! 	TerminateProcess(csinfo[i].hProc, 0);
+  #endif
+  
+      if (csinfo[i].fr_fp != NULL)
+--- 2108,2120 ----
+  	(void)fputs("q\n", csinfo[i].to_fp);
+  	(void)fflush(csinfo[i].to_fp);
+      }
+!     if (csinfo[i].hProc != NULL)
+!     {
+! 	/* Give cscope a chance to exit normally */
+! 	if (WaitForSingleObject(csinfo[i].hProc, 1000) == WAIT_TIMEOUT)
+! 	    TerminateProcess(csinfo[i].hProc, 0);
+! 	CloseHandle(csinfo[i].hProc);
+!     }
+  #endif
+  
+      if (csinfo[i].fr_fp != NULL)
+***************
+*** 2301,2306 ****
+--- 2296,2316 ----
+      wait_return(TRUE);
+      return CSCOPE_SUCCESS;
+  } /* cs_show */
++ 
++ 
++ /*
++  * PUBLIC: cs_end
++  *
++  * Only called when VIM exits to quit any cscope sessions.
++  */
++     void
++ cs_end()
++ {
++     int i;
++ 
++     for (i = 0; i < CSCOPE_MAX_CONNECTIONS; i++)
++ 	cs_release_csp(i, TRUE);
++ }
+  
+  #endif	/* FEAT_CSCOPE */
+  
+*** ../vim-7.1.099/src/if_cscope.h	Thu Jun 30 23:59:58 2005
+--- src/if_cscope.h	Sun Sep  2 16:51:08 2007
+***************
+*** 72,78 ****
+      ino_t	    st_ino;	/* inode number of cscope db */
+  #else
+  # if defined(WIN32)
+!     int	    pid;	/* Can't get pid so set it to 0 ;) */
+      HANDLE	    hProc;	/* cscope process handle */
+      DWORD	    nVolume;	/* Volume serial number, instead of st_dev */
+      DWORD	    nIndexHigh;	/* st_ino has no meaning in the Windows */
+--- 72,78 ----
+      ino_t	    st_ino;	/* inode number of cscope db */
+  #else
+  # if defined(WIN32)
+!     DWORD	    pid;	/* PID of the connected cscope process. */
+      HANDLE	    hProc;	/* cscope process handle */
+      DWORD	    nVolume;	/* Volume serial number, instead of st_dev */
+      DWORD	    nIndexHigh;	/* st_ino has no meaning in the Windows */
+*** ../vim-7.1.099/src/main.c	Thu Aug 30 12:24:21 2007
+--- src/main.c	Sun Sep  2 16:44:36 2007
+***************
+*** 1331,1336 ****
+--- 1331,1339 ----
+  #ifdef FEAT_NETBEANS_INTG
+      netbeans_end();
+  #endif
++ #ifdef FEAT_CSCOPE
++     cs_end();
++ #endif
+  
+      mch_exit(exitval);
+  }
+***************
+*** 3671,3677 ****
+  	mainerr_arg_missing((char_u *)filev[-1]);
+      if (mch_dirname(cwd, MAXPATHL) != OK)
+  	return NULL;
+!     if ((p = vim_strsave_escaped_ext(cwd, PATH_ESC_CHARS, '\\', TRUE)) == NULL)
+  	return NULL;
+      ga_init2(&ga, 1, 100);
+      ga_concat(&ga, (char_u *)"<C-\\><C-N>:cd ");
+--- 3674,3686 ----
+  	mainerr_arg_missing((char_u *)filev[-1]);
+      if (mch_dirname(cwd, MAXPATHL) != OK)
+  	return NULL;
+!     if ((p = vim_strsave_escaped_ext(cwd,
+! #ifdef BACKSLASH_IN_FILENAME
+! 		    "",  /* rem_backslash() will tell what chars to escape */
+! #else
+! 		    PATH_ESC_CHARS,
+! #endif
+! 		    '\\', TRUE)) == NULL)
+  	return NULL;
+      ga_init2(&ga, 1, 100);
+      ga_concat(&ga, (char_u *)"<C-\\><C-N>:cd ");
+*** ../vim-7.1.099/src/proto/if_cscope.pro	Sat May  5 19:15:39 2007
+--- src/proto/if_cscope.pro	Sun Sep  2 16:51:34 2007
+***************
+*** 6,9 ****
+--- 6,10 ----
+  void cs_free_tags __ARGS((void));
+  void cs_print_tags __ARGS((void));
+  int cs_connection __ARGS((int num, char_u *dbpath, char_u *ppath));
++ void cs_end __ARGS((void));
+  /* vim: set ft=c : */
+*** ../vim-7.1.099/src/version.c	Thu Sep  6 16:33:47 2007
+--- src/version.c	Thu Sep  6 17:27:51 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     100,
+  /**/
+
+-- 
+I have to exercise early in the morning before my brain
+figures out what I'm doing.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.101
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.101?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.101 (added)
+++ trunk/packages/vim/upstream/patches/7.1.101 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,53 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.101
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.101
+Problem:    Ruby: The Buffer.line= method does not work.
+Solution:   Add the "self" argument to set_current_line(). (Jonathan Hankins)
+Files:	    src/if_ruby.c
+
+
+*** ../vim-7.1.100/src/if_ruby.c	Sat May 12 15:01:49 2007
+--- src/if_ruby.c	Mon Sep 10 10:40:38 2007
+***************
+*** 789,795 ****
+      return get_buffer_line(curbuf, curwin->w_cursor.lnum);
+  }
+  
+! static VALUE set_current_line(VALUE str)
+  {
+      return set_buffer_line(curbuf, curwin->w_cursor.lnum, str);
+  }
+--- 789,795 ----
+      return get_buffer_line(curbuf, curwin->w_cursor.lnum);
+  }
+  
+! static VALUE set_current_line(VALUE self, VALUE str)
+  {
+      return set_buffer_line(curbuf, curwin->w_cursor.lnum, str);
+  }
+*** ../vim-7.1.100/src/version.c	Thu Sep  6 17:38:06 2007
+--- src/version.c	Thu Sep 13 14:59:47 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     101,
+  /**/
+
+-- 
+The question is:  What do you do with your life?
+The wrong answer is: Become the richest guy in the graveyard.
+				(billionaire and Oracle founder Larry Ellison)
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.102
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.102?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.102 (added)
+++ trunk/packages/vim/upstream/patches/7.1.102 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,103 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.102
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.102
+Problem:    Perl interface doesn't compile with new version of Perl.
+Solution:   Add two variables to the dynamic library loading. (Suresh
+	    Govindachar)
+Files:	    src/if_perl.xs
+
+
+*** ../vim-7.1.101/src/if_perl.xs	Wed Aug 16 19:33:57 2006
+--- src/if_perl.xs	Wed Sep  5 22:00:36 2007
+***************
+*** 40,45 ****
+--- 40,65 ----
+  #    define PERL_SUBVERSION SUBVERSION
+  #endif
+  
++ /*
++  * Quoting Jan Dubois of Active State:
++  *    ActivePerl build 822 still identifies itself as 5.8.8 but already
++  *    contains many of the changes from the upcoming Perl 5.8.9 release.
++  *
++  * The changes include addition of two symbols (Perl_sv_2iv_flags,
++  * Perl_newXS_flags) not present in earlier releases.
++  *
++  * Jan Dubois suggested the following guarding scheme:
++  */
++ #if (ACTIVEPERL_VERSION >= 822)
++ # define PERL589_OR_LATER
++ #endif
++ #if (PERL_REVISION == 5) && (PERL_VERSION == 8) && (PERL_SUBVERSION >= 9)
++ # define PERL589_OR_LATER
++ #endif
++ #if (PERL_REVISION == 5) && (PERL_VERSION >= 9)
++ # define PERL589_OR_LATER
++ #endif
++ 
+  #ifndef pTHX
+  #    define pTHX void
+  #    define pTHX_
+***************
+*** 109,114 ****
+--- 129,138 ----
+  # else
+  #  define Perl_sv_catpvn dll_Perl_sv_catpvn
+  # endif
++ #ifdef PERL589_OR_LATER
++ #  define Perl_sv_2iv_flags dll_Perl_sv_2iv_flags
++ #  define Perl_newXS_flags dll_Perl_newXS_flags
++ #endif
+  # define Perl_sv_free dll_Perl_sv_free
+  # define Perl_sv_isa dll_Perl_sv_isa
+  # define Perl_sv_magic dll_Perl_sv_magic
+***************
+*** 192,197 ****
+--- 216,225 ----
+  #else
+  static void (*Perl_sv_catpvn)(pTHX_ SV*, const char*, STRLEN);
+  #endif
++ #ifdef PERL589_OR_LATER
++ static IV (*Perl_sv_2iv_flags)(pTHX_ SV* sv, I32 flags);
++ static CV * (*Perl_newXS_flags)(pTHX_ const char *name, XSUBADDR_t subaddr, const char *const filename, const char *const proto, U32 flags);
++ #endif
+  static void (*Perl_sv_free)(pTHX_ SV*);
+  static int (*Perl_sv_isa)(pTHX_ SV*, const char*);
+  static void (*Perl_sv_magic)(pTHX_ SV*, SV*, int, const char*, I32);
+***************
+*** 266,271 ****
+--- 294,303 ----
+      {"Perl_sv_2pv_nolen", (PERL_PROC*)&Perl_sv_2pv_nolen},
+  #else
+      {"Perl_sv_2pv", (PERL_PROC*)&Perl_sv_2pv},
++ #endif
++ #ifdef PERL589_OR_LATER
++     {"Perl_sv_2iv_flags", (PERL_PROC*)&Perl_sv_2iv_flags},
++     {"Perl_newXS_flags", (PERL_PROC*)&Perl_newXS_flags},
+  #endif
+      {"Perl_sv_bless", (PERL_PROC*)&Perl_sv_bless},
+  #if (PERL_REVISION == 5) && (PERL_VERSION >= 8)
+*** ../vim-7.1.101/src/version.c	Thu Sep 13 15:00:28 2007
+--- src/version.c	Thu Sep 13 15:18:36 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     102,
+  /**/
+
+-- 
+Witches prefer brooms: vacuum-cleaners need extension cords!
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.103
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.103?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.103 (added)
+++ trunk/packages/vim/upstream/patches/7.1.103 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,57 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.103
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.103
+Problem:    Using "dw" with the cursor past the end of the last line (using
+            CTRL-\ CTRL-O from Insert mode) deletes a character. (Tim Chase)
+Solution:   Don't move the cursor back when the movement failed.
+Files:      src/normal.c
+
+
+*** ../vim-7.1.102/src/normal.c	Tue Aug 14 22:54:00 2007
+--- src/normal.c	Tue Sep 11 19:32:42 2007
+***************
+*** 8364,8370 ****
+  	n = fwd_word(cap->count1, cap->arg, cap->oap->op_type != OP_NOP);
+  
+      /* Don't leave the cursor on the NUL past a line */
+!     if (curwin->w_cursor.col && gchar_cursor() == NUL)
+      {
+  	--curwin->w_cursor.col;
+  	cap->oap->inclusive = TRUE;
+--- 8364,8370 ----
+  	n = fwd_word(cap->count1, cap->arg, cap->oap->op_type != OP_NOP);
+  
+      /* Don't leave the cursor on the NUL past a line */
+!     if (n != FAIL && curwin->w_cursor.col > 0 && gchar_cursor() == NUL)
+      {
+  	--curwin->w_cursor.col;
+  	cap->oap->inclusive = TRUE;
+*** ../vim-7.1.102/src/version.c	Thu Sep 13 15:19:32 2007
+--- src/version.c	Thu Sep 13 15:32:05 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     103,
+  /**/
+
+-- 
+ARTHUR:  Then who is your lord?
+WOMAN:   We don't have a lord.
+ARTHUR:  What?
+DENNIS:  I told you.  We're an anarcho-syndicalist commune.  We take it in
+         turns to act as a sort of executive officer for the week.
+                                  The Quest for the Holy Grail (Monty Python)
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.104
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.104?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.104 (added)
+++ trunk/packages/vim/upstream/patches/7.1.104 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,538 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.104
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.104 (after 7.1.095)
+Problem:    When 'lazyredraw' is set a focus event causes redraw to be
+	    postponed until a key is pressed.
+Solution:   Instead of not returning from vgetc() when a focus event is
+	    encountered return K_IGNORE.  Add plain_vgetc() for when the
+	    caller doesn't want to get K_IGNORE.
+Files:	    src/digraph.c, src/edit.c, src/ex_cmds.c, src/ex_getln.c,
+	    src/getchar.c, src/normal.c, src/proto/getchar.pro, src/window.c
+
+
+*** ../vim-7.1.103/src/digraph.c	Sat Jul  7 13:57:39 2007
+--- src/digraph.c	Thu Sep 13 16:11:54 2007
+***************
+*** 2028,2034 ****
+  
+      ++no_mapping;
+      ++allow_keys;
+!     c = safe_vgetc();
+      --no_mapping;
+      --allow_keys;
+      if (c != ESC)		/* ESC cancels CTRL-K */
+--- 2028,2034 ----
+  
+      ++no_mapping;
+      ++allow_keys;
+!     c = plain_vgetc();
+      --no_mapping;
+      --allow_keys;
+      if (c != ESC)		/* ESC cancels CTRL-K */
+***************
+*** 2050,2056 ****
+  #endif
+  	++no_mapping;
+  	++allow_keys;
+! 	cc = safe_vgetc();
+  	--no_mapping;
+  	--allow_keys;
+  	if (cc != ESC)	    /* ESC cancels CTRL-K */
+--- 2050,2056 ----
+  #endif
+  	++no_mapping;
+  	++allow_keys;
+! 	cc = plain_vgetc();
+  	--no_mapping;
+  	--allow_keys;
+  	if (cc != ESC)	    /* ESC cancels CTRL-K */
+***************
+*** 2350,2356 ****
+      if (*curbuf->b_p_keymap == NUL)
+      {
+  	/* Stop any active keymap and clear the table.  Also remove
+! 	 * b:keymap_unload, as no keymap is active now. */
+  	keymap_unload();
+  	do_cmdline_cmd((char_u *)"unlet! b:keymap_name");
+      }
+--- 2350,2356 ----
+      if (*curbuf->b_p_keymap == NUL)
+      {
+  	/* Stop any active keymap and clear the table.  Also remove
+! 	 * b:keymap_name, as no keymap is active now. */
+  	keymap_unload();
+  	do_cmdline_cmd((char_u *)"unlet! b:keymap_name");
+      }
+*** ../vim-7.1.103/src/edit.c	Sun Aug 12 16:38:03 2007
+--- src/edit.c	Thu Sep 13 16:17:54 2007
+***************
+*** 788,794 ****
+  	    ins_redraw(FALSE);
+  	    ++no_mapping;
+  	    ++allow_keys;
+! 	    c = safe_vgetc();
+  	    --no_mapping;
+  	    --allow_keys;
+  	    if (c != Ctrl_N && c != Ctrl_G && c != Ctrl_O)
+--- 788,794 ----
+  	    ins_redraw(FALSE);
+  	    ++no_mapping;
+  	    ++allow_keys;
+! 	    c = plain_vgetc();
+  	    --no_mapping;
+  	    --allow_keys;
+  	    if (c != Ctrl_N && c != Ctrl_G && c != Ctrl_O)
+***************
+*** 981,987 ****
+  #ifdef FEAT_NETBEANS_INTG
+  	case K_F21:	/* NetBeans command */
+  	    ++no_mapping;		/* don't map the next key hits */
+! 	    i = safe_vgetc();
+  	    --no_mapping;
+  	    netbeans_keycommand(i);
+  	    break;
+--- 981,987 ----
+  #ifdef FEAT_NETBEANS_INTG
+  	case K_F21:	/* NetBeans command */
+  	    ++no_mapping;		/* don't map the next key hits */
+! 	    i = plain_vgetc();
+  	    --no_mapping;
+  	    netbeans_keycommand(i);
+  	    break;
+***************
+*** 5224,5233 ****
+      i = 0;
+      for (;;)
+      {
+! 	do
+! 	    nc = safe_vgetc();
+! 	while (nc == K_IGNORE || nc == K_VER_SCROLLBAR
+! 						    || nc == K_HOR_SCROLLBAR);
+  #ifdef FEAT_CMDL_INFO
+  	if (!(State & CMDLINE)
+  # ifdef FEAT_MBYTE
+--- 5224,5230 ----
+      i = 0;
+      for (;;)
+      {
+! 	nc = plain_vgetc();
+  #ifdef FEAT_CMDL_INFO
+  	if (!(State & CMDLINE)
+  # ifdef FEAT_MBYTE
+***************
+*** 7575,7581 ****
+       * deleted when ESC is hit.
+       */
+      ++no_mapping;
+!     regname = safe_vgetc();
+  #ifdef FEAT_LANGMAP
+      LANGMAP_ADJUST(regname, TRUE);
+  #endif
+--- 7572,7578 ----
+       * deleted when ESC is hit.
+       */
+      ++no_mapping;
+!     regname = plain_vgetc();
+  #ifdef FEAT_LANGMAP
+      LANGMAP_ADJUST(regname, TRUE);
+  #endif
+***************
+*** 7586,7592 ****
+  #ifdef FEAT_CMDL_INFO
+  	add_to_showcmd_c(literally);
+  #endif
+! 	regname = safe_vgetc();
+  #ifdef FEAT_LANGMAP
+  	LANGMAP_ADJUST(regname, TRUE);
+  #endif
+--- 7583,7589 ----
+  #ifdef FEAT_CMDL_INFO
+  	add_to_showcmd_c(literally);
+  #endif
+! 	regname = plain_vgetc();
+  #ifdef FEAT_LANGMAP
+  	LANGMAP_ADJUST(regname, TRUE);
+  #endif
+***************
+*** 7677,7683 ****
+       * deleted when ESC is hit.
+       */
+      ++no_mapping;
+!     c = safe_vgetc();
+      --no_mapping;
+      switch (c)
+      {
+--- 7674,7680 ----
+       * deleted when ESC is hit.
+       */
+      ++no_mapping;
+!     c = plain_vgetc();
+      --no_mapping;
+      switch (c)
+      {
+***************
+*** 9356,9362 ****
+       * mode message to be deleted when ESC is hit */
+      ++no_mapping;
+      ++allow_keys;
+!     c = safe_vgetc();
+      --no_mapping;
+      --allow_keys;
+      if (IS_SPECIAL(c) || mod_mask)	    /* special key */
+--- 9353,9359 ----
+       * mode message to be deleted when ESC is hit */
+      ++no_mapping;
+      ++allow_keys;
+!     c = plain_vgetc();
+      --no_mapping;
+      --allow_keys;
+      if (IS_SPECIAL(c) || mod_mask)	    /* special key */
+***************
+*** 9388,9394 ****
+  	}
+  	++no_mapping;
+  	++allow_keys;
+! 	cc = safe_vgetc();
+  	--no_mapping;
+  	--allow_keys;
+  	if (cc != ESC)
+--- 9385,9391 ----
+  	}
+  	++no_mapping;
+  	++allow_keys;
+! 	cc = plain_vgetc();
+  	--no_mapping;
+  	--allow_keys;
+  	if (cc != ESC)
+*** ../vim-7.1.103/src/ex_cmds.c	Tue Aug 21 15:28:32 2007
+--- src/ex_cmds.c	Thu Sep 13 16:19:40 2007
+***************
+*** 4498,4504 ****
+  	     *
+  	     * The new text is built up in new_start[].  It has some extra
+  	     * room to avoid using alloc()/free() too often.  new_start_len is
+! 	     * the lenght of the allocated memory at new_start.
+  	     *
+  	     * Make a copy of the old line, so it won't be taken away when
+  	     * updating the screen or handling a multi-line match.  The "old_"
+--- 4499,4505 ----
+  	     *
+  	     * The new text is built up in new_start[].  It has some extra
+  	     * room to avoid using alloc()/free() too often.  new_start_len is
+! 	     * the length of the allocated memory at new_start.
+  	     *
+  	     * Make a copy of the old line, so it won't be taken away when
+  	     * updating the screen or handling a multi-line match.  The "old_"
+***************
+*** 4669,4675 ****
+  #endif
+  			    ++no_mapping;	/* don't map this key */
+  			    ++allow_keys;	/* allow special keys */
+! 			    i = safe_vgetc();
+  			    --allow_keys;
+  			    --no_mapping;
+  
+--- 4670,4676 ----
+  #endif
+  			    ++no_mapping;	/* don't map this key */
+  			    ++allow_keys;	/* allow special keys */
+! 			    i = plain_vgetc();
+  			    --allow_keys;
+  			    --no_mapping;
+  
+*** ../vim-7.1.103/src/ex_getln.c	Mon Aug  6 22:27:12 2007
+--- src/ex_getln.c	Thu Sep 13 16:20:49 2007
+***************
+*** 641,647 ****
+  	{
+  	    ++no_mapping;
+  	    ++allow_keys;
+! 	    c = safe_vgetc();
+  	    --no_mapping;
+  	    --allow_keys;
+  	    /* CTRL-\ e doesn't work when obtaining an expression. */
+--- 641,647 ----
+  	{
+  	    ++no_mapping;
+  	    ++allow_keys;
+! 	    c = plain_vgetc();
+  	    --no_mapping;
+  	    --allow_keys;
+  	    /* CTRL-\ e doesn't work when obtaining an expression. */
+***************
+*** 1091,1101 ****
+  #endif
+  		putcmdline('"', TRUE);
+  		++no_mapping;
+! 		i = c = safe_vgetc();	/* CTRL-R <char> */
+  		if (i == Ctrl_O)
+  		    i = Ctrl_R;		/* CTRL-R CTRL-O == CTRL-R CTRL-R */
+  		if (i == Ctrl_R)
+! 		    c = safe_vgetc();	/* CTRL-R CTRL-R <char> */
+  		--no_mapping;
+  #ifdef FEAT_EVAL
+  		/*
+--- 1091,1101 ----
+  #endif
+  		putcmdline('"', TRUE);
+  		++no_mapping;
+! 		i = c = plain_vgetc();	/* CTRL-R <char> */
+  		if (i == Ctrl_O)
+  		    i = Ctrl_R;		/* CTRL-R CTRL-O == CTRL-R CTRL-R */
+  		if (i == Ctrl_R)
+! 		    c = plain_vgetc();	/* CTRL-R CTRL-R <char> */
+  		--no_mapping;
+  #ifdef FEAT_EVAL
+  		/*
+*** ../vim-7.1.103/src/getchar.c	Wed Sep  5 21:45:54 2007
+--- src/getchar.c	Thu Sep 13 16:16:53 2007
+***************
+*** 1597,1608 ****
+  	    }
+  #endif
+  #ifdef FEAT_GUI
+! 	    /* The caller doesn't need to know that the focus event is delayed
+! 	     * until getting a character. */
+  	    if (c == K_FOCUSGAINED || c == K_FOCUSLOST)
+  	    {
+  		ui_focus_change(c == K_FOCUSGAINED);
+! 		continue;
+  	    }
+  
+  	    /* Translate K_CSI to CSI.  The special key is only used to avoid
+--- 1597,1609 ----
+  	    }
+  #endif
+  #ifdef FEAT_GUI
+! 	    /* Handle focus event here, so that the caller doesn't need to
+! 	     * know about it.  Return K_IGNORE so that we loop once (needed if
+! 	     * 'lazyredraw' is set). */
+  	    if (c == K_FOCUSGAINED || c == K_FOCUSLOST)
+  	    {
+  		ui_focus_change(c == K_FOCUSGAINED);
+! 		c = K_IGNORE;
+  	    }
+  
+  	    /* Translate K_CSI to CSI.  The special key is only used to avoid
+***************
+*** 1744,1749 ****
+--- 1745,1766 ----
+      c = vgetc();
+      if (c == NUL)
+  	c = get_keystroke();
++     return c;
++ }
++ 
++ /*
++  * Like safe_vgetc(), but loop to handle K_IGNORE.
++  * Also ignore scrollbar events.
++  */
++     int
++ plain_vgetc()
++ {
++     int c;
++ 
++     do
++     {
++ 	c = safe_vgetc();
++     } while (c == K_IGNORE || c == K_VER_SCROLLBAR || c == K_HOR_SCROLLBAR);
+      return c;
+  }
+  
+*** ../vim-7.1.103/src/normal.c	Thu Sep 13 15:33:18 2007
+--- src/normal.c	Thu Sep 13 16:24:51 2007
+***************
+*** 696,702 ****
+  		++allow_keys;		/* no mapping for nchar, but keys */
+  	    }
+  	    ++no_zero_mapping;		/* don't map zero here */
+! 	    c = safe_vgetc();
+  #ifdef FEAT_LANGMAP
+  	    LANGMAP_ADJUST(c, TRUE);
+  #endif
+--- 696,702 ----
+  		++allow_keys;		/* no mapping for nchar, but keys */
+  	    }
+  	    ++no_zero_mapping;		/* don't map zero here */
+! 	    c = plain_vgetc();
+  #ifdef FEAT_LANGMAP
+  	    LANGMAP_ADJUST(c, TRUE);
+  #endif
+***************
+*** 721,727 ****
+  	    ca.count0 = 0;
+  	    ++no_mapping;
+  	    ++allow_keys;		/* no mapping for nchar, but keys */
+! 	    c = safe_vgetc();		/* get next character */
+  #ifdef FEAT_LANGMAP
+  	    LANGMAP_ADJUST(c, TRUE);
+  #endif
+--- 721,727 ----
+  	    ca.count0 = 0;
+  	    ++no_mapping;
+  	    ++allow_keys;		/* no mapping for nchar, but keys */
+! 	    c = plain_vgetc();		/* get next character */
+  #ifdef FEAT_LANGMAP
+  	    LANGMAP_ADJUST(c, TRUE);
+  #endif
+***************
+*** 900,906 ****
+  	     * For 'g' get the next character now, so that we can check for
+  	     * "gr", "g'" and "g`".
+  	     */
+! 	    ca.nchar = safe_vgetc();
+  #ifdef FEAT_LANGMAP
+  	    LANGMAP_ADJUST(ca.nchar, TRUE);
+  #endif
+--- 900,906 ----
+  	     * For 'g' get the next character now, so that we can check for
+  	     * "gr", "g'" and "g`".
+  	     */
+! 	    ca.nchar = plain_vgetc();
+  #ifdef FEAT_LANGMAP
+  	    LANGMAP_ADJUST(ca.nchar, TRUE);
+  #endif
+***************
+*** 957,963 ****
+  		im_set_active(TRUE);
+  #endif
+  
+! 	    *cp = safe_vgetc();
+  
+  	    if (langmap_active)
+  	    {
+--- 957,963 ----
+  		im_set_active(TRUE);
+  #endif
+  
+! 	    *cp = plain_vgetc();
+  
+  	    if (langmap_active)
+  	    {
+***************
+*** 1045,1051 ****
+  		}
+  		if (c > 0)
+  		{
+! 		    c = safe_vgetc();
+  		    if (c != Ctrl_N && c != Ctrl_G)
+  			vungetc(c);
+  		    else
+--- 1045,1051 ----
+  		}
+  		if (c > 0)
+  		{
+! 		    c = plain_vgetc();
+  		    if (c != Ctrl_N && c != Ctrl_G)
+  			vungetc(c);
+  		    else
+***************
+*** 1064,1070 ****
+  	    while (enc_utf8 && lang && (c = vpeekc()) > 0
+  				 && (c >= 0x100 || MB_BYTE2LEN(vpeekc()) > 1))
+  	    {
+! 		c = safe_vgetc();
+  		if (!utf_iscomposing(c))
+  		{
+  		    vungetc(c);		/* it wasn't, put it back */
+--- 1064,1070 ----
+  	    while (enc_utf8 && lang && (c = vpeekc()) > 0
+  				 && (c >= 0x100 || MB_BYTE2LEN(vpeekc()) > 1))
+  	    {
+! 		c = plain_vgetc();
+  		if (!utf_iscomposing(c))
+  		{
+  		    vungetc(c);		/* it wasn't, put it back */
+***************
+*** 4564,4570 ****
+  #endif
+  	    ++no_mapping;
+  	    ++allow_keys;   /* no mapping for nchar, but allow key codes */
+! 	    nchar = safe_vgetc();
+  #ifdef FEAT_LANGMAP
+  	    LANGMAP_ADJUST(nchar, TRUE);
+  #endif
+--- 4564,4570 ----
+  #endif
+  	    ++no_mapping;
+  	    ++allow_keys;   /* no mapping for nchar, but allow key codes */
+! 	    nchar = plain_vgetc();
+  #ifdef FEAT_LANGMAP
+  	    LANGMAP_ADJUST(nchar, TRUE);
+  #endif
+***************
+*** 4922,4928 ****
+      case 'u':	/* "zug" and "zuw": undo "zg" and "zw" */
+  		++no_mapping;
+  		++allow_keys;   /* no mapping for nchar, but allow key codes */
+! 		nchar = safe_vgetc();
+  #ifdef FEAT_LANGMAP
+  		LANGMAP_ADJUST(nchar, TRUE);
+  #endif
+--- 4922,4928 ----
+      case 'u':	/* "zug" and "zuw": undo "zg" and "zw" */
+  		++no_mapping;
+  		++allow_keys;   /* no mapping for nchar, but allow key codes */
+! 		nchar = plain_vgetc();
+  #ifdef FEAT_LANGMAP
+  		LANGMAP_ADJUST(nchar, TRUE);
+  #endif
+*** ../vim-7.1.103/src/proto/getchar.pro	Sun May  6 15:04:24 2007
+--- src/proto/getchar.pro	Thu Sep 13 16:13:19 2007
+***************
+*** 38,43 ****
+--- 38,44 ----
+  void updatescript __ARGS((int c));
+  int vgetc __ARGS((void));
+  int safe_vgetc __ARGS((void));
++ int plain_vgetc __ARGS((void));
+  int vpeekc __ARGS((void));
+  int vpeekc_nomap __ARGS((void));
+  int vpeekc_any __ARGS((void));
+*** ../vim-7.1.103/src/window.c	Sun Aug 12 16:55:01 2007
+--- src/window.c	Thu Sep 13 16:25:01 2007
+***************
+*** 584,590 ****
+  		++no_mapping;
+  		++allow_keys;   /* no mapping for xchar, but allow key codes */
+  		if (xchar == NUL)
+! 		    xchar = safe_vgetc();
+  #ifdef FEAT_LANGMAP
+  		LANGMAP_ADJUST(xchar, TRUE);
+  #endif
+--- 584,590 ----
+  		++no_mapping;
+  		++allow_keys;   /* no mapping for xchar, but allow key codes */
+  		if (xchar == NUL)
+! 		    xchar = plain_vgetc();
+  #ifdef FEAT_LANGMAP
+  		LANGMAP_ADJUST(xchar, TRUE);
+  #endif
+*** ../vim-7.1.103/src/version.c	Thu Sep 13 15:33:18 2007
+--- src/version.c	Thu Sep 13 18:22:59 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     104,
+  /**/
+
+-- 
+ARTHUR:  I am your king!
+WOMAN:   Well, I didn't vote for you.
+ARTHUR:  You don't vote for kings.
+WOMAN:   Well, 'ow did you become king then?
+                                  The Quest for the Holy Grail (Monty Python)
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.105
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.105?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.105 (added)
+++ trunk/packages/vim/upstream/patches/7.1.105 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,86 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.105
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.105
+Problem:    Internal error when using "0 ? {'a': 1} : {}". (A.Politz)
+Solution:   When parsing a dictionary value without using the value, don't try
+	    obtaining the key name.
+Files:	    src/eval.c
+
+
+*** ../vim-7.1.104/src/eval.c	Thu Sep  6 14:25:50 2007
+--- src/eval.c	Thu Sep 13 20:29:31 2007
+***************
+*** 6746,6765 ****
+  	    clear_tv(&tvkey);
+  	    goto failret;
+  	}
+! 	key = get_tv_string_buf_chk(&tvkey, buf);
+! 	if (key == NULL || *key == NUL)
+  	{
+! 	    /* "key" is NULL when get_tv_string_buf_chk() gave an errmsg */
+! 	    if (key != NULL)
+! 		EMSG(_(e_emptykey));
+! 	    clear_tv(&tvkey);
+! 	    goto failret;
+  	}
+  
+  	*arg = skipwhite(*arg + 1);
+  	if (eval1(arg, &tv, evaluate) == FAIL)	/* recursive! */
+  	{
+! 	    clear_tv(&tvkey);
+  	    goto failret;
+  	}
+  	if (evaluate)
+--- 6746,6769 ----
+  	    clear_tv(&tvkey);
+  	    goto failret;
+  	}
+! 	if (evaluate)
+  	{
+! 	    key = get_tv_string_buf_chk(&tvkey, buf);
+! 	    if (key == NULL || *key == NUL)
+! 	    {
+! 		/* "key" is NULL when get_tv_string_buf_chk() gave an errmsg */
+! 		if (key != NULL)
+! 		    EMSG(_(e_emptykey));
+! 		clear_tv(&tvkey);
+! 		goto failret;
+! 	    }
+  	}
+  
+  	*arg = skipwhite(*arg + 1);
+  	if (eval1(arg, &tv, evaluate) == FAIL)	/* recursive! */
+  	{
+! 	    if (evaluate)
+! 		clear_tv(&tvkey);
+  	    goto failret;
+  	}
+  	if (evaluate)
+*** ../vim-7.1.104/src/version.c	Thu Sep 13 18:25:08 2007
+--- src/version.c	Thu Sep 13 20:36:38 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     105,
+  /**/
+
+-- 
+DENNIS:  Listen -- strange women lying in ponds distributing swords is no
+         basis for a system of government.  Supreme executive power derives
+         from a mandate from the masses, not from some farcical aquatic
+         ceremony.
+                                  The Quest for the Holy Grail (Monty Python)
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.106
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.106?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.106 (added)
+++ trunk/packages/vim/upstream/patches/7.1.106 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,53 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.106
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.106
+Problem:    ":messages" doesn't quit listing on ":".
+Solution:   Break the loop when "got_int" is set.
+Files:	    src/message.c
+
+
+*** ../vim-7.1.105/src/message.c	Thu Sep  6 12:53:59 2007
+--- src/message.c	Thu Sep 13 21:45:57 2007
+***************
+*** 828,834 ****
+  		_("Messages maintainer: Bram Moolenaar <Bram at vim.org>"),
+  		hl_attr(HLF_T));
+  
+!     for (p = first_msg_hist; p != NULL; p = p->next)
+  	if (p->msg != NULL)
+  	    msg_attr(p->msg, p->attr);
+  
+--- 828,834 ----
+  		_("Messages maintainer: Bram Moolenaar <Bram at vim.org>"),
+  		hl_attr(HLF_T));
+  
+!     for (p = first_msg_hist; p != NULL && !got_int; p = p->next)
+  	if (p->msg != NULL)
+  	    msg_attr(p->msg, p->attr);
+  
+*** ../vim-7.1.105/src/version.c	Thu Sep 13 20:39:58 2007
+--- src/version.c	Thu Sep 13 21:57:40 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     106,
+  /**/
+
+-- 
+I'm sure that I asked CBuilder to do a "full" install.  Looks like I got
+a "fool" install, instead.		Charles E Campbell, Jr, PhD
+
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.107
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.107?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.107 (added)
+++ trunk/packages/vim/upstream/patches/7.1.107 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,130 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.107
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.107
+Problem:    When doing a block selection and using "s" to change the text,
+	    while triggering auto-indenting, causes the wrong text to be
+	    repeated in other lines. (Adri Verhoef)
+Solution:   Compute the change of indent and compensate for that.
+Files:	    src/ops.c
+
+
+*** ../vim-7.1.106/src/ops.c	Thu Jun 28 22:14:28 2007
+--- src/ops.c	Thu Aug 30 11:41:10 2007
+***************
+*** 2477,2483 ****
+  
+  	/*
+  	 * Spaces and tabs in the indent may have changed to other spaces and
+! 	 * tabs.  Get the starting column again and correct the lenght.
+  	 * Don't do this when "$" used, end-of-line will have changed.
+  	 */
+  	block_prep(oap, &bd2, oap->start.lnum, TRUE);
+--- 2477,2483 ----
+  
+  	/*
+  	 * Spaces and tabs in the indent may have changed to other spaces and
+! 	 * tabs.  Get the starting column again and correct the length.
+  	 * Don't do this when "$" used, end-of-line will have changed.
+  	 */
+  	block_prep(oap, &bd2, oap->start.lnum, TRUE);
+***************
+*** 2534,2540 ****
+  #ifdef FEAT_VISUALEXTRA
+      long		offset;
+      linenr_T		linenr;
+!     long		ins_len, pre_textlen = 0;
+      char_u		*firstline;
+      char_u		*ins_text, *newp, *oldp;
+      struct block_def	bd;
+--- 2534,2542 ----
+  #ifdef FEAT_VISUALEXTRA
+      long		offset;
+      linenr_T		linenr;
+!     long		ins_len;
+!     long		pre_textlen = 0;
+!     long		pre_indent = 0;
+      char_u		*firstline;
+      char_u		*ins_text, *newp, *oldp;
+      struct block_def	bd;
+***************
+*** 2579,2585 ****
+  						    || gchar_cursor() == NUL))
+  	    coladvance_force(getviscol());
+  # endif
+! 	pre_textlen = (long)STRLEN(ml_get(oap->start.lnum));
+  	bd.textcol = curwin->w_cursor.col;
+      }
+  #endif
+--- 2581,2589 ----
+  						    || gchar_cursor() == NUL))
+  	    coladvance_force(getviscol());
+  # endif
+! 	firstline = ml_get(oap->start.lnum);
+! 	pre_textlen = (long)STRLEN(firstline);
+! 	pre_indent = (long)(skipwhite(firstline) - firstline);
+  	bd.textcol = curwin->w_cursor.col;
+      }
+  #endif
+***************
+*** 2598,2610 ****
+       */
+      if (oap->block_mode && oap->start.lnum != oap->end.lnum)
+      {
+  	firstline = ml_get(oap->start.lnum);
+! 	/*
+! 	 * Subsequent calls to ml_get() flush the firstline data - take a
+! 	 * copy of the required bit.
+! 	 */
+! 	if ((ins_len = (long)STRLEN(firstline) - pre_textlen) > 0)
+  	{
+  	    if ((ins_text = alloc_check((unsigned)(ins_len + 1))) != NULL)
+  	    {
+  		vim_strncpy(ins_text, firstline + bd.textcol, (size_t)ins_len);
+--- 2602,2623 ----
+       */
+      if (oap->block_mode && oap->start.lnum != oap->end.lnum)
+      {
++ 	/* Auto-indenting may have changed the indent.  If the cursor was past
++ 	 * the indent, exclude that indent change from the inserted text. */
+  	firstline = ml_get(oap->start.lnum);
+! 	if (bd.textcol > pre_indent)
+! 	{
+! 	    long new_indent = (long)(skipwhite(firstline) - firstline);
+! 
+! 	    pre_textlen += new_indent - pre_indent;
+! 	    bd.textcol += new_indent - pre_indent;
+! 	}
+! 
+! 	ins_len = (long)STRLEN(firstline) - pre_textlen;
+! 	if (ins_len > 0)
+  	{
++ 	    /* Subsequent calls to ml_get() flush the firstline data - take a
++ 	     * copy of the inserted text.  */
+  	    if ((ins_text = alloc_check((unsigned)(ins_len + 1))) != NULL)
+  	    {
+  		vim_strncpy(ins_text, firstline + bd.textcol, (size_t)ins_len);
+*** ../vim-7.1.106/src/version.c	Thu Sep 13 22:04:30 2007
+--- src/version.c	Thu Sep 13 22:38:28 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     107,
+  /**/
+
+-- 
+Windows
+M!uqoms
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.1.108
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.108?rev=1020&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.108 (added)
+++ trunk/packages/vim/upstream/patches/7.1.108 Fri Sep 14 22:19:43 2007
@@ -1,0 +1,78 @@
+To: vim-dev at vim.org
+Subject: patch 7.1.108
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.108 (after 7.1.100)
+Problem:    Win32: Compilation problems in Cscope code. (Jeff Lanzarotta)
+Solution:   Use (long) instead of (intptr_t) when it's not defined.
+Files:	    src/if_cscope.c
+
+
+*** ../vim-7.1.107/src/if_cscope.c	Thu Sep  6 17:38:06 2007
+--- src/if_cscope.c	Wed Sep 12 20:32:17 2007
+***************
+*** 726,731 ****
+--- 726,740 ----
+      HANDLE	stdin_rd, stdout_rd;
+      HANDLE	stdout_wr, stdin_wr;
+      BOOL	created;
++ # ifdef __BORLANDC__
++ #  define OPEN_OH_ARGTYPE long
++ # else
++ #  if (_MSC_VER >= 1300)
++ #   define OPEN_OH_ARGTYPE intptr_t
++ #  else
++ #   define OPEN_OH_ARGTYPE long
++ #  endif
++ # endif
+  #endif
+  
+  #if defined(UNIX)
+***************
+*** 909,918 ****
+      CloseHandle(pi.hThread);
+  
+      /* TODO - tidy up after failure to create files on pipe handles. */
+!     if (((fd = _open_osfhandle((intptr_t)stdin_wr, _O_TEXT|_O_APPEND)) < 0)
+  	    || ((csinfo[i].to_fp = _fdopen(fd, "w")) == NULL))
+  	PERROR(_("cs_create_connection: fdopen for to_fp failed"));
+!     if (((fd = _open_osfhandle((intptr_t)stdout_rd, _O_TEXT|_O_RDONLY)) < 0)
+  	    || ((csinfo[i].fr_fp = _fdopen(fd, "r")) == NULL))
+  	PERROR(_("cs_create_connection: fdopen for fr_fp failed"));
+  
+--- 918,929 ----
+      CloseHandle(pi.hThread);
+  
+      /* TODO - tidy up after failure to create files on pipe handles. */
+!     if (((fd = _open_osfhandle((OPEN_OH_ARGTYPE)stdin_wr,
+! 						      _O_TEXT|_O_APPEND)) < 0)
+  	    || ((csinfo[i].to_fp = _fdopen(fd, "w")) == NULL))
+  	PERROR(_("cs_create_connection: fdopen for to_fp failed"));
+!     if (((fd = _open_osfhandle((OPEN_OH_ARGTYPE)stdout_rd,
+! 						      _O_TEXT|_O_RDONLY)) < 0)
+  	    || ((csinfo[i].fr_fp = _fdopen(fd, "r")) == NULL))
+  	PERROR(_("cs_create_connection: fdopen for fr_fp failed"));
+  
+*** ../vim-7.1.107/src/version.c	Thu Sep 13 22:40:47 2007
+--- src/version.c	Fri Sep 14 19:55:12 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     108,
+  /**/
+
+-- 
+Q:   How many hardware engineers does it take to change a lightbulb?
+A:   None.  We'll fix it in software.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///




More information about the pkg-vim-maintainers mailing list