10.6. Il sottomenu «Script-Fu»
| 10. Il menu «Filtri» |

### 10.6. Il sottomenu «Script-Fu»

Figura 16.247. Il sottomenu «Script-Fu»

Il comando Script-Fu mostra un sottomenu che contiene molti script Script-Fu e opzioni, inclusa la console Script-Fu. Script-Fu è un linguaggio per scrivere script, che permette di eseguire una serie di comandi GIMP automaticamente.

#### 10.6.1. Attivazione del sottomenu

- È possibile accedere a questo comando dalla barra del menu immagine tramite Filtri → Script-fu.

#### 10.6.2. Ricarica gli script

Sarà necessario questo comando ad ogni aggiunta, rimozione o modifica di uno script-fu. Il comando provoca la ricarica degli script-fu e la ricostruzione totale dei menu contenenti gli script-fu. Se non si usa il comando, GIMP non sarà in grado di rilevare i cambiamenti sino al prossimo riavvio.

Notare che non si otterrà nessun riscontro dell'operazione avvenuta, a meno che non si salvi, se uno degli script fallisse per qualche motivo.

#### 10.6.3. Console script-fu

La console script-fu è una finestra di dialogo entro la quale è possibile sperimentare interattivamente i comando Scheme.

La console consiste di una grande finestra principale scorrevole per i risultati e un riquadro di testo usato per l'inserimento dei comandi Scheme. Quando si batte un comando Scheme e si preme il tasto Invio, il comando ed il risultato restituito vengono mostrati nella finestra principale.

Figura 16.248. La console script-fu

Si troverà ulteriori informazioni sul linguaggio Scheme ed esempi su come usare la console Script-Fu in Sezione 3, «Una guida sugli Script-Fu»." msgstr ""

I pulsanti della console script-fu

Scorri

  Questo pulsante è vicino alla casella di immissione testo dei comandi Scheme. Se premuto, viene portato in primo piano il navigatore di procedure con un pulsante aggiuntivo in fondo alla finestra:

  Il pulsante aggiuntivo del navigatore di procedure

  Quando si preme il pulsante Applica nel navigatore delle procedure, la procedura selezionata viene incollata nella finestra di immissione testo:

  Procedura PDB applicata

  Ora basta sostituire i nomi dei parametri (qui: «layer» e «mode») con i valori voluti e poi chiamare la procedura premendo il pulsante Invio.

Chiudi

  Premendo questo pulsante si chiude la console script-fu.

Cancella

  Quando si fa clic su questo pulsante, il contenuto della finestra principale verrà rimosso. Notare che non è possibile ottenere nuovamente il contenuto cancellato usando il comando Salva.

Salva

  Questo comando permette di salvare il contenuto della finestra principale, cioè la console dei risultati degli script-fu (inclusi i caratteri «`>`»-).

#### 10.6.4. Avvia il server

Questo comando fa partire un server che legge ed esegue i comandi script-fu (Scheme) che vengono spediti ad esso tramite una porta specificata.

Figura 16.249. Le opzioni del server script-fu

Porta del server

  Il numero di porta sulla quale ascolterà il server script-fu. È possibile eseguire più di un server contemporaneamente, naturalmente specificando numeri di porta differenti.

File di log del server

  Opzionalmente è possibile specificare il nome di un file per il server da usare per annotare le informazioni sul funzionamento e i messaggi di errore. Se non viene specificato alcun file, questi messaggi verranno scritti sullo stdout.

Il protocollo server script-fu

Il protocollo usato per comunicare con il server script-fu è molto semplice:

- Ogni messaggio (comando script-fu) di lunghezza `L` spedito al server deve essere preceduto dai seguenti 3 byte:

  Tabella 16.1. Formato delle intestazioni per i comandi

  Byte # | Contenuto | Descrizione
  --- | --- | ---
  0 | 0x47 | Byte "magico" ("G")
  1 | L div 256 | Byte alto di `L`
  2 | L mod 256 | Byte basso di `L`

- Ogni risposta dal server (valore restituito o messaggio di errore) di lunghezza `L` sarà preceduta dai seguenti 4 byte:

  Tabella 16.2. Formato delle intestazioni per le risposte

  Byte # | Contenuto | Descrizione
  --- | --- | ---
  0 | 0x47 | Byte "magico" ("G")
  1 | codice di errore | 0 per successo, 1 per errore
  2 | L div 256 | Byte alto di `L`
  3 | L mod 256 | Byte basso di `L`

| Suggerimento
Se non si desidera sporcarsi le mani: esiste uno script in Python di nome servertest.py distribuito con il sorgente di GIMP che può essere usato come semplice shell a riga di comando per il server script-fu.

10.5. Il sottomenu «Python-Fu» |  | 11. Il menu «Finestre»

Segnalate l'errore sulla piattaforma apposita