To: vim_dev@googlegroups.com
Subject: Patch 7.3.256
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------

Patch 7.3.256
Problem:    Javascript indenting not sufficiently tested.
Solution:   Add more tests. (Luc Deschenaux)  Mark the lines that are indented
	    wrong.
Files:	    src/testdir/test3.in, src/testdir/test3.ok


*** ../vim-7.3.255/src/testdir/test3.in	2011-07-15 14:12:25.000000000 +0200
--- src/testdir/test3.in	2011-07-15 21:05:49.000000000 +0200
***************
*** 1592,1598 ****
  
  
  STARTTEST
! :set cino=J1
  /^JSSTART
  =/^JSEND
  ENDTEST
--- 1592,1598 ----
  
  
  STARTTEST
! :set cino=j1,J1
  /^JSSTART
  =/^JSEND
  ENDTEST
***************
*** 1613,1618 ****
--- 1613,1757 ----
  JSEND
  
  STARTTEST
+ :set cino=j1,J1
+ /^JSSTART
+ =/^JSEND
+ ENDTEST
+ 
+ JSSTART
+ var foo = [
+ 1,  // indent 8 more
+ 2,
+ 3
+ ];  // indent 8 less
+ JSEND
+ 
+ STARTTEST
+ :set cino=j1,J1
+ /^JSSTART
+ =/^JSEND
+ ENDTEST
+ 
+ JSSTART
+ function bar() {
+ var foo = [
+ 1,
+ 2,
+ 3
+ ];  // indent 16 less
+ }
+ JSEND
+ 
+ STARTTEST
+ :set cino=j1,J1
+ /^JSSTART
+ =/^JSEND
+ ENDTEST
+ 
+ JSSTART
+ (function($){
+ 
+ var class_name='myclass';
+ 
+ function private_method() {
+ }
+ 
+ var public_method={
+ method: function(options,args){
+ private_method();
+ }
+ }
+ 
+ function init(options) {
+ 
+ $(this).data(class_name+'_public',$.extend({},{
+ foo: 'bar',
+ bar: 2,  // indent 8 more
+ foobar: [  // indent 8 more
+ 1,  // indent 8 more
+ 2,  // indent 16 more
+ 3   // indent 16 more
+ ],
+ callback: function(){  // indent 8 more
+ return true;  // indent 8 more
+ }  // indent 8 more
+ }, options||{}));
+ }
+ 
+ $.fn[class_name]=function() {
+ 
+ var _arguments=arguments;
+ return this.each(function(){
+ 
+ var options=$(this).data(class_name+'_public');
+ if (!options) {
+ init.apply(this,_arguments);
+ 
+ } else {
+ var method=public_method[_arguments[0]];
+ 
+ if (typeof(method)!='function') {
+ console.log(class_name+' has no method "'+_arguments[0]+'"');
+ return false;
+ }
+ _arguments[0]=options;
+ method.apply(this,_arguments);
+ }
+ });
+ }
+ 
+ })(jQuery);
+ JSEND
+ 
+ STARTTEST
+ :set cino=j1,J1
+ /^JSSTART
+ =/^JSEND
+ ENDTEST
+ 
+ JSSTART
+ function init(options) {
+ $(this).data(class_name+'_public',$.extend({},{
+ foo: 'bar',
+ bar: 2,
+ foobar: [
+ 1,  // indent 8 more
+ 2,  // indent 8 more
+ 3   // indent 8 more
+ ],
+ callback: function(){
+ return true;
+ }
+ }, options||{}));
+ }
+ JSEND
+ 
+ STARTTEST
+ :set cino=j1,J1
+ /^JSSTART
+ =/^JSEND
+ ENDTEST
+ 
+ JSSTART
+ (function($){
+ function init(options) {
+ $(this).data(class_name+'_public',$.extend({},{
+ foo: 'bar',
+ bar: 2,  // indent 8 more
+ foobar: [  // indent 8 more
+ 1,  // indent 8 more
+ 2,  // indent 16 more
+ 3  // indent 16 more
+ ],
+ callback: function(){  // indent 8 more
+ return true;  // indent 8 more
+ }  // indent 8 more
+ }, options||{}));
+ }
+ })(jQuery);
+ JSEND
+ 
+ STARTTEST
  :g/^STARTTEST/.,/^ENDTEST/d
  :1;/start of AUTO/,$wq! test.out
  ENDTEST
*** ../vim-7.3.255/src/testdir/test3.ok	2011-07-15 14:12:25.000000000 +0200
--- src/testdir/test3.ok	2011-07-15 21:06:38.000000000 +0200
***************
*** 1443,1445 ****
--- 1443,1559 ----
  }
  JSEND
  
+ 
+ JSSTART
+ var foo = [
+ 1,  // indent 8 more
+ 	2,
+ 	3
+ 	];  // indent 8 less
+ JSEND
+ 
+ 
+ JSSTART
+ function bar() {
+ 	var foo = [
+ 		1,
+ 		2,
+ 		3
+ 			];  // indent 16 less
+ }
+ JSEND
+ 
+ 
+ JSSTART
+ (function($){
+ 
+ 	var class_name='myclass';
+ 
+ 	function private_method() {
+ 	}
+ 
+ 	var public_method={
+ 		method: function(options,args){
+ 			private_method();
+ 		}
+ 	}
+ 
+ 	function init(options) {
+ 
+ 		$(this).data(class_name+'_public',$.extend({},{
+ 			foo: 'bar',
+ 		bar: 2,  // indent 8 more
+ 		foobar: [  // indent 8 more
+ 			1,  // indent 8 more
+ 		2,  // indent 16 more
+ 		3   // indent 16 more
+ 			],
+ 		callback: function(){  // indent 8 more
+ 			return true;  // indent 8 more
+ 		}  // indent 8 more
+ 		}, options||{}));
+ 	}
+ 
+ 	$.fn[class_name]=function() {
+ 
+ 		var _arguments=arguments;
+ 		return this.each(function(){
+ 
+ 			var options=$(this).data(class_name+'_public');
+ 			if (!options) {
+ 				init.apply(this,_arguments);
+ 
+ 			} else {
+ 				var method=public_method[_arguments[0]];
+ 
+ 				if (typeof(method)!='function') {
+ 					console.log(class_name+' has no method "'+_arguments[0]+'"');
+ 					return false;
+ 				}
+ 				_arguments[0]=options;
+ 				method.apply(this,_arguments);
+ 			}
+ 		});
+ 	}
+ 
+ })(jQuery);
+ JSEND
+ 
+ 
+ JSSTART
+ function init(options) {
+ 	$(this).data(class_name+'_public',$.extend({},{
+ 		foo: 'bar',
+ 		bar: 2,
+ 		foobar: [
+ 		1,  // indent 8 more
+ 		2,  // indent 8 more
+ 		3   // indent 8 more
+ 		],
+ 		callback: function(){
+ 			return true;
+ 		}
+ 	}, options||{}));
+ }
+ JSEND
+ 
+ 
+ JSSTART
+ (function($){
+ 	function init(options) {
+ 		$(this).data(class_name+'_public',$.extend({},{
+ 			foo: 'bar',
+ 		bar: 2,  // indent 8 more
+ 		foobar: [  // indent 8 more
+ 			1,  // indent 8 more
+ 		2,  // indent 16 more
+ 		3  // indent 16 more
+ 			],
+ 		callback: function(){  // indent 8 more
+ 			return true;  // indent 8 more
+ 		}  // indent 8 more
+ 		}, options||{}));
+ 	}
+ })(jQuery);
+ JSEND
+ 
*** ../vim-7.3.255/src/version.c	2011-07-20 15:04:52.000000000 +0200
--- src/version.c	2011-07-20 15:08:13.000000000 +0200
***************
*** 711,712 ****
--- 711,714 ----
  {   /* Add new patch number below this line */
+ /**/
+     256,
  /**/

-- 
Not too long ago, a keyboard was something to make music with...

 /// Bram Moolenaar -- Bram@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    ///
