El editor de Paguaglús es un entorno gráfico nacido como alternativa Linux al editor SuperglusEd, de Superglús. No obstante haberse desarrollado en Linux y con este SO en mente, se espera poder portarlo a otras plataformas.
En principio se ha tomado como modelo el mencionado SuperglusEd, intentando emular todas sus características, aunque se prevé hacer alguna pequeña ampliación de características (que gustosamente se propondrán al creador de SuperglusEd), como alguna forma de ayuda a la introducción al código en forma de listas de verbos, nombres y condactos.
Este editor no tiene grandes pretensiones y se ha realizado
principalmente "para que haya algo" y como ejercicio de programación
con FLTK. Permite la edición de los archivos fuente con resaltado
sintáctico y separación por secciones, así como la consulta de las
definiciones de los condactos contextualmente y la compilación y prueba
de la aventura sin salir del editor.
En este manual no se explica casi nada de Paguaglús ni de PAWS, sólo
se trata del editor, y se supone cierto conocimiento de dichos
sistemas. Para saber más acerca del funcionamiento de Paguaglús y del
lenguaje de PAWS, véase la webografía.
Paguaglús y este editor PGE se distribuyen bajo licencia GPL. El código fuente
debería encontrarse en el cvstrac de Paguaglús (http://yokiyoki.dyndns.org/paguaglus).
El editor se lanza escribiendo en la línea de comandos:
> pge
con lo que aparecerá el siguiente cuadro de diálogo:
Elige el idioma que prefieras para el interfaz, de entre los
disponibles, y pulsa "Continue" (continuar en inglés). Este cuadro de
diálogo no volverá a aparecer. Si más adelante quieres cambiar de
idioma deberás hacerlo a través del cuadro de diálogo de Opciones (ver
la sección "Opciones").
Ahora nos encontramos delante de la siguiente pantalla, la principal de PGE:
Empecemos por crear una aventura nueva. Elegimos la opción Nuevo
dentro del menú Archivo, y nos encontraremos con la
siguiente situación:
en la que podemos apreciar distintas partes (de arriba a abajo):
Para el correcto funcionamiento de todas las características del
editor, es conveniente informarle de algunas características de nuestro
sistema. Elegimos la opción Preferencias del menú Opciones,
o bien pinchamos el cuarto botón de la barra de herramientas (que
representa un formulario con casillas marcadas)
y nos encontramos con el siguiente cuadro de diálogo de opciones, que
tiene cuatro pestañas correspondientes a las opciones de código fuente,
de compilación, de la ayuda y del Interfaz Gráfico de Usuario
(IGU).
Nota: te recomiendo que la primera vez que leas esto no toques
ningún valor, porque es bastante fácil que no funcione nada ;)
La pestaña Fuente contiene opciones relacionadas con el tratamiento del código fuente que editamos:
%L
y %B
(véase "Sustituciones
en las líneas de comandos")..bak
".La pestaña Compilación contiene opciones relacionadas
con la compilación y ejecución del juego. Es la pestaña más complicada,
debido a que se ha querido primar la potencia siobre la sencillez:
txtpaws
(véase su página web en http://caad.mine.nu/baltasarq/tools.htm)
o, en
caso de encontrarse en la ruta de búsqueda ($PATH),
simplemente el
nombre del mismo, seguido de los parámetros que necesite, en los que el
editor realiza las sustituciones correspondientes antes de su ejecución
(véase "Sustituciones en las líneas de comandos").
Se puede usar el
botón que hay junto al campo de edición, marcado con puntos
suspensivos, para navegar por los directorios para buscar el
ejecutable. El preprocesador normalmente toma el archivo que se está
editando y permite utilizar en algunos casos identificadores textuales
(palabras ;) ) en vez de números, convirtiéndolos en números antes de
la compilación. Si este campo se deja en blanco, no se ejecuta el
preprocesador en ningún caso.spg
(o al de paguaglús pge
) o, en caso de encontrarse en la
ruta de
búsqueda ($PATH),
simplemente el nombre del mismo, seguido de los parámetros que
necesite, en los que el editor realiza las sustituciones
correspondientes antes de su ejecución (véase "Sustituciones
en las
líneas de comandos").
Se puede usar el botón que hay junto al campo de edición, marcado con
puntos suspensivos, para navegar por los directorios para buscar el
ejecutable. El compilador normalmente toma el archivo que se
está editando y genera a partir de él un archivo en código intermedio
para que después el ensamblador lo convierta en un juego distribuíble.glulxa
(fuertemente basado en el de Simon
Stapleton, que se encontraba en http://www.geocities.com/Pipeline/Ridge/2349/)
o, en caso de encontrarse en la ruta de
búsqueda ($PATH),
simplemente el nombre del mismo, seguido de los parámetros que
necesite, en los que el editor realiza las sustituciones
correspondientes antes de su ejecución (véase "Sustituciones
en las
líneas de comandos"). Se puede usar el botón que hay junto al campo
de
edición, marcado con puntos suspensivos, para navegar por los
directorios para buscar el ejecutable. El ensamblador normalmente
convierte el código intermedio generado por el compilador en un juego
distribuíble. Si este campo se deja en blanco, no se ejecuta el
ensamblador en ningún caso.blc
(véase su página web en http://justice.loyola.edu/~lraszews/if/iblorb.html)
o, en
caso de encontrarse en la ruta de búsqueda ($PATH),
simplemente el
nombre del mismo, seguido de los parámetros que necesite, en los que el
editor realiza las sustituciones correspondientes antes de su ejecución
(véase "Sustituciones en las líneas de comandos").
Se puede usar el
botón que hay junto al campo de edición, marcado con puntos
suspensivos, para navegar por los directorios para buscar el
ejecutable. El empaquetador se usa cuando el juego tiene gráficos y/o
sonidos, para crear un solo archivo que contenga tanto el juego como
los gráficos y/o los sonidos, llamado blorb o BLB.
Si este campo se deja en blanco, no se ejecuta el empaquetador en
ningún caso.glulxe
(descargable de http://www.ifarchive.org/indexes/if-archiveXprogrammingXglulxXinterpretersXglulxe.html)
o, en
caso de encontrarse en la ruta de búsqueda ($PATH),
simplemente el
nombre del mismo, seguido de los parámetros que necesite, en los que el
editor realiza las sustituciones correspondientes antes de su ejecución
(véase "Sustituciones en las líneas de comandos").
Se puede usar el
botón que hay junto al campo de edición, marcado con puntos
suspensivos, para navegar por los directorios para buscar el
ejecutable. El intérprete es el programa que ejecuta el juego para que
veas cómo queda. Si este campo se deja en blanco, no se ejecuta el
intérprete en ningún caso.%x
será ulx
si esta casilla no está marcada, y blb
si sí está marcada
(véase "Sustituciones en las líneas de comandos").La pestaña Ayuda contiene opciones relacionadas con la
visualización de la ayuda del editor:
CTRL+H
mientras se edita el fuente.
La URL que se le pasará al navegador será la
indicada en este campo, seguida de una almohadilla (#
) y
de la palabra que se encuentra debajo del cursor. Se pueden utilizar
secuencias de sustitución (véase "Sustituciones
en las líneas de comandos").La pestaña IGU contiene opciones relacionadas con el aspecto y
funcionamiento del editor:
En los comandos que escribimos en el cuadro de diálogo de opciones
(ver arriba) se pueden introducir ciertos
caracteres de control que permiten mayor flexibilidad a la hora de
especificar las rutas. Estos caracteres, en el momento de utilizar el
comando o el archivo, se sustituirán por ciertos valores que a
continuación se detallan:
%L
(tanto por ciento, ele mayúscula)/pgl
). Fíjate en que
no se incluye la barra del final.%B
(tanto por ciento, be mayúscula)/usr/bin
, o /usr/local/bin
,
normalmente). Fíjate en que no se incluye la barra del final.%x
(tanto por ciento, equis minúscula)%x
) es "blb
"; y si la casilla
no está marcada, la extensión es "ulx
".%F
(tanto por ciento, efe mayúscula)/home/yokiyoki/paguaglus/juegos/miaventura.sce
.%d
(tanto por ciento, de minúscula)/home/yokiyoki/paguaglus/juegos
.
Fíjate en que no se incluye la barra del final.%n
(tanto por ciento, ene minúscula)miaventura
.Pongamos un ejemplo:
Si queremos que los ejecutables que generamos (es decir, los juegos)
aparezcan
en un lugar distinto de donde se compilan los fuentes, podemos poner en
el campo del ensamblador (ver arriba) "glulxa
-i %d/%n.ula -o
/home/yokiyoki/paguaglus/juegos/distribuir/%n.%x
", y en el campo
del intérprete (ver arriba) "glulxe
/home/yokiyoki/distribuir/%n.%x
".
Suponiendo que el archivo fuente es /home/yokiyoki/paguaglus/juegos/miaventura.sce
y que no está marcada la casilla de "Usar empaquetador" (ver arriba), y sustituyendo las
distintas secuencias, para ejecutar el ensamblador se sumarían estas
partes:
"glulxa -i
" + "/home/yokiyoki/paguaglus/juegos
"
(de %d
) + "/
" + "miaventura
"
(de %n
) + ".ula -o /home/yokiyoki/distribuir/
"
+ "miaventura
" (de %n
) + ".
" + "ulx
"
(de %x
)
quedando como comando a ejecutar glulxa -i
/home/yokiyoki/paguaglus/juegos/miaventura.ula -o
/home/yokiyoki/distribuir/miaventura.ulx
.
Del mismo modo, para ejecutar el intérprete se sumarían estas partes:
"glulxe /home/yokiyoki/distribuir/
" + "miaventura
"
(de %n
) + ".
" + "ulx
" (de %x
)
quedando como comando a ejecutar glulxe
/home/yokiyoki/distribuir/miaventura.ulx
.
La edición del código fuente de nuestro juego se lleva a cabo en las
secciones de texto que ocupan casi toda la ventana de la aplicación. En
estas secciones podemos escribir simplemente el texto que corresponda
siguiendo la sintaxis de Paguaglús en cada parte del archivo:
vocabulario, mensajes, los distintos procesos, etc.
Normalmente la creación de una aventura será un proceso que lleve
algún tiempo, distribuído en diferentes sesiones. Entre sesión y sesión
almacenaremos nuestro código en un archivo del disco y después, para
recuperarlo en la siguiente sesión, utilizaremos la opción Abrir...
del menú Archivo, o bien la combinación de teclas CTRL+O
,
o el segundo botón de la barra de herramientas, que representa una
carpeta amarilla medio abierta. Aparecerá el siguiente cuadro de
diálogo:
En el que elegimos el archivo que queremos cargar y a continuación
pulsamos "Aceptar".
La primera vez que vayamos a guardar nuestro trabajo, y siempre que
queramos guardarlo en un archivo distinto del que lo cargamos,
elegiremos la opción Guardar como... del menú Archivo.
Aparecerá un cuadro de diálogo similar al anteriormente visto de Abrir
(ver párrafo anterior):
Como se ve, la única diferencia con el cuadro de Abrir
es el título de la ventana, por lo que se remite a la explicación del
anterior (arriba). Se puede escribir el
nuevo nombre de archivo al final del campo Archivo:.
Las sucesivas veces que guardemos el trabajo en el mismo archivo,
podemos hacer uso de la opción Guardar del menú Archivo
(o la combinación de teclas CTRL+S
, o el botón de la
barra de herramientas que representa un diskette), que no nos
preguntará el nombre del archivo donde deseamos guardar el trabajo,
entendiendo que es el mismo de donde lo abrimos anteriormente.
Si queremos deshacernos de todos los cambios que hemos realizado en
nuestro trabajo desde que lo guardamos la última vez, podemos utilizar
la opción Recargar del menú Archivo, que
sustituirá la situación actual del fuente (la que estamos editando) por
la que está almacenada en el disco.
También podemos volver a la situación inicial del editor, sin ningún
fuente en edición, eligiendo la opción Cerrar del menú Archivo.
Se pueden deshacer y rehacer los cambios para cada sección hasta un
nivel indefinido, tanto como dé la memoria del ordenador, haciendo uso
de las clásicas combinaciones de teclas CTRL+Z
y MAYÚS+CTRL+Z
,
respectivamente, o bien mediante las opciones Deshacer y Rehacer
del
menú Edición, o por medio de los botones de la barra de
botones que
muestran una flecha azul hacia la izquierda y una flecha azul a la
derecha, respectivamente.
Se puede copiar, cortar y pegar texto de/al portapapeles del
sistema, haciendo uso de las clásicas combinaciones de teclas CTRL+C
,
CTRL+X
y CTRL+V
respectivamente, o bien
mediante las opciones Copiar,
Cortar y Pegar del menú Edición,
o por medio de los botones de la barra
de botones que muestran dos folios, unas tijeras y un bote de
pegamento, respectivamente.
Pulsando la tecla F3
, o bien eligiendo la opción Buscar...
del menú Edición, o bien pinchando el botón que
representa una lupa de la barra de botones, aparece el siguiente cuadro
de diálogo:
Este cuadro nos permite buscar texto dentro de la sección que
estamos editando. Escribimos el texto que queremos encontrar en el
campo "Buscar:" y pulsamos el botón "Buscar siguiente".
En la zona de edición aparecerá resaltado el texto que buscábamos, o
bien nos saldrá una ventana informándonos de que ese texto no aparece.
En el recuadro "Dirección" podemos elegir si queremos
que la búsqueda se realice hacia abajo de donde está el cursor o hacia
arriba.
También podemos obligar a que el texto que se encuentre sea una
palabra completa (de otro modo se podrían encontrar partes de palabras)
marcando la casilla correspondiente, "Comparar palabras enteras
sólamente".
Si la casilla "Mayúsculas/minúsculas" no está marcada,
encontrará el texto aunque no coincidan las mayúsculas y las minúsculas
con lo que hemos escrito en el campo "Buscar:". Si
marcamos la casilla, obligamos a que coincidan las mayúsculas y
minúsculas del texto con las del campo "Buscar:".
Por otra parte, si pulsamos la combinación de teclas CTRL+R
,
o si elegimos la opción Reemplazar... del menú Edición
o pinchamos en la barra de botones el que representa una lupa tapada
por una flecha verde y otra roja formando un círculo, aparece el
siguiente cuadro de diálogo:
Su funcionamiento es similar al del anterior, sólo que en este caso,
además de buscar el texto escrito en el campo "Buscar:"
(véase la descripción del cuadro de diálogo "Buscar", arriba), dicho texto
se sustituirá por el que escribamos en el campo "Sustituir:".
Durante la creación de nuestros juegos, a menudo nos veremos en la
necesidad de incluir nuevos procesos para poder llamarlos en distintas
partes del desarrollo de la aventura. Para crear un nuevo proceso, el
el editor de Paguaglús se utiliza la opción Nuevo proceso
del menú Archivo. Al elegirla, se creará un proceso nuevo
a continuación de los existentes y se mostrará en la zona de edición
para que podamos escribir sus entradas.
En cualquier momento mientras estamos creando la aventura, podemos
pulsar la combinación de teclas CTRL+H
, con lo que se nos
abrirá el navegador de nuestra elección (ver "Opciones de ayuda") con la descripción
de la palabra en la que está el cursor. En la configuración de serie de
PGE existen descripciones para todos los condactos de
Superglús/Paguaglús.
Por otra parte, siempre podemos pulsar la tecla F1
(o
elegir la opción Manual del menú Ayuda) con
lo que se nos abrirá el navegador con el manual del PGE (el que estás
leyendo), por si tenemos alguna duda de alguna función.
Además, eligiendo la opción Manual de Paguaglús del
menú Ayuda se nos abre el navegador mostrando el manual
de Superglús (o el de Paguaglús), donde siempre podemos consultar esas
dudillas que
tengamos acerca del lenguaje.
Si no especificas un navegador favorito para mostrar los archivos de
ayuda (ver más arriba), al elegir alguna
de las opciones de ayuda como se explica en el párrafo anterior
aparecerá el visor incorporado:
En su parte superior existen los botones de Retroceder
(marcado con una flecha azul apuntando a la izquierda), Avanzar
(marcado con una flecha azul apuntando a la derecha) y el campo Buscar,
donde se puede escribir un texto y pulsar INTRO
para
buscar un texto dentro de la página que se esté viendo.
Desde el propio editor de Paguaglús se puede compilar y ejecutar tu
juego, bien para ver si tiene errores, o bien para ver si funciona como
tú esperas que lo haga. Si tienes bien configuradas las Opciones
de compilación (ver más
arriba), basta con que elijas la opción Compilar del
menú Ejecutar, o bien pulses la tecla F6
o
pinches en el botón de la barra de botones que tiene dibujado un
engranaje, y comenzará la compilación del juego, obteniendo la
respuesta del compilador en la nueva ventana de salida que se abre:
De haber errores en la compilación, aparecerán en esta ventana.
Del mismo modo, y contando con que estén bien configuradas las
opciones de compilación (ver más
arriba), basta con elegir la opción Compilar y ejecutar
del menú Ejecutar, o bien pulsar la tecla F5
o pinchar el botón de la barra de botones que tiene dibujada una flecha
verde hacia la derecha, para que se abra la ventana de salida que
acabamos de ver, pero esta vez produciéndose, además de la compilación
del juego, la ejecución del mismo en el intérprete de nuestra elección.
Cuando quieras dejar de trabajar con el editor, debes elegir la
opción Salir del menú Archivo. Si has
realizado cambios respecto a la versión que tienes almacenada en el
disco, o no has guardado nunca tu trabajo, el editor te preguntará si
quieres guardarlos y después se cerrará.
Quizá estés acostumbrado a usar un intérprete en modo texto, o
quieres probar como quedaría tu aventura en uno de ellos. Puedes poner "xterm
-e nombredelinterprete
" en el campo Intérprete de las opciones
de compilación, y el intérprete se abrirá en una terminal X. Por
ejemplo "xterm -T "Intérprete Glulxe" glulxe %d/%n.%x
".
Me gustaría decir que se puede hacer lo mismo con el navegador, pero
no es así. Sin embargo, se puede usar un navegador de texto, si creas
un pequeño script que ejecute algo parecido a lo del párrafo anterior.
Por ejemplo:
#!/bin/sh
#
# Ejecutar Lynx en una terminal X
xterm -T "$1" -e lynx $1
Le das permisos de ejecución con chmod
y en el campo
navegador de las opciones del compilador pones (suponiendo que tu
script se llame "xlynx"): "xlynx
".
Me gustaría usar este espacio para agradecer a todos los que
intervienen en el proyecto Superglús por haber dado nueva vida a
Paguaglús en forma de su hijo :). En especial a Uto, padre de la
criatura (¿se habrá amancebado Uto con Paguaglús, o se habrá juntado
"como Dios manda"? Lo siento, no he podido evitar el chiste ;) ).
También quiero dar las gracias en especial a Baltasar, el Arquero, por
haber hecho el fabuloso txtPAWS y atendernos siempre que necesitamos
que le ponga algo nuevo. Y a Jon, por ser el gran gurú del PAWS y
haberme animado siempre con Paguaglús. Y a Netskaven (nunca sabré bien
ponerle las mayúsculas y las minúsculas), por estar haciendo un editor
multiplataforma para Superglús ;) (que tengo ya unas ganas de verlo...).
Y a todos aquellos con mente abierta que no por el hecho de que una
aventura esté hecha con un PAWSlike ya dicen que es mala.
Y a todos los otros que por el hecho de que una aventura esté hecha
con un PAWSlike ya dicen que es mala, porque nos animan a demostrarles
que no tiene por qué ser cierto.
Me encantaría, de verdad, que me escribieras un mensaje de correo
electrónico contándome qué te ha parecido este editor, qué te parece en
general Paguaglús (o Superglús; yo se lo transmito a Uto), qué le echas
en falta, qué le sobra, qué le pasa, qué le falta (y también qué te
gusta ;) ). También erratas o cosas que creas que le faltan o le sobran
a este manual y al de Paguaglús.
Lo puedes hacer en la dirección de correo electrónico yokiyoki@users.sourceforge.net.
Proyecto Paguaglús en Sourceforge (antes Paguaceta): http://paguaceta.sourceforge.net.
CVSTrac de Paguaglús: http://yokiyoki.dyndns.org/cvstrac/paguaglus.
Proyecto Superglús: http://caad.mine.nu/superglus.
CVSTrac de Superglús: http://yokiyoki.dyndns.org/cvstrac/superglus.