• TinyWM

Versión analizada

1.3, publicada en marzo de 2005.

Página oficial

http://incise.org/tinywm.html
https://github.com/mackstann/tinywm

Estado actual

Bueno, este gestor de ventanas nació como un simple experimento, sin pretensiones de continuidad, así que no resulta sorprendente que hayan transcurrido tantos años sin más versiones. El autor cumplió sus objetivos con él en 2005, y pasó a ocuparse de otras cosas... Si bien en su repositorio de código en Github ha habido un poco de actividad más reciente, allá por 2011.

TinyWM logró cierta repercusión por su valor como rareza, y ha servido de base o inspiración para otros gestores (CLFSWM, SmallWM, Mcwm, SedWM ). Esporádicamente alguien lo prueba y deja alguna captura de pantalla o un escueto comentario por Internet; más allá de este puñado de curiosos no existe actividad a su alrededor.

Características resumidas

Esc. Virtuales Menús Iconos Temas Dockapps At. de teclado Barra de tareas
No No No No No No No

Descripción


Captura de TinyWM

TinyWM, fondo de escritorio con matrioskas, las temperaturas del ordenador escritas en pantalla mediante Root-tail, y un reloj que muestra fecha y hora (OSD Clock ).


Según el autor:

«TinyWM es un gestor diminuto que he creado como un ejercicio de minimalismo. Quizás resulte también útil para aprender los [aspectos] más básicos de la creación de un gestor de ventanas. Consiste sólo en 50 líneas [de código] en C».

Y eso es todo. TinyWM viene escrito en un único fichero, tinywm.c, que en efecto cuenta con 58 líneas y 1986 carácteres: las cartas promocionales que envían el banco o la aseguradora del coche suelen extenderse más. Compilarlo crea un archivo ejecutable de entre 4 y 5 kilobytes. Así que la propaganda acierta, este gestor realmente es diminuto.

Bien, existen programas pequeños y muy ligeros que consiguen de algún modo hacer muchas cosas. FVWM destaca en este aspecto, sobre todo en sus versiones más viejas; y, cambiando de ámbito, uno puede encontrar prodigios como Kkrieger, un videojuego en primera persona con gráficos comparables a los de Doom 3 pero en sólo 96 kilobytes. Sin embargo, se trata de excepciones, porque a grandes rasgos funcionalidad y tamaño van en consonancia. El software normalmente tiende a engordar a medida que se le van agregando características y funciones —y aunque no se le agreguen, pensará más de un lector: insértese pues el chiste obligatorio sobre Gnome o Windows Vista aquí—.

Lo que quiero decir con el párrafo anterior es que TinyWM es tan reducido porque tampoco hace gran cosa. Dibuja las ventanas sin añadir ninguna decoración, y permite al usuario moverlas, cambiar su tamaño o traerlas a lo alto de la pila. Y absolutamente nada más.

Por supuesto, tampoco existe configuración posible: TinyWM se desenvuelve a su manera, el usuario se adapta o lo deja. Salvo que posea los conocimientos adecuados y desee modificar el código fuente, claro.

Primeras impresiones


Captura de TinyWM

No se puede ser más minimalista que esto: de hecho, ni siquiera ese discreto borde negro que lucen las dos terminales lo dibuja el gestor. (La captura no es mía: fuente )


Las ventanas sin decoración nunca me han parecido bonitas, pero bueno, ya me lo esperaba: cincuenta líneas de código tampoco dan para mucho.

Aunque he de reconocer que TinyWM tiene una gran virtud: no hay que estudiar largos manuales ni perder el tiempo haciendo ajustes, una lectura rápida al archivo README basta para aprender todo lo necesario. Así que en menos de cinco minutos me hallaba ya listo para desenvolverme con él. Encuentro algo refrescante en esa simplicidad.

Tampoco puedo decir que me sintiese exactamente acogido, y más recién llegado de Openbox. ¿No puedo minimizar ventanas? Mierda... Esto resulta aún más básico que 9wm. ¿Cuánto tiempo aguantaré con él?

Usando TinyWM

Pues al final ha resultado ser una semana de uso casi diario, vaya. No está mal.

Entre muchos gestores de ventanas existe una especie de competición informal por alcanzar el nirvana del minimalismo: «oh, el viejo Twm, con su decoración y sus menús, ¡qué despilfarro de recursos! La gente auténtica no necesitamos nada de eso, ¿verdad? ¡Nos aburres, tío! ¡No nos aburras más!». Sin embargo, sospecho que en esta carrera TinyWM gana, y no se puede ser más minimalista que él. Se halla sólo un escaloncito por encima de arrancar una sesión gráfica sin ningún gestor, y usar en su lugar herramientas como Xwit o Xdotool desde una terminal para trabajar con las ventanas..., una idea excéntrica que dudo que alguien se haya planteado seriamente, dicho sea de paso.

Respecto a ellas, ya lo he dicho: las mueves a voluntad, cambias sus dimensiones —arrastrando el borde inferior derecho—, y las traes a primer plano. Un total de tres posibles acciones, con tres sencillas combinaciones de teclado y ratón a memorizar. Hasta un chimpancé amaestrado debería ser capaz de hacerlo.


Captura de TinyWM

Va, mostremos algo que no sean terminales: aquí estoy viendo Good Bye, Lenin!, y antes de eso me afanaba escribiendo esta misma página.


Sin embargo, me enfrenté a un par de limitaciones serias: las ventanas no se pueden minimizar, y no existen escritorios virtuales. Y para convivir lo mejor posible con ellas adopté la misma estrategia que con 9wm: emplear sobre todo programas con interfaces de pestañas —la terminal de Xfce, por ejemplo, o Vim—, y tratar de trabajar con disciplina, sin dispersarme en demasiadas actividades simultáneas. Y confieso que más o menos resulta posible sobrevivir así; la regla de oro se resumiría, pues, en evitar abrir muchas ventanas al mismo tiempo. El humilde 9wm me parece bastante más agradable, de todas formas, dado que al menos contaba con un menú de tareas.

Obviamente TinyWM no incorpora compatibilidad con ningún estándar, ICCCM o EWMH. Esto significa que muchos de los accesorios externos que uno se sentiría tentado de emplear para complementarlo —paneles con barras de tareas e iconos de lanzamiento de aplicaciones, cosas así— no terminan de operar correctamente. El que mejor resultado me dio, dentro de lo que cabe, fue el panel de Xfce 4. Supongo que alguien con un poco de imaginación y talento para las chapuzas podría combinar algunas herramientas para añadir funcionalidad, quizás improvisando un sistema de menús mediante Xbindkeys y 9menu, o implementando un rudimentario sistema para minimizar ventanas mediante Xdotool. Tampoco le veo mucho sentido: si uno se encuentra recurriendo a estos inventos del profesor Bacterio, lo que necesita es seguramente cambiar de gestor.

Me queda por explicar que bajo TinyWM algunos programas ocasionan errores con el foco: aplicaciones basadas en GTK2 que acaparan los eventos del teclado y no permiten que vayan a otras ventanas, menús que no logran desplegarse... Ah, y en el navegador Opera, por algún motivo misterioso, no podía escribir carácteres que requieran secuencias de teclas —letras acentuadas, etc—. No sé a qué pueden deberse estos fallos, a menudo resultaban frustrantes. Y tal vez demuestren que para preparar un gestor de ventanas realmente usable se requieren algo más de cincuenta líneas de código.

Opciones de personalización

Ninguna.

Documentación

Traduzco libremente del archivo README:

«El foco sigue al ratón.
[Alt] + Botón izquierdo, arrastrar: movimiento interactivo de la ventana.
[Alt] + Botón derecho, arrastrar: cambio de tamaño interactivo de la ventana.
[Alt] + [F1]: Traer a primer plano la ventana enfocada».

Ahí la tenéis en toda su concisión, que os aproveche. Lo bueno es que TinyWM no da pie a explicar mucho más, así que se me antoja completa y adecuada.

Aciertos


Captura de TinyWM

Un fondo diferente y programas aleatorios en marcha. Ah, intenté usar el panel de Xfce —en el borde inferior—, pero con TinyWM funciona de un modo más bien rudimentario: no aparecen ventanas en su barra de tareas, por ejemplo.


Inconvenientes

Conclusión

TinyWM fue un corto proyecto experimental, y en eso ha quedado: una demostración de dónde se halla aproximadamente el mínimo imprescindible para un gestor de ventanas. No está ideado para un uso serio y habitual, aunque si alguien se empeña resulta posible: al menos es muy estable, a pesar de los errores comentados más arriba. Yo sólo lo recomendaría a los curiosos que quieran echarle un vistazo y probarlo durante par de ratos.

 

Artículo escrito el 30 de agosto de 2014.


[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.