dwm es un administrador de ventanas dinámico minimalista para X Window System desarrollado por Suckless que ha influido en el desarrollo de varios otros administradores de ventanas X, incluidos xmonad [6] y awesome . [7] [8] Es externamente similar a wmii , pero internamente mucho más simple. dwm está escrito exclusivamente en C para rendimiento [9] y carece de interfaz de configuración además de editar el código fuente. [10] Una de las pautas del proyecto es que el código fuente nunca debe exceder los 2000 SLOC , y las opciones destinadas a ser configurables por el usuario están todas contenidas en un único archivo de encabezado . [8]
dwm admite múltiples espacios de trabajo y, a diferencia de ratpoison , permite mover y cambiar el tamaño de las ventanas con el mouse. [11] Las versiones anteriores de dwm mostraban su entrada estándar en una barra de estado, a lo largo del borde de la pantalla. En cambio, las versiones recientes muestran el nombre de la ventana raíz , que puede configurarse mediante procesos independientes. Esto se utiliza a menudo para mostrar información que aparecería en el área de notificación de otros entornos de escritorio : un reloj, información de carga del sistema, estado de la red y la batería del portátil, información del reproductor de música y similares. Esta línea de estado suele complementarse con dmenu , un iniciador de aplicaciones textual de los mismos desarrolladores que dwm. dwm utiliza un modelo de enfoque que sigue al mouse y carece de cualquier decoración de ventana que no sea un borde para mostrar el enfoque. Dado que la capacidad de configuración de dwm equivale a parchear el código fuente, son posibles muchas otras opciones. [12]
dmenu es una utilidad de menú basada en teclado desarrollada como parte del proyecto dwm. Cuando se invoca, generalmente mediante una combinación de teclas configurada por el usuario , dmenu muestra un menú horizontal de su flujo estándar en el borde superior de la pantalla. Esto generalmente se usa para canalizar una lista de nombres ejecutables desde $PATH del usuario , pero dmenu se puede usar para cualquier propósito donde se requiera un menú. El usuario puede comenzar a escribir el nombre de un programa y dmenu limitará la lista para mostrar solo coincidencias de subcadenas para lo que el usuario escribió. El usuario también puede utilizar las teclas de flecha para navegar por el menú. Cuando se realiza una elección, dmenu envía el texto seleccionado a stdout , que generalmente se canaliza a un shell para iniciar el programa. Las opciones de la línea de comandos pueden alterar la fuente y los colores del menú, hacer que la búsqueda no distinga entre mayúsculas y minúsculas , así como cambiar el menú a una orientación vertical o colocarlo en la parte inferior de la pantalla. De forma predeterminada, solo se admiten las fuentes X Font Server , aunque existe un parche para habilitar las fuentes TrueType usando Xft .
dmenu tiene una función similar a los lanzadores de aplicaciones como Katapult o GNOME Do para Linux o LaunchBar o Quicksilver para Mac OS X en que permite el inicio rápido de programas desde un entorno gráfico usando el teclado.
Además de dwm, [13] dmenu se usa a menudo con otros administradores de ventanas como xmonad , [14] u Openbox , [13] y otro software como el navegador web uzbl . [15]
dwm ha sido un proyecto influyente; Muchos otros administradores de ventanas se basan en el código fuente de dwm o se inspiran en él. Puede encontrar una lista extensa de bifurcaciones y parches en el sitio oficial. A continuación se muestra una lista de algunos ejemplos notables:
dwm se personaliza mediante la edición de su código fuente, lo que lo hace extremadamente rápido y seguro: no procesa ningún dato de entrada que no se conozca en el momento de la compilación.