10.7. El submenú Script-Fu

Este submenú contiene algunos comandos Scrip-Fu, especialmente la consola de Script-Fu. Script-Fu es un lenguaje para escribir scripts, que le permiten ejecutar una serie de comandos de GIMP automáticamente.

10.7.1. Activating the Submenu

You can access this command from the main menu through FiltersDevelopmentScript-Fu.

10.7.2. La consola de Script-Fu

La consola de Script-Fu es una ventana de diálogo en donde puede probar interactivamente los comandos Scheme.

The console consists of a large scrollable main window for output and a text box at the bottom to enter Scheme commands. When you type a Scheme statement and then press the Enter key, the command and its return value will be displayed in the main window.

Figura 16.234. La consola de Script-Fu

La consola de Script-Fu

Encontrará más información sobre Scheme y ejemplos de como usar la consola de Script-Fu en la Sección 3, “Un tutorial de Script-Fu”.

Los botones de la consola de Script-Fu

Examinar

The Browse button is next to the Scheme commands text box. When clicked, the procedure browser window opens with an additional Apply button.

Select a PDB procedure from the list and press the Apply button. The selected procedure and its parameter names will be pasted into the text box of the Script Console.

Now you just have to replace the parameter names after the procedure name with actual values. Then you can call the procedure by pressing Enter.

Cerrar

Al pulsar este botón se cierra la consola de Script-Fu.

Limpiar

Cuando pulsa este botón, el contenido de la ventana principal se elimina. Tenga en cuenta que no puede recuperar el contenido eliminado usando el comando Guardar.

Guardar

Este comando le permite guardar el contenido de la ventana principal, que es la salida de la consola Script-Fu (incluyendo los caracteres >).

10.7.3. Iniciar servidor

Este comando iniciará un servidor, que lee y ejecuta las instrucciones Script-Fu (Scheme) que envía a través de un puerto especificado.

Figura 16.235. Las opciones del servidor de Script-Fu

Las opciones del servidor de Script-Fu

Listen on IP

The IP address the Script-Fu server will listen on. This is usually 127.0.0.1 (also known as localhost). Only change this if you know what you are doing.

Puerto del servidor

El número del puerto por donde el servidor de Script-Fu escuchará. Es posible iniciar más de un servidor, especificando diferentes números de puerto, por supuesto.

Archivo de registro del servidor

Opcionalmente puede especificar el nombre de un archivo que el servidor usará para registrar mensajes informales y de error. Si no se especifica un archivo, los mensajes se escribirán en «stdout».

El protocolo del servidor de Script-Fu

El protocolo usado para comunicar con el servidor Script-Fu es muy sencillo:

  • Cada mensaje (instrucción Script-Fu) de longitud L que se envía al servidor tiene que ir precedida de los siguientes 3 bytes:

    Tabla 16.1. Formato de cabecera para los comandos

    Número de byte Contenido Descripción
    0 0x47 Byte mágico ('G')
    1 L div 256 Byte alto de L
    2 L mod 256 Byte bajo de L

  • Cada respuesta del servidor (devuelve el valor o un mensaje de error) de longitud L precedido de los 4 bytes siguientes:

    Tabla 16.2. Formato de cabecera para la respuesta

    Número de byte Contenido Descripción
    0 0x47 Byte mágico ('G')
    1 código de error 0 para éxito, 1 para error
    2 L div 256 Byte alto de L
    3 L mod 256 Byte bajo de L

[Sugerencia] Sugerencia

Si no quiere mancharse las manos: hay un script Python llamado servertest.py suministrado con el código fuente de GIMP, que puede usar como un sencillo interprete de la línea de comandos para el servidor de Script-Fu.