• Siemens RTL Tiled Window Manager

Versión analizada

La 5.2, aparecida en junio de 1989; pero adaptada en diciembre de 2011 por Christoph Lohmann y Paul Onyschuk para que pueda ejecutarse en sistemas (relativamente) modernos.

Estado actual

Su desarrollo cesó probablemente en 1989, y su círculo selecto de usuarios desapareció poco después del registro fósil —es posible encontrar, entre antiguos mensajes de Usenet, alguna mención aislada en 1992 y 1993—. Desde entonces está muerto y mayormente olvidado. La única discusión sobre él más o menos reciente que hallaréis es el anuncio —enlazado arriba— de la copia parcheada de Lohmann y Onyschuk en 2011.

¿Usuarios en 2016, mientras estoy redactando esto? ¿Aparte de mí? ¿Estáis de broma?

Características resumidas

Esc. Virt. Menús Temas Flotantes Títulos B. de estado Manejo
No No No Manual

Descripción


Captura del Siemens RTL Tiled Window Manager

En exclusiva para el público de 2016, el Siemens RTL Tiled Window Manager... Cuatro ventanas: un reloj, dos terminales, y el imprescindible manual en formato PDF. Arriba, a la izquierda, los iconos.


Su nombre oficial es Siemens RTL Tiled Window Manager, mas como comprenderéis resulta demasiado largo para utilizarlo de forma constante en el texto, así que de vez en cuando lo abreviaré como RTL, igual que se hace ocasionalmente en la documentación y el código fuente. Quizás no muy correcto —el significado real de RTL es Research and Technology Laboratory, la subdivisión de Siemens que trabajó en este gestor—, pero no voy yo a llevar la contraria a los autores. Además, el propio archivo ejecutable se llama también así, rtl.

Sus circunstancias

Bien, la historia de RTL se remonta muy atrás, hasta mediados de los años ochenta —supongo que para no perder la costumbre ahora debería hacer alguna broma tonta sobre laca y pantalones de pitillo, pero las he agotado ya todas, lo siento—; sus primeras versiones operativas datan de 1986. En principio se programó para el denominado Andrew Project , un ambicioso entorno de trabajo con interfaz gráfica para los Unix de la época, que desarrolló una universidad americana —concretamente, la Carnegie Mellon University— con el patrocinio de IBM.

Sin embargo, el Andrew Project se reveló un callejón sin salida. En el papel de entorno gráfico para Unix se impuso poco después el hoy omnipresente X Window System, debido a que se distribuía con una licencia más permisiva y además no había que lidiar con las exigencias de IBM para obtenerlo. Por lo tanto, los desarrolladores del gestor lo adaptaron para funcionar con él y descartaron Andrew, tarea que les ocupó la mayor parte de 1987. Las versiones más tempranas de RTL compatibles con el X Window System vieron la luz probablemente en 1988.

Este gestor de ventanas generó cierto interés por su modo atípico de funcionar, aunque no trascendió más allá de un público minoritario. Se publicó como software opcional con la edición X11R3 del X Window System . Y al parecer Siemens lo distribuyó durante un tiempo con Sinix, su variante particular de Unix —porque sí, en aquellos años debías mantener un retoño de Unix para que te considerasen guay y no un neandertal—; si bien Sinix fue también un sistema relativamente oscuro que murió tras una década de existencia en 1995. Y para entonces el Siemens RTL Tiled Window Manager había quedado ya atrás.

De todas formas, los autores se mantuvieron bastante activos durante el periodo de vigencia del proyecto. Acudieron a conferencias, escribieron algún artículo técnico, e incluso rodaron un vídeo de demostración en el que uno de ellos, el jovial Ellis Cohen, presentaba sus principales características. No obstante, a partir de 1989 el equipo se fue disgregando a medida que sus integrantes pasaban a ocuparse en otros menesteres, y a pesar de que el código fuente de RTL era público nadie se animó a continuar su labor.

El gestor en sí


Captura del Siemens RTL Tiled Window Manager

Sigo leyendo la documentación, esta vez en una de las terminales. Y en cuanto al reloj, he descartado Xclock en favor del más bonito Swisswatch. En el borde superior esperan varios programas minimizados.


El Siemens RTL Tiled Window Manager es un gestor de mosaico, posiblemente el primero de su clase que se desarrolló para el X Window System. Aunque olvidaos de Dwm, Ion, Awesome y otras implementaciones modernas de la idea:

«[RTL] permite distribuciones libres de ventanas en [un] mosaico. Estas ventanas pueden ser colocadas en cualquier lugar; no resulta necesario que se alineen en columnas.

»El gestor de ventanas no intenta llenar la pantalla. Las ventanas poseen el tamaño deseado [por la aplicación correspondiente], y no se hacen más grandes mientras no lo requiera el usuario. Por consiguiente, puede quedar espacio vacío en el escritorio».

Ya veis que RTL sigue un camino diferente. En él, como sucede en los gestores de mosaico, las ventanas se dibujan unas junto a otras sin solaparse. No obstante, el usuario cuenta con cierta libertad para moverlas o alterar sus dimensiones, e incluso con la posibilidad de minimizarlas como iconos en el escritorio, como si manejase un gestor convencional de pila. Además, esta última semejanza se ve acentuada por el hecho de que todas estas operaciones se realizan mediante el ratón, y el teclado carece de uso.

Y si alguien en este momento está pensando en una especie de híbrido entre ambas familias de interfaces, de pila y de mosaico, creo que no se aleja demasiado de la realidad. RTL pertenece en esencia a la segunda, aunque toma rasgos de las dos en una mezcla un tanto peculiar. Tenemos, por un lado, mosaicos con ventanas que quedan siempre al mismo nivel y nunca se tapan entre ellas; y por otro, resulta que al usuario se le permite arrastrarlas por la pantalla a su gusto y jugar con sus tamaños. ¿Cómo se combinan estos conceptos en apariencia excluyentes?

La noción básica a tener en cuenta es que modificar la posición y dimensiones de una ventana repercute sobre los atributos de las demás, al menos cuando hay varias abiertas y el espacio en el escritorio comienza a escasear. Como no pueden superponerse, lo que una gana lo pierden otras. Si hago más grande mi Xterm será a costa del navegador Firefox o de mi explorador de archivos. Y si abro otra nueva —ejecutando otra aplicación más, qué sé yo, un Tetris—, alguna de las existentes deberá cederle el sitio necesario. El otro detalle importante aquí es que al crear cada ventana RTL trata de respetar las medidas solicitadas por el programa al que pertenece —pese a que no siempre lo haga—, en lugar de forzarlo a encajar en una celda del mosaico.


Captura del Siemens RTL Tiled Window Manager

Pasando el rato con Shadow of the Beast, un videojuego de Amiga que casualmente es contemporáneo de RTL.


Las ventanas se dibujan con decoración. El gestor les añade un título, un control en cada una de las esquinas superiores —el zoom gadget a la izquierda y el move gadget a la derecha—, y bordes y esquinas que el usuario puede arrastrar con el ratón para darle el tamaño que prefiera. Estéticamente resulta una interfaz tan refinada como cualquier otra de la década de los ochenta: formas simples y trazadas con dos colores sólidos, blanco y negro; los mismos que se emplean para representar los iconos de las tareas minimizadas.

Existe asimismo un sistema de menús contextuales, basado en otra de las innovaciones del Research and Technology Laboratory de Siemens: el RTL Menu Package, que también se utilizó en Awm. Sirve para interactuar con las ventanas, acceder a algunas funciones generales del gestor —cerrar la sesión o releer los ficheros de configuración—, e iniciar programas de uso frecuente. Poco más que destacar de él.

El gestor por supuesto resulta personalizable. El usuario puede hacer sus ajustes en varios ficheros de texto ocultos en su directorio raíz —los principales son .rtl.tools y .rtl.preferences—. El segundo contiene «Xresources», una enumeración de variables con sus valores que se incorpora a la base de datos común para aplicaciones del X Window System; por ello sería posible prescindir de él y añadir las líneas correspondientes a ~/.Xresources o ~/.Xdefaults.

Instalación

No logré compilar el código fuente original. En cambio, con la réplica que parchearon en 2011 Onyschuk y Lohmann no encontré problemas, incluso usando un compilador reciente como GCC 4.8.4. Para ello hacen falta dos herramientas que hoy en 2016 ya no vendrán en la instalación por defecto de muchos sistemas: Imake —la antigua utilidad para automatizar compilaciones del X Window System— y liboldX. Supongo que en cualquier repositorio de paquetes más o menos completo deberían estar disponibles.

Primeras impresiones

Hasta el día en que redacto esto he probado —esperad que consulte mis apuntes—... Ah, sí: más de cincuenta gestores de ventanas distintos a lo largo de seis años. Pues bien, con ninguno de ellos he vivido los momentos de perplejidad que experimenté durante mi toma de contacto con RTL. Pasé mis sesiones iniciales intentando hacer algún trabajo útil, con un éxito, digamos, parcial: casi me tentaba más ir abriendo terminales sin otro propósito que observar cómo sus ventanas interactuaban unas con otras, y tratar de deducir de ello alguna pauta. Al final de mi segunda tarde escribí, un tanto frustrado:


Captura del Siemens RTL Tiled Window Manager

Una sesión recién comenzada. Arriba podéis apreciar qué aspecto lucen los menús, y qué misteriosas opciones ofrecen.


«RTL es..., extraño. La cosa más extraña que he probado hasta ahora, de hecho. Las ventanas forman un mosaico, sí, pero sin aprovechar todo el espacio de la pantalla y siguiendo reglas imprevisibles. No lo entiendo».

«¿Por qué al clicar aquí mi ventana de Xterm ha crecido hacia la derecha? ¿Por qué al abrir el reloj ha ido a aparecer precisamente ahí?». Tantas preguntas sin respuesta... RTL se me antojaba líquido, caprichoso, indescifrable, un entorno alienígena. «¿De verdad hubo gente que usaba esto voluntariamente en 1989? ¿Y cuánto voy a aguantar yo ahora?».

Aún mejor: el gestor hace uso de los tres botones del ratón, y los diversos elementos de la interfaz poseen diferentes funciones dependiendo de con cuál cliquéis. Y además estas pulsaciones pueden combinarse con teclas modificadoras —[Ctrl] y [Mayúsc]— para realizar algunas operaciones más. Como comprenderéis se trata de un sistema ideal para asustar y desconcertar a usuarios novatos, a pesar de que más adelante, tras una larga práctica, se vuelva más natural y uno empiece a apreciar sus ventajas.

Por otra parte, los menús me ofrecían algunas opciones realmente enigmáticas. ¿Qué demonios significa prorate? ¿Y a qué leches se refieren los autores con repopulate? Vale, ahora ya han quedado resueltas, pero en aquellos días estas dudas sólo acrecentaban mi impresión de estar enfrentándome a un escritorio innecesariamente complicado y repleto de misterios.

Así que RTL no es una pieza de software amable con los recién llegados. Hora pues de examinar la documentación... Eh, no todo va a ser malo: los responsables se esforzaron mucho en ella y resulta exhaustiva. ¡A estudiar!

Debo decir por último que su aspecto general sí me agradó. Se trata de una interfaz espartana, cierto, aunque bonita a su manera. Sopesando lo que uno podría lograr en 1986 sólo con rectángulos y dos colores, me parece más que aceptable.

Usando el Siemens RTL Tiled Window Manager


El icono de RTL

Y éste es el icono de RTL, visible —en la configuración por defecto— en la esquina superior izquierda de la pantalla. Sirve para invocar el menú principal, aunque también puede hacerse clicando en el fondo del escritorio.


Le he dedicado más de tres semanas de mi vida, casi un mes entero. Me he habituado a él. Incluso ha empezado a gustarme un poco, sin entusiasmarme. Sin embargo, ni siquiera estoy muy seguro aún de cómo funciona exactamente.

Para terminar de intimidar a posibles usuarios el gestor recurre a su propio léxico:

Cerrar (close):
Aquí esta palabra por alguna razón no tiene la acepción común de cerrar un programa o una ventana; los autores prefirieron llamar así a la acción de minimizarla, dejándola convertida en un icono en el escritorio.
Oyente (listener):
Para RTL la ventana «oyente» es la última que ha recibido acciones explícitas —clics del ratón o pulsaciones de teclas— del usuario; aunque entre éstas no se incluyen operaciones como cambiar sus dimensiones o posición. Tampoco coincide necesariamente con la ventana enfocada. Se muestra con los colores de la decoración invertidos —texto blanco sobre fondo negro—.
Tamaño deseado (desire):
A cada ventana se le asignan unas medidas «deseadas», que en principio suelen ser las que solicitó el programa correspondiente al abrirla. No obstante, se actualizan cuando el usuario especifica deliberadamente otras, al arrastrar sus bordes o esquinas. Posee su relevancia: por ejemplo, si al abrir tu navegador el gestor ha reducido la ventana de tu editor de textos a un cuadradito de doscientos píxeles, y ahora deseas seguir trabajando cómodamente en ella, basta un clic del ratón en el zoom gadget —arriba, a la izquierda— para devolverla a sus dimensiones deseadas.
Ampliar (zoom):
Las ventanas pueden dibujarse a tamaño normal o «ampliadas», y en cada caso se regirán por unos valores distintos en los atributos «mínimo» y «deseado» que regulan sus medidas predeterminadas. Las ampliadas naturalmente acostumbran a ser más grandes que las normales.

¿No entendéis nada? Tampoco es fácil de explicar, sobre todo cuando tu propia comprensión del tema resulta más bien intuitiva... Podéis volver a ver el vídeo promocional de Ellis Cohen , si acaso, y disfrutar de nuevo de su bigote y sus gafas de pasta. En fin, en una sesión de RTL las ventanas compiten entre ellas por el espacio del escritorio, y el usuario va efectuando ajustes según se le presente la necesidad: devolviéndolas a su tamaño deseado, ampliándolas, convirtiendo en iconos las que no necesitan atención... Por lo tanto los mosaicos se comportan aquí de una forma más fluida que en otros gestores de la familia, y van evolucionando según las tareas a realizar.

Lo que sospecho que sí habrá quedado claro a estas alturas es la complejidad de RTL. Por si alguien todavía no se ha enterado, citaré un fragmento del manual que me hizo gracia y despejará cualquier duda al respecto:

«[...] existen tres clases de operaciones de movimiento que pueden iniciarse accionando el botón central del ratón sobre el move gadget: Reubicar, útil para cambiar el tamaño y lugar de una ventana, no requiere teclas modificadoras; Mover, para desplazar una ventana respetando su tamaño actual, necesita de la tecla [Mayúsc]; e Intercambiar [las ubicaciones de dos de ellas] precisa de la tecla [Ctrl]».

Quiero decir, tres métodos diferentes, tres, para algo en teoría tan mundano como arrastrar una ventana por el escritorio. Pura demencia. Simplemente maravilloso.


Captura del Siemens RTL Tiled Window Manager

Esta imagen resume bien la esencia de RTL: ventanas que forman mosaicos con formas libres, y que no necesariamente ocupan todo el espacio de la pantalla.


Aprender el funcionamiento de un gestor de pila suele ser un proceso práctico que no demanda demasiado tiempo: básicamente te sientas un rato, y vas probando los componentes de la interfaz y viendo sus efectos. Los de mosaico quizás se resistan un poco más, pero memorizar los atajos de teclado necesarios y asimilar las reglas básicas con las que operan tampoco representa un largo periodo de aprendizaje. RTL, en cambio... Leer la documentación, y en especial el manual, no es opcional: no estamos hablando de un gestor que pueda dominarse sólo experimentando. Y aun así se necesitan días de práctica: yo sólo he empezado a sentirme cómodo con él a partir de la segunda quincena.

Nótese que, a pesar de los arreglos mínimos de Lohmann y Onyschuk, sigue tratándose de software de 1989, y el mundo ha seguido girando desde entonces. De modo que existen incompatibilidades con algunas utilidades modernas. Por ejemplo, bajo RTL el navegador Seamonkey parece incapaz de mostrar sus menús, en Opera no hay forma de escribir vocales acentuadas —problema con el que también me topé cuando lo ejecuté en Uwm y TinyWM—, Xine acapara el foco del teclado mientras se encuentra en ejecución, y con GIMP el foco se pierde y el gestor queda en estado disfuncional. Tampoco debería quejarme mucho porque la mayoría de mis programas siguen funcionando del modo habitual, y para los casos en los que no es así dispongo de alternativas aceptables —los navegadores QupZilla y QtWeb , el explorador de archivos Xfe, etc—.

Ah, antes de que se me olvide: a diferencia de los demás gestores de su clase que he probado, RTL carece de una capa especial para ventanas flotantes. Todas quedan confinadas al mosaico, con la única excepción de las temporales —menús, algunos diálogos para confirmar operaciones, ese tipo de cosas—, que sí se mostrarán por encima de las demás en su breve plazo de vida. Sin embargo, dada la fluidez que poseen aquí los mosaicos, esto no representa mayor problema. Vuestro videojuego favorito aparecerá con sus dimensiones nativas, aunque para ello tenga que acorralar al resto de aplicaciones en los confines del monitor o forzar al gestor a minimizarlas.

Opciones de personalización

Los autores originales eran gente práctica y se preocuparon sobre todo de los ajustes relativos al funcionamiento del gestor. Una ojeada al capítulo 11 del manual —fichero doc/plaintext/manual5.doc dentro del árbol de código fuente— revela que hay una cantidad muy grande de opciones, muchas concernientes a detalles más bien esotéricos de los automatismos que emplea RTL para manejar sus mosaicos. También se permite establecer preferencias por aplicaciones: por mencionar un caso, especificar que las ventanitas de Xclock se dibujen sin título.


Captura del Siemens RTL Tiled Window Manager

No hay mucho que destacar de esta captura, es verdad, salvo ese bonito fondo de escritorio violeta y mi partida a Cave Story.


Esto significa que RTL resulta en realidad bastante flexible. Como muestra, el usuario puede elegir el modelo de enfoque, o activar la colocación interactiva de ventanas —ideal para personas masoquistas—, o establecer que éstas pasen automáticamente a tamaño ampliado cuando se conviertan en oyentes. Vamos, son sólo tres posibilidades de entre otras muchas que cabría citar como ejemplos.

Como expliqué al principio, estos cambios se especifican mediante Xresources en el fichero ~/.rtl.preferences, o en ~/.Xdefaults o ~/.Xresources si lo preferís.

El otro archivo de configuración importante, ~/.rtl.tools, sirve para definir una lista de aplicaciones susceptibles de ser iniciadas desde el submenú Tools, dentro del menú principal —que aparece al clicar con el botón derecho sobre el fondo del escritorio o el icono de RTL—. Cuenta con una sintaxis muy simple, pares de líneas con el texto de la etiqueta a mostrar en el menú y el comando a ejecutar.

Existe un tercer fichero a considerar: ~/.rtl.layout, creado —o actualizado, si ya existe— al seleccionar Save Layout en el menú principal. Guarda la distribución y medidas de las ventanas presentes en el escritorio para ser utilizadas en futuras sesiones. No fue concebido para que el usuario lo edite por su cuenta.

Documentación

Muy completa, se trata de uno de los puntos fuertes del gestor. Los autores escribieron un tutorial de introducción, un extenso manual de uso, y una referencia rápida de las funciones de la interfaz. Como propina hay varias copias de ella en distintos formatos: texto plano, PostScript, LaTeX y Scribe.

Aciertos

Inconvenientes

Conclusión

El Siemens RTL Tiled Window Manager es el equivalente al ornitorrinco entre los gestores de ventanas: una creación original, única, una combinación improbable de ideas. No he encontrado otro que se le asemeje.

Ahora, su complejidad probablemente obstaculizó su adopción entre el público y lo condenó a convertirse en una vía muerta evolutiva; cosa que también piensa Anselm R. Garbe , creador de Wmii y Dwm. Porque RTL requiere estudio y días de uso. No es una herramienta que pueda dominar un usuario casual. La longitud del manual y el sinfín de etiquetas de configuración posibles en ~/.rtl.preferences dan fe de ello.

Probadlo si os apetece echar una ojeada a una solución diferente al problema de las interfaces de escritorio. En 2016 su obsolescencia pesa ya bastante, aunque podría ocurrir que algún lector aislado lo encuentre útil y quiera adoptarlo para un uso habitual. A mí, después de un mes con él, reconozco que no me disgusta del todo y le veo algún aspecto interesante.

Galería de imágenes

Una búsqueda en Google no revela ninguna captura útil de RTL en funcionamiento, así que aquí van unas cuantas más. Esto sí es material inédito en Internet:

Captura del Siemens RTL Tiled Window Manager

Terminales, un videojuego gratuito llamado Vlak corriendo en DOSBox, Swisswatch, y una pequeña demo gráfica sólo para hacer más exótico este pantallazo.

Captura del Siemens RTL Tiled Window Manager

Comprobé que me resultaba más cómodo alinear los iconos de ventanas minimizadas en el margen izquierdo. Ocupando la mayor parte del escritorio, el explorador de archivos Xfe .

Captura del Siemens RTL Tiled Window Manager

Recuerdo que cuando hice esta captura estaba examinando con incredulidad el menú, rascándome la barbilla y preguntándome «¿qué coño significa todo esto?»...

Captura del Siemens RTL Tiled Window Manager

...Pero descubrí que la opción Fill —en la imagen, marcada en el menú— agranda todas las ventanas del mosaico hasta que se tocan unas con otras y llenan la pantalla.

Captura del Siemens RTL Tiled Window Manager

La ventana «oyente» es la última en la que ha trabajado el usuario, y aparece con su decoración resaltada en negro. RTL se basa en este concepto para algunas operaciones.

Captura del Siemens RTL Tiled Window Manager

El panel de control de Xine es una de las pocas excepciones a la regla de «ninguna ventana encima de otra». Estoy viendo el ya mencionado vídeo de presentación de Ellis Cohen.

Descargas

Por si algún lector se anima a echarle un vistazo por sí mismo, aquí dejo las siguientes descargas:

 

Artículo escrito el 14 de junio de 2016.


[Apta para cualquier navegador]  [Cumple con el estándar HTML]  [Cumple con el estándar CSS]

Podéis copiar libremente cualquier contenido de esta página.
Mandad opiniones, sugerencias o saludos a sovietskayarodina@gmail.com.