在 vim 中,我可以输入“gf”转到光标下的文件路径,但如果该文件不存在,则会收到错误消息。
有没有办法打开一个以光标下的单词命名的新文件?理想情况下,我希望这个缓冲区在新选项卡中打开。
编辑 noremap gf :tabe <cfile><CR>是一个很好的建议,但我希望还有一种方法来实现此映射并利用该suffixesadd设置。
来自的帮助:help gf
If you do want to edit a new file, use:
:e <cfile>
To make gf always work like that:
:map gf :e <cfile><CR>
Run Code Online (Sandbox Code Playgroud)
如果您想在新选项卡中打开它,您可以将其更改:e为:tabe,这样您就会得到
noremap gf :tabe <cfile><CR>
Run Code Online (Sandbox Code Playgroud)
<cfile>被光标下方的路径替换。
以下是尝试正常操作的函数<c-w>gf(在新选项卡中打开光标下的文件,尊重'suffixesadd'并检查文件是否存在),如果失败,则仅在新选项卡中打开光标下的文件。
function Gf()
try
exec "normal! \<c-w>gf"
catch /E447/
tabedit <cfile>
endtry
endfunction
noremap gf :call Gf()<CR>
Run Code Online (Sandbox Code Playgroud)