我试图像这样重新映射一些密钥:
(add-hook 'dired-mode-hook
(lambda ()
(require 'dired )
(define-key dired-mode-map (kbd "M-o") nil)))
(define-key dired-mode-map (kbd "M-o") 'other-window)
))
不幸的是,这似乎不起作用,我收到此错误
Symbol's value as variable is void: dired-mode-map
哪个是werid,因为我应该在dired中加载。我能做错什么?
答案 0 :(得分:6)
原始海报在这一点上有两(2)个[双关语]右括号:(define-key dired-mode-map (kbd "M-o") nil)))
- 即,需要消除该行末尾的两(2)个右括号。此外,在重新定义之前,我没有理由将绑定设置为nil
。
以下是实现同一目标的另一种方式。根据需要在progn
语句后添加任何其他键绑定。
(eval-after-load "dired" '(progn
(define-key dired-mode-map (kbd "M-o") 'other-window) ))