10.6. El submenú «Script-Fu»

Aquest submenú conté algunes ordres Scrip-Fu, especialment la consola de Script-Fu. Script-Fu és un llenguatge per a escriure scripts, que us permeten executar una sèrie d'ordres de GIMP automàticament.

10.6.1. Activa el submenú

Podeu accedir a aquesta ordre en el menú principal FiltresDesenvolupamentScript-Fu.

10.6.2. Actualitza els scripts

Necessiteu aquesta ordre cada vegada que afegiu, suprimiu o canvieu un script de Script-Fu. L'ordre fa que els Script-Fus es recarreguin i que els menús que contenen Script-Fus es reconstrueixin des de zero. Si no useu aquesta ordre, GIMP no notarà els canvis fins que no l'inicieu una altra vegada.

Tingueu en compte que no obtindreu cap resposta, tret que ho deseu, si un dels scripts falla.

10.6.3. Consola de Script-Fu

La consola de Script-Fu és una finestra de diàleg en què podeu provar interactivament les ordres Scheme.

La consola consisteix en una gran finestra principal desplaçable per a la sortida i una caixa de text a la part inferior per a introduir ordres Scheme. Quan escriviu una instrucció Scheme i premeu la tecla Retorn, l'ordre i el valor de retorn es mostraran en la finestra principal.

Figura 16.248. Consola de Script-Fu

Consola de Script-Fu

Trobareu més informació sobre Scheme i exemples de com usar la consola de Script-Fu en laSecció 3, «Programa d'aprenentatge de l'Script-Fu».

Botons de la consola Script-Fu

Navega

El botó Navega està al costat de la caixa de text de les ordres Scheme. Quan es fa clic, s'obre la finestra del navegador de procediments amb un botó addicional Aplica.

Seleccioneu un procediment PDB de la llista i premeu el botó Aplica. El procediment seleccionat i els seus noms de paràmetres s'enganxaran al quadre de text de la consola d'script.

Ara només heu de substituir els noms dels paràmetres després del nom del procediment per valors reals. A continuació, podeu cridar el procediment prement Retorn.

Tanca

En prémer aquest botó es tanca la consola de Script-Fu.

Neteja

Quan feu clic en aquest botó, s'elimina el contingut de la finestra principal. Tingueu en compte que no podeu recuperar el contingut eliminat usant l'ordre Desa.

Desa

Aquesta ordre us permet desar el contingut de la finestra principal, que és la sortida de la consola Script-Fu (incloent-hi els caràcters «>»).

10.6.4. Inicia el servidor

Aquesta ordre iniciarà un servidor, que llegeix i executa les instruccions Script-Fu (Scheme) que envieu a través d'un port especificat.

Figura 16.249. Opcions de servidor Script-Fu

Opcions de servidor Script-Fu

Port del servidor

El número del port per on el servidor de Script-Fu escoltarà. És possible iniciar més d'un servidor, especificant diferents números de port, per descomptat.

Fitxer de registre (log) del servidor

Opcionalment podeu especificar el nom d'un fitxer que el servidor usarà per a registrar missatges informals i d'error. Si no s'especifica un fitxer, els missatges s'escriuran en «stdout».

El protocol de servidor Script-Fu

El protocol usat per a comunicar amb el servidor Script-Fu és molt senzill:

  • Cada missatge (instrucció Script-Fu) de longitud L que s'envia al servidor ha d'anar precedida dels 3 bytes següents:

    Taula 16.1. Format de capçalera per a les ordres

    Byte núm. Contingut Descripció
    0 0x47 Byte màgic ('G')
    1 L div 256 Byte alt de L
    2 L mod 256 Byte baix de L

  • Cada resposta del servidor (valor de retorn o missatge d'error) de longitud L precedit dels 4 bytes següents:

    Taula 16.2. Format de capçalera per a la resposta

    Byte núm. Contingut Descripció
    0 0x47 Byte màgic ('G')
    1 codi d'error 0 per a èxit, 1 per a error
    2 L div 256 Byte alt de L
    3 L mod 256 Byte baix de L

[Suggeriment] Suggeriment

Si no voleu embrutar-vos les mans: hi ha un script Python anomenat servertest.py subministrat amb el codi font de GIMP, que podeu usar com un senzill intèrpret de la línia d'ordres per al servidor Script-Fu.