How can I assign a keymap to a derived mode in emacs (I am using the define-derived-mode
function). There is a derived-mode-set-keymap
function but without examples or good documentation.
views:
27answers:
1
+2
A:
define-derived-mode
itself creates a keymap with the name MODE-map, where MODE is the name of the keymap you've just defined. I'm not sure what derive-mode-set-keymap
does that is not already done with define-derived-mode
; looking at the source, they do similar things, and I'm unsure of the very low-level differences between the two (e.g. define-derived-mode
leaves the parent-mode's keymap as the parent of the new keymap while `derive-mode-set-keymap also merges the keymaps; what's the functional difference between the two?).
If you do the following:
(define-derived-mode foobar-mode text-mode "foo")
Then the following variables will be defined:
foobar-mode-abbrev-table
foobar-mode-hook
foobar-mode-map
foobar-mode-syntax-table
You can then start manipulating any of these as you like.
Joe Casadonte
2010-02-07 13:19:29
Thanks, that makes sense. Also some other lisp examples using defined-derived-mode make more sens to me now.
Rupert Jones
2010-02-07 14:48:11