转到 vim 中的新文件

Go to new file in vim

在 vim 中,我可以键入 'gf' 转到光标下的文件路径,但如果该文件不存在,我会收到错误消息。

有没有办法打开一个以光标下的单词命名的新文件?理想情况下,我希望此缓冲区在新选项卡中打开。

Edit noremap gf :tabe <cfile><CR> 是一个很好的建议,但我希望还有一种方法可以实现此映射并利用 suffixesadd 设置。

使用:e <filename>编辑文件,不管文件是否存在。

来自 :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>

如果您想在新标签页中打开它,您可以将 :e 更改为 :tabe,这样您将得到

noremap gf :tabe <cfile><CR>

<cfile>替换为光标下的路径。


下面是一个尝试正常 <c-w>gf 的函数(在新选项卡中打开光标下的文件,遵守 'suffixesadd' 并检查文件是否存在),如果失败在新标签页中打开光标下的文件。

function Gf()
    try
        exec "normal! \<c-w>gf"
    catch /E447/
        tabedit <cfile>
    endtry
endfunction

noremap gf :call Gf()<CR>