Las veces que en el pasado utilicé screen, lo hice siempre desde la consola ---nunca desde las X con un emulador de terminal--- y en monitores de un tamaño que hoy se consideraría ridículamente pequeño.
Ahora, al volver con screen, me gustaba la idea de poder utilizar uno de los escritorios virtuales con un emulador de terminal, como konsole, abierto en pantalla completa para ejecutar screen, de forma que tuviese la sensación de estar en la consola (una sensación muy agradable para mí), pero con acceso inmediato a cualquier aplicación gráfica y, por supuesto, a cualquier otro escritorio con bonito fondo de pantalla y todos los benificios de los widgets gráficos.
La solución, sin embargo, no es conveniente. Y no lo es, por un hecho tan tonto como que mi monitor es excesivamente grande para alojar texto: una línea de texto con un número excesivo de columnas se lee con dificultad y cualquiera que me viese desde fuera pensaría que estoy viendo un partido de tenis en lugar de estar leyendo una pantalla de ordenador.
Sin renunciar a la idea inicial, busqué, como primera opción, hacer uso del soporte de división vertical de la pantalla que proporcionan las versiones más recientes de screen y aplicarla (via layouts, otra idea relativamente nueva en screen) en los programas que creyera convenientes, dejando sin dividir las ventanas donde se ejecutasen los programas que ya disponen de paneles laterales propios. El problema es que la paginación y el scrolling en divisiones verticales consumen muchos más recursos que en las divisiones horizontales, lo que implica que estas operaciones no se realizan con la suavidad necesaria en programas donde el scrolling no lo maneja internamente él mismo, por ejemplo, el propio shell. Aparte de que la configuración de screen se complica un poco.
Otra opción era limitar el número de columnas de la pantalla, pero afectando sólo al terminal concreto donde se ejecuta screen. Esto no lo he conseguido con mi terminal, que parece no soportar esta operación. Tampoco me molesté mucho en ver si podía hacer algo en la configuración del termcap. Básicamente porque lo que se lograría sería que, aunque el número de columnas se redujera, el texto apareciese en la parte izquierda de la pantalla y no centrado. La misma consideración vale para el caso de las aplicaciones donde es posible definir directamente esta variable (el número de columnas por línea).
Finalmente, he podido resolver el problema desde el propio KDE con esta serie de configuraciones sencillas de realizar:
- Añadir una "actividad" con un fondo de escritorio que coincida con el de mi konsole. (aquí también se podría recurrir a transparencia completa de konsole). Esto es posible en KDE4, donde distintas actividades pueden tener un fondo distinto de escritorio, puesto que el fondo de escritorio es un componenete más de plasma.
- Crear un nuevo perfil de konsole para screen
- Hacer uso de las herramientas de configuración específica de ventana, con el objeto de definir completamente el comportamiento de la ventana para este perfil de konsole. En mi caso, la ventana no tiene nada, ni menús, ni bordes, ni pestañas, y queda situada en el centro de la pantalla con una geometría que determino exactamente.
- Finalmente, resulta obvio cómo hacer que esta ventana se ejecute en un escritorio determinado y como cambiar mediante teclado desde un escritorio virtual a otro o desde una actividad a otra.
De esta forma, puedo ejecutar screen sin problemas del modo como me gusta y pasar de ella al escritorio gráfico de KDE, y viceversa, en unos pocos segundos.