41

在 Vim 中我们可以使用Ctrl + NorCtrl + P来完成代码补全。如何在 IdeaVim 中为 IntelliJ 配置它?

4

6 回答 6

36

Alt + /Alt + Shift + /在普通的 IntelliJ 和安装了 IdeaVim 的情况下工作。

请参阅JetBrains 页面上的文档- 它称为Hippie Completion(较新的版本将此完成称为 Cyclic Expand Word)。

当然,您始终可以使用Ctrl + Space, Ctrl + Shift + Space, Ctrl + Alt + Space

于 2015-05-10T08:22:55.347 回答
22

在 IDEA 2016.2.5 中(运行 IdeaVIM 时)将 CTRL-N 和 CTRL-P 映射到“循环展开字”和“循环展开字(向后)”后,我无法让它们工作。两次击键都没有做任何事情。

解决方案是从文件菜单中额外选择“设置”,然后选择“其他设置”->“Vim Emulation”,并将 Ctrl+N 和 Ctrl+P 的“处理程序”设置为“IDE”而不是“Vim”。

于 2016-11-23T00:08:23.237 回答
11

这是我发现使单词完成与 CTRL-N 和 CTRL-P 一起工作的方式,同时仍然让快捷方式在列表中为 DOWN 和 UP 工作。

在 Settings -> Keymap 中,将 CTRL-N 和 CTRL-P 分别映射到 Down 和 Up。然后,在 Other Settings -> Vim Emulation 中,将 CTRL-N 和 CTRL-P 处理程序设置为 Vim。

最后,将以下内容添加到您的 .ideavimrc

imap <C-n> <ESC>:action HippieCompletion<CR>a
imap <C-p> <ESC>:action HippieBackwardCompletion<CR>a
于 2017-07-14T18:44:44.357 回答
9

添加以下键盘映射:Ctrl+NtoDownCtrl+PtoUp

因此,您可以轻松地在完成菜单中导航。

于 2015-05-15T15:11:11.560 回答
2

File->Settings->Keymap->搜索关键词“循环展开词”

于 2017-01-17T16:34:47.973 回答
1

从带有 IdeaVim v0.57 插件的 IntelliJ IDEA Community Edition v2020.1.1 开始,使我能够使用 Ctrl+N 自动完成代码以及循环浏览建议的功能如下:

  • 文件 -> 设置 -> 键盘映射
  • 在搜索栏输入:嬉皮士
  • 将键盘快捷键添加到“循环展开单词”Ctrl+N(如果出现提示,请删除其他分配)
  • 将键盘快捷键添加到“循环展开单词(向后)”Ctrl+P(如果出现提示,请删除其他分配)

如果像我一样,您在 .ideavimrc 中添加了以下内容:

 imap <C-n> <ESC>:action HippieCompletion<CR>a
 imap <C-p> <ESC>:action HippieBackwardCompletion<CR>a

通过在前面加上“”将这两行注释掉,或者删除它们。

于 2020-06-07T13:52:32.610 回答