我使用vim读取 *.log文件。我想快速打开这些推荐的源文件。
下面是我的日志文件的一个部分。
------------------------------
// ...
at clquo.infrastructure.serviceagents.httpclientwrapper.sendasync(httprequestmessage httprequest, cancellationtoken token) in w:qmainhttpclientwrapper.cs:line 61
at clquo.infrastructure.serviceagents.webapiclient.executerequest[tresult](uri route, httprequestmessage httprequest) in w:qmainwebapiclient.cs:line 92
// ...
------------------------------
现在我想打开文件' w: q main httpclientwrapper.cs '在垂直拆分中快速。
而不是类型" :split W: q main httpclientwrapper.cs "命令,是否有一些快速方法可以直接在vim中打开文件?我很懒。我不想键入完整的路径。
您将光标移到文件名上,然后点击gf
。
来自vims帮助:
编辑光标下方或之后的名称的文件。mnemonic:" goto file"。
请参阅:help gf
。
您还可以视觉选择文件名,然后点击gf
。请参阅:help v_gf
。
要在新窗口(又称拆分)中打开文件,请使用<C-w><C-f>
。 是'ctrl w' 是'ctrl f'
由于错误是附加到Filespec的尾随:line
,因此您面临着特定于Windows式文件名的问题:
- 您可以从
'isfname'
选项(:set isfname-=:
)中删除:
字符,但是也将排除驱动器字母部分,因此您有效地只能在同一驱动器中打开文件。 - 您可以使用
gf
的视觉模式变体(如 @ralf的答案所建议),但这需要手动选择。 - vim如果不存在解析的FileSpec,则会回到
'includeexpr'
。因此,您可以自动删除后续的:line
:
:set includeexpr=substitute(v:fname,':line$','','')