2012-06-03 23 views
13

¿Conoce un formateador JS que admita el estilo de codificación comma-first?Formateador JS Comma-first

var a = 'ape' 
    , b = 'bat' 
    , c = 'cat' 
    , d = 'dog' 
    , e = 'elf' 
    , f = 'fly' 
    , g = 'gnu' 
    , h = 'hat' 
    , i = 'ibu' 
    ; 

Hasta ahora, he mirado JS Beautifier & SourceFormatX pero no pudo encontrar una opción para él.

+0

pensé que podría ser útil saber, no estoy seguro de que esto es una pregunta válida en desbordamiento de pila. – gdoron

+0

@gdoron, sí, estaba pensando en ponerlo en Programadores pero tampoco parece pertenecer allí. ¿Sabes de un lugar mejor? –

+0

No, Proponer nuevo sitio en el Área 51, _ "fuera del tema" _. Tengo algunas preguntas que hacer allí también ... ':)' – gdoron

Respuesta

9

he modificado el código jsBeautifier un poco aquí:

http://jsfiddle.net/RabTN/29/

prensa doit para ver el Código embellecido. línea de

específicamente modifiqué 1080:

 if (flags.var_line) { 
      if (token_text === ',') { 
       if (flags.var_line_tainted) { 
        flags.var_line_reindented = true; 
        flags.var_line_tainted = false; 
        print_newline(); 
        print_token(); 
        print_single_space(); 
        break; 
       } else { 

y la línea 1123

 if (token_text === ',') { 
      if (flags.var_line) { 
       if (flags.var_line_tainted) { 
        print_newline(); 
        print_token(); 
        print_single_space(); 

        flags.var_line_tainted = false; 
       } else { 
        print_newline(); 
        print_token(); 
        print_single_space(); 
       } 
      } else if (last_type === 'TK_END_BLOCK' && flags.mode !== "(EXPRESSION)") { 
       print_token(); 
       if (flags.mode === 'OBJECT' && last_text === '}') { 
        print_newline(); 
       } else { 
        print_single_space(); 
       } 
      } else { 
       if (flags.mode === 'OBJECT') { 
        print_newline(); 
        print_token(); 
        print_single_space(); 
       } else { 
        // EXPR or DO_BLOCK 
        print_token(); 
        print_single_space(); 
       } 
      } 
      break 
+3

¡Gracias! Esto es exactamente lo que necesitaba. Por cierto, definitivamente debe enviar esto como un parche a https://github.com/einars/js-beautify; Estoy seguro de que más de unas pocas personas encontrarán una opción como esta muy útil. –