Questo articolo si riferisce alla v0.0.27, informazioni aggiornate a luglio 2026. È ora registrato su Packagist e si installa con
composer global require laravel/lsp.Cos’è Laravel LSP
Laravel LSP (Language Server Protocol) è lo strumento ufficiale che fornisce all’editor funzionalità IDE consapevoli del framework Laravel. Il Language Server Protocol è il protocollo standard di comunicazione tra client LSP (l’editor) e server LSP (Laravel LSP): grazie a questo, ottieni la stessa esperienza di sviluppo su editor diversi. Le funzionalità offerte da Laravel LSP:- Completamento — completamento automatico di route, view, chiavi di config, chiavi di traduzione, componenti Livewire ecc.
- Hover — al passaggio del cursore mostra descrizioni, documentazione e informazioni di contesto
- Diagnostica — rilevamento in tempo reale dei problemi nel codice
- Document link — link tra file e risorse
- Quick fix — proposte di correzione automatica per problemi comuni
- Jump to definition — salto alla definizione dei simboli
Perché serve
Il completamento PHP di base di un editor non capisce il livello di astrazione del framework Laravel. Ad esempio:- Nel primo argomento di
Route::get()non c’è completamento per i pattern URI - Digitando il nome di una view in
view('users.index')non ottieni completamento sui file view reali - Le chiavi dei file di config (
config('app.name')) e di traduzione (trans('messages.welcome')) non sono completate - Nemmeno completamento e verifica dentro i template Blade sono supportati dall’editor di base
Installazione
Installazione globale
Installa globalmente con Composer:PATH; puoi avviare con:
Installazione da sorgenti
Per la versione di sviluppo, clona il repository ed esegui direttamente:laravel-lsp:
Configurazione per singolo editor
Laravel LSP usa il protocollo LSP standard, quindi funziona con qualsiasi editor che supporti LSP. Ecco come configurare i principali.Sublime Text
Installa e configura l’estensione ufficiale Laravel Sublime Text extension.Zed
Installa e configura l’estensione ufficiale Laravel Zed extension.VS Code
Installa e configura l’estensione ufficiale Laravel VS Code extension.Cursor
Cursor è compatibile con le estensioni VS Code, quindi puoi usare direttamente Laravel VS Code extension.Neovim
Con Neovim 0.11 o superiore puoi aggiungere direttamente una configurazione LSP personalizzata:nvim-lspconfig registralo così:
OpenCode
Inopencode.json abilita il supporto LSP e configura Laravel LSP come server personalizzato:
Configurazione con GitHub Copilot CLI
Se usi GitHub Copilot CLI, puoi configurare a livello globale in~/.copilot/lsp-config.json. Non serve una configurazione separata per l’editor:
initializationOptions, quindi puoi usare tutte le opzioni avanzate descritte più avanti.
Opzioni di configurazione
Il client LSP può passare a Laravel LSP configurazioni dettagliate tramiteinitializationOptions.
Rilevamento dell’ambiente PHP
L’opzionephpEnvironment controlla il comando PHP usato per indicizzare i dati del progetto. Il default è auto:
Se il rilevamento fallisce o viene passato un valore non valido, ricade su
php.
Esempio di configurazione di base
Docblock per gli helper di Pest
Opzione aggiunta in v0.0.27. Genera e aggiorna automaticamente il docblock per gli helper di Pest quando cambiano i test Pest o i file di autoload di Composer:Configurazione per singola funzionalità
Ogni funzionalità può essere abilitata o disabilitata singolarmente. I suffissi sonoCompletion, Diagnostics, Hover, Link ecc.:
Elenco delle funzionalità offerte
Quick start
- Installa —
composer global require laravel/lsp - Configura l’editor — segui la guida per il tuo editor
- Apri un progetto Laravel — il server indicizza dalla root i dati del progetto: route, view, traduzioni, config ecc.
- Usa il completamento — nei file PHP e nei template Blade il completamento consapevole del framework funziona in automatico
Conclusioni
Laravel LSP è uno strumento che migliora sensibilmente l’esperienza di sviluppo. Comprende contesti specifici del framework che l’editor da solo non gestisce, offrendo completamento e diagnostica più precisi e utili. Requisiti:- PHP 8.2 o superiore
- Composer
- Editor compatibile LSP (Sublime Text, Neovim, Cursor, VS Code ecc.)