如何阻止elpy覆盖我的一些键绑定?

时间:2014-08-06 07:41:48

标签: emacs

我刚刚更新了emacs包elpy,并设置了以下键绑定:

<M-down>        elpy-nav-move-iblock-down
<M-left>        elpy-nav-move-iblock-left
<M-right>       elpy-nav-move-iblock-right
<M-up>          elpy-nav-move-iblock-up

我通常将这些键绑定到windmove-<direction>,我认为这是一个真正的痛苦。在this github issue之后,我尝试了:

(load "python")
(define-key elpy-mode-map [remap windmove-left] nil)
(define-key elpy-mode-map [remap windmove-right] nil)
(define-key elpy-mode-map [remap windmove-down] nil)
(define-key elpy-mode-map [remap windmove-up] nil)

.emacs中,但没有运气。如何阻止elpy-mode覆盖这些密钥?

1 个答案:

答案 0 :(得分:6)

您可以通过以下方式一次性将有问题的映射重置为nil UPDATE。根据lunaryorn的评论,文件参数应为"elpy"而不是"python",现在会在答案中反映出来。

(eval-after-load "elpy"
  '(cl-dolist (key '("M-<up>" "M-<down>" "M-<left>" "M-<right>"))
     (define-key elpy-mode-map (kbd key) nil)))

如果您不热衷于dolist,则可以在define-key内的progn中对eval-after-load打四个电话。