Desactivar enlace de clave en emacs
elisp emmet (1)
La forma general de desenlazar una clave (para cualquier mapa de teclas) es definir una vinculación de nil
:
(define-key KEYMAP KEY nil)
Para mayor comodidad, también hay dos funciones estándar para desvincular del mapa de teclas global y del mapa de teclas local (que generalmente es el mapa de teclas del modo principal).
-
(global-unset-key KEY)
-
(local-unset-key KEY)
Esos son comandos interactivos, según sus respectivos complementos global-set-key
y local-set-key
.
En cuanto a su ejemplo específico, probablemente desee algo como esto:
(eval-after-load "zencoding-mode"
''(define-key zencoding-mode-keymap (kbd "C-j") nil))
Por ejemplo, en los códigos de codificación zen, "Cj" sombrea el comportamiento normal de "Cj" ( newline-and-indent
)
(define-key zencoding-mode-keymap (kbd "C-j") ''zencoding-expand-line)
Entonces, ¿cómo puedo desactivar esta combinación de teclas y usar Cj
para la newline-and-indent
nuevamente?
Intenté esto, pero no funciona:
(add-hook ''html-mode-hook
(lambda ()
(progn
(zencoding-mode)
(local-set-key (kbd "C-j") ''newline-and-indent))))
¿Alguien tiene ideas sobre esto?