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

jamessan at users.alioth.debian.org jamessan at users.alioth.debian.org
Thu Jan 10 13:38:09 UTC 2008


Author: jamessan
Date: Thu Jan 10 13:38:09 2008
New Revision: 1146

URL: http://svn.debian.org/wsvn/pkg-vim/?sc=1&rev=1146
Log:
Upstream patches 184 - 214

Added:
    trunk/packages/vim/upstream/patches/7.1.184
    trunk/packages/vim/upstream/patches/7.1.185
    trunk/packages/vim/upstream/patches/7.1.186
    trunk/packages/vim/upstream/patches/7.1.187
    trunk/packages/vim/upstream/patches/7.1.188
    trunk/packages/vim/upstream/patches/7.1.189
    trunk/packages/vim/upstream/patches/7.1.190
    trunk/packages/vim/upstream/patches/7.1.191
    trunk/packages/vim/upstream/patches/7.1.192
    trunk/packages/vim/upstream/patches/7.1.193
    trunk/packages/vim/upstream/patches/7.1.194
    trunk/packages/vim/upstream/patches/7.1.195
    trunk/packages/vim/upstream/patches/7.1.196
    trunk/packages/vim/upstream/patches/7.1.197
    trunk/packages/vim/upstream/patches/7.1.198
    trunk/packages/vim/upstream/patches/7.1.199
    trunk/packages/vim/upstream/patches/7.1.200
    trunk/packages/vim/upstream/patches/7.1.201
    trunk/packages/vim/upstream/patches/7.1.202
    trunk/packages/vim/upstream/patches/7.1.203
    trunk/packages/vim/upstream/patches/7.1.204
    trunk/packages/vim/upstream/patches/7.1.205
    trunk/packages/vim/upstream/patches/7.1.206
    trunk/packages/vim/upstream/patches/7.1.207
    trunk/packages/vim/upstream/patches/7.1.208
    trunk/packages/vim/upstream/patches/7.1.209
    trunk/packages/vim/upstream/patches/7.1.210
    trunk/packages/vim/upstream/patches/7.1.211
    trunk/packages/vim/upstream/patches/7.1.212
    trunk/packages/vim/upstream/patches/7.1.213
    trunk/packages/vim/upstream/patches/7.1.214
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=1146&op=diff
==============================================================================
--- trunk/packages/vim/debian/README (original)
+++ trunk/packages/vim/debian/README Thu Jan 10 13:38:09 2008
@@ -25,6 +25,7 @@
 Collection of patches for Vim 7.1:
   SIZE  NAME                  INCLUDES
  91424  7.1.001-100.gz	      patches 7.1.001 to 7.1.100, gzip'ed
+ 75402  7.1.101-200.gz	      patches 7.1.101 to 7.1.200, gzip'ed
 
 
 Individual patches for Vim 7.1:
@@ -155,6 +156,7 @@
   2599  7.1.124  (extra) Mac: may get empty buffer if dropping file on Vim.app
  12060  7.1.125  the TermResponse autocommand event is not always triggered
  13372  7.1.126  (extra) ":vimgrep */*" doesn't work if autocmd changes dir
+        12461  7.1.126ne  replacement for 7.1.126 without the (extra)
   2319  7.1.127  memory leak when doing completing
   2079  7.1.128  (extra) build problem with Cygwin
   1740  7.1.129  (extra) Win32: Can't get long user name
@@ -212,3 +214,34 @@
   1878  7.1.181  accessing uninitialized memory in Farsi mode with ":s"
   5457  7.1.182  with tab pages and an argument list session file may be wrong
   2489  7.1.183  Internal error for ":echo matchstr('a', 'a\%[\&]')"
+  2132  7.1.184  crash when deleting backwards over a line break in Insert mode
+  3744  7.1.185  "gR" and then BS doesn't work properly with multi-byte chars
+  3294  7.1.186  "expand('<afile>')" returns a bogus value after ":cd dir"
+  2341  7.1.187  Win32 GUI: custom completion using system() doesn't work
+  1688  7.1.188  "W10" message could be displayed in the second column
+  1950  7.1.189  (after 7.1.104) need to call plain_vgetc() in ask_yesno()
+  1685  7.1.190  cursor after end-of-line: "iA sentence.<Esc>)"
+  2007  7.1.191  Win32 GUI: when not in focus click in scrollbar doesn't work 
+  2605  7.1.192  CTRL-C doesn't stop duplicating text for "s" in Visual block
+  2962  7.1.193  some of the Vim 5.x digraphs could be supported
+  1650  7.1.194  Unix: ":echo glob('~/{}')" results in "/home/user//"
+  2273  7.1.195  '0 mark doesn't work for "~/foo ~ foo"
+  2642  7.1.196  (extra) Win32 GUI: "\n" in a tooltip doesn't cause line break
+  2308  7.1.197  Mac: "make install" doesn't work when $prefix is set
+  1460  7.1.198  hang when using ":s/\n//gn"
+  3572  7.1.199  can't do command line completion for a file name extension
+  2310  7.1.200  (after 7.1.177 and 7.1.182) compiler warnings
+  2705  7.1.201  when reading stdin 'fenc' and 'ff' are not set
+  2383  7.1.202  incomplete utf-8 byte sequence is not checked for validity
+  2261  7.1.203  if 'virtualedit' is "onemore" then ":normal 99|" is not right
+  2891  7.1.204  (extra) Win32: 'balloonexpr' tooltip disappears after 4 sec
+  5481  7.1.205  can't get the operator in an ":omap"
+  1690  7.1.206  compiler warnings when using MODIFIED_BY
+  7708  7.1.207  netbeans: "remove" cannot delete one line
+  2051  7.1.208  on Alpha get an unaligned access error
+  2249  7.1.209  GTK GUI: when using the netrw plugin ":gui" causes a hang
+  1923  7.1.210  listing mapping for 0xdb fails when 'encoding' is utf-8
+ 25525  7.1.211  matchparen plugin may take so long it looks like Vim hangs
+  1491  7.1.212  accessing a byte before a line
+  1750  7.1.213  aborting ":tabedit" from the ATTENTION dialog leaves tab open
+  8399  7.1.214  ":1s/g\n\zs1//" deletes characters from the first line

Modified: trunk/packages/vim/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/debian/changelog?rev=1146&op=diff
==============================================================================
--- trunk/packages/vim/debian/changelog (original)
+++ trunk/packages/vim/debian/changelog Thu Jan 10 13:38:09 2008
@@ -1,7 +1,7 @@
-vim (1:7.1-183+1) UNRELEASED; urgency=low
+vim (1:7.1-214+1) UNRELEASED; urgency=low
 
   [ Debian Vim Maintainers ]
-  * New upstream patches (176 - 183), see README.gz for details.
+  * New upstream patches (176 - 214), see README.gz for details.
 
   [ James Vega ]
   * Add configure-tcl_detection.diff, which allows Vim's configure script to
@@ -15,7 +15,7 @@
   * runtime/syntax/debchangelog.vim:  Adjust the "Closes" syntax highlighting
     to allow newlines as part of the whitespace.  (Closes: #460074)
 
- -- James Vega <jamessan at debian.org>  Thu, 10 Jan 2008 08:33:10 -0500
+ -- James Vega <jamessan at debian.org>  Thu, 10 Jan 2008 08:35:44 -0500
 
 vim (1:7.1-175+2) unstable; urgency=low
 

Added: trunk/packages/vim/upstream/patches/7.1.184
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.184?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.184 (added)
+++ trunk/packages/vim/upstream/patches/7.1.184 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,63 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.184
+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.184
+Problem:    Crash when deleting backwards over a line break in Insert mode.
+Solution:   Don't advance the cursor when it's already on the NUL after a
+	    line. (Matthew Wozniski)
+Files:	    src/normal.c
+
+
+*** ../vim-7.1.183/src/normal.c	Sun Oct 14 17:15:45 2007
+--- src/normal.c	Tue Jan  1 16:40:24 2008
+***************
+*** 5849,5860 ****
+  		/* When the NL before the first char has to be deleted we
+  		 * put the cursor on the NUL after the previous line.
+  		 * This is a very special case, be careful!
+! 		 * don't adjust op_end now, otherwise it won't work */
+  		if (	   (cap->oap->op_type == OP_DELETE
+  			    || cap->oap->op_type == OP_CHANGE)
+  			&& !lineempty(curwin->w_cursor.lnum))
+  		{
+! 		    ++curwin->w_cursor.col;
+  		    cap->retval |= CA_NO_ADJ_OP_END;
+  		}
+  		continue;
+--- 5849,5861 ----
+  		/* When the NL before the first char has to be deleted we
+  		 * put the cursor on the NUL after the previous line.
+  		 * This is a very special case, be careful!
+! 		 * Don't adjust op_end now, otherwise it won't work. */
+  		if (	   (cap->oap->op_type == OP_DELETE
+  			    || cap->oap->op_type == OP_CHANGE)
+  			&& !lineempty(curwin->w_cursor.lnum))
+  		{
+! 		    if (*ml_get_cursor() != NUL)
+! 			++curwin->w_cursor.col;
+  		    cap->retval |= CA_NO_ADJ_OP_END;
+  		}
+  		continue;
+*** ../vim-7.1.183/src/version.c	Wed Jan  2 15:34:48 2008
+--- src/version.c	Wed Jan  2 16:24:19 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     184,
+  /**/
+
+-- 
+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.185
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.185?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.185 (added)
+++ trunk/packages/vim/upstream/patches/7.1.185 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,140 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.185
+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.185
+Problem:    Using "gR" with a multi-byte encoding and typing a CR pushes
+	    characters onto the replace stack incorrectly, resulting in BS
+	    putting back the wrong characters. (Paul B. Mahol)
+Solution:   Push multi-byte characters onto the replace stack in reverse byte
+	    order.  Add replace_push_mb().
+Files:	    src/edit.c, src/misc1.c, src/proto/edit.pro
+
+
+*** ../vim-7.1.184/src/edit.c	Sun Dec  9 20:25:59 2007
+--- src/edit.c	Tue Jan  1 17:28:07 2008
+***************
+*** 6939,6944 ****
+--- 6939,6963 ----
+      ++replace_stack_nr;
+  }
+  
++ #if defined(FEAT_MBYTE) || defined(PROTO)
++ /*
++  * Push a character onto the replace stack.  Handles a multi-byte character in
++  * reverse byte order, so that the first byte is popped off first.
++  * Return the number of bytes done (includes composing characters).
++  */
++     int
++ replace_push_mb(p)
++     char_u *p;
++ {
++     int l = (*mb_ptr2len)(p);
++     int j;
++ 
++     for (j = l - 1; j >= 0; --j)
++ 	replace_push(p[j]);
++     return l;
++ }
++ #endif
++ 
+  #if 0
+  /*
+   * call replace_push(c) with replace_offset set to the first NUL.
+*** ../vim-7.1.184/src/misc1.c	Wed Sep 26 22:35:06 2007
+--- src/misc1.c	Wed Jan  2 17:48:00 2008
+***************
+*** 591,597 ****
+  	replace_push(NUL);
+  	p = saved_line + curwin->w_cursor.col;
+  	while (*p != NUL)
+! 	    replace_push(*p++);
+  	saved_line[curwin->w_cursor.col] = NUL;
+      }
+  #endif
+--- 592,605 ----
+  	replace_push(NUL);
+  	p = saved_line + curwin->w_cursor.col;
+  	while (*p != NUL)
+! 	{
+! #ifdef FEAT_MBYTE
+! 	    if (has_mbyte)
+! 		p += replace_push_mb(p);
+! 	    else
+! #endif
+! 		replace_push(*p++);
+! 	}
+  	saved_line[curwin->w_cursor.col] = NUL;
+      }
+  #endif
+***************
+*** 1914,1920 ****
+      int		charlen;
+  {
+      int		c = buf[0];
+-     int		l, j;
+  #endif
+      int		newlen;		/* nr of bytes inserted */
+      int		oldlen;		/* nr of bytes deleted (0 when not replacing) */
+--- 1922,1927 ----
+***************
+*** 2016,2028 ****
+  	for (i = 0; i < oldlen; ++i)
+  	{
+  #ifdef FEAT_MBYTE
+! 	    l = (*mb_ptr2len)(oldp + col + i) - 1;
+! 	    for (j = l; j >= 0; --j)
+! 		replace_push(oldp[col + i + j]);
+! 	    i += l;
+! #else
+! 	    replace_push(oldp[col + i]);
+  #endif
+  	}
+      }
+  
+--- 2023,2033 ----
+  	for (i = 0; i < oldlen; ++i)
+  	{
+  #ifdef FEAT_MBYTE
+! 	    if (has_mbyte)
+! 		i += replace_push_mb(oldp + col + i) - 1;
+! 	    else
+  #endif
++ 		replace_push(oldp[col + i]);
+  	}
+      }
+  
+*** ../vim-7.1.184/src/proto/edit.pro	Sat May  5 20:21:34 2007
+--- src/proto/edit.pro	Tue Jan  1 17:21:24 2008
+***************
+*** 32,37 ****
+--- 32,38 ----
+  char_u *get_last_insert __ARGS((void));
+  char_u *get_last_insert_save __ARGS((void));
+  void replace_push __ARGS((int c));
++ int replace_push_mb __ARGS((char_u *p));
+  void fixthisline __ARGS((int (*get_the_indent)(void)));
+  void fix_indent __ARGS((void));
+  int in_cinkeys __ARGS((int keytyped, int when, int line_is_empty));
+*** ../vim-7.1.184/src/version.c	Wed Jan  2 16:25:20 2008
+--- src/version.c	Wed Jan  2 17:45:10 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     185,
+  /**/
+
+-- 
+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.186
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.186?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.186 (added)
+++ trunk/packages/vim/upstream/patches/7.1.186 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,111 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.186
+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.186
+Problem:    "expand('<afile>')" returns a bogus value after changing
+	    directory. (Dave Fishburn)
+Solution:   Copy "autocmd_fname" to allocated memory and expand to full
+	    filename.  Shorten the path when expanding <afile>.
+Files:	    src/ex_docmd.c, src/fileio.c
+
+
+*** ../vim-7.1.185/src/ex_docmd.c	Wed Jan  2 15:12:29 2008
+--- src/ex_docmd.c	Wed Jan  2 20:12:33 2008
+***************
+*** 7799,7804 ****
+--- 7799,7805 ----
+  free_cd_dir()
+  {
+      vim_free(prev_dir);
++     prev_dir = NULL;
+  }
+  #endif
+  
+***************
+*** 9521,9526 ****
+--- 9522,9528 ----
+  		    *errormsg = (char_u *)_("E495: no autocommand file name to substitute for \"<afile>\"");
+  		    return NULL;
+  		}
++ 		result = shorten_fname1(result);
+  		break;
+  
+  	case SPEC_ABUF:		/* buffer number for autocommand */
+*** ../vim-7.1.185/src/fileio.c	Thu Nov  8 20:47:34 2007
+--- src/fileio.c	Wed Jan  2 20:21:43 2008
+***************
+*** 5556,5562 ****
+  #endif
+  
+  #if defined(FEAT_VIMINFO) || defined(FEAT_BROWSE) || \
+!     defined(FEAT_QUICKFIX) || defined(PROTO)
+  /*
+   * Try to find a shortname by comparing the fullname with the current
+   * directory.
+--- 5556,5562 ----
+  #endif
+  
+  #if defined(FEAT_VIMINFO) || defined(FEAT_BROWSE) || \
+!     defined(FEAT_QUICKFIX) || defined(FEAT_AUTOCMD) || defined(PROTO)
+  /*
+   * Try to find a shortname by comparing the fullname with the current
+   * directory.
+***************
+*** 8546,8551 ****
+--- 8546,8553 ----
+  
+      /*
+       * Set the file name to be used for <afile>.
++      * Make a copy to avoid that changing a buffer name or directory makes it
++      * invalid.
+       */
+      if (fname_io == NULL)
+      {
+***************
+*** 8558,8563 ****
+--- 8560,8567 ----
+      }
+      else
+  	autocmd_fname = fname_io;
++     if (autocmd_fname != NULL)
++ 	autocmd_fname = FullName_save(autocmd_fname, FALSE);
+  
+      /*
+       * Set the buffer number to be used for <abuf>.
+***************
+*** 8740,8745 ****
+--- 8744,8750 ----
+      vim_free(sourcing_name);
+      sourcing_name = save_sourcing_name;
+      sourcing_lnum = save_sourcing_lnum;
++     vim_free(autocmd_fname);
+      autocmd_fname = save_autocmd_fname;
+      autocmd_bufnr = save_autocmd_bufnr;
+      autocmd_match = save_autocmd_match;
+*** ../vim-7.1.185/src/version.c	Wed Jan  2 17:48:24 2008
+--- src/version.c	Wed Jan  2 21:06:35 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     186,
+  /**/
+
+-- 
+   LAUNCELOT leaps into SHOT with a mighty cry and runs the GUARD through and
+   hacks him to the floor.  Blood.  Swashbuckling music (perhaps).
+   LAUNCELOT races through into the castle screaming.
+SECOND SENTRY: Hey!
+                 "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.187
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.187?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.187 (added)
+++ trunk/packages/vim/upstream/patches/7.1.187 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,81 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.187
+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.187
+Problem:    Win32 GUI: Custom completion using system() no longer works
+	    after patch 7.1.104. (Erik Falor)
+Solution:   Loop when safe_vgetc() returns K_IGNORE.
+Files:	    src/ex_getln.c
+
+
+*** ../vim-7.1.186/src/ex_getln.c	Fri Dec  7 20:28:13 2007
+--- src/ex_getln.c	Wed Jan  2 21:42:51 2008
+***************
+*** 335,341 ****
+  	quit_more = FALSE;	/* reset after CTRL-D which had a more-prompt */
+  
+  	cursorcmd();		/* set the cursor on the right spot */
+! 	c = safe_vgetc();
+  	if (KeyTyped)
+  	{
+  	    some_key_typed = TRUE;
+--- 335,348 ----
+  	quit_more = FALSE;	/* reset after CTRL-D which had a more-prompt */
+  
+  	cursorcmd();		/* set the cursor on the right spot */
+! 
+! 	/* Get a character.  Ignore K_IGNORE, it should not do anything, such
+! 	 * as stop completion. */
+! 	do
+! 	{
+! 	    c = safe_vgetc();
+! 	} while (c == K_IGNORE);
+! 
+  	if (KeyTyped)
+  	{
+  	    some_key_typed = TRUE;
+***************
+*** 1209,1215 ****
+  		goto cmdline_not_changed;
+  
+  	case K_IGNORE:
+! 		goto cmdline_not_changed;	/* Ignore mouse */
+  
+  #ifdef FEAT_GUI_W32
+  	    /* On Win32 ignore <M-F4>, we get it when closing the window was
+--- 1216,1223 ----
+  		goto cmdline_not_changed;
+  
+  	case K_IGNORE:
+! 		/* Ignore mouse event or ex_window() result. */
+! 		goto cmdline_not_changed;
+  
+  #ifdef FEAT_GUI_W32
+  	    /* On Win32 ignore <M-F4>, we get it when closing the window was
+*** ../vim-7.1.186/src/version.c	Wed Jan  2 21:07:32 2008
+--- src/version.c	Wed Jan  2 21:53:24 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     187,
+  /**/
+
+-- 
+FATHER:    Who are you?
+PRINCE:    I'm ... your son ...
+FATHER:    Not you.
+LAUNCELOT: I'm ... er ... Sir Launcelot, sir.
+                 "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.188
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.188?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.188 (added)
+++ trunk/packages/vim/upstream/patches/7.1.188 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,54 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.188
+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.188
+Problem:    When 'showmode' is off the message for changing a readonly file is
+	    given in the second column instead of the first.  (Payl B.  Mahol)
+Solution:   Put the W10 message in the first column.
+Files:	    src/edit.c
+
+
+*** ../vim-7.1.187/src/edit.c	Wed Jan  2 17:48:24 2008
+--- src/edit.c	Wed Jan  2 20:56:46 2008
+***************
+*** 550,556 ****
+  	i = showmode();
+  
+      if (!p_im && did_restart_edit == 0)
+! 	change_warning(i + 1);
+  
+  #ifdef CURSOR_SHAPE
+      ui_cursor_shape();		/* may show different cursor shape */
+--- 550,556 ----
+  	i = showmode();
+  
+      if (!p_im && did_restart_edit == 0)
+! 	change_warning(i == 0 ? 0 : i + 1);
+  
+  #ifdef CURSOR_SHAPE
+      ui_cursor_shape();		/* may show different cursor shape */
+*** ../vim-7.1.187/src/version.c	Wed Jan  2 21:54:33 2008
+--- src/version.c	Wed Jan  2 22:06:19 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     188,
+  /**/
+
+-- 
+PRINCE:    He's come to rescue me, father.
+LAUNCELOT: (embarrassed) Well, let's not jump to conclusions ...
+                 "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.189
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.189?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.189 (added)
+++ trunk/packages/vim/upstream/patches/7.1.189 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,76 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.189
+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.189 (after 7.1.104)
+Problem:    Patch 7.1.104 was incomplete.
+Solution:   Also call plain_vgetc() in ask_yesno().
+Files:	    src/misc1.c
+
+
+*** ../vim-7.1.188/src/misc1.c	Wed Jan  2 17:48:24 2008
+--- src/misc1.c	Wed Jan  2 17:48:00 2008
+***************
+*** 222,231 ****
+  	    *s++ = *p++;
+  	    orig_char_len--;
+  	}
+  	/* Skip over any additional white space (useful when newindent is less
+  	 * than old) */
+  	while (vim_iswhite(*p))
+! 	    (void)*p++;
+  
+      }
+      else
+--- 222,232 ----
+  	    *s++ = *p++;
+  	    orig_char_len--;
+  	}
++ 
+  	/* Skip over any additional white space (useful when newindent is less
+  	 * than old) */
+  	while (vim_iswhite(*p))
+! 	    ++p;
+  
+      }
+      else
+***************
+*** 3024,3030 ****
+  	if (direct)
+  	    r = get_keystroke();
+  	else
+! 	    r = safe_vgetc();
+  	if (r == Ctrl_C || r == ESC)
+  	    r = 'n';
+  	msg_putchar(r);	    /* show what you typed */
+--- 3025,3031 ----
+  	if (direct)
+  	    r = get_keystroke();
+  	else
+! 	    r = plain_vgetc();
+  	if (r == Ctrl_C || r == ESC)
+  	    r = 'n';
+  	msg_putchar(r);	    /* show what you typed */
+*** ../vim-7.1.188/src/version.c	Wed Jan  2 22:08:43 2008
+--- src/version.c	Thu Jan  3 12:40:31 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     189,
+  /**/
+
+-- 
+Q: How does a UNIX Guru do Sex ?
+A: unzip;strip;touch;finger;mount;fsck;more;yes;umount;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.190
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.190?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.190 (added)
+++ trunk/packages/vim/upstream/patches/7.1.190 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,55 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.190
+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.190
+Problem:    Cursor after end-of-line: "iA sentence.<Esc>)"
+Solution:   Move cursor back and make motion inclusive.
+Files:	    src/normal.c
+
+
+*** ../vim-7.1.189/src/normal.c	Wed Jan  2 16:25:20 2008
+--- src/normal.c	Wed Jan  2 22:04:38 2008
+***************
+*** 6564,6569 ****
+--- 6564,6575 ----
+  	clearopbeep(cap->oap);
+      else
+      {
++ 	/* Don't leave the cursor on the NUL past a line */
++ 	if (curwin->w_cursor.col > 0 && gchar_cursor() == NUL)
++ 	{
++ 	    --curwin->w_cursor.col;
++ 	    cap->oap->inclusive = TRUE;
++ 	}
+  #ifdef FEAT_VIRTUALEDIT
+  	curwin->w_cursor.coladd = 0;
+  #endif
+*** ../vim-7.1.189/src/version.c	Thu Jan  3 12:42:39 2008
+--- src/version.c	Thu Jan  3 13:19:03 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     190,
+  /**/
+
+-- 
+    [clop clop]
+GUARD #1:  Halt!  Who goes there?
+ARTHUR:    It is I, Arthur, son of Uther Pendragon, from the castle of
+           Camelot.  King of the Britons, defeator of the Saxons, sovereign of
+           all England!
+GUARD #1:  Pull the other one!
+                                  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.191
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.191?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.191 (added)
+++ trunk/packages/vim/upstream/patches/7.1.191 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,61 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.191
+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.191
+Problem:    Win32 GUI: after patch 7.1.168 there is still a problem when
+	    clicking in a scrollbar. (Juergen Jottkaerr)
+Solution:   Don't check the input buffer when dragging the scrollbar.
+Files:	    src/gui.c
+
+
+*** ../vim-7.1.190/src/gui.c	Tue Nov  6 22:26:39 2007
+--- src/gui.c	Thu Jan  3 13:16:29 2008
+***************
+*** 3734,3741 ****
+      sb->value = value;
+  
+  #ifdef USE_ON_FLY_SCROLL
+!     /* When not allowed to do the scrolling right now, return. */
+!     if (dont_scroll || input_available())
+  	return;
+  #endif
+  #ifdef FEAT_INS_EXPAND
+--- 3734,3743 ----
+      sb->value = value;
+  
+  #ifdef USE_ON_FLY_SCROLL
+!     /* When not allowed to do the scrolling right now, return.
+!      * This also checked input_available(), but that causes the first click in
+!      * a scrollbar to be ignored when Vim doesn't have focus. */
+!     if (dont_scroll)
+  	return;
+  #endif
+  #ifdef FEAT_INS_EXPAND
+*** ../vim-7.1.190/src/version.c	Thu Jan  3 13:19:50 2008
+--- src/version.c	Thu Jan  3 16:13:23 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     191,
+  /**/
+
+-- 
+GUARD #1:  What -- a swallow carrying a coconut?
+ARTHUR:    It could grip it by the husk!
+GUARD #1:  It's not a question of where he grips it!  It's a simple question
+           of weight ratios!  A five ounce bird could not carry a 1 pound
+           coconut.
+                                  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.192
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.192?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.192 (added)
+++ trunk/packages/vim/upstream/patches/7.1.192 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,79 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.192
+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.192
+Problem:    With Visual block selection, "s" and typing something, CTRL-C
+	    doesn't stop Vim from repeating the replacement in other lines,
+	    like happens for "I".
+Solution:   Check for "got_int" to be set.
+Files:	    src/ops.c
+
+
+*** ../vim-7.1.191/src/ops.c	Sat Dec  1 21:12:23 2007
+--- src/ops.c	Thu Jan  3 16:26:37 2008
+***************
+*** 2468,2476 ****
+  
+      edit(NUL, FALSE, (linenr_T)count1);
+  
+!     /* if user has moved off this line, we don't know what to do, so do
+!      * nothing */
+!     if (curwin->w_cursor.lnum != oap->start.lnum)
+  	return;
+  
+      if (oap->block_mode)
+--- 2468,2477 ----
+  
+      edit(NUL, FALSE, (linenr_T)count1);
+  
+!     /* If user has moved off this line, we don't know what to do, so do
+!      * nothing.
+!      * Also don't repeat the insert when Insert mode ended with CTRL-C. */
+!     if (curwin->w_cursor.lnum != oap->start.lnum || got_int)
+  	return;
+  
+      if (oap->block_mode)
+***************
+*** 2601,2608 ****
+      /*
+       * In Visual block mode, handle copying the new text to all lines of the
+       * block.
+       */
+!     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. */
+--- 2602,2610 ----
+      /*
+       * In Visual block mode, handle copying the new text to all lines of the
+       * block.
++      * Don't repeat the insert when Insert mode ended with CTRL-C.
+       */
+!     if (oap->block_mode && oap->start.lnum != oap->end.lnum && !got_int)
+      {
+  	/* Auto-indenting may have changed the indent.  If the cursor was past
+  	 * the indent, exclude that indent change from the inserted text. */
+*** ../vim-7.1.191/src/version.c	Thu Jan  3 16:14:25 2008
+--- src/version.c	Thu Jan  3 16:30:07 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     192,
+  /**/
+
+-- 
+"A mouse can be just as dangerous as a bullet or a bomb."
+             (US Representative Lamar Smith, R-Texas)
+
+ /// 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.193
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.193?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.193 (added)
+++ trunk/packages/vim/upstream/patches/7.1.193 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,100 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.193
+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.193
+Problem:    Some Vim 5.x digraphs are missing in Vim 7, even though the
+	    character pairs are not used. (Philippe de Muyter)
+Solution:   Add those Vim 5.x digraphs that don't conflict with others.
+Files:	    src/digraph.c
+
+
+*** ../vim-7.1.192/src/digraph.c	Thu Sep 13 18:25:08 2007
+--- src/digraph.c	Thu Jan  3 17:48:47 2008
+***************
+*** 1978,1983 ****
+--- 1978,2038 ----
+  	{'f', 't', 0xfb05},
+  	{'s', 't', 0xfb06},
+  #      endif /* FEAT_MBYTE */
++ 
++ 	/* Vim 5.x compatible digraphs that don't conflict with the above */
++ 	{'~', '!', 161},	/* ¡ */
++ 	{'c', '|', 162},	/* ¢ */
++ 	{'$', '$', 163},	/* £ */
++ 	{'o', 'x', 164},	/* ¤ - currency symbol in ISO 8859-1 */
++ 	{'Y', '-', 165},	/* ¥ */
++ 	{'|', '|', 166},	/* ¦ */
++ 	{'c', 'O', 169},	/* © */
++ 	{'-', ',', 172},	/* ¬ */
++ 	{'-', '=', 175},	/* ¯ */
++ 	{'~', 'o', 176},	/* ° */
++ 	{'2', '2', 178},	/* ² */
++ 	{'3', '3', 179},	/* ³ */
++ 	{'p', 'p', 182},	/* ¶ */
++ 	{'~', '.', 183},	/* · */
++ 	{'1', '1', 185},	/* ¹ */
++ 	{'~', '?', 191},	/* ¿ */
++ 	{'A', '`', 192},	/* À */
++ 	{'A', '^', 194},	/* Â */
++ 	{'A', '~', 195},	/* Ã */
++ 	{'A', '"', 196},	/* Ä */
++ 	{'A', '@', 197},	/* Å */
++ 	{'E', '`', 200},	/* È */
++ 	{'E', '^', 202},	/* Ê */
++ 	{'E', '"', 203},	/* Ë */
++ 	{'I', '`', 204},	/* Ì */
++ 	{'I', '^', 206},	/* Î */
++ 	{'I', '"', 207},	/* Ï */
++ 	{'N', '~', 209},	/* Ñ */
++ 	{'O', '`', 210},	/* Ò */
++ 	{'O', '^', 212},	/* Ô */
++ 	{'O', '~', 213},	/* Õ */
++ 	{'/', '\\', 215},	/* × - multiplication symbol in ISO 8859-1 */
++ 	{'U', '`', 217},	/* Ù */
++ 	{'U', '^', 219},	/* Û */
++ 	{'I', 'p', 222},	/* Þ */
++ 	{'a', '`', 224},	/* à */
++ 	{'a', '^', 226},	/* â */
++ 	{'a', '~', 227},	/* ã */
++ 	{'a', '"', 228},	/* ä */
++ 	{'a', '@', 229},	/* å */
++ 	{'e', '`', 232},	/* è */
++ 	{'e', '^', 234},	/* ê */
++ 	{'e', '"', 235},	/* ë */
++ 	{'i', '`', 236},	/* ì */
++ 	{'i', '^', 238},	/* î */
++ 	{'n', '~', 241},	/* ñ */
++ 	{'o', '`', 242},	/* ò */
++ 	{'o', '^', 244},	/* ô */
++ 	{'o', '~', 245},	/* õ */
++ 	{'u', '`', 249},	/* ù */
++ 	{'u', '^', 251},	/* û */
++ 	{'y', '"', 255},	/* x XX */
++ 
+  	{NUL, NUL, NUL}
+         };
+  
+*** ../vim-7.1.192/src/version.c	Thu Jan  3 16:31:17 2008
+--- src/version.c	Thu Jan  3 17:52:51 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     193,
+  /**/
+
+-- 
+Futility Factor: No experiment is ever a complete failure - it can always
+serve as a negative example.
+
+ /// 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.194
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.194?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.194 (added)
+++ trunk/packages/vim/upstream/patches/7.1.194 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,55 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.194
+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.194
+Problem:    ":echo glob('~/{}')" results in /home/user//.
+Solution:   Don't add a slash if there already is one.
+Files:	    src/os_unix.c
+
+
+*** ../vim-7.1.193/src/os_unix.c	Sat Dec  1 17:18:45 2007
+--- src/os_unix.c	Thu Jan  3 18:52:22 2008
+***************
+*** 5482,5488 ****
+  	{
+  	    STRCPY(p, (*file)[i]);
+  	    if (dir)
+! 		STRCAT(p, "/");	    /* add '/' to a directory name */
+  	    (*file)[j++] = p;
+  	}
+      }
+--- 5482,5488 ----
+  	{
+  	    STRCPY(p, (*file)[i]);
+  	    if (dir)
+! 		add_pathsep(p);	    /* add '/' to a directory name */
+  	    (*file)[j++] = p;
+  	}
+      }
+*** ../vim-7.1.193/src/version.c	Thu Jan  3 17:53:41 2008
+--- src/version.c	Thu Jan  3 18:54:41 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     194,
+  /**/
+
+-- 
+ARTHUR:    Will you ask your master if he wants to join my court at Camelot?!
+GUARD #1:  But then of course African swallows are not migratory.
+GUARD #2:  Oh, yeah...
+GUARD #1:  So they couldn't bring a coconut back anyway...
+                                  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.195
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.195?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.195 (added)
+++ trunk/packages/vim/upstream/patches/7.1.195 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,75 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.195
+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.195
+Problem:    '0 mark doesn't work for "~/foo ~ foo".
+Solution:   Don't expand the whole file name, only "~/".
+Files:	    src/mark.c
+
+
+*** ../vim-7.1.194/src/mark.c	Thu May 10 18:48:03 2007
+--- src/mark.c	Thu Jan  3 20:17:29 2008
+***************
+*** 505,513 ****
+      {
+  	/*
+  	 * First expand "~/" in the file name to the home directory.
+! 	 * Try to shorten the file name.
+  	 */
+! 	expand_env(fm->fname, NameBuff, MAXPATHL);
+  	mch_dirname(IObuff, IOSIZE);
+  	p = shorten_fname(NameBuff, IObuff);
+  
+--- 505,528 ----
+      {
+  	/*
+  	 * First expand "~/" in the file name to the home directory.
+! 	 * Don't expand the whole name, it may contain other '~' chars.
+  	 */
+! 	if (fm->fname[0] == '~' && (fm->fname[1] == '/'
+! #ifdef BACKSLASH_IN_FILENAME
+! 		    || fm->fname[1] == '\\'
+! #endif
+! 		    ))
+! 	{
+! 	    int len;
+! 
+! 	    expand_env((char_u *)"~/", NameBuff, MAXPATHL);
+! 	    len = STRLEN(NameBuff);
+! 	    vim_strncpy(NameBuff + len, fm->fname + 2, MAXPATHL - len - 1);
+! 	}
+! 	else
+! 	    vim_strncpy(NameBuff, fm->fname, MAXPATHL - 1);
+! 
+! 	/* Try to shorten the file name. */
+  	mch_dirname(IObuff, IOSIZE);
+  	p = shorten_fname(NameBuff, IObuff);
+  
+*** ../vim-7.1.194/src/version.c	Thu Jan  3 18:55:21 2008
+--- src/version.c	Thu Jan  3 20:10:16 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     195,
+  /**/
+
+-- 
+GUARD #2:  Wait a minute -- supposing two swallows carried it together?
+GUARD #1:  No, they'd have to have it on a line.
+GUARD #2:  Well, simple!  They'd just use a standard creeper!
+GUARD #1:  What, held under the dorsal guiding feathers?
+GUARD #2:  Well, why not?
+                                  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.196
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.196?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.196 (added)
+++ trunk/packages/vim/upstream/patches/7.1.196 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,90 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.196 (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.196 (extra)
+Problem:    Win32 GUI: "\n" in a tooltip doesn't cause a line break. (Erik
+	    Falor)
+Solution:   Use the TTM_SETMAXTIPWIDTH message.
+Files:	    src/gui_w32.c
+
+
+*** ../vim-7.1.195/src/gui_w32.c	Thu Aug 30 12:24:21 2007
+--- src/gui_w32.c	Thu Jan  3 13:56:26 2008
+***************
+*** 987,992 ****
+--- 987,997 ----
+  			{
+  			    LPNMTTDISPINFOW	lpdi = (LPNMTTDISPINFOW)lParam;
+  
++ 			    /* Set the maximum width, this also enables using
++ 			     * \n for line break. */
++ 			    SendMessage(lpdi->hdr.hwndFrom, TTM_SETMAXTIPWIDTH,
++ 								      0, 500);
++ 
+  			    tt_text = enc_to_ucs2(str, NULL);
+  			    lpdi->lpszText = tt_text;
+  			    /* can't show tooltip if failed */
+***************
+*** 996,1001 ****
+--- 1001,1011 ----
+  			{
+  			    LPNMTTDISPINFO	lpdi = (LPNMTTDISPINFO)lParam;
+  
++ 			    /* Set the maximum width, this also enables using
++ 			     * \n for line break. */
++ 			    SendMessage(lpdi->hdr.hwndFrom, TTM_SETMAXTIPWIDTH,
++ 								      0, 500);
++ 
+  			    if (STRLEN(str) < sizeof(lpdi->szText)
+  				    || ((tt_text = vim_strsave(str)) == NULL))
+  				vim_strncpy(lpdi->szText, str,
+***************
+*** 4734,4745 ****
+  	    cur_beval->showState = ShS_NEUTRAL;
+  	    break;
+  	case TTN_GETDISPINFO:
+! 	{
+! 	    /* if you get there then we have new common controls */
+! 	    NMTTDISPINFO_NEW *info = (NMTTDISPINFO_NEW *)pnmh;
+! 	    info->lpszText = (LPSTR)info->lParam;
+! 	    info->uFlags |= TTF_DI_SETITEM;
+! 	}
+  	    break;
+  	}
+      }
+--- 4744,4755 ----
+  	    cur_beval->showState = ShS_NEUTRAL;
+  	    break;
+  	case TTN_GETDISPINFO:
+! 	    {
+! 		/* if you get there then we have new common controls */
+! 		NMTTDISPINFO_NEW *info = (NMTTDISPINFO_NEW *)pnmh;
+! 		info->lpszText = (LPSTR)info->lParam;
+! 		info->uFlags |= TTF_DI_SETITEM;
+! 	    }
+  	    break;
+  	}
+      }
+*** ../vim-7.1.195/src/version.c	Thu Jan  3 20:21:34 2008
+--- src/version.c	Thu Jan  3 20:43:22 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     196,
+  /**/
+
+-- 
+Shit makes the flowers grow and that's beautiful
+
+ /// 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.197
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.197?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.197 (added)
+++ trunk/packages/vim/upstream/patches/7.1.197 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,62 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.197
+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.197
+Problem:    Mac: "make install" doesn't work when prefix defined.
+Solution:   Pass different arguments to "make installruntime".  (Jjgod Jiang)
+Files:	    src/Makefile
+
+
+*** ../vim-7.1.196/src/Makefile	Thu Jan  3 20:44:40 2008
+--- src/Makefile	Thu Jan  3 18:30:02 2008
+***************
+*** 2559,2566 ****
+  #	-mkdir $(DESTDIR)$(prefix)/$(APPDIR)/bin
+  	srcdir=`pwd`; $(MAKE) -f Makefile installruntime \
+  		VIMEXE=$$srcdir/$(VIMTARGET) \
+! 		prefix=$(DESTDIR)$(prefix)/$(RESDIR)/vim \
+! 		VIMRTLOC=$(DESTDIR)$(prefix)/$(RESDIR)/vim/runtime
+  # Put the link back.
+  	ln -s `pwd`/../runtime $(RESDIR)/vim
+  # Copy rgb.txt, Mac doesn't always have X11
+--- 2564,2574 ----
+  #	-mkdir $(DESTDIR)$(prefix)/$(APPDIR)/bin
+  	srcdir=`pwd`; $(MAKE) -f Makefile installruntime \
+  		VIMEXE=$$srcdir/$(VIMTARGET) \
+! 		prefix=$(DESTDIR)$(prefix)/$(RESDIR)$(VIMDIR) \
+! 		exec_prefix=$(DESTDIR)$(prefix)/$(APPDIR)/Contents \
+! 		BINDIR=$(DESTDIR)$(prefix)/$(APPDIR)/Contents/MacOS \
+! 		VIMLOC=$(DESTDIR)$(prefix)/$(RESDIR)$(VIMDIR) \
+! 		VIMRTLOC=$(DESTDIR)$(prefix)/$(RESDIR)$(VIMDIR)/runtime
+  # Put the link back.
+  	ln -s `pwd`/../runtime $(RESDIR)/vim
+  # Copy rgb.txt, Mac doesn't always have X11
+*** ../vim-7.1.196/src/version.c	Thu Jan  3 20:44:35 2008
+--- src/version.c	Fri Jan  4 11:52:46 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     197,
+  /**/
+
+-- 
+CUSTOMER:     Well, can you hang around a couple of minutes?  He won't be
+              long.
+MORTICIAN:    Naaah, I got to go on to Robinson's -- they've lost nine today.
+CUSTOMER:     Well, when is your next round?
+MORTICIAN:    Thursday.
+DEAD PERSON:  I think I'll go for a walk.
+                                  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.198
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.198?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.198 (added)
+++ trunk/packages/vim/upstream/patches/7.1.198 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,51 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.198
+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.198
+Problem:    Hang when using ":s/\n//gn". (Burak Gorkemli)
+Solution:   Set "skip_match".
+Files:	    src/ex_cmds.c
+
+
+*** ../vim-7.1.197/src/ex_cmds.c	Wed Jan  2 13:58:17 2008
+--- src/ex_cmds.c	Fri Jan  4 14:46:34 2008
+***************
+*** 4575,4580 ****
+--- 4575,4581 ----
+  		    {
+  			matchcol = (colnr_T)STRLEN(sub_firstline);
+  			nmatch = 1;
++ 			skip_match = TRUE;
+  		    }
+  		    sub_nsubs++;
+  		    did_sub = TRUE;
+*** ../vim-7.1.197/src/version.c	Fri Jan  4 11:54:11 2008
+--- src/version.c	Fri Jan  4 14:52:09 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     198,
+  /**/
+
+-- 
+    [clop clop]
+ARTHUR:  Old woman!
+DENNIS:  Man!
+ARTHUR:  Man, sorry.  What knight lives in that castle over there?
+DENNIS:  I'm thirty seven.
+ARTHUR:  What?
+DENNIS:  I'm thirty seven -- I'm not old!
+                                  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.199
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.199?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.199 (added)
+++ trunk/packages/vim/upstream/patches/7.1.199 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,105 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.199
+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.199
+Problem:    Can't do command line completion for a specific file name
+	    extension.
+Solution:   When the pattern ends in "$" don't add a star for completion and
+	    remove the "$" before matching with file names.
+Files:	    runtime/doc/cmdline.txt, src/ex_getln.c
+
+
+*** ../vim-7.1.198/runtime/doc/cmdline.txt	Sat May 12 15:38:39 2007
+--- runtime/doc/cmdline.txt	Fri Jan  4 15:13:06 2008
+***************
+*** 1,4 ****
+! *cmdline.txt*   For Vim version 7.1.  Last change: 2006 Jul 18
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+--- 1,4 ----
+! *cmdline.txt*   For Vim version 7.1.  Last change: 2008 Jan 04
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+***************
+*** 316,322 ****
+  command-line is shown.  (Note: the shifted arrow keys do not work on all
+  terminals)
+  
+! 							*his* *:history*
+  :his[tory]	Print the history of last entered commands.
+  		{not in Vi}
+  		{not available when compiled without the |+cmdline_hist|
+--- 316,322 ----
+  command-line is shown.  (Note: the shifted arrow keys do not work on all
+  terminals)
+  
+! 							*:his* *:history*
+  :his[tory]	Print the history of last entered commands.
+  		{not in Vi}
+  		{not available when compiled without the |+cmdline_hist|
+***************
+*** 447,452 ****
+--- 447,457 ----
+  
+  To completely ignore files with some extension use 'wildignore'.
+  
++ To match only files that end at the end of the typed text append a "$".  For
++ example, to match only files that end in ".c": >
++ 	:e *.c$
++ This will not match a file ending in ".cpp".  Without the "$" it does match.
++ 
+  The old value of an option can be obtained by hitting 'wildchar' just after
+  the '='.  For example, typing 'wildchar' after ":set dir=" will insert the
+  current value of 'dir'.  This overrules file name completion for the options
+*** ../vim-7.1.198/src/ex_getln.c	Wed Jan  2 21:54:33 2008
+--- src/ex_getln.c	Fri Jan  4 15:05:31 2008
+***************
+*** 4078,4083 ****
+--- 4078,4084 ----
+  	     * ~ would be at the start of the file name, but not the tail.
+  	     * $ could be anywhere in the tail.
+  	     * ` could be anywhere in the file name.
++ 	     * When the name ends in '$' don't add a star, remove the '$'.
+  	     */
+  	    tail = gettail(retval);
+  	    if ((*retval != '~' || tail != retval)
+***************
+*** 4085,4090 ****
+--- 4086,4093 ----
+  		    && vim_strchr(tail, '$') == NULL
+  		    && vim_strchr(retval, '`') == NULL)
+  		retval[len++] = '*';
++ 	    else if (len > 0 && retval[len - 1] == '$')
++ 		--len;
+  	    retval[len] = NUL;
+  	}
+      }
+*** ../vim-7.1.198/src/version.c	Fri Jan  4 14:52:14 2008
+--- src/version.c	Fri Jan  4 15:14:29 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     199,
+  /**/
+
+-- 
+ARTHUR:  Well, I can't just call you `Man'.
+DENNIS:  Well, you could say `Dennis'.
+ARTHUR:  Well, I didn't know you were called `Dennis.'
+DENNIS:  Well, you didn't bother to find out, did you?
+                                  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.200
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.200?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.200 (added)
+++ trunk/packages/vim/upstream/patches/7.1.200 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,74 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.200
+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.200 (after 7.1.177 and 7.1.182)
+Problem:    Compiler warnings for uninitialized variables.
+Solution:   Init variables.
+Files:	    src/ex_cmds2.c, src/ex_docmd.c
+
+
+*** ../vim-7.1.199/src/ex_cmds2.c	Tue Jan  1 14:16:42 2008
+--- src/ex_cmds2.c	Fri Jan  4 15:55:54 2008
+***************
+*** 94,100 ****
+      int		save_redir_off = redir_off;
+      tasave_T	typeaheadbuf;
+      int		typeahead_saved = FALSE;
+!     int		save_ignore_script;
+  # ifdef FEAT_EX_EXTRA
+      int		save_ex_normal_busy;
+  # endif
+--- 94,100 ----
+      int		save_redir_off = redir_off;
+      tasave_T	typeaheadbuf;
+      int		typeahead_saved = FALSE;
+!     int		save_ignore_script = 0;
+  # ifdef FEAT_EX_EXTRA
+      int		save_ex_normal_busy;
+  # endif
+*** ../vim-7.1.199/src/ex_docmd.c	Wed Jan  2 21:07:32 2008
+--- src/ex_docmd.c	Fri Jan  4 15:57:28 2008
+***************
+*** 9765,9771 ****
+      win_T	*tab_firstwin;
+      frame_T	*tab_topframe;
+      int		cur_arg_idx = 0;
+!     int		next_arg_idx;
+  
+      if (ssop_flags & SSOP_BUFFERS)
+  	only_save_windows = FALSE;		/* Save ALL buffers */
+--- 9766,9772 ----
+      win_T	*tab_firstwin;
+      frame_T	*tab_topframe;
+      int		cur_arg_idx = 0;
+!     int		next_arg_idx = 0;
+  
+      if (ssop_flags & SSOP_BUFFERS)
+  	only_save_windows = FALSE;		/* Save ALL buffers */
+*** ../vim-7.1.199/src/version.c	Fri Jan  4 15:16:57 2008
+--- src/version.c	Fri Jan  4 15:59:46 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     200,
+  /**/
+
+-- 
+ARTHUR:  I did say sorry about the `old woman,' but from the behind you
+         looked--
+DENNIS:  What I object to is you automatically treat me like an inferior!
+ARTHUR:  Well, I AM king...
+                                  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.201
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.201?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.201 (added)
+++ trunk/packages/vim/upstream/patches/7.1.201 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,87 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.201
+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.201
+Problem:    When reading stdin 'fenc' and 'ff are not set.
+Solution:   Set the options after reading stdin. (Ben Schmidt)
+Files:	    src/fileio.c
+
+
+*** ../vim-7.1.200/src/fileio.c	Wed Jan  2 21:07:32 2008
+--- src/fileio.c	Fri Jan  4 16:18:27 2008
+***************
+*** 221,231 ****
+  {
+      int		fd = 0;
+      int		newfile = (flags & READ_NEW);
+-     int		set_options = newfile || (eap != NULL && eap->read_edit);
+      int		check_readonly;
+      int		filtering = (flags & READ_FILTER);
+      int		read_stdin = (flags & READ_STDIN);
+      int		read_buffer = (flags & READ_BUFFER);
+      linenr_T	read_buf_lnum = 1;	/* next line to read from curbuf */
+      colnr_T	read_buf_col = 0;	/* next char to read from this line */
+      char_u	c;
+--- 221,232 ----
+  {
+      int		fd = 0;
+      int		newfile = (flags & READ_NEW);
+      int		check_readonly;
+      int		filtering = (flags & READ_FILTER);
+      int		read_stdin = (flags & READ_STDIN);
+      int		read_buffer = (flags & READ_BUFFER);
++     int		set_options = newfile || read_buffer
++ 					   || (eap != NULL && eap->read_edit);
+      linenr_T	read_buf_lnum = 1;	/* next line to read from curbuf */
+      colnr_T	read_buf_col = 0;	/* next char to read from this line */
+      char_u	c;
+***************
+*** 650,657 ****
+  
+      if (set_options)
+      {
+! 	curbuf->b_p_eol = TRUE;
+! 	curbuf->b_start_eol = TRUE;
+  #ifdef FEAT_MBYTE
+  	curbuf->b_p_bomb = FALSE;
+  	curbuf->b_start_bomb = FALSE;
+--- 651,663 ----
+  
+      if (set_options)
+      {
+! 	/* Don't change 'eol' if reading from buffer as it will already be
+! 	 * correctly set when reading stdin. */
+! 	if (!read_buffer)
+! 	{
+! 	    curbuf->b_p_eol = TRUE;
+! 	    curbuf->b_start_eol = TRUE;
+! 	}
+  #ifdef FEAT_MBYTE
+  	curbuf->b_p_bomb = FALSE;
+  	curbuf->b_start_bomb = FALSE;
+*** ../vim-7.1.200/src/version.c	Fri Jan  4 16:00:10 2008
+--- src/version.c	Fri Jan  4 16:27:01 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     201,
+  /**/
+
+-- 
+A mathematician is a device for turning coffee into theorems.
+					Paul Erdos
+A computer programmer is a device for turning coffee into bugs.
+					Bram Moolenaar
+
+ /// 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.202
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.202?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.202 (added)
+++ trunk/packages/vim/upstream/patches/7.1.202 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,83 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.202
+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.202
+Problem:    Incomplete utf-8 byte sequence is not checked for validity.
+Solution:   Check the bytes that are present for being valid. (Ben Schmidt)
+Files:	    src/mbyte.c
+
+
+*** ../vim-7.1.201/src/mbyte.c	Thu Aug 30 13:51:52 2007
+--- src/mbyte.c	Fri Jan  4 17:30:16 2008
+***************
+*** 1642,1648 ****
+   * Get the length of UTF-8 byte sequence "p[size]".  Does not include any
+   * following composing characters.
+   * Returns 1 for "".
+!  * Returns 1 for an illegal byte sequence.
+   * Returns number > "size" for an incomplete byte sequence.
+   */
+      int
+--- 1642,1648 ----
+   * Get the length of UTF-8 byte sequence "p[size]".  Does not include any
+   * following composing characters.
+   * Returns 1 for "".
+!  * Returns 1 for an illegal byte sequence (also in incomplete byte seq.).
+   * Returns number > "size" for an incomplete byte sequence.
+   */
+      int
+***************
+*** 1652,1664 ****
+  {
+      int		len;
+      int		i;
+  
+      if (*p == NUL)
+  	return 1;
+!     len = utf8len_tab[*p];
+      if (len > size)
+! 	return len;	/* incomplete byte sequence. */
+!     for (i = 1; i < len; ++i)
+  	if ((p[i] & 0xc0) != 0x80)
+  	    return 1;
+      return len;
+--- 1652,1665 ----
+  {
+      int		len;
+      int		i;
++     int		m;
+  
+      if (*p == NUL)
+  	return 1;
+!     m = len = utf8len_tab[*p];
+      if (len > size)
+! 	m = size;	/* incomplete byte sequence. */
+!     for (i = 1; i < m; ++i)
+  	if ((p[i] & 0xc0) != 0x80)
+  	    return 1;
+      return len;
+*** ../vim-7.1.201/src/version.c	Fri Jan  4 16:30:40 2008
+--- src/version.c	Fri Jan  4 17:45:33 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     202,
+  /**/
+
+-- 
+A computer programmer is a device for turning requirements into
+undocumented features.  It runs on cola, pizza and Dilbert cartoons.
+					Bram Moolenaar
+
+ /// 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.203
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.203?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.203 (added)
+++ trunk/packages/vim/upstream/patches/7.1.203 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,68 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.203
+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.203
+Problem:    When 'virtualedit' is "onemore" then "99|" works but ":normal 99|"
+	    doesn't.  (Andy Wokula)
+Solution:   Check for "onemore" flag in check_cursor_col().
+Files:	    src/misc2.c
+
+
+*** ../vim-7.1.202/src/misc2.c	Sat Nov 24 21:27:33 2007
+--- src/misc2.c	Fri Jan  4 21:24:46 2008
+***************
+*** 507,517 ****
+  	curwin->w_cursor.col = 0;
+      else if (curwin->w_cursor.col >= len)
+      {
+! 	/* Allow cursor past end-of-line in Insert mode, restarting Insert
+! 	 * mode or when in Visual mode and 'selection' isn't "old" */
+  	if ((State & INSERT) || restart_edit
+  #ifdef FEAT_VISUAL
+  		|| (VIsual_active && *p_sel != 'o')
+  #endif
+  		|| virtual_active())
+  	    curwin->w_cursor.col = len;
+--- 508,523 ----
+  	curwin->w_cursor.col = 0;
+      else if (curwin->w_cursor.col >= len)
+      {
+! 	/* Allow cursor past end-of-line when:
+! 	 * - in Insert mode or restarting Insert mode
+! 	 * - in Visual mode and 'selection' isn't "old"
+! 	 * - 'virtualedit' is set */
+  	if ((State & INSERT) || restart_edit
+  #ifdef FEAT_VISUAL
+  		|| (VIsual_active && *p_sel != 'o')
++ #endif
++ #ifdef FEAT_VIRTUALEDIT
++ 		|| (ve_flags & VE_ONEMORE)
+  #endif
+  		|| virtual_active())
+  	    curwin->w_cursor.col = len;
+*** ../vim-7.1.202/src/version.c	Fri Jan  4 17:46:46 2008
+--- src/version.c	Fri Jan  4 21:22:29 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     203,
+  /**/
+
+-- 
+`When any government, or any church for that matter, undertakes to say to
+ its subjects, "This you may not read, this you must not see, this you are
+ forbidden to know," the end result is tyranny and oppression no matter how
+ holy the motives' -- Robert A Heinlein, "If this goes on --"
+
+ /// 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.204
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.204?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.204 (added)
+++ trunk/packages/vim/upstream/patches/7.1.204 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,74 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.204 (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.204 (extra)
+Problem:    Win32: Using the example at 'balloonexpr' the balloon disappears
+	    after four seconds and then comes back again.  Also moves the
+	    mouse pointer a little bit.  (Yongwei Wu)
+Solution:   Set the autopop time to 30 seconds (the max value).  (Sergey
+	    Khorev)  Move the mouse two pixels forward and one back to end up
+	    in the same position (really!).
+Files:	    src/gui_w32.c
+
+
+
+*** ../vim-7.1.203/src/gui_w32.c	Thu Jan  3 20:44:35 2008
+--- src/gui_w32.c	Sat Jan  5 13:09:56 2008
+***************
+*** 4575,4585 ****
+      SendMessage(beval->balloon, TTM_ADDTOOL, 0, (LPARAM)pti);
+      /* Make tooltip appear sooner */
+      SendMessage(beval->balloon, TTM_SETDELAYTIME, TTDT_INITIAL, 10);
+      /*
+       * HACK: force tooltip to appear, because it'll not appear until
+       * first mouse move. D*mn M$
+       */
+!     mouse_event(MOUSEEVENTF_MOVE, 1, 1, 0, 0);
+      mouse_event(MOUSEEVENTF_MOVE, (DWORD)-1, (DWORD)-1, 0, 0);
+      vim_free(pti);
+  }
+--- 4575,4589 ----
+      SendMessage(beval->balloon, TTM_ADDTOOL, 0, (LPARAM)pti);
+      /* Make tooltip appear sooner */
+      SendMessage(beval->balloon, TTM_SETDELAYTIME, TTDT_INITIAL, 10);
++     /* I've performed some tests and it seems the longest possible life time
++      * of tooltip is 30 seconds */
++     SendMessage(beval->balloon, TTM_SETDELAYTIME, TTDT_AUTOPOP, 30000);
+      /*
+       * HACK: force tooltip to appear, because it'll not appear until
+       * first mouse move. D*mn M$
++      * Amazingly moving (2, 2) and then (-1, -1) the mouse doesn't move.
+       */
+!     mouse_event(MOUSEEVENTF_MOVE, 2, 2, 0, 0);
+      mouse_event(MOUSEEVENTF_MOVE, (DWORD)-1, (DWORD)-1, 0, 0);
+      vim_free(pti);
+  }
+*** ../vim-7.1.203/src/version.c	Fri Jan  4 21:25:01 2008
+--- src/version.c	Sat Jan  5 13:12:22 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     204,
+  /**/
+
+-- 
+WOMAN:   I didn't know we had a king. I thought we were an autonomous
+         collective.
+DENNIS:  You're fooling yourself.  We're living in a dictatorship.  A
+         self-perpetuating autocracy in which the working classes--
+WOMAN:   Oh there you go, bringing class into it again.
+DENNIS:  That's what it's all about if only people would--
+                                  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.205
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.205?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.205 (added)
+++ trunk/packages/vim/upstream/patches/7.1.205 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,181 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.205
+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.205
+Problem:    Can't get the operator in an ":omap".
+Solution:   Add the "v:operator" variable. (Ben Schmidt)
+Files:	    runtime/doc/eval.txt, src/eval.c, src/normal.c, src/vim.h
+
+
+*** ../vim-7.1.204/runtime/doc/eval.txt	Tue Sep 25 17:54:41 2007
+--- runtime/doc/eval.txt	Fri Jan  4 20:38:55 2008
+***************
+*** 1,4 ****
+! *eval.txt*      For Vim version 7.1.  Last change: 2007 Sep 25
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+--- 1,4 ----
+! *eval.txt*      For Vim version 7.1.  Last change: 2008 Jan 04
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+***************
+*** 1401,1410 ****
+  		This is the screen column number, like with |virtcol()|.  The
+  		value is zero when there was no mouse button click.
+  
+  					*v:prevcount* *prevcount-variable*
+  v:prevcount	The count given for the last but one Normal mode command.
+  		This is the v:count value of the previous command.  Useful if
+! 		you want to cancel Visual mode and then use the count. >
+  			:vmap % <Esc>:call MyFilter(v:prevcount)<CR>
+  <		Read-only.
+  
+--- 1401,1424 ----
+  		This is the screen column number, like with |virtcol()|.  The
+  		value is zero when there was no mouse button click.
+  
++ 					*v:operator* *operator-variable*
++ v:operator	The last operator given in Normal mode.  This is a single
++ 		character except for commands starting with <g> or <z>,
++ 		in which case it is two characters.  Best used alongside
++ 		|v:prevcount| and |v:register|.  Useful if you want to cancel
++ 		Operator-pending mode and then use the operator, e.g.: >
++ 			:omap O <Esc>:call MyMotion(v:operator)<CR>
++ <		The value remains set until another operator is entered, thus
++ 		don't expect it to be empty.
++ 		v:operator is not set for |:delete|, |:yank| or other Ex
++ 		commands.
++ 		Read-only.
++ 
+  					*v:prevcount* *prevcount-variable*
+  v:prevcount	The count given for the last but one Normal mode command.
+  		This is the v:count value of the previous command.  Useful if
+! 		you want to cancel Visual or Operator-pending mode and then
+! 		use the count, e.g.: >
+  			:vmap % <Esc>:call MyFilter(v:prevcount)<CR>
+  <		Read-only.
+  
+*** ../vim-7.1.204/src/eval.c	Fri Dec  7 17:08:35 2007
+--- src/eval.c	Sat Jan  5 13:22:52 2008
+***************
+*** 345,350 ****
+--- 345,351 ----
+      {VV_NAME("mouse_win",	 VAR_NUMBER), 0},
+      {VV_NAME("mouse_lnum",	 VAR_NUMBER), 0},
+      {VV_NAME("mouse_col",	 VAR_NUMBER), 0},
++     {VV_NAME("operator",	 VAR_STRING), VV_RO},
+  };
+  
+  /* shorthand */
+*** ../vim-7.1.204/src/normal.c	Thu Jan  3 13:19:50 2008
+--- src/normal.c	Fri Jan  4 20:53:43 2008
+***************
+*** 141,146 ****
+--- 141,149 ----
+  static void	nv_Undo __ARGS((cmdarg_T *cap));
+  static void	nv_tilde __ARGS((cmdarg_T *cap));
+  static void	nv_operator __ARGS((cmdarg_T *cap));
++ #ifdef FEAT_EVAL
++ static void	set_op_var __ARGS((int optype));
++ #endif
+  static void	nv_lineop __ARGS((cmdarg_T *cap));
+  static void	nv_home __ARGS((cmdarg_T *cap));
+  static void	nv_pipe __ARGS((cmdarg_T *cap));
+***************
+*** 7180,7185 ****
+--- 7183,7191 ----
+  	{
+  	    cap->oap->start = curwin->w_cursor;
+  	    cap->oap->op_type = OP_DELETE;
++ #ifdef FEAT_EVAL
++ 	    set_op_var(OP_DELETE);
++ #endif
+  	    cap->count1 = 1;
+  	    nv_dollar(cap);
+  	    finish_op = TRUE;
+***************
+*** 8219,8226 ****
+--- 8225,8257 ----
+      {
+  	cap->oap->start = curwin->w_cursor;
+  	cap->oap->op_type = op_type;
++ #ifdef FEAT_EVAL
++ 	set_op_var(op_type);
++ #endif
++     }
++ }
++ 
++ #ifdef FEAT_EVAL
++ /*
++  * Set v:operator to the characters for "optype".
++  */
++     static void
++ set_op_var(optype)
++     int optype;
++ {
++     char_u	opchars[3];
++ 
++     if (optype == OP_NOP)
++ 	set_vim_var_string(VV_OP, NULL, 0);
++     else
++     {
++ 	opchars[0] = get_op_char(optype);
++ 	opchars[1] = get_extra_op_char(optype);
++ 	opchars[2] = NUL;
++ 	set_vim_var_string(VV_OP, opchars, -1);
+      }
+  }
++ #endif
+  
+  /*
+   * Handle linewise operator "dd", "yy", etc.
+*** ../vim-7.1.204/src/vim.h	Sat Aug 11 13:57:31 2007
+--- src/vim.h	Fri Jan  4 19:11:31 2008
+***************
+*** 1688,1694 ****
+  #define VV_MOUSE_WIN	49
+  #define VV_MOUSE_LNUM   50
+  #define VV_MOUSE_COL	51
+! #define VV_LEN		52	/* number of v: vars */
+  
+  #ifdef FEAT_CLIPBOARD
+  
+--- 1688,1695 ----
+  #define VV_MOUSE_WIN	49
+  #define VV_MOUSE_LNUM   50
+  #define VV_MOUSE_COL	51
+! #define VV_OP		52
+! #define VV_LEN		53	/* number of v: vars */
+  
+  #ifdef FEAT_CLIPBOARD
+  
+*** ../vim-7.1.204/src/version.c	Sat Jan  5 13:15:08 2008
+--- src/version.c	Sat Jan  5 13:31:49 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     205,
+  /**/
+
+-- 
+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.206
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.206?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.206 (added)
+++ trunk/packages/vim/upstream/patches/7.1.206 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,59 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.206
+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.206
+Problem:    Compiler warnings when using MODIFIED_BY.
+Solution:   Add type casts. (Ben Schmidt)
+Files:	    src/version.c
+
+
+*** ../vim-7.1.205/src/version.c	Sat Jan  5 13:34:01 2008
+--- src/version.c	Sat Jan  5 13:56:55 2008
+***************
+*** 1587,1595 ****
+  
+      if (*mesg == ' ')
+      {
+! 	vim_strncpy(modby, _("Modified by "), MODBY_LEN - 1);
+  	l = STRLEN(modby);
+! 	vim_strncpy(modby + l, MODIFIED_BY, MODBY_LEN - l - 1);
+  	mesg = modby;
+      }
+  #endif
+--- 1589,1597 ----
+  
+      if (*mesg == ' ')
+      {
+! 	vim_strncpy(modby, (char_u *)_("Modified by "), MODBY_LEN - 1);
+  	l = STRLEN(modby);
+! 	vim_strncpy(modby + l, (char_u *)MODIFIED_BY, MODBY_LEN - l - 1);
+  	mesg = modby;
+      }
+  #endif
+*** ../vim-7.1.205/src/version.c	Sat Jan  5 13:34:01 2008
+--- src/version.c	Sat Jan  5 13:56:55 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     206,
+  /**/
+
+-- 
+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.207
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.207?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.207 (added)
+++ trunk/packages/vim/upstream/patches/7.1.207 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,253 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.207
+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.207
+Problem:    Netbeans: "remove" cannot delete one line. 
+Solution:   Remove partial lines and whole lines properly.  Avoid a memory
+	    leak.  (Xavier de Gaye)
+Files:	    src/netbeans.c
+
+
+*** ../vim-7.1.206/src/netbeans.c	Thu May 10 18:40:48 2007
+--- src/netbeans.c	Sat Jan  5 18:03:24 2008
+***************
+*** 1204,1209 ****
+--- 1204,1257 ----
+      return result;
+  }
+  
++ /*
++  * Remove from "first" byte to "last" byte (inclusive), at line "lnum" of the
++  * current buffer.  Remove to end of line when "last" is MAXCOL.
++  */
++     static void
++ nb_partialremove(linenr_T lnum, colnr_T first, colnr_T last)
++ {
++     char_u *oldtext, *newtext;
++     int oldlen;
++     int lastbyte = last;
++ 
++     oldtext = ml_get(lnum);
++     oldlen = STRLEN(oldtext);
++     if (first >= oldlen || oldlen == 0)  /* just in case */
++ 	return;
++     if (lastbyte >= oldlen)
++ 	lastbyte = oldlen - 1;
++     newtext = alloc(oldlen - (int)(lastbyte - first));
++     if (newtext != NULL)
++     {
++ 	mch_memmove(newtext, oldtext, first);
++ 	mch_memmove(newtext + first, oldtext + lastbyte + 1, STRLEN(oldtext + lastbyte + 1) + 1);
++ 	nbdebug(("    NEW LINE %d: %s\n", lnum, newtext));
++ 	ml_replace(lnum, newtext, FALSE);
++     }
++ }
++ 
++ /*
++  * Replace the "first" line with the concatenation of the "first" and
++  * the "other" line. The "other" line is not removed.
++  */
++     static void
++ nb_joinlines(linenr_T first, linenr_T other)
++ {
++     int len_first, len_other;
++     char_u *p;
++ 
++     len_first = STRLEN(ml_get(first));
++     len_other = STRLEN(ml_get(other));
++     p = alloc((unsigned)(len_first + len_other + 1));
++     if (p != NULL)
++     {
++       mch_memmove(p, ml_get(first), len_first);
++       mch_memmove(p + len_first, ml_get(other), len_other + 1);
++       ml_replace(first, p, FALSE);
++     }
++ }
++ 
+  #define SKIP_STOP 2
+  #define streq(a,b) (strcmp(a,b) == 0)
+  static int needupdate = 0;
+***************
+*** 1371,1376 ****
+--- 1419,1426 ----
+  	    long count;
+  	    pos_T first, last;
+  	    pos_T *pos;
++ 	    pos_T *next;
++ 	    linenr_T del_from_lnum, del_to_lnum;  /* lines to be deleted as a whole */
+  	    int oldFire = netbeansFireChanges;
+  	    int oldSuppress = netbeansSuppressNoLines;
+  	    int wasChanged;
+***************
+*** 1420,1444 ****
+  		}
+  		last = *pos;
+  		nbdebug(("    LAST POS: line %d, col %d\n", last.lnum, last.col));
+! 		curwin->w_cursor = first;
+  		doupdate = 1;
+  
+! 		/* keep part of first line */
+! 		if (first.lnum == last.lnum && first.col != last.col)
+  		{
+! 		    /* deletion is within one line */
+! 		    char_u *p = ml_get(first.lnum);
+! 		    mch_memmove(p + first.col, p + last.col + 1, STRLEN(p + last.col) + 1);
+! 		    nbdebug(("    NEW LINE %d: %s\n", first.lnum, p));
+! 		    ml_replace(first.lnum, p, TRUE);
+  		}
+  
+! 		if (first.lnum < last.lnum)
+  		{
+  		    int i;
+  
+  		    /* delete signs from the lines being deleted */
+! 		    for (i = first.lnum; i <= last.lnum; i++)
+  		    {
+  			int id = buf_findsign_id(buf->bufp, (linenr_T)i);
+  			if (id > 0)
+--- 1470,1544 ----
+  		}
+  		last = *pos;
+  		nbdebug(("    LAST POS: line %d, col %d\n", last.lnum, last.col));
+! 		del_from_lnum = first.lnum;
+! 		del_to_lnum = last.lnum;
+  		doupdate = 1;
+  
+! 		/* Get the position of the first byte after the deleted
+! 		 * section.  "next" is NULL when deleting to the end of the
+! 		 * file. */
+! 		next = off2pos(buf->bufp, off + count);
+! 
+! 		/* Remove part of the first line. */
+! 		if (first.col != 0 || (next != NULL && first.lnum == next->lnum))
+  		{
+! 		    if (first.lnum != last.lnum
+! 			    || (next != NULL && first.lnum != next->lnum))
+! 		    {
+! 			/* remove to the end of the first line */
+! 			nb_partialremove(first.lnum, first.col,
+! 							     (colnr_T)MAXCOL);
+! 			if (first.lnum == last.lnum)
+! 			{
+! 			    /* Partial line to remove includes the end of
+! 			     * line.  Join the line with the next one, have
+! 			     * the next line deleted below. */
+! 			    nb_joinlines(first.lnum, next->lnum);
+! 			    del_to_lnum = next->lnum;
+! 			}
+! 		    }
+! 		    else
+! 		    {
+! 			/* remove within one line */
+! 			nb_partialremove(first.lnum, first.col, last.col);
+! 		    }
+! 		    ++del_from_lnum;  /* don't delete the first line */
+! 		}
+! 
+! 		/* Remove part of the last line. */
+! 		if (first.lnum != last.lnum && next != NULL
+! 			&& next->col != 0 && last.lnum == next->lnum)
+! 		{
+! 		    nb_partialremove(last.lnum, 0, last.col);
+! 		    if (del_from_lnum > first.lnum)
+! 		    {
+! 			/* Join end of last line to start of first line; last
+! 			 * line is deleted below. */
+! 			nb_joinlines(first.lnum, last.lnum);
+! 		    }
+! 		    else
+! 			/* First line is deleted as a whole, keep the last
+! 			 * line. */
+! 			--del_to_lnum;
+  		}
+  
+! 		/* First is partial line; last line to remove includes
+! 		 * the end of line; join first line to line following last
+! 		 * line; line following last line is deleted below. */
+! 		if (first.lnum != last.lnum && del_from_lnum > first.lnum
+! 			&& next != NULL && last.lnum != next->lnum)
+! 		{
+! 		    nb_joinlines(first.lnum, next->lnum);
+! 		    del_to_lnum = next->lnum;
+! 		}
+! 
+! 		/* Delete whole lines if there are any. */
+! 		if (del_to_lnum >= del_from_lnum)
+  		{
+  		    int i;
+  
+  		    /* delete signs from the lines being deleted */
+! 		    for (i = del_from_lnum; i <= del_to_lnum; i++)
+  		    {
+  			int id = buf_findsign_id(buf->bufp, (linenr_T)i);
+  			if (id > 0)
+***************
+*** 1450,1459 ****
+  			    nbdebug(("    No sign on line %d\n", i));
+  		    }
+  
+! 		    /* delete whole lines */
+! 		    nbdebug(("    Deleting lines %d through %d\n", first.lnum, last.lnum));
+! 		    del_lines(last.lnum - first.lnum + 1, FALSE);
+  		}
+  		buf->bufp->b_changed = wasChanged; /* logically unchanged */
+  		netbeansFireChanges = oldFire;
+  		netbeansSuppressNoLines = oldSuppress;
+--- 1550,1564 ----
+  			    nbdebug(("    No sign on line %d\n", i));
+  		    }
+  
+! 		    nbdebug(("    Deleting lines %d through %d\n", del_from_lnum, del_to_lnum));
+! 		    curwin->w_cursor.lnum = del_from_lnum;
+! 		    curwin->w_cursor.col = 0;
+! 		    del_lines(del_to_lnum - del_from_lnum + 1, FALSE);
+  		}
++ 
++ 		/* Leave cursor at first deleted byte. */
++ 		curwin->w_cursor = first;
++ 		check_cursor_lnum();
+  		buf->bufp->b_changed = wasChanged; /* logically unchanged */
+  		netbeansFireChanges = oldFire;
+  		netbeansSuppressNoLines = oldSuppress;
+***************
+*** 2374,2381 ****
+   * the current buffer as "buf".
+   */
+      static void
+! nb_set_curbuf(buf)
+!     buf_T *buf;
+  {
+      if (curbuf != buf && buf_jump_open_win(buf) == NULL)
+  	set_curbuf(buf, DOBUF_GOTO);
+--- 2479,2485 ----
+   * the current buffer as "buf".
+   */
+      static void
+! nb_set_curbuf(buf_T *buf)
+  {
+      if (curbuf != buf && buf_jump_open_win(buf) == NULL)
+  	set_curbuf(buf, DOBUF_GOTO);
+*** ../vim-7.1.206/src/version.c	Sat Jan  5 13:58:48 2008
+--- src/version.c	Sat Jan  5 18:06:04 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     207,
+  /**/
+
+-- 
+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    ///

Added: trunk/packages/vim/upstream/patches/7.1.208
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.208?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.208 (added)
+++ trunk/packages/vim/upstream/patches/7.1.208 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,69 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.208
+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.208
+Problem:    On Alpha get an unaligned access error.
+Solution:   Store the dictitem pointer before using it. (Matthew Luckie)
+Files:	    src/eval.c
+
+
+*** ../vim-7.1.207/src/eval.c	Sat Jan  5 13:34:01 2008
+--- src/eval.c	Sat Jan  5 13:22:52 2008
+***************
+*** 3407,3412 ****
+--- 3407,3413 ----
+      hashtab_T	*ht;
+      hashitem_T	*hi;
+      char_u	*varname;
++     dictitem_T	*di;
+  
+      ht = find_var_ht(name, &varname);
+      if (ht != NULL && *varname != NUL)
+***************
+*** 3414,3422 ****
+  	hi = hash_find(ht, varname);
+  	if (!HASHITEM_EMPTY(hi))
+  	{
+! 	    if (var_check_fixed(HI2DI(hi)->di_flags, name))
+! 		return FAIL;
+! 	    if (var_check_ro(HI2DI(hi)->di_flags, name))
+  		return FAIL;
+  	    delete_var(ht, hi);
+  	    return OK;
+--- 3415,3423 ----
+  	hi = hash_find(ht, varname);
+  	if (!HASHITEM_EMPTY(hi))
+  	{
+! 	    di = HI2DI(hi);
+! 	    if (var_check_fixed(di->di_flags, name)
+! 		    || var_check_ro(di->di_flags, name))
+  		return FAIL;
+  	    delete_var(ht, hi);
+  	    return OK;
+*** ../vim-7.1.207/src/version.c	Sat Jan  5 18:06:33 2008
+--- src/version.c	Sat Jan  5 22:14:17 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     208,
+  /**/
+
+-- 
+ARTHUR:  Bloody peasant!
+DENNIS:  Oh, what a give away.  Did you here that, did you here that, eh?
+         That's what I'm on about -- did you see him repressing me, you saw it
+         didn't you?
+                                  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.209
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.209?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.209 (added)
+++ trunk/packages/vim/upstream/patches/7.1.209 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,71 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.209
+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.209
+Problem:    GTK: When using the netrw plugin and doing ":gui" Vim hangs.
+Solution:   Stop getting a selection after three seconds.  This is a hack.
+Files:	    src/gui_gtk_x11.c
+
+
+*** ../vim-7.1.208/src/gui_gtk_x11.c	Fri Oct 19 14:32:50 2007
+--- src/gui_gtk_x11.c	Sun Jan  6 15:15:52 2008
+***************
+*** 6660,6665 ****
+--- 6660,6666 ----
+      unsigned	i;
+      int		nbytes;
+      char_u	*buffer;
++     time_t	start;
+  
+      for (i = 0; i < N_SELECTION_TARGETS; ++i)
+      {
+***************
+*** 6670,6676 ****
+  			      cbd->gtk_sel_atom, target,
+  			      (guint32)GDK_CURRENT_TIME);
+  
+! 	while (received_selection == RS_NONE)
+  	    gtk_main();	/* wait for selection_received_cb */
+  
+  	if (received_selection != RS_FAIL)
+--- 6671,6681 ----
+  			      cbd->gtk_sel_atom, target,
+  			      (guint32)GDK_CURRENT_TIME);
+  
+! 	/* Hack: Wait up to three seconds for the selection.  A hang was
+! 	 * noticed here when using the netrw plugin combined with ":gui"
+! 	 * during the FocusGained event. */
+! 	start = time(NULL);
+! 	while (received_selection == RS_NONE && time(NULL) < start + 3)
+  	    gtk_main();	/* wait for selection_received_cb */
+  
+  	if (received_selection != RS_FAIL)
+*** ../vim-7.1.208/src/version.c	Sat Jan  5 22:15:21 2008
+--- src/version.c	Sun Jan  6 15:14:48 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     209,
+  /**/
+
+-- 
+BLACK KNIGHT:  I move for no man.
+ARTHUR:        So be it!
+    [hah] [parry thrust]
+    [ARTHUR chops the BLACK KNIGHT's left arm off]
+ARTHUR:        Now stand aside, worthy adversary.
+BLACK KNIGHT:  'Tis but a scratch.
+                                  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.210
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.210?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.210 (added)
+++ trunk/packages/vim/upstream/patches/7.1.210 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,74 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.210
+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.210
+Problem:    Listing mapping for 0xdb fails when 'encoding' is utf-8. (Tony
+	    Mechelynck)
+Solution:   Recognize K_SPECIAL KS_EXTRA KE_CSI as a CSI byte.
+Files:	    src/mbyte.c
+
+
+*** ../vim-7.1.209/src/mbyte.c	Fri Jan  4 17:46:46 2008
+--- src/mbyte.c	Sun Jan  6 17:13:51 2008
+***************
+*** 2863,2877 ****
+  	    buf[m++] = K_SPECIAL;
+  	    n += 2;
+  	}
+  # ifdef FEAT_GUI
+! 	else if (str[n] == CSI
+  		&& str[n + 1] == KS_EXTRA
+  		&& str[n + 2] == (int)KE_CSI)
+  	{
+  	    buf[m++] = CSI;
+  	    n += 2;
+  	}
+- # endif
+  	else if (str[n] == K_SPECIAL
+  # ifdef FEAT_GUI
+  		|| str[n] == CSI
+--- 2882,2898 ----
+  	    buf[m++] = K_SPECIAL;
+  	    n += 2;
+  	}
++ 	else if ((str[n] == K_SPECIAL
+  # ifdef FEAT_GUI
+! 		    || str[n] == CSI
+! # endif
+! 		 )
+  		&& str[n + 1] == KS_EXTRA
+  		&& str[n + 2] == (int)KE_CSI)
+  	{
+  	    buf[m++] = CSI;
+  	    n += 2;
+  	}
+  	else if (str[n] == K_SPECIAL
+  # ifdef FEAT_GUI
+  		|| str[n] == CSI
+*** ../vim-7.1.209/src/version.c	Sun Jan  6 15:16:12 2008
+--- src/version.c	Sun Jan  6 17:17:25 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     210,
+  /**/
+
+-- 
+ARTHUR:        A scratch?  Your arm's off!
+BLACK KNIGHT:  No, it isn't.
+ARTHUR:        Well, what's that then?
+BLACK KNIGHT:  I've had worse.
+                                  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.211
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.211?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.211 (added)
+++ trunk/packages/vim/upstream/patches/7.1.211 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,748 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.211
+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.211
+Problem:    The matchparen plugin may take an unexpected amount of time, so
+	    that it looks like Vim hangs.
+Solution:   Add a timeout to searchpair(), searchpairpos(), search() and
+	    searchpos().  Use half a second timeout in the plugin.
+Files:	    runtime/doc/eval.txt, runtime/plugin/matchparen.vim, src/edit.c,
+	    src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/normal.c,
+	    src/proto/eval.pro, src/proto/ex_cmds2.pro, src/proto/search.pro,
+	    src/search.c
+
+
+*** ../vim-7.1.210/runtime/doc/eval.txt	Sat Jan  5 13:34:01 2008
+--- runtime/doc/eval.txt	Sun Jan  6 16:27:33 2008
+***************
+*** 1,4 ****
+! *eval.txt*      For Vim version 7.1.  Last change: 2008 Jan 04
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+--- 1,4 ----
+! *eval.txt*      For Vim version 7.1.  Last change: 2008 Jan 06
+  
+  
+  		  VIM REFERENCE MANUAL    by Bram Moolenaar
+***************
+*** 1733,1746 ****
+  repeat( {expr}, {count})	String	repeat {expr} {count} times
+  resolve( {filename})		String	get filename a shortcut points to
+  reverse( {list})		List	reverse {list} in-place
+! search( {pattern} [, {flags}])	Number	search for {pattern}
+  searchdecl({name} [, {global} [, {thisblock}]])
+  				Number  search for variable declaration
+! searchpair( {start}, {middle}, {end} [, {flags} [, {skip} [, {stopline}]]])
+  				Number	search for other end of start/end pair
+! searchpairpos( {start}, {middle}, {end} [, {flags} [, {skip} [, {stopline}]]])
+  				List	search for other end of start/end pair
+! searchpos( {pattern} [, {flags} [, {stopline}]])
+  				List	search for {pattern}
+  server2client( {clientid}, {string})
+  				Number	send reply string
+--- 1733,1747 ----
+  repeat( {expr}, {count})	String	repeat {expr} {count} times
+  resolve( {filename})		String	get filename a shortcut points to
+  reverse( {list})		List	reverse {list} in-place
+! search( {pattern} [, {flags} [, {stopline} [, {timeout}]]])
+! 				Number	search for {pattern}
+  searchdecl({name} [, {global} [, {thisblock}]])
+  				Number  search for variable declaration
+! searchpair( {start}, {middle}, {end} [, {flags} [, {skip} [...]]])
+  				Number	search for other end of start/end pair
+! searchpairpos( {start}, {middle}, {end} [, {flags} [, {skip} [...]]])
+  				List	search for other end of start/end pair
+! searchpos( {pattern} [, {flags} [, {stopline} [, {timeout}]]])
+  				List	search for {pattern}
+  server2client( {clientid}, {string})
+  				Number	send reply string
+***************
+*** 4212,4218 ****
+  		If you want a list to remain unmodified make a copy first: >
+  			:let revlist = reverse(copy(mylist))
+  
+! search({pattern} [, {flags} [, {stopline}]])			*search()*
+  		Search for regexp pattern {pattern}.  The search starts at the
+  		cursor position (you can use |cursor()| to set it).
+  
+--- 4216,4222 ----
+  		If you want a list to remain unmodified make a copy first: >
+  			:let revlist = reverse(copy(mylist))
+  
+! search({pattern} [, {flags} [, {stopline} [, {timeout}]]])	*search()*
+  		Search for regexp pattern {pattern}.  The search starts at the
+  		cursor position (you can use |cursor()| to set it).
+  
+***************
+*** 4240,4245 ****
+--- 4244,4257 ----
+  			let end = search('END', '', line("w$"))
+  <		When {stopline} is used and it is not zero this also implies
+  		that the search does not wrap around the end of the file.
++ 		A zero value is equal to not giving the argument.
++ 
++ 		When the {timeout} argument is given the search stops when
++ 		more than this many milli seconds have passed.  Thus when
++ 		{timeout} is 500 the search stops after half a second.
++ 		The value must not be negative.  A zero value is like not
++ 		giving the argument.
++ 		{only available when compiled with the +reltime feature}
+  
+  		If there is no match a 0 is returned and the cursor doesn't
+  		move.  No error message is given.
+***************
+*** 4302,4308 ****
+  			endif
+  <
+  							*searchpair()*
+! searchpair({start}, {middle}, {end} [, {flags} [, {skip} [, {stopline}]]])
+  		Search for the match of a nested start-end pair.  This can be
+  		used to find the "endif" that matches an "if", while other
+  		if/endif pairs in between are ignored.
+--- 4314,4321 ----
+  			endif
+  <
+  							*searchpair()*
+! searchpair({start}, {middle}, {end} [, {flags} [, {skip}
+! 				[, {stopline} [, {timeout}]]]])
+  		Search for the match of a nested start-end pair.  This can be
+  		used to find the "endif" that matches an "if", while other
+  		if/endif pairs in between are ignored.
+***************
+*** 4337,4343 ****
+  		When evaluating {skip} causes an error the search is aborted
+  		and -1 returned.
+  
+! 		For {stopline} see |search()|.
+  
+  		The value of 'ignorecase' is used.  'magic' is ignored, the
+  		patterns are used like it's on.
+--- 4350,4356 ----
+  		When evaluating {skip} causes an error the search is aborted
+  		and -1 returned.
+  
+! 		For {stopline} and {timeout} see |search()|.
+  
+  		The value of 'ignorecase' is used.  'magic' is ignored, the
+  		patterns are used like it's on.
+***************
+*** 4383,4389 ****
+  	     \ 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string"')
+  <
+  							*searchpairpos()*
+! searchpairpos({start}, {middle}, {end} [, {flags} [, {skip} [, {stopline}]]])
+  		Same as searchpair(), but returns a |List| with the line and
+  		column position of the match. The first element of the |List|
+  		is the line number and the second element is the byte index of
+--- 4396,4403 ----
+  	     \ 'synIDattr(synID(line("."), col("."), 0), "name") =~? "string"')
+  <
+  							*searchpairpos()*
+! searchpairpos({start}, {middle}, {end} [, {flags} [, {skip}
+! 				[, {stopline} [, {timeout}]]]])
+  		Same as searchpair(), but returns a |List| with the line and
+  		column position of the match. The first element of the |List|
+  		is the line number and the second element is the byte index of
+***************
+*** 4394,4400 ****
+  <
+  		See |match-parens| for a bigger and more useful example.
+  
+! searchpos({pattern} [, {flags} [, {stopline}]])		*searchpos()*
+  		Same as |search()|, but returns a |List| with the line and
+  		column position of the match. The first element of the |List|
+  		is the line number and the second element is the byte index of
+--- 4408,4414 ----
+  <
+  		See |match-parens| for a bigger and more useful example.
+  
+! searchpos({pattern} [, {flags} [, {stopline} [, {timeout}]]])	*searchpos()*
+  		Same as |search()|, but returns a |List| with the line and
+  		column position of the match. The first element of the |List|
+  		is the line number and the second element is the byte index of
+*** ../vim-7.1.210/runtime/plugin/matchparen.vim	Sat Aug 18 18:20:57 2007
+--- runtime/plugin/matchparen.vim	Sun Jan  6 16:22:39 2008
+***************
+*** 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)
+--- 1,6 ----
+  " Vim plugin for showing matching parens
+  " Maintainer:  Bram Moolenaar <Bram at vim.org>
+! " Last Change: 2008 Jan 06
+  
+  " Exit quickly when:
+  " - this plugin was already loaded (or disabled)
+***************
+*** 111,117 ****
+  	\ '=~?  "string\\|character\\|singlequote\\|comment"'
+    execute 'if' s_skip '| let s_skip = 0 | endif'
+  
+!   let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline)
+  
+    if before > 0
+      call winrestview(save_cursor)
+--- 111,122 ----
+  	\ '=~?  "string\\|character\\|singlequote\\|comment"'
+    execute 'if' s_skip '| let s_skip = 0 | endif'
+  
+!   try
+!     " Limit the search time to 500 msec to avoid a hang on very long lines.
+!     let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline, 500)
+!   catch /E118/
+!     let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline)
+!   endtry
+  
+    if before > 0
+      call winrestview(save_cursor)
+*** ../vim-7.1.210/src/edit.c	Wed Jan  2 22:08:43 2008
+--- src/edit.c	Sun Jan  6 16:08:00 2008
+***************
+*** 4062,4068 ****
+  		    found_new_match = searchit(NULL, ins_buf, pos,
+  							      compl_direction,
+  				 compl_pattern, 1L, SEARCH_KEEP + SEARCH_NFMSG,
+! 							RE_LAST, (linenr_T)0);
+  		--msg_silent;
+  		if (!compl_started)
+  		{
+--- 4062,4068 ----
+  		    found_new_match = searchit(NULL, ins_buf, pos,
+  							      compl_direction,
+  				 compl_pattern, 1L, SEARCH_KEEP + SEARCH_NFMSG,
+! 						  RE_LAST, (linenr_T)0, NULL);
+  		--msg_silent;
+  		if (!compl_started)
+  		{
+*** ../vim-7.1.210/src/eval.c	Sat Jan  5 22:15:21 2008
+--- src/eval.c	Sun Jan  6 16:37:42 2008
+***************
+*** 7213,7223 ****
+      {"repeat",		2, 2, f_repeat},
+      {"resolve",		1, 1, f_resolve},
+      {"reverse",		1, 1, f_reverse},
+!     {"search",		1, 3, f_search},
+      {"searchdecl",	1, 3, f_searchdecl},
+!     {"searchpair",	3, 6, f_searchpair},
+!     {"searchpairpos",	3, 6, f_searchpairpos},
+!     {"searchpos",	1, 3, f_searchpos},
+      {"server2client",	2, 2, f_server2client},
+      {"serverlist",	0, 0, f_serverlist},
+      {"setbufvar",	3, 3, f_setbufvar},
+--- 7213,7223 ----
+      {"repeat",		2, 2, f_repeat},
+      {"resolve",		1, 1, f_resolve},
+      {"reverse",		1, 1, f_reverse},
+!     {"search",		1, 4, f_search},
+      {"searchdecl",	1, 3, f_searchdecl},
+!     {"searchpair",	3, 7, f_searchpair},
+!     {"searchpairpos",	3, 7, f_searchpairpos},
+!     {"searchpos",	1, 4, f_searchpos},
+      {"server2client",	2, 2, f_server2client},
+      {"serverlist",	0, 0, f_serverlist},
+      {"setbufvar",	3, 3, f_setbufvar},
+***************
+*** 14020,14025 ****
+--- 14020,14029 ----
+      int		dir;
+      int		retval = 0;	/* default: FAIL */
+      long	lnum_stop = 0;
++     proftime_T	tm;
++ #ifdef FEAT_RELTIME
++     long	time_limit = 0;
++ #endif
+      int		options = SEARCH_KEEP;
+      int		subpatnum;
+  
+***************
+*** 14033,14047 ****
+      if (flags & SP_END)
+  	options |= SEARCH_END;
+  
+!     /* Optional extra argument: line number to stop searching. */
+!     if (argvars[1].v_type != VAR_UNKNOWN
+! 	    && argvars[2].v_type != VAR_UNKNOWN)
+      {
+  	lnum_stop = get_tv_number_chk(&argvars[2], NULL);
+  	if (lnum_stop < 0)
+  	    goto theend;
+      }
+  
+      /*
+       * This function does not accept SP_REPEAT and SP_RETCOUNT flags.
+       * Check to make sure only those flags are set.
+--- 14037,14063 ----
+      if (flags & SP_END)
+  	options |= SEARCH_END;
+  
+!     /* Optional arguments: line number to stop searching and timeout. */
+!     if (argvars[1].v_type != VAR_UNKNOWN && argvars[2].v_type != VAR_UNKNOWN)
+      {
+  	lnum_stop = get_tv_number_chk(&argvars[2], NULL);
+  	if (lnum_stop < 0)
+  	    goto theend;
++ #ifdef FEAT_RELTIME
++ 	if (argvars[3].v_type != VAR_UNKNOWN)
++ 	{
++ 	    time_limit = get_tv_number_chk(&argvars[3], NULL);
++ 	    if (time_limit < 0)
++ 		goto theend;
++ 	}
++ #endif
+      }
+  
++ #ifdef FEAT_RELTIME
++     /* Set the time limit, if there is one. */
++     profile_setlimit(time_limit, &tm);
++ #endif
++ 
+      /*
+       * This function does not accept SP_REPEAT and SP_RETCOUNT flags.
+       * Check to make sure only those flags are set.
+***************
+*** 14057,14063 ****
+  
+      pos = save_cursor = curwin->w_cursor;
+      subpatnum = searchit(curwin, curbuf, &pos, dir, pat, 1L,
+! 				     options, RE_SEARCH, (linenr_T)lnum_stop);
+      if (subpatnum != FAIL)
+      {
+  	if (flags & SP_SUBPAT)
+--- 14073,14079 ----
+  
+      pos = save_cursor = curwin->w_cursor;
+      subpatnum = searchit(curwin, curbuf, &pos, dir, pat, 1L,
+! 				options, RE_SEARCH, (linenr_T)lnum_stop, &tm);
+      if (subpatnum != FAIL)
+      {
+  	if (flags & SP_SUBPAT)
+***************
+*** 14147,14152 ****
+--- 14163,14169 ----
+      char_u	nbuf3[NUMBUFLEN];
+      int		retval = 0;		/* default: FAIL */
+      long	lnum_stop = 0;
++     long	time_limit = 0;
+  
+      /* Get the three pattern arguments: start, middle, end. */
+      spat = get_tv_string_chk(&argvars[0]);
+***************
+*** 14182,14194 ****
+  	    lnum_stop = get_tv_number_chk(&argvars[5], NULL);
+  	    if (lnum_stop < 0)
+  		goto theend;
+  	}
+      }
+      if (skip == NULL)
+  	goto theend;	    /* type error */
+  
+      retval = do_searchpair(spat, mpat, epat, dir, skip, flags,
+! 							match_pos, lnum_stop);
+  
+  theend:
+      p_ws = save_p_ws;
+--- 14199,14219 ----
+  	    lnum_stop = get_tv_number_chk(&argvars[5], NULL);
+  	    if (lnum_stop < 0)
+  		goto theend;
++ #ifdef FEAT_RELTIME
++ 	    if (argvars[6].v_type != VAR_UNKNOWN)
++ 	    {
++ 		time_limit = get_tv_number_chk(&argvars[6], NULL);
++ 		if (time_limit < 0)
++ 		    goto theend;
++ 	    }
++ #endif
+  	}
+      }
+      if (skip == NULL)
+  	goto theend;	    /* type error */
+  
+      retval = do_searchpair(spat, mpat, epat, dir, skip, flags,
+! 					    match_pos, lnum_stop, time_limit);
+  
+  theend:
+      p_ws = save_p_ws;
+***************
+*** 14240,14246 ****
+   * Returns 0 or -1 for no match,
+   */
+      long
+! do_searchpair(spat, mpat, epat, dir, skip, flags, match_pos, lnum_stop)
+      char_u	*spat;	    /* start pattern */
+      char_u	*mpat;	    /* middle pattern */
+      char_u	*epat;	    /* end pattern */
+--- 14265,14272 ----
+   * Returns 0 or -1 for no match,
+   */
+      long
+! do_searchpair(spat, mpat, epat, dir, skip, flags, match_pos,
+! 							lnum_stop, time_limit)
+      char_u	*spat;	    /* start pattern */
+      char_u	*mpat;	    /* middle pattern */
+      char_u	*epat;	    /* end pattern */
+***************
+*** 14249,14254 ****
+--- 14275,14281 ----
+      int		flags;	    /* SP_SETPCMARK and other SP_ values */
+      pos_T	*match_pos;
+      linenr_T	lnum_stop;  /* stop at this line if not zero */
++     long	time_limit; /* stop after this many msec */
+  {
+      char_u	*save_cpo;
+      char_u	*pat, *pat2 = NULL, *pat3 = NULL;
+***************
+*** 14263,14273 ****
+--- 14290,14306 ----
+      int		nest = 1;
+      int		err;
+      int		options = SEARCH_KEEP;
++     proftime_T	tm;
+  
+      /* Make 'cpoptions' empty, the 'l' flag should not be used here. */
+      save_cpo = p_cpo;
+      p_cpo = (char_u *)"";
+  
++ #ifdef FEAT_RELTIME
++     /* Set the time limit, if there is one. */
++     profile_setlimit(time_limit, &tm);
++ #endif
++ 
+      /* Make two search patterns: start/end (pat2, for in nested pairs) and
+       * start/middle/end (pat3, for the top pair). */
+      pat2 = alloc((unsigned)(STRLEN(spat) + STRLEN(epat) + 15));
+***************
+*** 14291,14297 ****
+      for (;;)
+      {
+  	n = searchit(curwin, curbuf, &pos, dir, pat, 1L,
+! 					       options, RE_SEARCH, lnum_stop);
+  	if (n == FAIL || (firstpos.lnum != 0 && equalpos(pos, firstpos)))
+  	    /* didn't find it or found the first match again: FAIL */
+  	    break;
+--- 14324,14330 ----
+      for (;;)
+      {
+  	n = searchit(curwin, curbuf, &pos, dir, pat, 1L,
+! 					   options, RE_SEARCH, lnum_stop, &tm);
+  	if (n == FAIL || (firstpos.lnum != 0 && equalpos(pos, firstpos)))
+  	    /* didn't find it or found the first match again: FAIL */
+  	    break;
+*** ../vim-7.1.210/src/ex_cmds2.c	Fri Jan  4 16:00:10 2008
+--- src/ex_cmds2.c	Sun Jan  6 18:22:28 2008
+***************
+*** 895,913 ****
+      sprintf(buf, "%10.6lf", (double)tm->QuadPart / (double)fr.QuadPart);
+  # else
+      sprintf(buf, "%3ld.%06ld", (long)tm->tv_sec, (long)tm->tv_usec);
+! #endif
+      return buf;
+  }
+  
+! # endif  /* FEAT_PROFILE || FEAT_RELTIME */
+  
+- # if defined(FEAT_PROFILE) || defined(PROTO)
+  /*
+!  * Functions for profiling.
+   */
+! static void script_do_profile __ARGS((scriptitem_T *si));
+! static void script_dump_profile __ARGS((FILE *fd));
+! static proftime_T prof_wait_time;
+  
+  /*
+   * Set the time in "tm" to zero.
+--- 895,955 ----
+      sprintf(buf, "%10.6lf", (double)tm->QuadPart / (double)fr.QuadPart);
+  # else
+      sprintf(buf, "%3ld.%06ld", (long)tm->tv_sec, (long)tm->tv_usec);
+! # endif
+      return buf;
+  }
+  
+! /*
+!  * Put the time "msec" past now in "tm".
+!  */
+!     void
+! profile_setlimit(msec, tm)
+!     long	msec;
+!     proftime_T	*tm;
+! {
+!     if (msec <= 0)   /* no limit */
+! 	profile_zero(tm);
+!     else
+!     {
+! # ifdef WIN3264
+! 	LARGE_INTEGER   fr;
+! 
+! 	QueryPerformanceCounter(tm);
+! 	QueryPerformanceFrequency(&fr);
+! 	tm->QuadPart +=  (double)msec / 1000.0 * (double)fr.QuadPart;
+! # else
+! 	long	    usec;
+! 
+! 	gettimeofday(tm, NULL);
+! 	usec = (long)tm->tv_usec + (long)msec * 1000;
+! 	tm->tv_usec = usec % 1000000L;
+! 	tm->tv_sec += usec / 1000000L;
+! # endif
+!     }
+! }
+  
+  /*
+!  * Return TRUE if the current time is past "tm".
+   */
+!     int
+! profile_passed_limit(tm)
+!     proftime_T	*tm;
+! {
+!     proftime_T	now;
+! 
+! # ifdef WIN3264
+!     if (tm->QuadPart == 0)  /* timer was not set */
+! 	return FALSE;
+!     QueryPerformanceCounter(&now);
+!     return (now.QuadPart > tm->QuadPart);
+! # else
+!     if (tm->tv_sec == 0)    /* timer was not set */
+! 	return FALSE;
+!     gettimeofday(&now, NULL);
+!     return (now.tv_sec > tm->tv_sec
+! 	    || (now.tv_sec == tm->tv_sec && now.tv_usec > tm->tv_usec));
+! # endif
+! }
+  
+  /*
+   * Set the time in "tm" to zero.
+***************
+*** 923,928 ****
+--- 965,980 ----
+      tm->tv_sec = 0;
+  # endif
+  }
++ 
++ # endif  /* FEAT_PROFILE || FEAT_RELTIME */
++ 
++ # if defined(FEAT_PROFILE) || defined(PROTO)
++ /*
++  * Functions for profiling.
++  */
++ static void script_do_profile __ARGS((scriptitem_T *si));
++ static void script_dump_profile __ARGS((FILE *fd));
++ static proftime_T prof_wait_time;
+  
+  /*
+   * Add the time "tm2" to "tm".
+*** ../vim-7.1.210/src/ex_docmd.c	Fri Jan  4 16:00:10 2008
+--- src/ex_docmd.c	Sun Jan  6 16:08:29 2008
+***************
+*** 3979,3985 ****
+  					*cmd == '?' ? BACKWARD : FORWARD,
+  					(char_u *)"", 1L,
+  					SEARCH_MSG + SEARCH_START,
+! 						      i, (linenr_T)0) != FAIL)
+  				lnum = pos.lnum;
+  			    else
+  			    {
+--- 3980,3986 ----
+  					*cmd == '?' ? BACKWARD : FORWARD,
+  					(char_u *)"", 1L,
+  					SEARCH_MSG + SEARCH_START,
+! 						i, (linenr_T)0, NULL) != FAIL)
+  				lnum = pos.lnum;
+  			    else
+  			    {
+*** ../vim-7.1.210/src/normal.c	Sat Jan  5 13:34:01 2008
+--- src/normal.c	Sun Jan  6 16:08:54 2008
+***************
+*** 4194,4200 ****
+      for (;;)
+      {
+  	t = searchit(curwin, curbuf, &curwin->w_cursor, FORWARD,
+! 				  pat, 1L, searchflags, RE_LAST, (linenr_T)0);
+  	if (curwin->w_cursor.lnum >= old_pos.lnum)
+  	    t = FAIL;	/* match after start is failure too */
+  
+--- 4194,4200 ----
+      for (;;)
+      {
+  	t = searchit(curwin, curbuf, &curwin->w_cursor, FORWARD,
+! 			    pat, 1L, searchflags, RE_LAST, (linenr_T)0, NULL);
+  	if (curwin->w_cursor.lnum >= old_pos.lnum)
+  	    t = FAIL;	/* match after start is failure too */
+  
+*** ../vim-7.1.210/src/proto/eval.pro	Sun May  6 15:18:09 2007
+--- src/proto/eval.pro	Sun Jan  6 15:55:47 2008
+***************
+*** 54,60 ****
+  long get_dict_number __ARGS((dict_T *d, char_u *key));
+  char_u *get_function_name __ARGS((expand_T *xp, int idx));
+  char_u *get_expr_name __ARGS((expand_T *xp, int idx));
+! long do_searchpair __ARGS((char_u *spat, char_u *mpat, char_u *epat, int dir, char_u *skip, int flags, pos_T *match_pos, linenr_T lnum_stop));
+  void set_vim_var_nr __ARGS((int idx, long val));
+  long get_vim_var_nr __ARGS((int idx));
+  char_u *get_vim_var_str __ARGS((int idx));
+--- 54,60 ----
+  long get_dict_number __ARGS((dict_T *d, char_u *key));
+  char_u *get_function_name __ARGS((expand_T *xp, int idx));
+  char_u *get_expr_name __ARGS((expand_T *xp, int idx));
+! long do_searchpair __ARGS((char_u *spat, char_u *mpat, char_u *epat, int dir, char_u *skip, int flags, pos_T *match_pos, linenr_T lnum_stop, long time_limit));
+  void set_vim_var_nr __ARGS((int idx, long val));
+  long get_vim_var_nr __ARGS((int idx));
+  char_u *get_vim_var_str __ARGS((int idx));
+*** ../vim-7.1.210/src/proto/ex_cmds2.pro	Sat May  5 20:21:13 2007
+--- src/proto/ex_cmds2.pro	Sun Jan  6 16:42:24 2008
+***************
+*** 14,19 ****
+--- 14,21 ----
+  void profile_end __ARGS((proftime_T *tm));
+  void profile_sub __ARGS((proftime_T *tm, proftime_T *tm2));
+  char *profile_msg __ARGS((proftime_T *tm));
++ void profile_setlimit __ARGS((long msec, proftime_T *tm));
++ int profile_passed_limit __ARGS((proftime_T *tm));
+  void profile_zero __ARGS((proftime_T *tm));
+  void profile_add __ARGS((proftime_T *tm, proftime_T *tm2));
+  void profile_self __ARGS((proftime_T *self, proftime_T *total, proftime_T *children));
+*** ../vim-7.1.210/src/proto/search.pro	Wed Aug  8 22:48:16 2007
+--- src/proto/search.pro	Sun Jan  6 16:11:53 2008
+***************
+*** 10,16 ****
+  void reset_search_dir __ARGS((void));
+  void set_last_search_pat __ARGS((char_u *s, int idx, int magic, int setlast));
+  void last_pat_prog __ARGS((regmmatch_T *regmatch));
+! int searchit __ARGS((win_T *win, buf_T *buf, pos_T *pos, int dir, char_u *pat, long count, int options, int pat_use, linenr_T stop_lnum));
+  int do_search __ARGS((oparg_T *oap, int dirc, char_u *pat, long count, int options));
+  int search_for_exact_line __ARGS((buf_T *buf, pos_T *pos, int dir, char_u *pat));
+  int searchc __ARGS((cmdarg_T *cap, int t_cmd));
+--- 10,16 ----
+  void reset_search_dir __ARGS((void));
+  void set_last_search_pat __ARGS((char_u *s, int idx, int magic, int setlast));
+  void last_pat_prog __ARGS((regmmatch_T *regmatch));
+! int searchit __ARGS((win_T *win, buf_T *buf, pos_T *pos, int dir, char_u *pat, long count, int options, int pat_use, linenr_T stop_lnum, proftime_T *tm));
+  int do_search __ARGS((oparg_T *oap, int dirc, char_u *pat, long count, int options));
+  int search_for_exact_line __ARGS((buf_T *buf, pos_T *pos, int dir, char_u *pat));
+  int searchc __ARGS((cmdarg_T *cap, int t_cmd));
+*** ../vim-7.1.210/src/search.c	Tue Jan  1 15:42:45 2008
+--- src/search.c	Sun Jan  6 18:23:37 2008
+***************
+*** 494,501 ****
+   * When FEAT_EVAL is defined, returns the index of the first matching
+   * subpattern plus one; one if there was none.
+   */
+      int
+! searchit(win, buf, pos, dir, pat, count, options, pat_use, stop_lnum)
+      win_T	*win;		/* window to search in; can be NULL for a
+  				   buffer without a window! */
+      buf_T	*buf;
+--- 494,502 ----
+   * When FEAT_EVAL is defined, returns the index of the first matching
+   * subpattern plus one; one if there was none.
+   */
++ /*ARGSUSED*/
+      int
+! searchit(win, buf, pos, dir, pat, count, options, pat_use, stop_lnum, tm)
+      win_T	*win;		/* window to search in; can be NULL for a
+  				   buffer without a window! */
+      buf_T	*buf;
+***************
+*** 506,511 ****
+--- 507,513 ----
+      int		options;
+      int		pat_use;	/* which pattern to use when "pat" is empty */
+      linenr_T	stop_lnum;	/* stop after this line number when != 0 */
++     proftime_T	*tm;		/* timeout limit or NULL */
+  {
+      int		found;
+      linenr_T	lnum;		/* no init to shut up Apollo cc */
+***************
+*** 594,599 ****
+--- 596,606 ----
+  		if (stop_lnum != 0 && (dir == FORWARD
+  				       ? lnum > stop_lnum : lnum < stop_lnum))
+  		    break;
++ #ifdef FEAT_RELTIME
++ 		/* Stop after passing the "tm" time limit. */
++ 		if (tm != NULL && profile_passed_limit(tm))
++ 		    break;
++ #endif
+  
+  		/*
+  		 * Look for a match somewhere in line "lnum".
+***************
+*** 1249,1255 ****
+  		       (SEARCH_KEEP + SEARCH_PEEK + SEARCH_HIS
+  			+ SEARCH_MSG + SEARCH_START
+  			+ ((pat != NULL && *pat == ';') ? 0 : SEARCH_NOOF))),
+! 		RE_LAST, (linenr_T)0);
+  
+  	if (dircp != NULL)
+  	    *dircp = dirc;	/* restore second '/' or '?' for normal_cmd() */
+--- 1256,1262 ----
+  		       (SEARCH_KEEP + SEARCH_PEEK + SEARCH_HIS
+  			+ SEARCH_MSG + SEARCH_START
+  			+ ((pat != NULL && *pat == ';') ? 0 : SEARCH_NOOF))),
+! 		RE_LAST, (linenr_T)0, NULL);
+  
+  	if (dircp != NULL)
+  	    *dircp = dirc;	/* restore second '/' or '?' for normal_cmd() */
+***************
+*** 3780,3786 ****
+  	if (do_searchpair((char_u *)"<[^ \t>/!]\\+\\%(\\_s\\_[^>]\\{-}[^/]>\\|$\\|\\_s\\=>\\)",
+  		    (char_u *)"",
+  		    (char_u *)"</[^>]*>", BACKWARD, (char_u *)"", 0,
+! 						      NULL, (linenr_T)0) <= 0)
+  	{
+  	    curwin->w_cursor = old_pos;
+  	    goto theend;
+--- 3787,3793 ----
+  	if (do_searchpair((char_u *)"<[^ \t>/!]\\+\\%(\\_s\\_[^>]\\{-}[^/]>\\|$\\|\\_s\\=>\\)",
+  		    (char_u *)"",
+  		    (char_u *)"</[^>]*>", BACKWARD, (char_u *)"", 0,
+! 						  NULL, (linenr_T)0, 0L) <= 0)
+  	{
+  	    curwin->w_cursor = old_pos;
+  	    goto theend;
+***************
+*** 3814,3820 ****
+      sprintf((char *)epat, "</%.*s>\\c", len, p);
+  
+      r = do_searchpair(spat, (char_u *)"", epat, FORWARD, (char_u *)"",
+! 						       0, NULL, (linenr_T)0);
+  
+      vim_free(spat);
+      vim_free(epat);
+--- 3821,3827 ----
+      sprintf((char *)epat, "</%.*s>\\c", len, p);
+  
+      r = do_searchpair(spat, (char_u *)"", epat, FORWARD, (char_u *)"",
+! 						    0, NULL, (linenr_T)0, 0L);
+  
+      vim_free(spat);
+      vim_free(epat);
+*** ../vim-7.1.210/src/version.c	Sun Jan  6 17:18:16 2008
+--- src/version.c	Sun Jan  6 20:00:03 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     211,
+  /**/
+
+-- 
+No letters of the alphabet were harmed in the creation of this message.
+
+ /// 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.212
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.212?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.212 (added)
+++ trunk/packages/vim/upstream/patches/7.1.212 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,47 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.212
+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.212
+Problem:    Accessing a byte before a line.
+Solution:   Check that the column is 1 or more. (Dominuque Pelle)
+Files:	    src/edit.c
+
+
+*** ../vim-7.1.211/src/edit.c	Sun Jan  6 20:05:36 2008
+--- src/edit.c	Mon Jan  7 22:31:36 2008
+***************
+*** 8452,8457 ****
+--- 8452,8458 ----
+  	if (	   mode == BACKSPACE_CHAR
+  		&& ((p_sta && in_indent)
+  		    || (curbuf->b_p_sts != 0
++ 			&& curwin->w_cursor.col > 0
+  			&& (*(ml_get_cursor() - 1) == TAB
+  			    || (*(ml_get_cursor() - 1) == ' '
+  				&& (!*inserted_space_p
+*** ../vim-7.1.211/src/version.c	Sun Jan  6 20:05:36 2008
+--- src/version.c	Wed Jan  9 10:11:49 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     212,
+  /**/
+
+-- 
+CRONE:  Who sent you?
+ARTHUR: The Knights Who Say Ni!
+CRONE:  Aaaagh!  (she looks around in rear) No!  We have no shrubberies here.
+                 "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.213
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.213?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.213 (added)
+++ trunk/packages/vim/upstream/patches/7.1.213 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,57 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.213
+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.213
+Problem:    A ":tabedit" command that results in the "swap file exists" dialog
+	    and selecting "abort" doesn't close the new tab. (Al Budden)
+Solution:   Pass "old_curwin" to do_exedit().
+Files:	    src/ex_docmd.c
+
+
+*** ../vim-7.1.212/src/ex_docmd.c	Sun Jan  6 20:05:36 2008
+--- src/ex_docmd.c	Wed Jan  9 20:11:13 2008
+***************
+*** 7126,7132 ****
+  			 : eap->addr_count == 0 ? 0
+  					       : (int)eap->line2 + 1) != FAIL)
+  	{
+! 	    do_exedit(eap, NULL);
+  
+  	    /* set the alternate buffer for the window we came from */
+  	    if (curwin != old_curwin
+--- 7127,7133 ----
+  			 : eap->addr_count == 0 ? 0
+  					       : (int)eap->line2 + 1) != FAIL)
+  	{
+! 	    do_exedit(eap, old_curwin);
+  
+  	    /* set the alternate buffer for the window we came from */
+  	    if (curwin != old_curwin
+*** ../vim-7.1.212/src/version.c	Wed Jan  9 10:13:24 2008
+--- src/version.c	Wed Jan  9 20:29:09 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     213,
+  /**/
+
+-- 
+Q: What do you call a fish without an eye?
+A: fsh!
+Q: What do you call a deer with no eyes?
+A: no eye deer.
+Q: What do you call a deer with no eyes and no legs?
+A: still no eye deer.
+
+ /// 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.214
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.1.214?rev=1146&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.1.214 (added)
+++ trunk/packages/vim/upstream/patches/7.1.214 Thu Jan 10 13:38:09 2008
@@ -1,0 +1,266 @@
+To: vim-dev at vim.org
+Subject: Patch 7.1.214
+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.214
+Problem:    ":1s/g\n\zs1//" deletes characters from the first line. (A Politz)
+Solution:   Start replacing in the line where the match starts.
+Files:	    src/ex_cmds.c
+
+
+*** ../vim-7.1.213/src/ex_cmds.c	Fri Jan  4 14:52:14 2008
+--- src/ex_cmds.c	Wed Jan  9 22:32:26 2008
+***************
+*** 4200,4206 ****
+      linenr_T	old_line_count = curbuf->b_ml.ml_line_count;
+      linenr_T	line2;
+      long	nmatch;			/* number of lines in match */
+-     linenr_T	sub_firstlnum;		/* nr of first sub line */
+      char_u	*sub_firstline;		/* allocated copy of first sub line */
+      int		endcolumn = FALSE;	/* cursor in last column when done */
+      pos_T	old_cursor = curwin->w_cursor;
+--- 4200,4205 ----
+***************
+*** 4447,4453 ****
+  #endif
+  		); ++lnum)
+      {
+- 	sub_firstlnum = lnum;
+  	nmatch = vim_regexec_multi(&regmatch, curwin, curbuf, lnum, (colnr_T)0);
+  	if (nmatch)
+  	{
+--- 4446,4451 ----
+***************
+*** 4463,4468 ****
+--- 4461,4467 ----
+  	    long	nmatch_tl = 0;	/* nr of lines matched below lnum */
+  	    int		do_again;	/* do it again after joining lines */
+  	    int		skip_match = FALSE;
++ 	    linenr_T	sub_firstlnum;	/* nr of first sub line */
+  
+  	    /*
+  	     * The new text is build up step by step, to avoid too much
+***************
+*** 4482,4489 ****
+  	     *			far.
+  	     * new_end		The new text, where to append new text.
+  	     *
+! 	     * lnum		The line number where we were looking for the
+! 	     *			first match in the old line.
+  	     * sub_firstlnum	The line number in the buffer where to look
+  	     *			for a match.  Can be different from "lnum"
+  	     *			when the pattern or substitute string contains
+--- 4481,4490 ----
+  	     *			far.
+  	     * new_end		The new text, where to append new text.
+  	     *
+! 	     * lnum		The line number where we found the start of
+! 	     *			the match.  Can be below the line we searched
+! 	     *			when there is a \n before a \zs in the
+! 	     *			pattern.
+  	     * sub_firstlnum	The line number in the buffer where to look
+  	     *			for a match.  Can be different from "lnum"
+  	     *			when the pattern or substitute string contains
+***************
+*** 4507,4518 ****
+  	     * updating the screen or handling a multi-line match.  The "old_"
+  	     * pointers point into this copy.
+  	     */
+! 	    sub_firstline = vim_strsave(ml_get(sub_firstlnum));
+! 	    if (sub_firstline == NULL)
+! 	    {
+! 		vim_free(new_start);
+! 		goto outofmem;
+! 	    }
+  	    copycol = 0;
+  	    matchcol = 0;
+  
+--- 4508,4514 ----
+  	     * updating the screen or handling a multi-line match.  The "old_"
+  	     * pointers point into this copy.
+  	     */
+! 	    sub_firstlnum = lnum;
+  	    copycol = 0;
+  	    matchcol = 0;
+  
+***************
+*** 4533,4538 ****
+--- 4529,4556 ----
+  	     */
+  	    for (;;)
+  	    {
++ 		/* Advance "lnum" to the line where the match starts.  The
++ 		 * match does not start in the first line when there is a line
++ 		 * break before \zs. */
++ 		if (regmatch.startpos[0].lnum > 0)
++ 		{
++ 		    lnum += regmatch.startpos[0].lnum;
++ 		    sub_firstlnum += regmatch.startpos[0].lnum;
++ 		    nmatch -= regmatch.startpos[0].lnum;
++ 		    vim_free(sub_firstline);
++ 		    sub_firstline = NULL;
++ 		}
++ 
++ 		if (sub_firstline == NULL)
++ 		{
++ 		    sub_firstline = vim_strsave(ml_get(sub_firstlnum));
++ 		    if (sub_firstline == NULL)
++ 		    {
++ 			vim_free(new_start);
++ 			goto outofmem;
++ 		    }
++ 		}
++ 
+  		/* Save the line number of the last change for the final
+  		 * cursor position (just like Vi). */
+  		curwin->w_cursor.lnum = lnum;
+***************
+*** 4638,4644 ****
+  			    temp = RedrawingDisabled;
+  			    RedrawingDisabled = 0;
+  
+! 			    search_match_lines = regmatch.endpos[0].lnum;
+  			    search_match_endcol = regmatch.endpos[0].col;
+  			    highlight_match = TRUE;
+  
+--- 4656,4663 ----
+  			    temp = RedrawingDisabled;
+  			    RedrawingDisabled = 0;
+  
+! 			    search_match_lines = regmatch.endpos[0].lnum
+! 						  - regmatch.startpos[0].lnum;
+  			    search_match_endcol = regmatch.endpos[0].col;
+  			    highlight_match = TRUE;
+  
+***************
+*** 4749,4755 ****
+  		 * 3. substitute the string.
+  		 */
+  		/* get length of substitution part */
+! 		sublen = vim_regsub_multi(&regmatch, sub_firstlnum,
+  				    sub, sub_firstline, FALSE, p_magic, TRUE);
+  
+  		/* When the match included the "$" of the last line it may
+--- 4768,4775 ----
+  		 * 3. substitute the string.
+  		 */
+  		/* get length of substitution part */
+! 		sublen = vim_regsub_multi(&regmatch,
+! 				    sub_firstlnum - regmatch.startpos[0].lnum,
+  				    sub, sub_firstline, FALSE, p_magic, TRUE);
+  
+  		/* When the match included the "$" of the last line it may
+***************
+*** 4819,4825 ****
+  		mch_memmove(new_end, sub_firstline + copycol, (size_t)i);
+  		new_end += i;
+  
+! 		(void)vim_regsub_multi(&regmatch, sub_firstlnum,
+  					   sub, new_end, TRUE, p_magic, TRUE);
+  		sub_nsubs++;
+  		did_sub = TRUE;
+--- 4839,4846 ----
+  		mch_memmove(new_end, sub_firstline + copycol, (size_t)i);
+  		new_end += i;
+  
+! 		(void)vim_regsub_multi(&regmatch,
+! 				    sub_firstlnum - regmatch.startpos[0].lnum,
+  					   sub, new_end, TRUE, p_magic, TRUE);
+  		sub_nsubs++;
+  		did_sub = TRUE;
+***************
+*** 4908,4917 ****
+  skip:
+  		/* We already know that we did the last subst when we are at
+  		 * the end of the line, except that a pattern like
+! 		 * "bar\|\nfoo" may match at the NUL. */
+  		lastone = (skip_match
+  			|| got_int
+  			|| got_quit
+  			|| !(do_all || do_again)
+  			|| (sub_firstline[matchcol] == NUL && nmatch <= 1
+  					 && !re_multiline(regmatch.regprog)));
+--- 4929,4941 ----
+  skip:
+  		/* We already know that we did the last subst when we are at
+  		 * the end of the line, except that a pattern like
+! 		 * "bar\|\nfoo" may match at the NUL.  "lnum" can be below
+! 		 * "line2" when there is a \zs in the pattern after a line
+! 		 * break. */
+  		lastone = (skip_match
+  			|| got_int
+  			|| got_quit
++ 			|| lnum > line2
+  			|| !(do_all || do_again)
+  			|| (sub_firstline[matchcol] == NUL && nmatch <= 1
+  					 && !re_multiline(regmatch.regprog)));
+***************
+*** 4926,4937 ****
+  		 * When asking the user we like to show the already replaced
+  		 * text, but don't do it when "\<@=" or "\<@!" is used, it
+  		 * changes what matches.
+  		 */
+  		if (lastone
+  			|| (do_ask && !re_lookbehind(regmatch.regprog))
+  			|| nmatch_tl > 0
+  			|| (nmatch = vim_regexec_multi(&regmatch, curwin,
+! 				       curbuf, sub_firstlnum, matchcol)) == 0)
+  		{
+  		    if (new_start != NULL)
+  		    {
+--- 4950,4964 ----
+  		 * When asking the user we like to show the already replaced
+  		 * text, but don't do it when "\<@=" or "\<@!" is used, it
+  		 * changes what matches.
++ 		 * When the match starts below where we start searching also
++ 		 * need to replace the line first (using \zs after \n).
+  		 */
+  		if (lastone
+  			|| (do_ask && !re_lookbehind(regmatch.regprog))
+  			|| nmatch_tl > 0
+  			|| (nmatch = vim_regexec_multi(&regmatch, curwin,
+! 				       curbuf, sub_firstlnum, matchcol)) == 0
+! 			|| regmatch.startpos[0].lnum > 0)
+  		{
+  		    if (new_start != NULL)
+  		    {
+***************
+*** 5001,5007 ****
+--- 5028,5041 ----
+  		     * 5. break if there isn't another match in this line
+  		     */
+  		    if (nmatch <= 0)
++ 		    {
++ 			/* If the match found didn't start where we were
++ 			 * searching, do the next search in the line where we
++ 			 * found the match. */
++ 			if (nmatch == -1)
++ 			    lnum -= regmatch.startpos[0].lnum;
+  			break;
++ 		    }
+  		}
+  
+  		line_breakcheck();
+*** ../vim-7.1.213/src/version.c	Wed Jan  9 20:29:51 2008
+--- src/version.c	Wed Jan  9 22:37:47 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     214,
+  /**/
+
+-- 
+Q: What's orange and sounds like a parrot?
+A: A carrot
+
+ /// 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