Formatear código Perl

Solo se reescriben los espacios: los sigilos, comentarios, expresiones regulares, heredocs y POD vuelven exactamente como se escribieron. Es un formateador de presentación, no Perl::Tidy, y no comprueba ni repara la sintaxis.

Se ejecuta localmente en tu navegador
Copiar

Cómo formatear código Perl en el navegador

Pega un fragmento de Perl y la herramienta devuelve el mismo programa con sangría uniforme, una instrucción por línea, el estilo de llaves elegido y ajuste de línea opcional. Solo se reescriben los espacios entre tokens: los sigilos, los comentarios, las expresiones regulares, los heredocs, el POD y los subíndices se copian byte a byte, así que el resultado es el mismo programa Perl, solo que más fácil de leer.

El formateador se ejecuta por completo en esta pestaña del navegador y el código nunca se sube. Es un formateador de presentación, no Perl::Tidy ni un comprobador de sintaxis: no compila, no valida ni repara el programa; un archivo roto vuelve roto, solo que con una presentación coherente.

  1. Pega el código Perl en el cuadro y pulsa Formatear código Perl, o Ctrl/⌘+Enter. Cada ejecución sustituye el resultado anterior.
  2. Elige la sangría (tabulador o 2, 3, 4 u 8 espacios), cuántas líneas en blanco conservar, el estilo de llaves y si las líneas largas deben ajustarse a 80 o 120 caracteres.
  3. Pulsa Copiar para llevarte el resultado, o Limpiar para vaciar ambos paneles antes del siguiente fragmento.
  4. El ajuste solo corta después de comas y la continuación se sangra un nivel más; elige Sin ajuste si cada instrucción debe quedar en una sola línea sin importar su longitud.

Qué cambia el formateador y qué permanece igual

Qué cambia el formateador

Formatear es reescribir espacios. La secuencia de tokens de la salida es idéntica a la de la entrada, y eso protege las partes de Perl que se rompen con facilidad: los sigilos $, @ y %, los comentarios desde # hasta el final de la línea, las expresiones regulares como /^Error: (\d+)/ y las sustituciones como s/#/\#/g, los operadores =~ y !~, las cadenas de desreferencia ->, los subíndices de hash y array como $h{a} y $list[0], los operadores de cita (q, qq, qw, qx, qr, m, s, tr, y), los heredocs con su cuerpo, los bloques POD y las secciones __END__/__DATA__.

Como cada token se copia tal cual, nada puede reescribirse en silencio: el contenido de las cadenas, los patrones de las expresiones regulares y los comentarios vuelven exactamente como se escribieron. Una comprobación rápida es que el código formateado contiene los mismos caracteres que la entrada, solo con otro espaciado.

Las opciones en la práctica

La sangría se aplica a los bloques abiertos con llaves; elige tabulador o 2, 3, 4 u 8 espacios. Las líneas en blanco se recortan hasta el límite elegido, desde eliminarlas por completo hasta conservarlas todas. El estilo de llaves controla dónde va la llave de apertura: en la misma línea que sub, if, while y compañía (el diseño habitual en Perl, K&R), en su propia línea (Allman), o en la misma línea con else y elsif movidos a una línea nueva tras la llave de cierre.

El ajuste nunca parte un token por la mitad: cuando una línea supera la longitud elegida, los cortes se colocan después de las comas y la continuación se sangra exactamente un nivel más. Los bloques de map, grep y sort de una sola línea que caben se mantienen en línea; el resto se expande en sus propias líneas.

Qué no hace

El formateador no ejecuta perl -c: no comprueba la sintaxis, no resuelve módulos, no evalúa bloques BEGIN ni informa de errores. Si la entrada tiene una comilla sin cerrar, un punto y coma ausente o una llave suelta, la salida conserva ese problema; arreglar código es trabajo de un linter o del intérprete, no de una pasada de presentación.

Tampoco reestructura el programa. Las instrucciones no se reordenan, las expresiones no se reescriben y el formateador no opina sobre cuál de dos modismos equivalentes es mejor. Conserva una copia del original y compara el resultado como compararías cualquier archivo formateado.

Herramientas recientes: