Pregunta Emacs Unbind a Mode's KeyBinding [duplicado]


Esta pregunta ya tiene una respuesta aquí:

Creé una macro de enlace de clave personalizada de la siguiente manera:

(global-set-key (kbd "C-C C-c") "\C-a\C- \C-n\M-w\C-y")

El problema es ese C-c C-c se define para python-send-buffer en python-mode. Así que mi macro funciona para todos los modos excepto el modo python. Estoy asumiendo que python-mode se evalúa después de mi archivo de inicio, por lo que sobrescribe esa combinación de teclas.

Intenté desarmar C-c C-c utilizando (eval-after-load "python-mode") y usando global-unset-key pero eso no funciona. C-c C-c en Python siempre está mapeando a python-send-buffer.

¿Cómo puedo desactivar completamente Python's C-c C-c, y usar mi macro en su lugar?

Estoy usando Emacs 24.2.1.


6
2017-10-11 18:11


origen


Respuestas:


(add-hook 'python-mode-hook
          (lambda()
            (local-unset-key (kbd "C-c C-c"))))

8
2017-10-11 18:25



Esto debería hacerlo:

(add-hook 'python-mode-hook
          (lambda()
            (define-key python-mode-map (kbd "C-c C-c") nil)))

1
2017-10-11 18:17