evil-collection把M-ret 给霸占了,怎么办

在org里按M-回车 应该是list的下一行,但是evil变成了打开链接 如何才能给改回来呢?

我写了一个这个,但是完全没反映

(use-package evil-collection
  :after evil
  :ensure t
  :config
  (evil-collection-init))

(defun evil-collection-org-setup ()
  "Set up `evil' bindings for `org'."
  (evil-collection-define-key 'normal 'org-mode-map
    [tab] 'org-cycle
    [S-tab] 'org-shifttab
    )

  (evil-collection-define-key 'insert 'org-mode-map
    [M-<return>] 'org-insert-heading
    )
)

是你的配置的问题。 M-ret 并没有被 evil 重载。

请问具体应该如何写,请帮一下小白,谢谢啦!

使用 C-h k ,然后按下 M-RET 看看绑定的是哪个函数。

明显和 evil-collection 无关,翻看 evil-collection 的源码就知道按键绑定没有定义过M-RET。如果是evil-collection 的问题,可以重新定义按键

(defun maple/evil-collection-keybind(mode _keymaps)
  (pcase mode ('org (evil-define-key 'normal org-mode-map (kbd "M-<return>") 'org-meta-return))))

(add-hook 'evil-collection-setup-hook 'maple/evil-collection-keybind)

你好,有了一些进步 但你这个是normal下的,我需要的是inster下,我把你的代码改成inster貌似不成功。 不知道是不是inster不该这么写。。。

insert? 不知道是不是拼错了的问题哈,我不用evil,不太清楚是不是这么绑定按键。另外你也可以试试 C-h l 这个快捷键,先按下M-return,然后C-h l,也能知道这个快捷键绑在哪里了。

直接把你原来代码里的defun去掉就好了,evil-collection-*-setup里面写的define key,那肯定只调一次,那你重定义这个函数已经没人会帮你调了。

谢谢终于解决了!