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 -- [email protected] -- 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    ///

-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

Raspunde prin e-mail lui