notiziephp.it

Formattazione Blade in Laravel Pint

Traduzione da laravel-news.com
7 Agosto 2026 Tempo di lettura: 3 minuti
Formattazione Blade in Laravel Pint

Formattazione Blade in Laravel Pint

Pint 1.30.0 è in grado di formattare i template Blade di Laravel, inclusa la sintassi Blade, gli attributi Alpine, l'ordinamento delle classi Tailwind e altro ancora. Utilizzando il nuovo flag --blade, abilita la regola configurabile Pint/laravel_blade che esegue i tuoi file .blade.php tramite Prettier e il plugin prettier-plugin-blade.

Novità

Formattazione Blade con --blade

Indirizza Pint a un progetto e aggiungi il flag:

./vendor/bin/pint --blade

Il flag è una scorciatoia che attiva la regola Pint/laravel_blade, quindi puoi attivarla permanentemente in pint.json invece:

{
    "rules": {
        "Pint/laravel_blade": true
    }
}

Quando la regola è disattivata, Pint esclude completamente i file *.blade.php dal suo cercatore di file, comportamento che tutte le versioni precedenti avevano. Quando è attiva, solo i file che terminano con .blade.php vengono elaborati dal formattatore Blade.

La formattazione viene eseguita su Node, non su PHP. La regola richiede tre pacchetti npm e Pint li verifica prima di fare qualsiasi lavoro:

  • prettier (^3.8.4)
  • prettier-plugin-blade (^3.2.2)
  • prettier-plugin-tailwindcss (^0.8.0)

Se Node manca, Pint si interrompe con una spiegazione. Se i pacchetti mancano, rileva il tuo gestore di pacchetti, chiede se vuoi installarli e installa ciascuno con la versione fissata al vincolo richiesto. Se sono installati ma le versioni non soddisfano i vincoli, Pint si ferma e stampa il comando di installazione esatto per risolvere il problema.

Tre categorie di file Blade vengono saltate anche con la regola attiva, perché riformattarli cambia il loro output o il loro significato:

  • File dei task Envoy (Envoy.blade.php, envoy.blade.php)
  • File delle linee guida Boost in resources/boost/guidelines/
  • Viste Mail in resources/views/emails/ e resources/views/mail/

La suite di test inclusa con la funzionalità copre gli attributi Alpine, i binding Livewire wire:, i componenti Flux, l'ordinamento delle classi Tailwind, i blocchi @verbatim, gli heredoc, l'SVG inline e le classi dei componenti a file singolo, quindi la superficie gestita è più ampia della semplice indentazione HTML.

File rinominati in --diff

L'opzione --diff di Pint eseguiva git diff con --diff-filter=AM, che corrisponde ai file aggiunti e modificati ma non a quelli rinominati. Un file che scrivevi e poi rinominavi prima del push veniva silenziosamente saltato. Ora il filtro è --diff-filter=AMR in tutti i comandi diff committati, in staging e non in staging.

PR: #448 di @MassimilianoLattanzio

--quiet scrive i problemi su stderr

--quiet si comportava come --silent: le violazioni di stile venivano eliminate invece che reindirizzate. Ora i problemi vanno su stderr, quindi stdout resta vuoto e il codice di uscita riflette comunque il risultato, ma puoi leggere l'elenco dei file che hanno violato le regole.

PR: #449 di @lazerg

Chiave in in pint.json

Ora puoi limitare le directory che Pint scansiona dal file di configurazione invece di passare i percorsi da riga di comando, rendendo più diretto il porting di una configurazione .php-cs-fixer.php.

PR: #454 di @cosmastech

Note di aggiornamento

Nessuna modifica di rottura per le configurazioni esistenti. La formattazione Blade è facoltativa e, con la regola disattivata, Pint tratta i file .blade.php esattamente come prima.

Aggiorna con Composer:

composer update laravel/pint

Riferimenti

Il codice sorgente è su GitHub all'indirizzo laravel/pint.

Condividi su: LinkedIn

Altri articoli recenti