Vim,Java:在游标下打开类并转到方法

Ada*_*tan 3 java vim cursor code-navigation

Vim可以使用光标打开文件gf.例如,如果我在光标下面有以下内容:

SensorManagementActivity.java
Run Code Online (Sandbox Code Playgroud)

打击gf会打开SensorManagementActivity.java.

问题是在Java中,引用缺少java后缀,并且通常显示为SomeClass,SomeClass()SomeClass.method().

  • 当光标在另一个文件中打开时SomeClass.java,如何打开并跳转到?someMethod()SomeClass.someMethod()
  • 有没有办法在不保存当前文件的情况下打开新文件,并在不丢失更改的情况下返回当前文件?

Ing*_*kat 5

'suffixesadd'选项允许gf处理Java文件扩展名; 它已经由Vim附带的java文件类型设置,如下所示:

:setlocal suffixesadd=.java
Run Code Online (Sandbox Code Playgroud)

要跳转到方法,Vim可以使用必须首先(重新)生成的标记文件(有些插件可以自动生成).对于Java,您可以使用丰富的ctags工具.

:! ctags -R
Run Code Online (Sandbox Code Playgroud)

有关更多信息和替代方案,请阅读:help ctags.使用:tag命令或Ctrl-]快捷键跳转.

您可以通过Ctrl-W跳转到拆分窗口.为了能够留下修改的文件,后来返回到它,:set hidden在你的~/.vimrc.

PS:虽然在这里它们有点相关,但最好避免在Stack Overflow上提出多个问题