10.7. Das Untermenü Skript-Fu

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.

10.7.1. Activating the Submenu

You can access this command from the main menu through FiltersDevelopmentScript-Fu.

10.7.2. Skript-Fu-Konsole

Die Skript-Fu-Konsole ist ein Dialogfenster, in dem Sie interaktiv Scheme-Kommandos ausprobieren können.

The console consists of a large scrollable main window for output and a text box at the bottom to enter Scheme commands. When you type a Scheme statement and then press the Enter key, the command and its return value will be displayed in the main window.

Abbildung 16.234. Die Skript-Fu-Konsole

Die Skript-Fu-Konsole

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

Durchsuchen

The Browse button is next to the Scheme commands text box. When clicked, the procedure browser window opens with an additional Apply button.

Select a PDB procedure from the list and press the Apply button. The selected procedure and its parameter names will be pasted into the text box of the Script Console.

Now you just have to replace the parameter names after the procedure name with actual values. Then you can call the procedure by pressing Enter.

Schließen

Ein Klick auf diese Taste schließt die Skript-Fu-Konsole.

Leeren

When you click on this button, the content of the main window will be removed. Note that you can't get back the removed content using the Save command.

Speichern

Mit diesem Kommando können Sie den Inhalt des Hauptfensters, also die Ausgabe der Skript-Fu-Konsole, speichern (einschließlich der >-Zeichen).

10.7.3. Server starten

This command will start a server, which reads and executes Script-Fu (Scheme) statements you send it via a specified port.

Abbildung 16.235. Die Einstellungen des Skript-Fu-Servers

Die Einstellungen des Skript-Fu-Servers

Listen on IP

The IP address the Script-Fu server will listen on. This is usually 127.0.0.1 (also known as localhost). Only change this if you know what you are doing.

Server-Port

Die Nummer des Ports, an dem der Skript-Fu-Server lauscht. Es ist möglich, mehrere Server zu starten, wenn Sie unterschiedliche Portnummern verwenden.

Server-Logdatei

Optionally you can specify the name of a file the server will use to log informational and error messages. If no file is specified, messages will be written to stdout.

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 16.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 16.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] 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.