打开分割时,如何让vim在路径中查找或搜索文件?

时间:2011-05-05 15:34:23

标签: vim

在vim中,我可以找到一个文件并使用:tabfind在新标签页中打开它,我可以使用:split或{{1打开一个我知道新拆分位置的文件}}。但是,我希望vim在运行:vsplit:split命令时在我的路径中为我查找文件。例如,在我当前的目录中,我有这些文件(所有这些都在我的路径中):

:vsplit

我想在vim中输入以下命令:

./ReallyLongFileName1.txt
./fooDir/ReallyLongFileName2.txt
./barDir/bazDir/ReallyLongFileName3.txt

让我的路径中的vim搜索与该表达式匹配的所有文件,并用

填充剩下的行
:vsplit R<Tab>

这与:vsplit ReallyLongFileName :find完美配合,但在分割时不起作用。是否有一个命令执行此操作,我只是不知道,或者是否有某种方法可以将此功能添加到:tabfind:split命令中?

3 个答案:

答案 0 :(得分:13)

正如romainl所说,:sf是执行此操作的命令。没有垂直拆分查找,但您可以使用稍长的命令:vert sf执行相同的操作。

答案 1 :(得分:4)

键入:split | :find<space>R(意思是“打开拆分然后找到...”似乎可以解决问题。与:vsplit相同。

将其设为自定义函数并使用nnoremap调用它会使其更加出色。

编辑:

我不知道:find:tabfind所以我在Vim的帮助下查找了它们,我发现:sfind完成了你想要的一件事。很遗憾,我看不到:vfind:vsfind

查找::help sfind

答案 2 :(得分:0)

我要进行垂直拆分查找的方法是:在.vimrc中添加一个缩写。

" Abbreviation for vertical split find
cabbrev vsf vert sfind