Dmenu no inicia algunos programas (p. Ej., Emacs). ¿Hay un archivo de registro?

8

Estoy ejecutando dwm con dmenu en Arch Linux. Mientras dmenu funciona, no inicia algunos programas, por ejemplo, emacs, aunque muestra el comando con autocompletado. Cuando los comienzo en la terminal, funciona bien.

¿Que puedo hacer? ¿Hay un archivo de registro de errores para dmenu?

Miguel
fuente

Respuestas:

9

dmenu no tiene un registro incorporado, pero es un programa muy simple y no es difícil que registre su salida en un archivo.

Primero, determine dónde pacman ha colocado los archivos dmenu pacman -Ql dmenu. Deberías obtener:

dmenu /usr/
dmenu /usr/bin/
dmenu /usr/bin/dmenu
dmenu /usr/bin/dmenu_path
dmenu /usr/bin/dmenu_run
...

Luego puede abrir /usr/bin/dmenu_run, que es solo un script de shell, y agregar un truco temporal para escribir toda la salida en un archivo, de esta manera:

dmenu_path | dmenu "$@" | ${SHELL:-"/bin/sh"} &>/home/michael/dmenu_log

Seleccionar emacsdesde dmenu ahora fallará, pero obtendrá el resultado en su archivo de registro:

]P0000000]P85e5e5e]P18a2f58]P9cf4f88]P2287373]PA53a6a6]P3914e89]PBbf85cc]P4395573]PC4779b3]P55e468c]PD7f62b3]P62b7694]PE47959e]P7899ca1]PFc0c0c0[H[JVim: Warning: Output is not to a terminal
Vim: Warning: Input is not from a terminal
...and a lot more

lo que deja el error bastante claro cuando elimina todos los escapes. Para que el trabajo Emacs, se tendría que asignar un terminal así desde dmenu, algo a lo largo de las líneas de: urxvt -e emacs yourfile.txt.

Hay un largo hilo de hackeo de dmenu en los tableros de Arch que tiene todo tipo de hacks interesantes para dmenu, vale la pena echarle un vistazo.

1. No tengo Emacs instalado, pero obtendrás el mismo error ...

jasonwryan
fuente
¡Muchas gracias! Funcionó bien, el problema era solo una fuente faltante del sistema. Tengo otro problema muy similar con DWM + urxvt, tal vez conozcas ayuda: unix.stackexchange.com/questions/146732/…
Michael