### 10.7. Το υπομενού «Script-Fu»

Αυτό το υπομενού περιέχει μερικές εντολές Script-Fu, ειδικά της κονσόλας Script-Fu. Script-Fu είναι μια γλώσσα για γράψιμο σεναρίων, που σας επιτρέπει να τρέξετε μια σειρά εντολών του GIMP αυτόματα.

#### 10.7.1. Ενεργοποίηση του υπομενού

You can access this submenu from the main menu through Filters → Development → Script-Fu.

#### 10.7.2. Κονσόλα Script-Fu

Η κονσόλα Script-Fu είναι ένας παράθυρο διαλόγου όπου μπορείτε διαδραστικά να ελέγξετε τις εντολές Scheme.

Η κονσόλα αποτελείται από ένα μεγάλο κυλιόμενο κύριο παράθυρο για έξοδο και ένα πλαίσιο κειμένου στο κάτω μέρος για την εισαγωγή εντολών Scheme. Όταν πληκτρολογείτε μια πρόταση Scheme και στη συνέχεια πατάτε το πλήκτρο Enter, η εντολή και η τιμή που επιστρέφει θα εμφανίζονται στο κύριο παράθυρο.

Σχήμα 16.235. Η κονσόλα Script-Fu

Θα βρείτε περισσότερες πληροφορίες για το Scheme και παραδείγματα χρήσης στο κονσόλα Script-Fu στο Τμήμα 3, «Μάθημα Script-Fu».

Τα κουμπιά της κονσόλας Script-Fu

Περιήγηση

  Το πλήκτρο Περιήγηση βρίσκεται δίπλα στο πλαίσιο κειμένου εντολών Scheme. Όταν πατάτε, ανοίγει το παράθυρο περιήγησης διαδικασιών με ένα επιπλέον πλήκτρο Εφαρμογή.

  Επιλέξτε μια διαδικασία PDB από τον κατάλογο και πατήστε το πλήκτρο Εφαρμογή. Η επιλεγμένη διαδικασία και τα ονόματα των παραμέτρων της θα επικολληθούν στο πλαίσιο κειμένου της Κονσόλας σεναρίων.

  Τώρα, απλώς πρέπει να αντικαταστήσετε τα ονόματα των παραμέτρων μετά το όνομα της διαδικασίας με τις πραγματικές τιμές. Στη συνέχεια, μπορείτε να καλέσετε τη διαδικασία πατώντας Enter.

Κλείσιμο

  Πάτημα αυτού του κουμπιού κλείνει την κονσόλα Script-Fu.

Καθαρισμός

  Άμα πατήσετε αυτό το πλήκτρο, το περιεχόμενο του κυρίως παραθύρου θα αφαιρεθεί. Σημειώστε ότι δε μπορείτε να πάρετε πίσω το αφαιρεμένο περιεχόμενο χρησιμοποιώντας την εντολή αποθήκευση.

Αποθήκευση

  Αυτή η εντολή σας επιτρέπει να αποθηκεύσετε το περιεχόμενο του κύριου παραθύρου, δηλαδή την έξοδο κονσόλας του Script-Fu (συμπεριλαμβάνοντας τους χαρακτήρες «`>`»).

#### 10.7.3. Εκκίνηση εξυπηρετητή

Αυτή η εντολή θα ξεκινήσει έναν εξυπηρετητή, που διαβάζει και εκτελεί προτάσεις Script-Fu (Scheme) που του στείλατε μέσα από μια καθορισμένη θύρα.

Σχήμα 16.236. Οι επιλογές εξυπηρετητή Script-Fu

Ακρόαση στο IP

  Η διεύθυνση IP στην οποία θα κάνει ακρόαση ο διακομιστής Script-Fu. Αυτή είναι συνήθως 127.0.0.1 (γνωστή και ως τοπικός οικοδεσπότης (localhost)). Αλλάξτε την μόνο εάν γνωρίζετε τι κάνετε.

Θύρα εξυπηρετητή

  Ο αριθμός θύρας που ο εξυπηρετητής Script-Fu θα ακούσει. Είναι δυνατό να ξεκινήσετε περισσότερους από έναν εξυπηρετητές, καθορίζοντας διαφορετικούς αριθμούς θύρας, φυσικά.

Αρχείο ημερολογίου εξυπηρετητή

  Προαιρετικά, μπορείτε να καθορίσετε το όνομα ενός αρχείου που θα χρησιμοποιεί ο διακομιστής για την καταγραφή πληροφοριών και μηνυμάτων σφάλματος. Εάν δεν καθοριστεί αρχείο, τα μηνύματα θα γραφτούν στο stdout.

Το πρωτόκολλο εξυπηρετητή Script-Fu

Το χρησιμοποιούμενο πρωτόκολλο για επικοινωνία με τον εξυπηρετητή Script-Fu είναι πολύ απλό:

- Kάθε μήνυμα (πρόταση Script-Fu) μήκους `L` που στάλθηκε στον διακομιστή πρέπει να συνεχιστεί με τις ακόλουθες 3 ψηφιολέξεις (bytes):

  Πίνακας 16.1. Μορφή κεφαλίδας για εντολές

  Ψηφιολέξη (Byte)# | Περιεχόμενο | Περιγραφή
  --- | --- | ---
  0 | 0x47 | Μαγική ψηφιολέξη byte ('G')
  1 | L div 256 | Υψηλή ψηφιολέξη του `L`
  2 | L mod 256 | Χαμηλή ψηφιολέξη του `L`

- Κάθε απάντηση από τον διακομιστή (επιστρεφόμενη τιμή ή μήνυμα σφάλματος) μήκους `L` θα συνεχιστεί με τις ακόλουθες 4 ψηφιολέξεις:

  Πίνακας 16.2. Μορφή κεφαλίδας για απαντήσεις

  Ψηφιολέξη (Byte)# | Περιεχόμενο | Περιγραφή
  --- | --- | ---
  0 | 0x47 | Μαγική ψηφιολέξη byte ('G')
  1 | κωδικός σφάλματος | 0 σε επιτυχία, 1 σε σφάλμα
  2 | L div 256 | Υψηλή ψηφιολέξη του `L`
  3 | L mod 256 | Χαμηλή ψηφιολέξη του `L`

| Υπόδειξη
Εάν δε θέλετε να λερώσετε τα χέρια σας: υπάρχει ένα σενάριο Python με το όνομα servertest.py παρεχόμενο από τον πηγαίο κώδικα του GIMP, που μπορείτε να χρησιμοποιήσετε ως απλό κέλυφος γραμμής εντολής για τον εξυπηρετητή Script-Fu.

10.6. Το υπομενού «Python-Fu» |  | 11. Το μενού «Παράθυρα»

Report a bug in GIMP Αναφορά σφάλματος τεκμηρίωσης