10.7. Undermenyn Script-Fu

Denna undermeny innehåller några Script-Fu-kommandon, i synnerhet Script-Fu-konsolen. Script-Fu är ett språk för att skriva skript, vilket låter dig köra ett antal GIMP-kommandon automatiskt.

10.7.1. Aktivera undermenyn

Du kan komma åt detta kommando från huvudmenyn genom FilterUtvecklingScript-Fu.

10.7.2. Script-Fu-konsol

Script-Fu-konsolen är en dialogruta där du interaktivt kan testa Scheme-kommandon.

Konsolen består av ett stort rullbart huvudfönster för utmatning och en textruta längst ner för att mata in Scheme-kommandon. När du skriver in en Scheme-sats och sedan trycker på Retur kommer kommandot och dess returvärde visas i huvudfönstret.

Figur 16.234. Script-Fu-konsolen

Script-Fu-konsolen

Du hittar mer information om Scheme och exempel på hur du använder Script-Fu-konsolen i Avsnitt 3, ”En Script-Fu-handledning”.

Script-Fu-konsolknapparna

Bläddra

Knappen Bläddra finns intill textrutan för Scheme-kommandon. När den klickas på öppnas procedurbläddrarfönstret med en extra knapp Verkställ.

Välj en PDB-procedur från listan och tryck på knappen Verkställ. Den valda proceduren och dess parameternamn kommer klistras in i skriptkonsolens textruta.

Nu behöver du bara ersätta parameternamnen efter procedurnamnet med faktiska värden. Sedan kan du anropa proceduren genom att trycka ned Retur.

Stäng

Att trycka på denna knapp stänger Script-Fu-konsolen.

Töm

När du klickar på denna knapp kommer innehållet i huvudfönstret tas bort. Observera att du inte kan få tillbaka det borttagna innehållet med kommandot Spara.

Spara

Detta kommando låter dig spara innehållet i huvudfönstret, det vill säga Script-Fu-konsolutmatningen (inklusive >-tecknen).

10.7.3. Starta servern

Detta kommando kommer starta en server vilken läser och kör satser i Script-Fu (Scheme) som du sänder till den via en angiven port.

Figur 16.235. Script-Fu-serveralternativ

Script-Fu-serveralternativ

Lyssna på IP

IP-adressen som Script-Fu-servern kommer lyssna på. Detta är vanligen 127.0.0.1 (även känd som localhost). Ändra endast detta om du vet vad du gör.

Serverport

Portnumret som Script-Fu-servern kommer lyssna på. Det är möjligt att starta mer än en server, förutsatt att du anger olika portnummer.

Serverloggfil

Valfritt kan du ange namnet på en fil som servern kommer använda för att logga informations- och felmeddelanden. Om ingen fil angivits kommer meddelanden skrivas till standard ut.

Script-Fu-serverprotokollet

Protokollet som används för att kommunicera med Script-Fu-servern är väldigt enkelt:

  • Varje meddelande (Script-Fu-sats) av längd L som skickas till servern måste föregås av följande 3 byte:

    Tabell 16.1. Huvudformat för kommandon

    Byte-nummer Innehåll Beskrivning
    0 0x47 Magisk byte (”G”)
    1 L div 256 Hög byte för L
    2 L mod 256 Låg byte för L

  • Varje svar från servern (returvärde eller felmeddelande) av längd L kommer föregås av följande 4 byte:

    Tabell 16.2. Huvudformat för svar

    Byte-nummer Innehåll Beskrivning
    0 0x47 Magisk byte (”G”)
    1 felkod 0 vid lyckat, 1 vid fel
    2 L div 256 Hög byte för L
    3 L mod 256 Låg byte för L

[Tips] Tips

Om du inte vill göra grovjobbet så finns det ett Python-skript som heter servertest.py och följer med källkoden för GIMP, vilket du kan använda som ett enkelt kommandoradsskal för Script-Fu-servern.