A menudo presiono la combinación incorrecta de teclas y abro algún modo de minibúfer oscuro. Tengo que presionar ESC tres veces (creo), lo cual es bastante molesto. ¿Cómo hago para que emacs salga del minibúfer con solo presionar ESC?
Respuesta1
Gracias por todas tus ideas. Parece que esto debería funcionar:
(define-key minibuffer-local-map (kbd "ESC") 'keyboard-escape-quit)
Sólo funcionó para isearch. Parece que tendría que volver a vincularlo para cada función (smex, ibufer y todas aquellas que usan el minibúfer).
Respuesta2
Creo queergoemacsutiliza la ESC
clave de la manera que desee. También cambia muchas otras combinaciones de teclas de Emacs, pero probablemente de manera que concuerden con su deseo de "evitar pulsaciones prolongadas de teclas de Emacsy".
[Advertencia:
No soy un experto en ergoemacs y lo hago.noRecomiendo usarlo ESC
de esa manera. ESC
tiene un papel particular en Emacs con el Meta
modificador y los mapas de teclas, y tratarlo de otra manera es buscar problemas tarde o temprano. (De manera similar, C-g
es fundamental para Emacs e incluso está codificado en algunos casos, por lo que no es 100% reemplazable por otra clave).]
Respuesta3
Normalmente uso la siguiente combinación de teclas: Ctrl- X(ingrese al modo comando) K(Matar), luego Enter.
Esto debería matar el minibúfer actual.
Respuesta4
Lo que probablemente quieras es usarlo minibuffer-setup-hook
para vincular ESC en el mapa local de cada minibúfer.
(add-hook 'minibuffer-setup-hook (lambda ()
(local-set-key (kbd "ESC") 'abort-minibuffers))
Dado que esto utiliza el mapa de teclas local para cada minibúfer, no es necesario volver a vincularlo para el mapa de teclas de cada comando; el mapa local generalmente tendrá prioridad sobre cualquier cosa que esté haciendo ese comando del minibúfer.