Dieses Untermanü enthält einige Skript-Fu-spezifische Kommandos, insbesondere die Skript-Fu-Konsole. Skript-Fu ist eine Programmiersprache für (kleine) Skripte, mit denen Sie GIMP-Kommandos automatisieren können.
Dieses Kommando brauchen Sie immer dann, wenn Sie ein Skript-Fu-Skript hinzufügen, entfernen oder verändern. Mit diesem Befehl werden alle Skript-Fu-Skripte neu eingelesen und die Menüs, die Skript-Fu-Skripte enhalten, vollständig neu aufgebaut. Wenn Sie dieses Kommando nicht anwenden, werden Änderungen erst beim nächsten Programmstart von GIMP registriert.
Beachten Sie, dass Sie keine Rückmeldung erhalten, außer wenn die Registrierung eines Ihrer Skripte fehlschlägt.
Die Skript-Fu-Konsole ist ein Dialogfenster, in dem Sie interaktiv Scheme-Kommandos ausprobieren können.
Die Konsole besteht aus einem rollbaren Hauptfenster für die Ausgabe und einem Textfeld darunter für die Eingabe von Scheme-Anweisungen. Wenn Sie eine Anweisung tippen und dann die Enter-Taste drücken, wird die Anweisung und ihr Rückgabewert im Hauptfenster angezeigt.
Mehr Informationen zu Scheme sowie Beispiele zur Benutzung der Script-Fu-Konsole finden Sie in Abschnitt 3, „Ein Skript-Fu-Tutorial“.
Die Schaltflächen der Skript-Fu-Konsole
Diese Schaltfläche befindet sich neben dem Textfeld zur Eingabe von Scheme-Anweisungen. Wenn Sie sie anklicken, öffnet sich das Fenster des Prozeduren-Browsers. Allerdings hat dieses Dialogfenster jetzt unten einen zusätzlichen Schalter:
Wenn Sie nun im Prozeduren-Browser auf den Schalter
klicken, wird die gerade ausgewählte Prozedur in das Textfeld eingetragen:Sie müssen jetzt nur noch die Parameternamen (im Beispiel: „layer“ und „mode“) durch tatsächliche Werte ersetzen, dann können Sie die Prozedur mit Enter aufrufen.
Ein Klick auf diese Taste schließt die Skript-Fu-Konsole.
Wenn Sie auf diese Schaltfläche klicken, wird der Inhalt des Hauptfensters entfernt. Er läßt sich dann auch mit einem späteren Speichern nicht mehr rekonstruieren.
Mit diesem Kommando können Sie den Inhalt des Hauptfensters, also die Ausgabe der Skript-Fu-Konsole, speichern (einschließlich der „>
“-Zeichen).
Mit diesem Kommando starten Sie einen Server, an den Sie Scheme- bzw. Script-Fu-Anweisungen über einen bestimmten Port senden können.
Die Nummer des Ports, an dem der Skript-Fu-Server lauscht. Es ist möglich, mehrere Server zu starten, wenn Sie unterschiedliche Portnummern verwenden.
Optional können Sie hier den Namen einer Datei angeben, die der Server für die Ausgabe von verschiedenen Meldungen verwendet. Falls keine Datei angegeben wurde, wird einfach in die Standardausgabe geschrieben.
Das Skript-Fu-Server-Protokoll
Das Protokoll, das für die Kommunikation mit dem Server verwendet wird, ist ganz einfach:
Jeder Nachricht (Skript-Fu-Anweisung) der Länge L
, die Sie an den Server senden, müssen folgende 3 Bytes vorangestellt werden:
Tabelle 15.1. Header für Skript-Fu-Server-Kommandos
Byte-Nr. | Inhalt | Beschreibung |
---|---|---|
0 | 0x47 | Erkennung-(„magisches“)-Byte ('G') |
1 | L div 256 | Höherwertiges Byte von L |
2 | L mod 256 | Niederwertiges Byte von L |
Jede Antwort des Servers besteht aus einer Nachricht (Rückgabewert oder Fehlermeldung) der Länge L
, der folgende 4 Bytes vorangestellt sind:
Tabelle 15.2. Header für Skript-Fu-Server-Antworten
Byte-Nr. | Inhalt | Beschreibung |
---|---|---|
0 | 0x47 | Erkennung-(„magisches“)-Byte ('G') |
1 | Fehlercode | 0 bei Erfolg, sonst 1 |
2 | L div 256 | Höherwertiges Byte von L |
3 | L mod 256 | Niederwertiges Byte von L |
Tipp | |
---|---|
Falls Sie sich nicht die Hände schmutzig machen wollen: Der Quellcode von GIMP enthält ein Python-Skript namens servertest.py, das Sie wie eine einfache Shell für den Skript-Fu-Server verwenden können. |