### 10.7. Undermenuen “Script-Fu”

Denne undermenu indeholder nogle Script-Fu-kommandoer, især Script-Fu-konsollen. Script-Fu er et sprog til at skrive programmer med, som giver dig mulighed for at køre en række GIMP-kommandoer automatisk.

#### 10.7.1. Aktivering af undermenuen

Du kan tilgå denne kommando i hovedmenuen via Filtre → Udvikling → Script-Fu.

#### 10.7.2. Script-Fu-konsol

Script-Fu-konsollen er et dialogvindue, hvor du interaktivt kan teste Scheme-kommandoer.

Konsollen består af et stort hovedvindue, der kan rulles i, til output og en tekstboks i bunden til indtastning af Scheme-kommandoer. Når du skriver en Scheme-erklæring og derefter trykker på Enter, vises kommandoen og dens returværdi i hovedvinduet.

Figur 16.235. Script-Fu-konsollen

Du kan finde flere oplysninger om Scheme og eksempler på, hvordan du bruger Script-Fu-konsollen i Afsnit 3, “En vejledning til Script-Fu”.

Knapperne i Script-Fu-konsollen

Gennemse

  Knappen Gennemse findes ved siden af tekstfeltet Scheme-kommandoer. Når der klikkes på den, åbnes vinduet procedurebrowser med en ekstra knap Anvend.

  Vælg en PDB-procedure på listen, og tryk på knappen Anvend. Den valgte procedure og dens parameternavne indsættes i tekstfeltet i Script-Fu-konsollen.

  Nu skal du bare erstatte parameternavnene efter procedurenavnet med faktiske værdier. Derefter kan du kalde proceduren ved at trykke på Enter.

Luk

  Denne knap lukker Script-Fu-konsollen.

Ryd

  Når du klikker på denne knap, fjernes indholdet i hovedvinduet. Bemærk, at du ikke kan få det fjernede indhold tilbage ved at trykke på knappen Gem.

Gem

  Med denne knap kan du gemme hovedvinduets indhold, det vil sige Script-Fu-konsollens output (inklusive “`>`”-tegnene).

#### 10.7.3. Start server

Denne kommando starter en server, som læser og udfører Script-Fu-erklæringer (Scheme), som du sender til den via en specificeret port.

Figur 16.236. Script-Fu-serverindstillingerne

Lyt på IP

  IP-adressen som Script-Fu-serveren vil lytte på. Dette er normalt 127.0.0.1 (også kendt som localhost). Vælg kun en anden, hvis du ved, hvad du laver.

Serverport

  Det portnummer Script-Fu-serveren skal lytte på. Det er muligt at starte mere end én server og selvfølgelig angive forskellige portnumre.

Serverlogfil

  Eventuelt kan du angive navnet på en fil, som serveren vil bruge til at logge informations- og fejlmeddelelser. Hvis der ikke er angivet en fil, skrives beskederne til stdout.

Script-Fu-serverprotokollen

Protokollen, der bruges til at kommunikere med Script-Fu-serveren, er meget enkel:

- Hver besked (Script-Fu-erklæring) af længden `L`, der sendes til serveren, skal indledes med følgende 3 bytes:

  Tabel 16.1. Kommandoernes headerformat

  Bytenummer | Indhold | Beskrivelse
  --- | --- | ---
  0 | 0x47 | Magisk byte (“G”)
  1 | L div 256 | `L`'s høje byte
  2 | L mod 256 | `L`'s lave byte

- Ethvert svar fra serveren (returværdi eller fejlmeddelelse) af længden `L` indledes med de følgende 4 byte:

  Tabel 16.2. Svarenes headerformat

  Bytenummer | Indhold | Beskrivelse
  --- | --- | ---
  0 | 0x47 | Magisk byte (“G”)
  1 | fejlkode | 0 ved succes, 1 ved fejl
  2 | L div 256 | `L`'s høje byte
  3 | L mod 256 | `L`'s lave byte

| Vink
Hvis du ikke vil have beskidte hænder: Der er et Python-script ved navn servertest.py, som leveres med GIMP-kildekoden, og som du kan bruge som en simpel kommandolinjeskal til Script-Fu-serveren.

10.6. Undermenuen “Python-Fu” |  | 11. The “Windows” Menu

Report a bug in GIMP Rapportér en fejl i fejlsporing