packages: vim/7.3.201 (NEW), vim/7.3.202 (NEW) - new

adamg adamg at pld-linux.org
Sat Jul 9 09:05:44 CEST 2011


Author: adamg                        Date: Sat Jul  9 07:05:44 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- new

---- Files affected:
packages/vim:
   7.3.201 (NONE -> 1.1)  (NEW)
packages/vim:
   7.3.202 (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/vim/7.3.201
diff -u /dev/null packages/vim/7.3.201:1.1
--- /dev/null	Sat Jul  9 09:05:44 2011
+++ packages/vim/7.3.201	Sat Jul  9 09:05:39 2011
@@ -0,0 +1,124 @@
+To: vim_dev at googlegroups.com
+Subject: Patch 7.3.201
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.201 (after 7.3.195)
+Problem:    "} else" still causes following lines to be indented too much.
+Solution:   Better detection for the "else" block. (Lech Lorens)
+Files:	    src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
+
+
+*** ../mercurial/vim73/src/misc1.c	2011-05-19 16:35:05.000000000 +0200
+--- src/misc1.c	2011-05-25 13:29:45.000000000 +0200
+***************
+*** 7541,7557 ****
+  
+  			/*
+  			 * When searching for a terminated line, don't use the
+! 			 * one between the "if" and the "else".
+  			 * Need to use the scope of this "else".  XXX
+  			 * If whilelevel != 0 continue looking for a "do {".
+  			 */
+! 			if (cin_iselse(l)
+! 				&& whilelevel == 0
+! 				&& ((trypos = find_start_brace(ind_maxcomment))
+! 								    == NULL
+  				    || find_match(LOOKFOR_IF, trypos->lnum,
+! 					ind_maxparen, ind_maxcomment) == FAIL))
+! 			    break;
+  		    }
+  
+  		    /*
+--- 7541,7565 ----
+  
+  			/*
+  			 * When searching for a terminated line, don't use the
+! 			 * one between the "if" and the matching "else".
+  			 * Need to use the scope of this "else".  XXX
+  			 * If whilelevel != 0 continue looking for a "do {".
+  			 */
+! 			if (cin_iselse(l) && whilelevel == 0)
+! 			{
+! 			    /* If we're looking at "} else", let's make sure we
+! 			     * find the opening brace of the enclosing scope,
+! 			     * not the one from "if () {". */
+! 			    if (*l == '}')
+! 				curwin->w_cursor.col =
+! 						   (l - ml_get_curline()) + 1;
+! 
+! 			    if ((trypos = find_start_brace(ind_maxcomment))
+! 								       == NULL
+  				    || find_match(LOOKFOR_IF, trypos->lnum,
+! 					ind_maxparen, ind_maxcomment) == FAIL)
+! 				break;
+! 			}
+  		    }
+  
+  		    /*
+*** ../mercurial/vim73/src/testdir/test3.in	2011-05-19 16:35:05.000000000 +0200
+--- src/testdir/test3.in	2011-05-25 13:23:51.000000000 +0200
+***************
+*** 1413,1418 ****
+--- 1413,1433 ----
+  }
+  
+  STARTTEST
++ :set cino&
++ 2kdd=][
++ ENDTEST
++ 
++ void func(void)
++ {
++ 	for (int i = 0; i < 10; ++i)
++ 		if (i & 1) {
++ 			foo(1);
++ 		} else
++ 			foo(0);
++ baz();
++ }
++ 
++ STARTTEST
+  :g/^STARTTEST/.,/^ENDTEST/d
+  :1;/start of AUTO/,$wq! test.out
+  ENDTEST
+*** ../mercurial/vim73/src/testdir/test3.ok	2011-05-19 16:35:05.000000000 +0200
+--- src/testdir/test3.ok	2011-05-25 13:23:51.000000000 +0200
+***************
+*** 1262,1264 ****
+--- 1262,1275 ----
+  	foo();
+  }
+  
++ 
++ void func(void)
++ {
++ 	for (int i = 0; i < 10; ++i)
++ 		if (i & 1) {
++ 			foo(1);
++ 		} else
++ 			foo(0);
++ 	baz();
++ }
++ 
+*** ../vim-7.3.200/src/version.c	2011-05-25 12:51:17.000000000 +0200
+--- src/version.c	2011-05-25 13:33:16.000000000 +0200
+***************
+*** 711,712 ****
+--- 711,714 ----
+  {   /* Add new patch number below this line */
++ /**/
++     201,
+  /**/
+
+-- 
+Laughing helps. It's like jogging on the inside.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\  an exciting new programming language -- http://www.Zimbu.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

================================================================
Index: packages/vim/7.3.202
diff -u /dev/null packages/vim/7.3.202:1.1
--- /dev/null	Sat Jul  9 09:05:44 2011
+++ packages/vim/7.3.202	Sat Jul  9 09:05:42 2011
@@ -0,0 +1,868 @@
+To: vim_dev at googlegroups.com
+Subject: Patch 7.3.202
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.202
+Problem:    Cannot influence the indent inside a namespace.
+Solution:   Add the "N" 'cino' parameter. (Konstantin Lepa)
+Files:      runtime/doc/indent.txt, src/misc1.c, src/testdir/test3.in,
+            src/testdir/test3.ok
+
+
+*** ../mercurial/vim73/runtime/doc/indent.txt	2011-04-28 19:01:26.000000000 +0200
+--- runtime/doc/indent.txt	2011-05-25 14:35:37.000000000 +0200
+***************
+*** 128,140 ****
+  used CTRL-T or CTRL-D.
+  
+  						*cinoptions-values*
+! The 'cinoptions' option sets how Vim performs indentation.  In the list below,
+  "N" represents a number of your choice (the number can be negative).  When
+  there is an 's' after the number, Vim multiplies the number by 'shiftwidth':
+  "1s" is 'shiftwidth', "2s" is two times 'shiftwidth', etc.  You can use a
+! decimal point, too: "-0.5s" is minus half a 'shiftwidth'.  The examples below
+! assume a 'shiftwidth' of 4.
+! 
+  	>N    Amount added for "normal" indent.  Used after a line that should
+  	      increase the indent (lines starting with "if", an opening brace,
+  	      etc.).  (default 'shiftwidth').
+--- 128,147 ----
+  used CTRL-T or CTRL-D.
+  
+  						*cinoptions-values*
+! The 'cinoptions' option sets how Vim performs indentation.  The value after
+! the option character can be one of these (N is any number):
+! 	N	indent N spaces
+! 	-N	indent N spaces to the left
+! 	Ns	N times 'shiftwidth spaces
+! 	-Ns	N times 'shiftwidth spaces to the left
+! 
+! In the list below,
+  "N" represents a number of your choice (the number can be negative).  When
+  there is an 's' after the number, Vim multiplies the number by 'shiftwidth':
+  "1s" is 'shiftwidth', "2s" is two times 'shiftwidth', etc.  You can use a
+! decimal point, too: "-0.5s" is minus half a 'shiftwidth'.
+! The examples below assume a 'shiftwidth' of 4.
+! 							*cino->*
+  	>N    Amount added for "normal" indent.  Used after a line that should
+  	      increase the indent (lines starting with "if", an opening brace,
+  	      etc.).  (default 'shiftwidth').
+***************
+*** 145,150 ****
+--- 152,158 ----
+  		      foo;		foo;			  foo;
+  		  }		      }			  }
+  <
++ 							*cino-e*
+  	eN    Add N to the prevailing indent inside a set of braces if the
+  	      opening brace at the End of the line (more precise: is not the
+  	      first character in a line).  This is useful if you want a
+***************
+*** 160,165 ****
+--- 168,174 ----
+  		      bar;		  bar;		      bar;
+  		  }		      }			  }
+  <
++ 							*cino-n*
+  	nN    Add N to the prevailing indent for a statement after an "if",
+  	      "while", etc., if it is NOT inside a set of braces.  This is
+  	      useful if you want a different indent when there is no '{'
+***************
+*** 174,179 ****
+--- 183,189 ----
+  		      bar;		  bar;		      bar;
+  		  }		      }			  }
+  <
++ 							*cino-f*
+  	fN    Place the first opening brace of a function or other block in
+  	      column N.  This applies only for an opening brace that is not
+  	      inside other braces and is at the start of the line.  What comes
+***************
+*** 184,189 ****
+--- 194,200 ----
+  		  {			{		      {
+  		      int foo;		    int foo;		  int foo;
+  <
++ 							*cino-{*
+  	{N    Place opening braces N characters from the prevailing indent.
+  	      This applies only for opening braces that are inside other
+  	      braces.  (default 0).
+***************
+*** 193,198 ****
+--- 204,210 ----
+  		  {			{		      {
+  		      foo;		  foo;		      foo;
+  <
++ 							*cino-}*
+  	}N    Place closing braces N characters from the matching opening
+  	      brace.  (default 0).
+  
+***************
+*** 202,207 ****
+--- 214,220 ----
+  		      foo;		  foo;		      foo;
+  		  }		      }			    }
+  <
++ 							*cino-^*
+  	^N    Add N to the prevailing indent inside a set of braces if the
+  	      opening brace is in column 0.  This can specify a different
+  	      indent for whole of a function (some may like to set it to a
+***************
+*** 216,221 ****
+--- 229,235 ----
+  		      }			}		  }
+  		  }		      }			  }
+  <
++ 							*cino-L*
+  	LN    Controls placement of jump labels. If N is negative, the label
+  	      will be placed at column 1. If N is non-negative, the indent of
+  	      the label will be the prevailing indent minus N.  (default -1).
+***************
+*** 229,234 ****
+--- 243,249 ----
+  		      }                   }                   }
+  		  }                   }                   }
+  <
++ 							*cino-:*
+  	:N    Place case labels N characters from the indent of the switch().
+  	      (default 'shiftwidth').
+  
+***************
+*** 240,245 ****
+--- 255,261 ----
+  		      default:	      default:
+  		  }		      }
+  <
++ 							*cino-=*
+  	=N    Place statements occurring after a case label N characters from
+  	      the indent of the label.  (default 'shiftwidth').
+  
+***************
+*** 247,252 ****
+--- 263,269 ----
+  		   case 11:		case 11:  a = a + 1;
+  		       a = a + 1;		  b = b + 1;
+  <
++ 							*cino-l*
+  	lN    If N != 0 Vim will align with a case label instead of the
+  	      statement after it in the same line.
+  
+***************
+*** 256,261 ****
+--- 273,279 ----
+  				    break;	      break;
+  				}		  }
+  <
++ 							*cino-b*
+  	bN    If N != 0 Vim will align a final "break" with the case label,
+  	      so that case..break looks like a sort of block.  (default: 0).
+  	      When using 1, consider adding "0=break" to 'cinkeys'.
+***************
+*** 272,277 ****
+--- 290,296 ----
+  			  break;	  break;
+  		  }		      }
+  <
++ 							*cino-g*
+  	gN    Place C++ scope declarations N characters from the indent of the
+  	      block they are in.  (default 'shiftwidth').  A scope declaration
+  	      can be "public:", "protected:" or "private:".
+***************
+*** 283,288 ****
+--- 302,308 ----
+  		      private:	      private:
+  		  }		      }
+  <
++ 							*cino-h*
+  	hN    Place statements occurring after a C++ scope declaration N
+  	      characters from the indent of the label.  (default
+  	      'shiftwidth').
+***************
+*** 291,296 ****
+--- 311,331 ----
+  		   public:		public:   a = a + 1;
+  		       a = a + 1;		  b = b + 1;
+  <
++ 							*cino-N*
++ 	NN    Indent inside C++ namespace N characters extra compared to a
++ 	      normal block.  (default 0).
++ 
++ 		cino=			   cino=N-s >
++ 		  namespace {                namespace {
++ 		      void function();       void function();
++ 		  }                          }
++ 
++ 		  namespace my               namespace my
++ 		  {                          {
++ 		      void function();       void function();
++ 		  }                          }
++ <
++ 							*cino-p*
+  	pN    Parameter declarations for K&R-style function declarations will
+  	      be indented N characters from the margin.  (default
+  	      'shiftwidth').
+***************
+*** 300,305 ****
+--- 335,341 ----
+  		      int a;	      int a;			  int a;
+  		      char b;	      char b;			  char b;
+  <
++ 							*cino-t*
+  	tN    Indent a function return type declaration N characters from the
+  	      margin.  (default 'shiftwidth').
+  
+***************
+*** 307,312 ****
+--- 343,349 ----
+  		      int	      int			 int
+  		  func()	      func()		  func()
+  <
++ 							*cino-i*
+  	iN    Indent C++ base class declarations and constructor
+  	      initializations, if they start in a new line (otherwise they
+  	      are aligned at the right side of the ':').
+***************
+*** 330,335 ****
+--- 368,374 ----
+  		  a = b + 9 *		    a = b + 9 *
+  		      c;			      c;
+  <
++ 							*cino-c*
+  	cN    Indent comment lines after the comment opener, when there is no
+  	      other text with which to align, N characters from the comment
+  	      opener.  (default 3).  See also |format-comments|.
+***************
+*** 339,344 ****
+--- 378,384 ----
+  		     text.			 text.
+  		   */			     */
+  <
++ 							*cino-C*
+  	CN    When N is non-zero, indent comment lines by the amount specified
+  	      with the c flag above even if there is other text behind the
+  	      comment opener.  (default 0).
+***************
+*** 349,360 ****
+--- 389,402 ----
+  		  ********/		    ********/
+  <	      (Example uses ":set comments& comments-=s1:/* comments^=s0:/*")
+  
++ 							*cino-/*
+  	/N    Indent comment lines N characters extra.  (default 0).
+  		cino=			  cino=/4 >
+  		  a = b;		    a = b;
+  		  /* comment */			/* comment */
+  		  c = d;		    c = d;
+  <
++ 							*cino-(*
+  	(N    When in unclosed parentheses, indent N characters from the line
+  	      with the unclosed parentheses.  Add a 'shiftwidth' for every
+  	      unclosed parentheses.  When N is 0 or the unclosed parentheses
+***************
+*** 370,375 ****
+--- 412,418 ----
+  			  (c2 || c3))		(c2 || c3))
+  		     {			       {
+  <
++ 							*cino-u*
+  	uN    Same as (N, but for one level deeper.  (default 'shiftwidth').
+  
+  		cino=			  cino=u2 >
+***************
+*** 377,382 ****
+--- 420,426 ----
+  			  && (c22345		    && (c22345
+  			      || c3))		      || c3))
+  <
++ 							*cino-U*
+  	UN    When N is non-zero, do not ignore the indenting specified by
+  	      ( or u in case that the unclosed parentheses is the first
+  	      non-white character in its line.  (default 0).
+***************
+*** 388,393 ****
+--- 432,438 ----
+  		       c3			    c3
+  		      ) && c4;			) && c4;
+  <
++ 							*cino-2*
+  	wN    When in unclosed parentheses and N is non-zero and either
+  	      using "(0" or "u0", respectively, or using "U0" and the unclosed
+  	      parentheses is the first non-white character in its line, line
+***************
+*** 400,405 ****
+--- 445,451 ----
+  				|| c3))		    || c3))
+  		      foo;			foo;
+  <
++ 							*cino-W*
+  	WN    When in unclosed parentheses and N is non-zero and either
+  	      using "(0" or "u0", respectively and the unclosed parentheses is
+  	      the last non-white character in its line and it is not the
+***************
+*** 414,419 ****
+--- 460,466 ----
+  		  a_short_line(argument,    a_short_line(argument,
+  			       argument);		 argument);
+  <
++ 							*cino-m*
+  	mN    When N is non-zero, line up a line starting with a closing
+  	      parentheses with the first character of the line with the
+  	      matching opening parentheses.  (default 0).
+***************
+*** 428,433 ****
+--- 475,481 ----
+  		     )			    )
+  		      foo;			foo;
+  <
++ 							*cino-M*
+  	MN    When N is non-zero, line up a line starting with a closing
+  	      parentheses with the first character of the previous line.
+  	      (default 0).
+***************
+*** 437,443 ****
+  			 cond2			   cond2
+  		     )				   )
+  <
+! 					*java-cinoptions* *java-indenting*
+  	jN    Indent java anonymous classes correctly.  The value 'N' is
+  	      currently unused but must be non-zero (e.g. 'j1').  'j1' will
+  	      indent for example the following code snippet correctly: >
+--- 485,491 ----
+  			 cond2			   cond2
+  		     )				   )
+  <
+! 				*java-cinoptions* *java-indenting* *cino-j*
+  	jN    Indent java anonymous classes correctly.  The value 'N' is
+  	      currently unused but must be non-zero (e.g. 'j1').  'j1' will
+  	      indent for example the following code snippet correctly: >
+***************
+*** 448,454 ****
+  		    }
+  		});
+  <
+! 				*javascript-cinoptions* *javascript-indenting*
+  	JN    Indent JavaScript object declarations correctly by not confusing
+  	      them with labels.  The value 'N' is currently unused but must be 
+  	      non-zero (e.g. 'J1'). >
+--- 496,502 ----
+  		    }
+  		});
+  <
+! 			*javascript-cinoptions* *javascript-indenting* *cino-J*
+  	JN    Indent JavaScript object declarations correctly by not confusing
+  	      them with labels.  The value 'N' is currently unused but must be 
+  	      non-zero (e.g. 'J1'). >
+***************
+*** 483,489 ****
+  
+  
+  The defaults, spelled out in full, are:
+! 	cinoptions=>s,e0,n0,f0,{0,}0,^0,L-1,:s,=s,l0,b0,gs,hs,ps,ts,is,+s,
+  			c3,C0,/0,(2s,us,U0,w0,W0,m0,j0,J0,)20,*70,#0
+  
+  Vim puts a line in column 1 if:
+--- 534,540 ----
+  
+  
+  The defaults, spelled out in full, are:
+! 	cinoptions=>s,e0,n0,f0,{0,}0,^0,L-1,:s,=s,l0,b0,gs,hs,N0,ps,ts,is,+s,
+  			c3,C0,/0,(2s,us,U0,w0,W0,m0,j0,J0,)20,*70,#0
+  
+  Vim puts a line in column 1 if:
+*** ../mercurial/vim73/src/misc1.c	2011-05-25 13:33:59.000000000 +0200
+--- src/misc1.c	2011-05-25 14:57:31.000000000 +0200
+***************
+*** 4959,4964 ****
+--- 4959,4965 ----
+  static int	corr_ind_maxparen __ARGS((int ind_maxparen, pos_T *startpos));
+  static int	find_last_paren __ARGS((char_u *l, int start, int end));
+  static int	find_match __ARGS((int lookfor, linenr_T ourscope, int ind_maxparen, int ind_maxcomment));
++ static int	cin_is_cpp_namespace __ARGS((char_u *));
+  
+  static int	ind_hash_comment = 0;   /* # starts a comment */
+  
+***************
+*** 5221,5226 ****
+--- 5222,5271 ----
+      return (*(s = cin_skipcomment(s + i)) == ':' && s[1] != ':');
+  }
+  
++ /* Maximum number of lines to search back for a "namespace" line. */
++ #define FIND_NAMESPACE_LIM 20
++ 
++ /*
++  * Recognize a "namespace" scope declaration.
++  */
++     static int
++ cin_is_cpp_namespace(s)
++     char_u	*s;
++ {
++     char_u	*p;
++     int		has_name = FALSE;
++ 
++     s = cin_skipcomment(s);
++     if (STRNCMP(s, "namespace", 9) == 0 && (s[9] == NUL || !vim_iswordc(s[9])))
++     {
++ 	p = cin_skipcomment(skipwhite(s + 9));
++ 	while (*p != NUL)
++ 	{
++ 	    if (vim_iswhite(*p))
++ 	    {
++ 		has_name = TRUE; /* found end of a name */
++ 		p = cin_skipcomment(skipwhite(p));
++ 	    }
++ 	    else if (*p == '{')
++ 	    {
++ 		break;
++ 	    }
++ 	    else if (vim_iswordc(*p))
++ 	    {
++ 		if (has_name)
++ 		    return FALSE; /* word character after skipping past name */
++ 		++p;
++ 	    }
++ 	    else
++ 	    {
++ 		return FALSE;
++ 	    }
++ 	}
++ 	return TRUE;
++     }
++     return FALSE;
++ }
++ 
+  /*
+   * Return a pointer to the first non-empty non-comment character after a ':'.
+   * Return NULL if not found.
+***************
+*** 6296,6301 ****
+--- 6341,6351 ----
+       */
+      int ind_keep_case_label = 0;
+  
++     /*
++      * handle C++ namespace
++      */
++     int ind_cpp_namespace = 0;
++ 
+      pos_T	cur_curpos;
+      int		amount;
+      int		scope_amount;
+***************
+*** 6336,6341 ****
+--- 6386,6392 ----
+      int		n;
+      int		iscase;
+      int		lookfor_break;
<<Diff was trimmed, longer than 597 lines>>


More information about the pld-cvs-commit mailing list