我正试图让gf
使用看起来像这样的路径:
foo/bar.js
该文件位于此处:/Users/dimal/dev/project/src/foo/bar.js
所以我设置path
就像这样:
set path+=/Users/dimal/dev/project/src
似乎gf
应该找到该文件,但事实并非如此。
E447: Can't find file "foo/bar.js" in path
为什么?
我尝试了其他变体:
/Users/dimal/dev/project/src/**
/Users/dimal/dev/project/src/**/*
答案 0 :(得分:5)
gf命令通过:set path
搜索路径中的文件。
set path
命令接受*
之类的通配符。 (*表示任何字符)因此,如果要包含目录子目录下的所有文件,可以给出
:set path+=directory/**
对于目录下三个级别的深度,即要包含当前目录子目录子目录的任何子目录下的文件,可以指定directory/**3
允许的最大深度为100。
像
这样的命令 :set path+=/Users/dimal/dev/project/src/**3
允许您在src/subdirectory/subdirectory/subdirectory
中搜索名为bar.js的文件,而不仅仅是src/
。