Capítulo 13. Automatizar tareas en GIMP

Tabla de contenidos

1. Complementos
1.1. Introducción
1.2. Usar los complementos
1.3. Instalación de nuevos complementos
1.4. Escribir complementos
2. Uso de guiones Script-Fu
2.1. ¿Qué es Script-Fu?
2.2. Instalación de guiones Script-Fu
2.3. Qué hacer y qué no hacer
2.4. Diferentes tipos de Scripts-Fu
2.5. Guiones independientes
2.6. Scripts dependientes de la imagen
3. Un tutorial de Script-Fu
3.1. Conociendo el Scheme
3.2. Variables y funciones
3.3. Listas, listas y más listas
3.4. Su primer código de Script-Fu
3.5. Dar algo de sustancia a nuestro script
3.6. Extender el script «Text Box»
3.7. Su script y su trabajo

1. Complementos

1.1. Introducción

Una de las principales bondades de GIMP es la facilidad con que se puede extender su funcionalidad, por medio de complementos. Los complementos de GIMP son programas externos que corren bajo el control de la aplicación GIMP, e interactúan con ella. Los complementos pueden modificar las imágenes casi de la misma manera en que pueden hacerlo los usuarios. Su ventaja es que es mucho más fácil añadir una capacidad a GIMP escribiendo un pequeño complemento que modificar la gran masa de código complejo que forma el núcleo de GIMP. Muchos de los complementos más valorados están hechos en sólo unas cien o doscientas líneas de código fuente en C.

La distribución principal de GIMP incluye varias decenas de complementos, y se instalan automáticamente junto con GIMP. A la mayoría se puede acceder mediante el menú Filtros (de hecho, cada entrada de ese menú se corresponde con un complemento), pero otro tanto está ubicado en otros menús. En muchos casos puede hacer uso de alguno sin ni siquiera enterarse: por ejemplo, la función Normalizar para la corrección automática del color es en realidad un complemento, aunque no haya nada en su funcionamiento que lo haga parecer como tal.

Además de los complementos que vienen incluidos en GIMP, hay muchos otros disponibles en la red. Una gran cantidad se hallan en el registro de complementos [GIMP-REGISTRY] de GIMP, un sitio web cuyo propósito es proporcionar un repositorio central de complementos. Los creadores de complementos los pueden subir allí; los usuarios interesados en buscar complementos para un propósito específico los pueden buscar en el sitio de diversas maneras.

Cualquier persona del mundo puede escribir un complemento para GIMP y hacerlo disponible en la web, tanto en el registro anteriormente dicho, como en un sitio personal, y muchos complementos valiosos se obtienen de esta forma. Algunos se describen en este manual. Esta libertad conlleva cierto riesgo, ya que el hecho de que cualquiera pueda hacerlo significa que no hay ningún control de calidad. Los complementos que se distribuyen con GIMP han sido probados y refinados por los desarrolladores, pero muchos de los que se encuentran en la web se han hackeados en unos minutos, y luego dejados a la deriva. Algunos creadores de complementos simplemente no se preocupan por su robustez, e incluso los que sí lo hacen no tienen la capacidad de probarlos en diversos sistemas y en diversas situaciones. Básicamente, cuando usted descarga un complemento, lo está obteniendo libremente, pero a veces puede tener que pagar por ello. Esto no es para decepcionarlo, sino para que conozca la realidad.

[Aviso] Aviso

Los complementos, al ser completos programas ejecutables, pueden hacer todas las cosas que los otros programas pueden hacer, incluyendo la instalación de puertas traseras en su sistema, entre otras formas de comprometer su seguridad. Por lo tanto no instale complementos, a menos que provengan de una fuente confiable.

Estas cuestiones se aplican tanto a los complementos del registro de complementos como a cualquier otra fuente de complementos. El registro de complementos se encuentra disponible para cualquier creador que quiera usarlo, sin excepción. Obviamente, si los administradores advierten que se ha registrado un complemento malicioso, lo pueden eliminar (esto aún no ha sucedido). No obstante, GIMP y sus complementos se proporcionan con la misma garantía que el resto del software libre: es decir, con ninguna.

[Atención] Atención

Los complementos son una capacidad de GIMP desde hace muchas versiones. Sin embargo, los complementos escritos para una versión determinada difícilmente funcionarán en otras versiones. Necesitan ser portados: lo que aveces es fácil, y otras veces no. Muchos complementos están disponibles en varias versiones. En pocas palabras: antes de instalar un complemento, asegúrese que esté escrito para su versión de GIMP.

1.2. Usar los complementos

En general se hace uso de un complemento sin ni siquiera notarlo, como con otras herramientas de GIMP. Pero hay algunos detalles sobre los complementos que es útil conocerlos.

Primero, los complementos no son tan robustos como el nucleo de la aplicación GIMP. Cuando GIMP falla, se considera que ha sucedido algo muy serio, ya que le puede costar al usuario muchos problemas y un dolor de cabeza. Cuando un componente se rompe, las consecuencias generalmente no son tan serias. En la mayoría de los casos, usted puede continuar trabajando sin preocuparse de lo que ha sucedido.

[Nota] Nota

Los complementos son programas aislados, y se comunican con el núcleo de GIMP de una manera especial: los desarrolladores de GIMP lo llaman hablar por medio de un cable. Cuando un complemento falla, la comunicación se corta, y verá un mensaje de error error de lectura del cable.

[Sugerencia] Sugerencia

Cuando un complemento se rompe, GIMP le proporciona un mensaje diciendo que un complemento puede haber dejado a GIMP en un estado corrupto, y que debería considerar guardar las imágenes y salir. Estrictamente hablando, esto es correcto, porque los complementos tienen la capacidad de modificar casi todo en GIMP, pero en la práctica, la experiencia ha demostrado que dicha corrupción ocurre muy raramente, y muchos usuarios continúan trabajando sin preocuparse. El consejo es que considere los problemas que se provocarían si algo fuera mal, y lo compare con lo incómodo que es salir y volver a iniciar.

Debido a la manera en que los complementos se comunican con GIMP, ellos no tienen manera de conocer los cambios que Ud. ha hecho en una imagen antes de que sean iniciados. Si Ud. inicia un complemento, y luego modifica la imagen empleando otra herramienta, el complemento probablemente se romperá, y cuando no lo haga dará un resultado incorrecto. Debería evitar correr más de un complemento al mismo tiempo sobre una imagen, y evite también hacer modificaciones a la imagen hasta que el complemento termine de trabajar. Si Ud. ignora este consejo, no sólo se dañará la imagen, sino que además se dañará el sistema de deshacer, con lo que ni siquiera podrá recuperarse del accidente.

1.3. Instalación de nuevos complementos

Los complementos distribuidos con GIMP no requieren una instalación especial. Son los que se descargan de la web los que requieren instalarse. Hay varios escenarios, dependiendo de su sistema operativo, y de cómo se encuentra estructurado el complemento mismo. En Linux usualmente es muy fácil instalar un nuevo complemento. En Windows, puede ser tanto fácil como difícil. Es por eso que resulta mejor considerar ambos sistemas por separado.

1.3.1. Sistemas similares al sistema Linux / Unix

La mayoría de los complementos encajan en dos categorías: lo pequeños, cuyo código fuente se distribuye en un único archivo «.c», y los grandes cuyo código fuente se distribuye como una carpeta que contiene varios archivos, incluyendo un archivo Makefile.

Para un pequeño complemento de un archivo, llamado borker.c, instalarlo es sólo cuestión de ejecutar la orden gimptool-2.0 --install borker.c. Esta orden compila el complemento y lo instala en su carpeta personal de complementos, por ejemplo ~/gimp-2.6/plugins a menos que la haya cambiado. Estará disponible la próxima vez que se inicie GIMP. No necesita ser administrador para realizar esta tarea; de hecho, no debería serlo. Si el complemento falla al compilar, bueno, sea creativo.

Una vez que ha instalado el complemento, ¿cómo lo activa? El complemento determina una entrada de menú para acceder a él, así que para conocer su ubicación puede revisar la documentación del mismo (si la tiene) o ejecutar el diálogo de descripción del complementos (Ayuda/Visor de complementos). Busque el complemento por su nombre y mire la pestaña Vista de árbol. Si aún no lo encuentra, explore los menús o eche un vistazo al código fuente en la sección «Register», que es lo más fácil.

Para complementos más complejos, organizados en una carpeta con múltiples archivos, puede ver que incluyen un archivo llamado INSTALL o un archivo README, con instrucciones. Si no es así, es mejor que no lo utilice, porque ha sido escrito con pocas intenciones de que sea utilizado por otros.

Algunos complementos (especialmente aquellos basados en la plantilla de complementos de GIMP) están diseñados para ser instalados en el sistema, en vez de en su carpeta personal. Para estos, necesita tener privilegios de administrador para realizar la última etapa de instalación (al ejecutar el comando make install).

Si instala un complemento en su carpeta personal que tiene el mismo nombre que uno de los complementos instalados en el sistema, sólo puede cargarse uno de ellos, y se tratará del que se encuentra en su carpeta. Recibirá un mensaje comunicándole que ha sucedido esto cada vez que arranque GIMP. Lo mejor es evitar esta situación.

1.3.2. Windows

El entorno Windows es mucho más problemático que Linux para compilar software. Todas las distribuciones aceptables de Linux traen todas las herramientas necesarias para la compilación, y todas trabajan de manera muy similar. Pero Windows no viene con estas herramientas. Es posible establecer un buen entorno de compilación de software en Windows, pero requiere una cantidad sustancial de dinero, o una cantidad sustancial de esfuerzo y conocimiento.

Lo que esto significa en relación a los complementos de GIMP es lo siguiente: usted tiene un entorno en el cual puede construir software, o no lo tiene. Si no lo tiene, tenga la esperanza de encontrar una versión precompilada en algún sitio (o persuada a alguien para que lo compile por Ud.), en cuyo caso simplemente necesita colocarlo en su carpeta personal de complementos. Si usted sí tiene dicho entorno (lo que además significa que puede compilar (GIMP), entonces seguramente tiene el conocimiento suficiente y puede seguir las instrucciones para Linux.

1.3.3. Apple Mac OS X

La mayoría de las veces, la instalación de complementos sobre OS X depende de cómo se haya instalado GIMP. Si lo ha instalado con uno de los gestores de paquetes como «fink» [DARWINORTS] o «darwinports», [FINK] la instalación del complemento funciona de la misma manera que la descrita para la plataforma Linux. La única diferencia es que los complementos puedan estar disponibles en el repositorio del gestor de paquetes, pruébelo.

Si prefiere usar paquetes precompilados de GIMP como «GIMP.app», querrá usar uno precompilado. Puede intentar conseguir la versión directamente del autor del complemento aunque esto puede resultar imposible. Realizar unos binarios propios también resulta complicado ya que depende de la instalación de GIMP mediante uno de los gestores de paquetes mencionados antes.

1.4. Escribir complementos

Si desea aprender a escribir complementos, puede hallar mucha ayuda en el sitio web de los desarrolladores de GIMP [GIMP-DEV-PLUGIN]. GIMP es un programa complejo, pero los desarrolladores han hecho un gran esfuerzo para que la curva de aprendizaje sea suave, especialmente para la codificación de complementos. Hay muy buenas instrucciones y ejemplos, y la biblioteca principal que emplean los complementos como interfaz con GIMP (llamada libgimp) cuenta con una API muy bien documentada. Los buenos programadores, que aprenden modificando los complementos existentes, llegan a lograr cosas interesantes en unos pocos días de trabajo.