Skip to main content
Cet article se base sur la version v0.0.27 (juillet 2026). Le package est désormais publié sur Packagist et peut être installé via composer global require laravel/lsp.

Qu’est-ce que Laravel LSP ?

Laravel LSP (Language Server Protocol) est l’outil officiel qui apporte à votre éditeur des fonctionnalités d’IDE conscientes du framework Laravel. Le Language Server Protocol est un protocole standard de communication entre un client LSP (l’éditeur) et un serveur LSP (Laravel LSP), ce qui permet d’obtenir une expérience de développement unifiée sur plusieurs éditeurs. Fonctionnalités fournies par Laravel LSP :
  • Complétion — autocomplétion des routes, vues, clés de configuration, clés de traduction, composants Livewire, etc.
  • Hover — au survol du curseur, affichage de descriptions, de documentation et d’informations contextuelles.
  • Diagnostics — détection en temps réel des problèmes dans le code.
  • Liens de documents — liens entre fichiers et ressources.
  • Quick fixes — propositions de correction automatique pour les problèmes courants.
  • Aller à la définition — saut jusqu’au lieu de définition d’un symbole.

À quoi cela sert-il ?

L’autocomplétion PHP standard des éditeurs ne comprend pas les couches d’abstraction du framework Laravel. Par exemple :
  • Saisir le premier argument de Route::get() (un motif d’URI) ne déclenche aucune complétion.
  • Saisir le nom de la vue dans view('users.index') ne propose pas les fichiers de vue réellement disponibles.
  • Les clés de configuration (config('app.name')) ou de traduction (trans('messages.welcome')) ne sont pas prises en compte.
  • La complétion et la validation à l’intérieur des templates Blade ne sont pas gérées par les éditeurs standard.
Laravel LSP comprend ces « contextes propres au framework » et fournit une complétion et un diagnostic précis.

Installation

Installation globale

Installez globalement via Composer :
Vérifiez que le répertoire des bin globaux de Composer est bien dans votre PATH, puis lancez :

Installation depuis les sources

Pour utiliser la version de développement, clonez le dépôt et lancez-le :
Configurez un alias de shell pour disposer de la commande laravel-lsp :

Guide de configuration par éditeur

Laravel LSP utilise le protocole LSP standard : il fonctionne donc avec tout éditeur qui prend en charge LSP. Voici la configuration pour les principaux éditeurs.

Sublime Text

Installez et configurez l’extension officielle Laravel Sublime Text.

Zed

Installez et configurez l’extension officielle Laravel Zed.

VS Code

Installez et configurez l’extension officielle Laravel VS Code.

Cursor

Cursor est compatible avec les extensions VS Code : vous pouvez donc utiliser telle quelle l’extension Laravel VS Code mentionnée ci-dessus.

Neovim

Depuis Neovim 0.11, vous pouvez ajouter directement une configuration LSP personnalisée :
Avec nvim-lspconfig, enregistrez-le ainsi :

OpenCode

Activez le support LSP dans opencode.json et déclarez Laravel LSP comme serveur personnalisé :

Configuration dans GitHub Copilot CLI

Si vous utilisez GitHub Copilot CLI, la configuration globale se fait dans ~/.copilot/lsp-config.json. Aucune configuration côté éditeur n’est nécessaire :
La configuration de serveur LSP de Copilot CLI prend également en charge initializationOptions, ce qui vous permet d’utiliser toutes les options détaillées ci-dessous.

Options de configuration

Le client LSP peut transmettre des options détaillées à Laravel LSP via initializationOptions.

Détection de l’environnement PHP

L’option phpEnvironment contrôle la commande PHP utilisée pour indexer les données du projet. La valeur par défaut est auto (détection automatique) : En cas d’échec de détection ou de valeur invalide, il retombe sur php.

Exemple de configuration de base

DocBlocks des helpers Pest

Option ajoutée en v0.0.27. Lorsque les tests Pest ou le fichier d’autoload Composer changent, elle génère et maintient automatiquement les docblocks des helpers Pest :

Configuration par fonctionnalité

Chaque fonctionnalité peut être activée ou désactivée individuellement. Les suffixes disponibles incluent Completion, Diagnostics, Hover, Link, etc. :

Liste des fonctionnalités disponibles

Démarrage rapide

  1. Installercomposer global require laravel/lsp
  2. Configurer l’éditeur — consultez le guide de l’éditeur correspondant plus haut.
  3. Ouvrir un projet Laravel — le serveur indexe depuis la racine les routes, vues, traductions, configuration, etc.
  4. Utiliser la complétion — dans les fichiers PHP et les templates Blade, la complétion consciente du framework s’active automatiquement.

Conclusion

Laravel LSP améliore fortement l’expérience développeur. Il comprend les contextes propres au framework qu’un éditeur standard ne peut pas gérer et propose des complétions et diagnostics plus précis et utiles. Prérequis :
  • PHP 8.2 ou plus.
  • Composer.
  • Un éditeur compatible LSP (Sublime Text, Neovim, Cursor, VS Code, etc.).
Références :
Dernière modification le 2 août 2026