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 ///