使用 MacVim 查找和打开文件的最快方法是什么?NERDtree 是一个很棒的插件,但我仍然需要导航(有时非常深)目录树才能找到我想要访问的文件。是否有任何功能允许我搜索文件名的子字符串并显示我可以从中单击的结果集?
7 回答
您还应该查看内置命令:find
。
首先,您需要定义要搜索的目录。如果您希望递归地将/path/to/project的子目录添加到您的搜索路径,请使用:
:set path=/path/to/project/**
然后,您可以通过发出以下命令打开例如/path/to/project/then/some/random/subdirectory/filename.ext :
:find filename.ext
要在新选项卡或分屏中打开搜索结果,请尝试:tabfind
或:sfind
改为。
编辑
我刚刚注意到您正在寻找文件的模糊匹配,在这种情况下,我认为这不能胜任:find
这项任务。不过,您可能对此 vimtip:Find
中定义的函数感兴趣。
我用了fuzzyfinder.vim快两年了,非常喜欢它。
支持模糊查找文件,例如查找 foobar.rb 文件,输入 'fb' 即可匹配 foobar.rb,文件导航可在文件名前加“**/”找到任何深度的文件。它提供了更多模式来模糊查找目录、最近打开的文件、最近的 vim 命令、标签等,您甚至可以定义自己的模式。
如果你喜欢 TextMate 的方式,可以阅读这篇文章了解更多详情。
在找到 ctrp ( https://github.com/kien/ctrlp.vim ) 之前,我使用了很长一段时间的模糊查找器。您可以制作一个适用于 linux 和窗口的自定义查找命令。ctrlp 有一些可能的设置 - 跳过文件类型或目录 - 忽略版本控制系统文件(例如:.git、hg、..) - 使用外部命令制作文件列表(例如:linux 中的“查找”命令) - 缓存文件列表...
它与您所说的NERDtree插件无关,但我认为您应该看看...
与模糊查找器相同的是PeepOpen。我已经使用它几个月了,现在更喜欢它而不是模糊查找器。它是严格的 mac,并且需要 Snow Leopard。
我添加了以下 Nerdtree 插件,它将 grep 集成为 Nerdtree 菜单中的选项之一:
https://gist.github.com/masaakif/414375
似乎工作得很好,它相当于“grep -r”,您甚至可以选择结果并编辑显示的文件。