Intellij idea ideavim如何导航到方法的声明/实现?

Intellij idea ideavim如何导航到方法的声明/实现?,intellij-idea,ideavim,Intellij Idea,Ideavim,我在读:。 当我的光标位于一个方法上时,我如何导航到它的声明/实现(如正常模式下的ctrl-b),我尝试了gd,但它什么也没做。我注意到“gd”似乎指向声明。使用ideavim默认设置,在正常模式下按“gd”可以跳转到声明,但默认情况下,没有办法实现 因此,您可以自己修改它,触摸新文件~/.ideavimrc,然后在该文件中设置您自己的键盘映射器: nmap g] :action GotoImplementation<CR> nmap g]:操作转到实现 “GotoImpleme

我在读:。
当我的光标位于一个方法上时,我如何导航到它的声明/实现(如正常模式下的ctrl-b),我尝试了
gd
,但它什么也没做。

我注意到“gd”似乎指向声明。

使用ideavim默认设置,在正常模式下按“gd”可以跳转到声明,但默认情况下,没有办法实现

因此,您可以自己修改它,触摸新文件
~/.ideavimrc
,然后在该文件中设置您自己的键盘映射器:

nmap g] :action GotoImplementation<CR>
nmap g]:操作转到实现
“GotoImplementation”是IntelliJ定义的操作,因此按“g]”将运行此操作。 试试看。

您可以将“GotoImplementation”方法映射到实现。要返回基本方法,可以使用“
GotoSuperMethod
”操作


是的,即使在Rider中它也能工作,即使在.net中没有“超级”类。

在我的例子中,我希望
Ctrl-B
执行默认的“Go to Declaration”,但它不会做任何事情,因为Vim仿真截获了按键组合

我的解决办法是

Preferences
> Editor
> Vim Emulation
> "Ctrl-B, Declaration"
> Change from "Vim" to "IDE"

我发现很难记住一些通常在vim中工作的组合在b/c中不起作用,因为它与IDE冲突

如果我开始在“vim emulator”中创建异常,那么在我的脑海中保持清晰就变得更加困难了

“CTRL+b”在IDE中对“转到定义”非常有效。为什么要按“vim emulator”来做同样的事情

我发现添加一个键盘快捷键(ALT+9)来快速打开/关闭“vim emulator”(“工具”-->“vim emulator”)更容易,而不必把复杂的事情记在心里

在VIM模式下编辑。
想追溯到什么地方定义了什么吗?翻转开关。
“CTRL+b”远离

切换回VIM模式以编辑更多

我找到的最接近的方法是:转到设置/Vim仿真,找到Ctrl+B快捷方式,将处理程序从Vim更改为IDE,Ctrl-B将按预期工作。这是一个非常好的建议。我只是稍微调整了一下,让我的肌肉记忆更容易。为此,我使用“gD”而不是“g]”。最后一句话,@Jas,我相信你应该把这个标记为正确答案。它是完整的,它解决了你的问题。你怎么回去?GotoDeclaration?@Justin Thomas只需使用IDE的键映射,在使用“gd”后,您还可以使用Ctrl+o返回您原来的位置@NagarjunPrasad Ctrl+o对我有效。我如何用另一个组合键重新定义这条捷径?非常感谢。