vimscript:如何检测特定文件是否存在
我在vimscript
寻找一个优雅的方法来检查函数中当前目录中是否存在文件。
我想出了这个,但不知道如果这是最优雅的解决scheme(我会设置vim选项,如果存在的话) – 是否有任何方法不需要做另一个文件名的比较 – 也许使用不同的vim
内置函数(?):
:function! SomeCheck() : if findfile("SpecificFile", ".") == "SpecificFile" : echo "SpecificFile exists" : endif :endfunction
在vim man
中search一下,我发现这个看起来好多了:
:function! SomeCheck() : if filereadable("SpecificFile") : echo "SpecificFile exists" : endif :endfunction
一些评论expression了关于filereadable
和使用glob
担心。 这解决了存在一个文件的问题,但是权限阻止了它被读取。 如果你想检测这种情况下,以下将工作:
:if !empty(glob("path/to/file")) : echo "File exists." :endif