Jump to content

dmenu (Español)

From ArchWiki

Esta traducción de dmenu fue revisada el 2026-09-23. Si existen cambios puede actualizarla o avisar al equipo de traducción.

dmenu es un lanzador de menú rápido, dinámico y ligero para X. Lee texto arbitrario desde stdin, y crea un menú con un ítem por cada línea. El usuario puede entonces seleccionar un ítem, a través de las flechas de teclado o escribiendo parte del nombre, y la línea es escrita a stdout. dmenu_run es un wrapper que viene con la distribución de dmenu que permite su uso como lanzador de aplicaciones.

Instalación

Instale el paquete dmenu.

Existen varias variantes parcheadas que extienden la funcionalidad por defecto de dmenu.

Puede ejecutar dmenu con:

$ dmenu_run

Configuración

Ahora, querrá anclar el comando dmenu_run a una combinación de teclas. Esto puede hacerse vía su gestor de ventanas o la configuración de su entorno de escritorio, o con un programa como xbindkeys. Vea el artículo Hotkeys para obtener más información.

Mostrar ítems personalizados

Los ítems personalizados serán mostrados al separarlos con una nueva línea (\n) y canalizándolos hacia dmenu. Por ejemplo:

$ echo -e "primero\nsegundo\ntercero" | dmenu

Añadiendo ítems manualmente

dmenu buscará ejecutables en los directorios definidos en su $PATH. Para información acerca de modificar su $PATH vea Variables de entorno.

Fuentes

dmenu puede mostrar fuentes usando XFT. Este ejemplo ejecutará dmenu usando ttf-droid:

$ dmenu_run -fn 'Droid Sans Mono-9'

Soporte para alias de shell

dmenu no soporta alias de shell. Para que dmenu reconozca sus alias, instale el paquete dmenu-recent-aliases-gitAUR y ejecute dmenu-recent-aliases. Sus alias deben estar en ~/.bash_aliases para ser reconocidos por dmenu-recent-aliases.

Soporte para historial

Para ordenar los comandos por recencia, descargue dmenu_run_history a su $PATH y use dmenu_run_history en vez de dmenu_run.

Consejos y trucos

Obtener entrada del usuario con dmenu

Dentro de un script (por ejemplo, lanzado desde un atajo de teclado), a veces es necesario obtener una entrada del usuario. Se puede usar dmenu para esto pasándole un EOF: el campo de selección quedará vacío y dmenu podrá recibir la entrada del usuario.

Como leer /dev/null devuelve un EOF, esto se puede hacer simplemente con el siguiente comando:

$ dmenu < /dev/null

Incrustar en la terminal actual

dmenu puede incrustarse dentro de cualquier ventana usando la opción -w id.

Para incrustarlo dentro de la ventana activa (por ejemplo, la terminal desde la que se ejecuta), use xdo para obtener su id:

$ echo hello | dmenu -w $(xdo id)

Resolución de problemas

Sin soporte de locale

Ejecutando dmenu_run resulta en el siguiente mensaje de error:

$ dmenu_run
no locale support

Asegúrese de que la variable de entorno LANG está definida correctamente. Vea lo siguiente para más información: Locale (Español)#Solución de problemas.

Entradas del menú faltantes

Si ciertas entradas del menú faltan en dmenu, el cache podría estar malformado. Elimínelo y reinicie dmenu.

$ rm ~/.dmenu_cache
$ rm ~/.cache/dmenu_run

Tome en cuenta que lo más común es que solo haya un archivo de cache, dependiendo si $XDG_CACHE_HOME está definido. Vea los contenidos de /usr/bin/dmenu_run para más información.

Variables de entorno

Las variables de entorno requeridas por las aplicaciones deberían ser agregadas en su lugar a /etc/environment.

Véase también