Karsten Hopp 0070ce
To: vim_dev@googlegroups.com
Karsten Hopp 0070ce
Subject: Patch 7.3.249
Karsten Hopp 0070ce
Fcc: outbox
Karsten Hopp 0070ce
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp 0070ce
Mime-Version: 1.0
Karsten Hopp 0070ce
Content-Type: text/plain; charset=UTF-8
Karsten Hopp 0070ce
Content-Transfer-Encoding: 8bit
Karsten Hopp 0070ce
------------
Karsten Hopp 0070ce
Karsten Hopp 0070ce
Patch 7.3.249
Karsten Hopp 0070ce
Problem:    Wrong indenting for array initializer.
Karsten Hopp 0070ce
Solution:   Detect '}' in a better way. (Lech Lorens)
Karsten Hopp 0070ce
Files:	    src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok
Karsten Hopp 0070ce
Karsten Hopp 0070ce
Karsten Hopp 0070ce
*** ../vim-7.3.248/src/misc1.c	2011-06-12 21:51:01.000000000 +0200
Karsten Hopp 0070ce
--- src/misc1.c	2011-07-15 14:06:44.000000000 +0200
Karsten Hopp 0070ce
***************
Karsten Hopp 0070ce
*** 7945,7952 ****
Karsten Hopp 0070ce
  			 * If we're at the end of a block, skip to the start of
Karsten Hopp 0070ce
  			 * that block.
Karsten Hopp 0070ce
  			 */
Karsten Hopp 0070ce
! 			curwin->w_cursor.col = 0;
Karsten Hopp 0070ce
! 			if (*cin_skipcomment(l) == '}'
Karsten Hopp 0070ce
  				&& (trypos = find_start_brace(ind_maxcomment))
Karsten Hopp 0070ce
  							    != NULL) /* XXX */
Karsten Hopp 0070ce
  			{
Karsten Hopp 0070ce
--- 7945,7951 ----
Karsten Hopp 0070ce
  			 * If we're at the end of a block, skip to the start of
Karsten Hopp 0070ce
  			 * that block.
Karsten Hopp 0070ce
  			 */
Karsten Hopp 0070ce
! 			if (find_last_paren(l, '{', '}')
Karsten Hopp 0070ce
  				&& (trypos = find_start_brace(ind_maxcomment))
Karsten Hopp 0070ce
  							    != NULL) /* XXX */
Karsten Hopp 0070ce
  			{
Karsten Hopp 0070ce
*** ../vim-7.3.248/src/testdir/test3.in	2011-06-12 21:51:01.000000000 +0200
Karsten Hopp 0070ce
--- src/testdir/test3.in	2011-07-15 14:03:41.000000000 +0200
Karsten Hopp 0070ce
***************
Karsten Hopp 0070ce
*** 1452,1457 ****
Karsten Hopp 0070ce
--- 1452,1487 ----
Karsten Hopp 0070ce
  
Karsten Hopp 0070ce
  STARTTEST
Karsten Hopp 0070ce
  :set cino&
Karsten Hopp 0070ce
+ :set cino+=l1
Karsten Hopp 0070ce
+ 2kdd=][
Karsten Hopp 0070ce
+ ENDTEST
Karsten Hopp 0070ce
+ 
Karsten Hopp 0070ce
+ void func(void)
Karsten Hopp 0070ce
+ {
Karsten Hopp 0070ce
+ 	int tab[] =
Karsten Hopp 0070ce
+ 	{
Karsten Hopp 0070ce
+ 		1, 2, 3,
Karsten Hopp 0070ce
+ 		4, 5, 6};
Karsten Hopp 0070ce
+ 
Karsten Hopp 0070ce
+ 	printf("Indent this line correctly!\n");
Karsten Hopp 0070ce
+ 
Karsten Hopp 0070ce
+ 	switch (foo)
Karsten Hopp 0070ce
+ 	{
Karsten Hopp 0070ce
+ 		case bar:
Karsten Hopp 0070ce
+ 			printf("bar");
Karsten Hopp 0070ce
+ 			break;
Karsten Hopp 0070ce
+ 		case baz: {
Karsten Hopp 0070ce
+ 			printf("baz");
Karsten Hopp 0070ce
+ 			break;
Karsten Hopp 0070ce
+ 		}
Karsten Hopp 0070ce
+ 		case quux:
Karsten Hopp 0070ce
+ printf("But don't break the indentation of this instruction\n");
Karsten Hopp 0070ce
+ break;
Karsten Hopp 0070ce
+ 	}
Karsten Hopp 0070ce
+ }
Karsten Hopp 0070ce
+ 
Karsten Hopp 0070ce
+ STARTTEST
Karsten Hopp 0070ce
+ :set cino&
Karsten Hopp 0070ce
  2kdd=][
Karsten Hopp 0070ce
  ENDTEST
Karsten Hopp 0070ce
  
Karsten Hopp 0070ce
*** ../vim-7.3.248/src/testdir/test3.ok	2011-06-12 21:51:01.000000000 +0200
Karsten Hopp 0070ce
--- src/testdir/test3.ok	2011-07-15 14:03:41.000000000 +0200
Karsten Hopp 0070ce
***************
Karsten Hopp 0070ce
*** 1310,1315 ****
Karsten Hopp 0070ce
--- 1310,1340 ----
Karsten Hopp 0070ce
  
Karsten Hopp 0070ce
  void func(void)
Karsten Hopp 0070ce
  {
Karsten Hopp 0070ce
+ 	int tab[] =
Karsten Hopp 0070ce
+ 	{
Karsten Hopp 0070ce
+ 		1, 2, 3,
Karsten Hopp 0070ce
+ 		4, 5, 6};
Karsten Hopp 0070ce
+ 
Karsten Hopp 0070ce
+ 	printf("Indent this line correctly!\n");
Karsten Hopp 0070ce
+ 
Karsten Hopp 0070ce
+ 	switch (foo)
Karsten Hopp 0070ce
+ 	{
Karsten Hopp 0070ce
+ 		case bar:
Karsten Hopp 0070ce
+ 			printf("bar");
Karsten Hopp 0070ce
+ 			break;
Karsten Hopp 0070ce
+ 		case baz: {
Karsten Hopp 0070ce
+ 			printf("baz");
Karsten Hopp 0070ce
+ 			break;
Karsten Hopp 0070ce
+ 		}
Karsten Hopp 0070ce
+ 		case quux:
Karsten Hopp 0070ce
+ 			printf("But don't break the indentation of this instruction\n");
Karsten Hopp 0070ce
+ 			break;
Karsten Hopp 0070ce
+ 	}
Karsten Hopp 0070ce
+ }
Karsten Hopp 0070ce
+ 
Karsten Hopp 0070ce
+ 
Karsten Hopp 0070ce
+ void func(void)
Karsten Hopp 0070ce
+ {
Karsten Hopp 0070ce
  	cout << "a"
Karsten Hopp 0070ce
  		<< "b"
Karsten Hopp 0070ce
  		<< ") :"
Karsten Hopp 0070ce
*** ../vim-7.3.248/src/version.c	2011-07-15 13:51:57.000000000 +0200
Karsten Hopp 0070ce
--- src/version.c	2011-07-15 14:12:05.000000000 +0200
Karsten Hopp 0070ce
***************
Karsten Hopp 0070ce
*** 711,712 ****
Karsten Hopp 0070ce
--- 711,714 ----
Karsten Hopp 0070ce
  {   /* Add new patch number below this line */
Karsten Hopp 0070ce
+ /**/
Karsten Hopp 0070ce
+     249,
Karsten Hopp 0070ce
  /**/
Karsten Hopp 0070ce
Karsten Hopp 0070ce
-- 
Karsten Hopp 0070ce
   GALAHAD hurries to the door and pushes through it.  As he leaves the room
Karsten Hopp 0070ce
   we CUT TO the reverse to show that he is now in a room full of bathing
Karsten Hopp 0070ce
   and romping GIRLIES, all innocent, wide-eyed and beautiful.  They smile
Karsten Hopp 0070ce
   enchantingly at him as he tries to keep walking without being diverted by
Karsten Hopp 0070ce
   the lovely sights assaulting his eyeballs.
Karsten Hopp 0070ce
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
Karsten Hopp 0070ce
Karsten Hopp 0070ce
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp 0070ce
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp 0070ce
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp 0070ce
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///