Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to remove a key from a minor-mode keymap in Emacs?

I have globally assigned C-c/ to ace-jump-mode but reftex-mode (a minor mode for citations used with AucTeX) overrides this key with some function I never use.

I tried local-unset-key but it only unbinds keys from the current major mode's map.

How do I remove C-c/ from reftex-mode-map without making changes to reftex.el?

like image 896
malana Avatar asked Sep 29 '11 13:09

malana


People also ask

How do I rebind keys in emacs?

You can redefine function keys and mouse events in the same way; just type the function key or click the mouse when it's time to specify the key to rebind. redefines C-x 4 $ to run the (fictitious) command spell-other-window.

What is the Return key in emacs?

"RET" is the Return key while emacs runs in a terminal.


1 Answers

You can change an existing key map using define-key. By passing nil as the function to call, the key will become unbound. I guess that you should be able to do something like:

(define-key reftex-mode-map "\C-c/" nil) 

Of course, you should do this in some kind of hook, for example:

(defun my-reftex-hook ()   (define-key reftex-mode-map "\C-c/" nil)) (add-hook 'reftex-mode-hook 'my-reftex-hook) 
like image 141
Lindydancer Avatar answered Oct 15 '22 22:10

Lindydancer