Vim gF应该打开文件并跳转到行

vbd*_*vbd 2 vim

我试过了gF,似乎没有表现得像:help gF

如果光标位于条目上x.c并且我输入gf文件则打开.

如果光标定位在入口x.c:3和我型gF我得到E447: Can't find file "x.c:3" in path.其中:3应该告诉vim跳到第3行.

我错过了什么?

Mat*_*don 8

输入 :set isfname

它将显示一个OS依赖列表,其中列出了可能属于文件名的所有字符.在我的系统(Windows)上,:列出现在列表中.

isfname=@,48-57,/,\,.,-,_,+,,,#,$,%,{,},[,],:,@-@,!,~,=
Run Code Online (Sandbox Code Playgroud)

因此,gF不会将其视为文件名和行号之间的分隔符.但是,如果我在它们之间添加空格,则行为如记录所示.

鉴于没有理智的人:在文件名中使用,如果你想gF在一些编译器的输出上使用file.c:120,你可以将它添加到你的vimrc:

set isfname-=:
Run Code Online (Sandbox Code Playgroud)

(介意-之前=)

如果有一天您需要打开一个:名称中包含a的文件,您始终可以输入:set isfname+=:该列作为该会话持续时间内的有效文件名字符.