Aller au contenu

Extension Zed

L'extension Elide pour Zed : elide lsp comme serveur de langage Java, un adaptateur de débogage Elide pour JavaScript, TypeScript et Python, et le débogage depuis les tâches Zed.

Sur cette page

L’extension Elide pour Zed ajoute elide lsp comme serveur de langage Java et un adaptateur de débogage Elide pour JavaScript, TypeScript et Python. Toute tâche Zed qui exécute elide run ou elide test apparaît aussi dans l’onglet Debug du débogueur.

Prérequis

PrérequisPourquoi
Elide 1.6.0 ou plus récent dans le PATHL’extension exécute elide ; indiquez un autre chemin dans les paramètres.
L’extension Java de ZedElle définit le langage Java.
L’extension PklColore elide.pkl. Facultative.
elide setup pythonUniquement pour déboguer Python.

Installer

Installez-la comme extension de développement, ce qui nécessite Rust via rustup :

git clone https://github.com/elide-dev/zed elide-zed

Dans Zed, ouvrez Extensions, choisissez Install Dev Extension et sélectionnez le répertoire elide-zed.

Serveur de langage Java

Indiquez elide dans la liste language_servers de Java dans settings.json. Pour l’utiliser à la place de jdtls :

{
  "languages": {
    "Java": { "language_servers": ["elide", "!jdtls", "..."] }
  }
}

["elide", "jdtls"] garde les deux ; ["!elide", "..."] désactive Elide. Le serveur lit la racine de l’espace de travail envoyée par Zed, et un elide.pkl à cet endroit en fait un projet Elide, si bien que les dépendances sont résolues. Il fournit diagnostics, complétion, survol, navigation, renommage, formatage, actions de code, indications intégrées et jetons sémantiques ; voir Autres éditeurs pour la liste complète.

Pour exécuter un binaire précis ou passer des options supplémentaires :

{
  "lsp": {
    "elide": {
      "binary": { "path": "/opt/elide/bin/elide", "arguments": ["lsp"] }
    }
  }
}

arguments remplace la valeur par défaut ["lsp"].

Débogage

Ouvrez le débogueur avec debugger: start (F4) et choisissez un scénario de .zed/debug.json, une tâche de l’onglet Debug, ou Launch avec l’adaptateur Elide. launch lance elide run --debugger=dap (ou elide test avec "command": "test") et s’y connecte ; attach se connecte à un programme déjà en écoute :

[
  { "label": "Debug app.ts", "adapter": "Elide", "request": "launch", "program": "app.ts" },
  { "label": "Debug this file", "adapter": "Elide", "request": "launch", "program": "$ZED_FILE" },
  { "label": "Debug tests", "adapter": "Elide", "request": "launch", "command": "test", "args": ["app.test.ts"] },
  { "label": "Attach", "adapter": "Elide", "request": "attach", "tcp_connection": { "host": "127.0.0.1", "port": 4711 } }
]
Champ de launchSignification
programFichier à exécuter, relatif à cwd.
argsArguments après program.
cwdRépertoire de travail ; par défaut, la racine du worktree.
envVariables d’environnement supplémentaires.
commandrun (par défaut) ou test.
elideArgsOptions Elide avant program, comme ["--max-mem=512m"].
host, portÉcouteur DAP ; par défaut 127.0.0.1 et un port libre (4711 pour s’attacher).

La sortie du programme apparaît dans la console de débogage. Pour s’attacher, lancez vous-même le programme :

elide run --debugger=dap app.py

Pour faire d’Elide le débogueur par défaut de la gouttière et de la fenêtre de nouveau processus d’un langage :

{ "languages": { "TypeScript": { "debuggers": ["Elide"] } } }

Limites

  • Le débogage Java et Kotlin (JDWP) n’est pas proposé : Zed ne débogue Java que via l’extension Java.

Cette page vous a-t-elle aidé ?