DE

Plugins der IDE

Die JumPHP IDE lässt sich mit in PHP geschriebenen Plugins erweitern. Ein Plugin kann hinzufügen:

  • Aktionen (Menüs, Find Action, Tastenkürzel);
  • Werkzeugfenster;
  • Ausführungskonfigurationen;
  • Vervollständigung und Probleme (beim Tippen unterstrichen);
  • Werkzeuge für Claude.

Plugins laufen in der Desktop-IDE.

Ein Plugin installieren

Öffne in der IDE Tools › Plugins…. Dort findest du:

  • Auf jumphp.net: Suche ein Plugin und klicke auf Install. Wenn eine neuere Version erscheint, wird daraus Update.
  • Install from a Folder…: installiert den Ordner eines Plugins.
  • Die Liste der installierten Plugins: Du kannst sie aktivieren, deaktivieren oder entfernen.

Updates: Die IDE prüft jumphp.net kurz nach dem Start und dann alle 6 Stunden. Eine Benachrichtigung bietet Update an; mit Update plugins automatically installiert sie die Updates selbst. Die neue Version gilt ab dem nächsten Start.

Ein Plugin ist PHP, das mit deinen Rechten läuft: Installiere nur Plugins, denen du vertraust.

Ein Plugin erstellen

bin/jumphp plugin:new todo-finder "TODO Finder"
bin/jumphp install todo-finder
bin/jumphp test todo-finder

Du kannst auch New Project › IDE plugin in der IDE verwenden.

Die Klasse des Plugins, src/TodoPlugin.php, fügt hinzu, was es mitbringt:

public function activate(Api $ide): void
{
    $ide->action('count', 'Count the TODOs', fn (EditorState $at) => substr_count($at->text, 'TODO') . ' TODO', ['kbd' => 'Ctrl+Alt+T']);
    $ide->toolWindow('todos', 'TODOs', fn () => Ui::column(
        Ui::list(array_map(fn ($t) => Ui::item($t['text'], fn () => $ide->openFile($t['path'], $t['line'])), $this->todos())),
    ));
    $ide->diagnostics('*.php', fn (string $path, string $text) => $this->fixmes($text));
}
  • Werkzeugfenster werden in PHP aus einfachen Elementen gebaut: Texte, Schaltflächen, Listen, Felder, Kontrollkästchen. Die IDE zeichnet sie in ihrem eigenen Stil.
  • Klicks und die anderen Aktionen des Benutzers rufen dein PHP auf.
  • Tests (PluginTestCase) verwenden das Plugin ohne Fenster. Sie führen eine Aktion aus, lesen ein Fenster, klicken darin, fragen die Vervollständigung ab.

Zum Ausprobieren: Tools › Plugins…, dann Install in the IDE neben dem Plugin des Projekts.

Werkzeuge für Claude

Die IDE gibt ihrem Claude einen MCP-Server, jumphp-ide. Claude steuert damit die IDE: Dateien öffnen, Tests starten, debuggen. Ein Plugin fügt ihm eigene Werkzeuge hinzu:

$ide->mcpTool('list_todos', 'The TODO comments of the project: path, line, text.',
    fn (array $args) => $this->todos($args['path'] ?? ''),
    ['path' => ['type' => 'string', 'description' => 'only under this folder']]);

Claude sieht das Werkzeug als mcp__jumphp-ide__plugin_todo_finder_list_todos. Es wählt es anhand seiner Beschreibung: Sag, was es zurückgibt und wann man es verwendet. Das Werkzeug läuft in PHP in der IDE und darf nie blockieren.

Auf jumphp.net veröffentlichen

Klicke in Tools › Plugins… neben dem Plugin des Projekts auf Publish on jumphp.net. Du musst angemeldet sein. Das Plugin erscheint dann auf der Plugin-Seite.

  • Das erste Konto, das eine ID veröffentlicht, wird ihr Besitzer.
  • Jede Version bleibt verfügbar. Für eine neue erhöhe die version in composer.json.
  • bin/jumphp plugin:pack todo-finder erzeugt dieselbe .zip.
  • Jeder kann ein Plugin mit 1 bis 5 Sternen bewerten, auf seiner Seite oder in der IDE (Rate…). Öffentliche Statistiken: Downloads und Bewertung. Der Autor sieht zusätzlich die privaten Statistiken (Aufrufe, Installationen, Updates, Versionen, Bewertungen) angemeldet auf der Seite und in der IDE (Statistics).