Intellij Idea 循环浏览不带箭头的自动完成建议

ddrv8njm  于 2023-05-06  发布在  其他
关注(0)|答案(5)|浏览(196)

到目前为止,我对IntelliJ IDE的自动完成功能印象深刻。
我想做的是,循环通过我在按Ctrl + Space时得到的自动完成建议,而不使用箭头键(↑,↓)。
这样做的原因是我更喜欢将手指放在主行上(我还使用IntelliJ's Vim emulator)。
例如,如果不使用箭头键或鼠标,如何选择sortThis而不是sorted

jjjwad0x

jjjwad0x1#

彼得·格罗莫夫的回答给我带来了一个令人满意的解决方案:
在IntelliJ的设置中,我为Keymap → Editor Actions → Down设置了一个自定义快捷方式:Ctrl + J。
这样,我就可以通过这些建议循环前进。

不过,在IdeaVim特定的快捷方式中为Down with SelectionScroll Line Down设置快捷方式不会影响自动完成建议的选择。

gt0wga4j

gt0wga4j2#

答案here让我发现Ctrl+n和Ctrl+p允许导航自动完成选项,而无需修改任何设置。

gajydyqb

gajydyqb3#

对于macOS,IDE将给予提示“^↑^↓将在编辑器中上下移动插入符号”。这些显然不起作用。
遵循@matthias-braun的解决方案后,还需要一些额外的步骤。
以下是我使用的步骤的完整列表:
1.转到Preferences -> Keymap
1.展开Editor Actions(而不是Plug-ins -> IdeaVim
1.选择Down
1.单击铅笔图标或右键单击
1.选择Add Keyboard Shortcut
1.按快捷键(我用^N)*
1.对Up重复3-6(我使用^P
1.点击Ok**
1.转到Preferences -> Other Settings -> Vim Emulation
1.在包含Down的行的Handler列下的下拉列表中,选择Vim***
1.对Up执行相同的操作

  • 如果警告您密钥绑定已经存在,请删除它。你可以通过点击下拉菜单右上角的小齿轮图标来重置为默认值。
    **在重新打开Preferences之前,Vim Emulation似乎未正确填充。
    ***我不知道为什么Handler应该是Vim。这对我来说似乎是倒退,但它起作用了。
rm5edbpk

rm5edbpk4#

如果你可以在编辑器中使用一些IdeaVIM特定的快捷方式向上/向下滚动,它们也应该在完成列表中工作。
在这个特殊的例子中,我只需要输入另一个“t”,这样“sortThis”就变成了selected(也是唯一的)变量。

f45qwnt8

f45qwnt85#

我也做了同样的事情来Map箭头,但以一种更合乎逻辑的方式:我把它们Map成当我按下Alt键时,J是左,L是右,I是上,K是下。这样我就可以很容易地接触到箭头,而我的手指在本垒上,我不需要移动他们几乎一样多…
我把它贴出来,只是为了让在谷歌上搜索它的人有这个想法。

相关问题