Configuración y uso personal de dwm

9 de octubre de 2021 • fjbalon

En orden a construir dwm necesita los archivos de cabecera de Xlib. Edite config.mk para localizar tu configuración local (dwm es instalado en usr/local por defecto). La instalación se realiza directamente compilando el código, para ello dispone de un archivo makefile. Para limpieza de archivos compilados y temporales en directorio de trabajo, dispone de la orden clean

emb>.

dwm se configura mediante el archivo config.h y (re)compilando.

Existen parches ya programados y publicados por la comunidad de suckless que permiten extender fácilmente el windows manager según los parámetros requeridos por el usuario. En mi caso, utilizo éstos de base:

Basado en el artículo Dave's Visual Guide to dwm y usando, con su permiso, algunas imágenes de su autoría; voy a exponer cómo uso, o conduzco, dwm obteniendo toda su potencia gráfica. A priori, puede parecer un uso complejo y complicado, y de hecho así lo es en un inicio. Sin embargo, como aquel que controla maquinaria pesada o programas complejos, con el uso rutinario que se convierte en hábito, se convierte en un poderoso arma de productividad y enfoque táctico.

Lo primero que hay que definir es la tecla principal, que en mi caso es Mod4. Cabe destacar que por defecto es Alt.

Layouts

Un layout, en el contexto de diseño gráfico y de interfaces de usuario, es la disposición visual y organizativa de los elementos en una pantalla. dwm cuenta con 3 layouts:

  1. Mod4+t Tiled (mosaico): reorganiza las ventanas en la configuración maestra/pila de mosaicos dinámicos.

    Es el layout por defecto al abrir una tag. La ventana creada comienza a pantalla completa. A medida que se agregan ventanas, se abren en el área master (zona izquierda); mientras que las más antiguas se empujan al área stack(zona derecha, apiladas).

  2. Mod4+f Floating (flotante): las ventanas pueden superponerse, moverse y dimensionarse manualmente.

  3. Mod4+m Monocle (monóculo): una sóla ventana completa enfocada se empuja hacia el frente, el resto, esperan detrás a ser enfocadas.

Además, alterna entre los dos layouts más actuales con Mod4+Space. Para cambiar entre los estados de mosaico y flotante en la ventana enfocada Mod4+Shift+Space.

Administración de ventanas

De forma predeterminada, hay dos formas de abrir una nueva ventana: abrir una shell (por defecto st) o ejecutar dmenu. Ambas son aplicaciones separadas que se construyeron específicamente y modularmente para trabajar con dwm (aunque pueden usarse fuera de éste sin problemas). En mi caso uso ambas, cuyas combinaciones de teclas predeterminadas para cada una son:

Mod4+Return abre específicamente st, si desea que abra otra terminal, como xterm o urxvt, deberá configurar config.h.

Mod4+r ejecuta el pequeño menú dinámico llamado dmenu en la barra superior de dwm.

Para cerrar una ventana, puede cerrarla desde la aplicación o indicar que cierre la ventana con Mod4+Shift+c sobre la ventana enfocada. No podemos empezar a usar un programa si no sabemos terminarlo o salir de él. En el caso de dwm, saldremos de él mediante Mod4+Shift+q.

Administración del foco

Para mover el foco entre ventanas, utilizo Mod4+j para moverlo hacia la siguiente. Esto sirve para todos los layouts. En modo mosaico, vamos en dirección de la agujas del reloj.

Para mover el foco a la ventana anterior utilizo Mod4+k.

Administración de mosaico (tiled layout)

Para aumentar el número de ventanas divididas en el área master (lo que moverá las ventanas en caso de haberlas fuera del área de pila según sea necesario) utilizo Mod4+i (increment master).

Del mismo modo a la inversa, para reducir el número de ventanas divididas utilizo Mod4+d (decrement master).

Para incrementar el área física que ocupa master utilizo Mod4+l.

Para reducir el área física que ocupa master utilizo Mod4+h.

Para aplicar zoom, o en palabras más técnicas, alternar la ventana entre las áreas master y stack, utilizo Mod4+Shift+Return. Si la ventana enfocada está en stack se moverá a master y viceversa.

Administración de etiquetas (tags)

Si esta familiarizado con el concepto de escritorios múltiples o escritorios virtuales lo entenderá rápidamente. Las etiquetas o tags brindan la misma funcionalidad, pero con más flexibilidad y velocidad. Cada etiqueta es un escritorio, que administra un conjunto específico de ventanas que tiene abiertas.

Si hay alguna diferencia con los escritorios virtuales clásicos, es que una ventana puede pertenecer a más de una tag, e incluso puede ver todas las etiquetas a la vez, combinarlas, etc.

Para movernos entre tags, basta con Mod4+1...n, donde n es el número de tag que queremos visualizar. Mod4+Tab conmuta entre las 2 tags más recientes.

Para asignar un nuevo tag a una ventana, en otras palabras, mover una ventana entre tags, uso Mod4+Shift+1...n, que moverá la ventana enfocada al tag n.

Para universalizar la ventana enfocada, uso Mod4+Shift+0; de tal forma que la ventana se mostrará en todos los escritorios. Para agregar o eliminar la visualización del foco en una tag n concreta, en lugar de en todas, uso Mod4+Ctrl+Shift+1...n.

Para visualizar todas las ventanas de todas las tags uso Mod4+0. Si lo que queremos es combinar x tags concretas en lugar de todas, podemos conmutarlas con Mod4+Ctrl+1...n.

Administración de barra (bar)

La barra o bar puede ocultarse o mostrarse simplemente usando Mod4+b. Es muy útil a veces.

Administración del ratón (mousing)

Aunque como sabemos, dwm está diseñado para que no se requiera el ratón. A veces puede ser un añadido muy útil, en especial cuando ya estamos usándolo en programas que por diseño lo requieren, como el navegador, programas gráficos o algún juego.

Si queremos activar la administración del ratón, sólo tenemos que mantener pulsado Mod4 durante su uso.

Mod4+Button1 mueve la ventana en modo flotante. Si la ventana se encontraba incrustada en el mosaico, cambiará su modo a flotante.

Mod4+Button2 alterna la ventana entre el estado flotante y mosaico. Mod4+Button3 redimensiona la ventana. Al igual que con el movimiento, si la ventana estaba embaldosada, se flotará. Otro uso del ratón a tener en cuenta es como enfocador. Si el ratón se superpone sobre una ventana esta adquirirá automáticamente el foco. Igual en varios monitores.

Administración de monitores

En ocasiones, trabajamos con más de un monitor. En ese caso, cada monitor extenderá el escritorio de dwm, manteniendo 9 tags independientes -por defecto- en cada escritorio.

Cada escritorio puede ser comportado como una tag superior, moviendo el foco de escritorio con Mod4+, y Mod4+.. Para enviar una ventana a la tag enfocada del siguiente escritorio uso Mod4+Shift+,, Mod4+Shift+. para enviarla al escritorio anterior.