~/glossar/

Glossar: Begriffe rund um Plugins und Erweiterungen

Von Add-on bis WebExtensions: die wichtigsten Fachbegriffe der Plugin-Entwicklung in kurzen, plattformübergreifenden Erklärungen.

Die Welt der Erweiterungen hat ihren eigenen Wortschatz, und jede Plattform setzt eigene Akzente. Dasselbe Konzept heißt in WordPress Hook, in VS Code Contribution Point und in phpBB Event. Dieses Glossar erklärt die wichtigsten Begriffe so, dass sie plattformübergreifend verständlich sind, und nennt, wo sie besonders häufig vorkommen.

A bis D

Action: Eine Art Hook in WordPress. An einer bestimmten Stelle im Ablauf führt WordPress alle Funktionen aus, die sich für diese Action registriert haben. Actions geben keinen Wert zurück, sie lösen etwas aus. Gegenstück ist der Filter.

Activation Event (Aktivierungsereignis): In VS Code das Ereignis, bei dem eine Extension geladen wird, etwa beim Aufruf eines Befehls oder beim Öffnen einer Datei in einer bestimmten Sprache. Spart Ressourcen, weil nicht alle Extensions beim Start laufen.

Add-on, Add-in, Plugin, Erweiterung, Extension: Bezeichnungen für ein Zusatzprogramm, das eine bestehende Anwendung über eine offizielle Schnittstelle erweitert. Welcher Name verwendet wird, entscheidet der Hersteller: Firefox und Thunderbird sprechen von Add-ons, Microsoft Office von Add-ins, WordPress von Plugins, Chrome und VS Code von Erweiterungen beziehungsweise Extensions.

API (Application Programming Interface): Die dokumentierte Schnittstelle, über die ein Add-on mit der Host-Anwendung spricht. Was nicht in der API steht, darf ein Add-on in der Regel nicht anfassen.

Berechtigung (Permission): Eine im Manifest erklärte Erlaubnis, bestimmte Schnittstellen oder Daten zu nutzen, etwa Tabs, Speicher oder den Inhalt bestimmter Websites. Nutzer sehen die Berechtigungen bei der Installation.

Block: In WordPress ein Baustein des Editors, zum Beispiel Absatz, Bild oder ein selbst entwickelter Block. Beschrieben wird er in einer Datei block.json.

Content Script: Teil einer Browser-Erweiterung, der im Kontext einer Webseite läuft und deren Inhalt lesen und verändern kann. Er ist von den Skripten der Seite selbst isoliert.

Contribution Point: In VS Code ein Eintrag unter contributes in der package.json, mit dem eine Extension Befehle, Menüs, Einstellungen oder Sprachen beisteuert.

Deprecation: Die Ankündigung, dass eine Funktion oder Schnittstelle veraltet ist und künftig entfernt wird. Für Add-on-Entwickler ein Signal, rechtzeitig umzustellen.

E bis L

Escaping: Das Maskieren von Daten bei der Ausgabe, damit sie als Text und nicht als Code interpretiert werden. Schützt vor Cross-Site-Scripting. In WordPress etwa mit esc_html() oder esc_attr().

Event (Ereignis): Allgemein ein Zeitpunkt, zu dem eine Anwendung registrierten Code ausführt. In phpBB heißen die Andockstellen für Extensions ausdrücklich Events.

Extension Host: Der eigene Prozess, in dem VS Code seine Extensions ausführt. Stürzt eine Extension ab oder hängt, bleibt der Editor bedienbar.

Extension Point: In der IntelliJ Platform von JetBrains die definierte Stelle, an der ein Plugin eigene Funktionen anmeldet. Deklariert in der plugin.xml.

Filter: Eine Art Hook in WordPress, der einen Wert durch alle registrierten Funktionen reicht. Jede darf den Wert verändern und muss ihn zurückgeben.

Hook: Oberbegriff für eine Andockstelle, an der eine Anwendung fremden Code einbindet. Der Begriff ist vor allem aus WordPress, älterer Forensoftware wie vBulletin und vielen anderen PHP-Anwendungen bekannt.

Host-Anwendung: Die Anwendung, die ein Add-on lädt, etwa der Browser, WordPress oder ein Spiel.

Language Server Protocol (LSP): Ein offenes Protokoll, über das Editoren und Sprachserver Funktionen wie Autovervollständigung und Fehlerprüfung austauschen. Ein Sprachserver funktioniert dadurch in vielen Editoren.

M bis R

Manifest: Die Beschreibungsdatei eines Add-ons mit Name, Version, Einstiegspunkten und Berechtigungen. Bei Browser-Erweiterungen manifest.json, bei VS Code die package.json, bei JetBrains die plugin.xml, bei WordPress der Kopfkommentar der Hauptdatei.

Manifest V3: Die aktuelle Version des Manifest-Formats für Chrome-Erweiterungen und andere Chromium-Browser. Sie ersetzt die Hintergrundseite durch einen Service Worker, verbietet nachgeladenen Code und trennt Websitezugriffe von API-Berechtigungen.

Migration: Ein versionierter Schritt, der Datenbankstrukturen anlegt, ändert oder entfernt, etwa in phpBB-Extensions. Migrationen machen Installation, Update und Deinstallation nachvollziehbar.

Mixin: In der Minecraft-Modding-Szene eine Technik, um zur Laufzeit Code in bestehende Java-Klassen einzufügen, ohne deren Dateien zu verändern.

Mod: Kurz für Modifikation. Meist eine Erweiterung oder Veränderung eines Spiels, früher auch für Änderungen an Forensoftware gebräuchlich.

Mod-Loader: Ein Programm, das beim Start eines Spiels Mods lädt und ihnen Schnittstellen bereitstellt. Beispiele sind Fabric und Forge für Minecraft Java Edition oder BepInEx für viele Unity-Spiele.

Nonce: In WordPress ein zeitlich begrenzter Prüfwert, der belegt, dass eine Aktion wirklich aus dem eigenen Formular stammt. Schützt vor untergeschobenen Anfragen.

Popup: Bei Browser-Erweiterungen das kleine Fenster, das sich beim Klick auf das Symbol öffnet. Es existiert nur, solange es sichtbar ist.

S bis Z

Sandbox: Eine abgeschottete Umgebung, in der Code mit eingeschränkten Rechten läuft. Figma führt den Hauptcode von Plugins zum Beispiel in einer Sandbox aus, Browser isolieren Content Scripts von der Webseite.

Sanitizing: Das Bereinigen von Eingaben, bevor sie verarbeitet oder gespeichert werden, etwa das Entfernen von HTML aus einem Textfeld. Gegenstück zum Escaping bei der Ausgabe.

Semantic Versioning: Ein Schema für Versionsnummern in der Form MAJOR.MINOR.PATCH. Die Stelle, die sich ändert, zeigt an, ob ein Update Kompatibilität bricht, Funktionen ergänzt oder nur Fehler behebt.

Service Worker: Unter Manifest V3 der Hintergrundteil einer Browser-Erweiterung. Er wird bei Bedarf gestartet und nach Inaktivität beendet, deshalb muss Zustand im Speicher der Erweiterung abgelegt werden.

Sideloading: Das Installieren eines Add-ons ohne den offiziellen Store, etwa zum Testen eines Office-Add-ins oder einer Erweiterung im Entwicklermodus.

Theme-Komponente: In Discourse eine Erweiterung der Oberfläche aus JavaScript, Templates und CSS, die Administratoren ohne Neuinstallation hinzufügen können.

WebExtensions: Das gemeinsame Erweiterungsmodell von Chrome, Edge, Firefox und Safari. Thunderbird baut mit den MailExtensions darauf auf.

Webview: Ein eingebettetes Browserfenster mit eigenem HTML, CSS und JavaScript, zum Beispiel in VS Code, wenn eine Extension eine eigene Oberfläche braucht.

Ein Begriff fehlt? Schreiben Sie uns über das Kontaktformular, wir ergänzen das Glossar.