Laravel Pint 1.30.0 ya puede formatear plantillas Blade. La novedad principal es un flag --blade que activa la regla configurable Pint/laravel_blade y envía los archivos .blade.php a través de Prettier con el plugin prettier-plugin-blade. En lugar del flag, la regla puede activarse de forma permanente en pint.json: "rules": { "Pint/laravel_blade": true }.
La regla es opcional. Desactivada, Pint excluye por completo *.blade.php de su buscador de archivos, como en todas las versiones anteriores; activada, solo los archivos .blade.php pasan por el formateador de Blade.
El formateo se ejecuta con Node.js, no con PHP. Se requieren tres paquetes npm con restricciones de versión fijadas: prettier (^3.8.4), prettier-plugin-blade (^3.2.2) y prettier-plugin-tailwindcss (^0.8.0). Pint los comprueba antes de trabajar: si falta Node, aborta con una explicación; si faltan los paquetes, detecta el gestor de paquetes, pide confirmación e instala cada uno con la restricción requerida; si las versiones no cumplen las restricciones, se detiene y muestra el comando de instalación exacto para corregirlo.
Tres categorías de archivos Blade se omiten incluso con la regla activada, porque reformatearlos cambiaría su salida o su significado: archivos de tareas Envoy (Envoy.blade.php, envoy.blade.php), archivos de directrices Boost bajo resources/boost/guidelines/ y vistas de correo bajo resources/views/emails/ y resources/views/mail/.
La suite de pruebas que acompaña la función cubre atributos de Alpine, bindings wire: de Livewire, componentes Flux, ordenación de clases Tailwind, bloques @verbatim, heredocs, SVG en línea y clases de componentes de un solo archivo: una cobertura mucho más amplia que la simple indentación de HTML.
La versión incluye tres mejoras menores. Primero, --diff usaba git diff con --diff-filter=AM, omitiendo silenciosamente los archivos renombrados; el filtro ahora es --diff-filter=AMR en los diffs committed, staged y unstaged (PR #448 de @MassimilianoLattanzio). Segundo, --quiet ya no se comporta como --silent: las violaciones de estilo van a stderr, stdout queda vacío y el código de salida sigue reflejando el resultado (PR #449 de @lazerg). Tercero, una nueva clave "in" en pint.json permite restringir los directorios que Pint escanea desde el archivo de configuración en lugar de pasar rutas por línea de comandos, facilitando la migración desde .php-cs-fixer.php (PR #454 de @cosmastech).
No hay cambios incompatibles; con la regla desactivada, Pint trata los .blade.php exactamente igual que antes. Actualización con composer update laravel/pint. Referencias: la release v1.30.0 en GitHub, el changelog v1.29.3...v1.30.0 y el commit de implementación fefd4035.
Comentarios
Aún no hay comentarios — escribe el primero.
Inicia la conversación
Sin cuenta ni contraseña — introduce tu correo y te enviamos un enlace de acceso de un solo uso. ¿Primera vez? Todo se configura automáticamente.
Tu valoración se aplicará automáticamente al iniciar sesión.
Revisa tu bandeja de entrada
Hemos enviado un enlace de acceso a …. Ábrelo en este dispositivo — esta pestaña te conectará automáticamente.
Esperando tu clic …
·