2010-04-30 14 views
5

No termino mis declaraciones de JavaScript con punto y coma cuando las líneas nuevas funcionarán. Sin llamas, por favor. Mi pregunta es, ¿hay un paquete de sangría automático para vim que funcione?AutoIndent para JavaScript en Vim que comprende la inserción de punto y coma

Aquí es un ejemplo de lo tonto que es:

$(function(){ 
    var foo // code starts here, 
    // The following line breaks things, but adding a comment to it fixes things 
({a:1}) 
var foo // everything is stuck left now. 
      ({a:1}) 
      var foo // previous line justifies all following lines wherever you put it 

      function flat(){ 
       var foo // function starts out right, but the next line dedents it 
      ({a:1}) 
      var foo 
     } 
     var foo // now we're over here 
     if (foo) { 
      var foo // this if block doesn't close properly 
      } else if (foo){ // add a comment here to dedent the else body 
      var foo 
      } else if (foo){ 
       var foo 
       } // add a comment here to indent and break the following lines 
       var foo 
       }) 
       // all parenthesis match, but yet our indentations don't 

Respuesta

9

estoy feliz con la siguiente secuencia de comandos de Vim:

Resultado de su código después de una gg=G:

var one = 1 
var two = 2 
var fun = function(){ 
    var three = 3 
    var four = 4 
    var five = 5 
} 

var fun2 = (function(foo){ 
    var six = 6 
}) 
+0

¡Muchas gracias! Esto es asombroso http://pastebin.com/yQh2MjWP –

Cuestiones relacionadas