在vim中导航文件系统 - >:find vs.:edit

Jon*_*ink 5 vim

在Vim中打开文件时,我几乎总是这样做:

:e subDir/**/file<ctrl-d>
Run Code Online (Sandbox Code Playgroud)

但是在文档中,基本上我读过的每篇StackOverflow /博客文章似乎都是人们使用"查找"我使用"编辑"的方式.

使用edit命令而不是find命令我错过了什么?

rom*_*inl 7

:edit默认情况下受限于工作目录:如果需要编辑不在工作目录下的文件,则必须提供其绝对路径或相对于工作目录的路径.此外,您需要提供必要的globs.

:find表面上非常相似,:edit但(大)的区别是它在path选项中指定的目录中找到文件.path是什么使得:find更有趣:edit.

set path=,,你基本上得到相同的行为:e foo.

随着set path=**你基本上得到了相同的行为,:e **/foo除非你没有使用任何水珠.

随着set path=.,**您还可以访问文件在同一目录作为当前文件.

随着set path=.,**,/path/to/some/central/vendor/directory您还可以获得从该目录访问文件...等等.

  • 值得注意的是,将"**"添加到"路径"并不是真正意图使用"路径"."路径"的目的是指向"包含"代码的根源(比如Python模块,Java源依赖项,Vim插件包等).然后`:find`非常像`:edit`,只是它使用多个搜索目录根,而不仅仅是工作目录. (4认同)