转到文件(gf)优先目录而不是文件名
goto-file (gf) prioritize directory instead of filename
我正在尝试配置 gf
以在光标下打开文件。
它总是有效...几乎。
不幸的是,当光标下的文本有一个相应的目录时,我发现了一个问题。在这种情况下,netrw
插件被打开。
让我举一个例子。我在这段代码中:
[...], MyObject myobject, [...]
我结束了MyObject
然后按gf
。
不幸的是我在一个文件夹中:
myobject <-- a directory
MyObject.java <-- the file to open
netrw
已激活。
我试图检查文档以进行一些修改(suffixesadd
,...),但可能我不知道如何正确地进行操作。
我找到了 this answer,但我认为它有点不同,因为在那种情况下,文本和目录的匹配是唯一的第一个,它是完美的。
有什么帮助吗?
P.S。我想做的是创建一个小的 vim 插件,可用于导航基于 Maven 的 Java 项目(称为 vim-java-maven)。
仅供学习VIM.
尽管听起来很傻,Vim 将目录视为有效目标,所以……
:help 'suffixesadd'
没有帮助,因为目录名称完全匹配,
:help 'includeexpr'
,只有在没有匹配时才调用,因为有匹配所以不会调用。
该行为是硬编码的,无法在运行时影响它。唯一的解决方案是编写自己的 Gf()
来更明智地处理目录并将其映射到 gf
.
我正在尝试配置 gf
以在光标下打开文件。
它总是有效...几乎。
不幸的是,当光标下的文本有一个相应的目录时,我发现了一个问题。在这种情况下,netrw
插件被打开。
让我举一个例子。我在这段代码中:
[...], MyObject myobject, [...]
我结束了MyObject
然后按gf
。
不幸的是我在一个文件夹中:
myobject <-- a directory
MyObject.java <-- the file to open
netrw
已激活。
我试图检查文档以进行一些修改(suffixesadd
,...),但可能我不知道如何正确地进行操作。
我找到了 this answer,但我认为它有点不同,因为在那种情况下,文本和目录的匹配是唯一的第一个,它是完美的。
有什么帮助吗?
P.S。我想做的是创建一个小的 vim 插件,可用于导航基于 Maven 的 Java 项目(称为 vim-java-maven)。
仅供学习VIM.
尽管听起来很傻,Vim 将目录视为有效目标,所以……
:help 'suffixesadd'
没有帮助,因为目录名称完全匹配,:help 'includeexpr'
,只有在没有匹配时才调用,因为有匹配所以不会调用。
该行为是硬编码的,无法在运行时影响它。唯一的解决方案是编写自己的 Gf()
来更明智地处理目录并将其映射到 gf
.