切换候选列表的API是什么

用evil习惯了

M-x 切换命令 和 complete 候选列表切换时 想从c-n c-p 改一下

请问API是什么 查了好久查不到

你查不到大概是因为你不知道怎么查。。

我猜你是想问 ivy?

我试了一下 好像是 ivy-next-line 但是改了貌似不起作用

你绑的哪个 keymap ? ivy 里是这样绑的。

(ivy-define-key ivy-minibuffer-map [remap next-line] 'ivy-next-line)

你可以

(ivy-define-key ivy-minibuffer-map (kbd "C-j") 'ivy-next-line)
(ivy-define-key ivy-minibuffer-map (kbd "C-k") 'ivy-previous-line)

这个不用改吧,直接设新快捷键键就行,c-n c-p绑定的是next-line previous-line(c-h c反查),把这两个命令绑定到其它键就可用, 我用的是 shift+n,shift+p

楼主应该是希望绑定的快捷键只对ivy生效,其它mode里不生效,这个我忘记怎么写了

company complete 看 https://github.com/hlissner/doom-emacs/blob/develop/modules/config/default/+evil-bindings.el#L130-L131 类似于这边的改动, ivy下的话绑定 ivy-next-line 到ivy-minibuffer-map

翻了一下ivy源码,原来还有这种写法 (ivy-define-key map [remap next-line] 'ivy-next-line),怪不得我没有绑定过ivy-next-lineshift-n,shift-p却一直可以用