我目前正在尝试找出 vim 并制作我自己的 .vimrc。
在对搜索命令和插件进行了一些研究之后,我决定听从某人的建议并尝试使用SilverSearcher/Ag的Ack.vim进行实际搜索。虽然我遇到了一些问题,但让我从头开始:
当我第一次安装 Ack 并通过以下方式测试“本机”Ack 时:
:Ack teststring
一切正常,我在快速修复窗口中得到了结果。
然后我继续安装 SilverSearcher 并将以下内容添加到我的 vimrc 中:
if executable('ag')
let g:ackprg = 'ag --vimgrep'
endif
...现在当我执行与上面相同的命令时,搜索不再起作用。相反,我立即得到一个空的快速修复窗口,没有其他任何事情发生。
但是,如果我在命令中添加一个目录,例如
:Ack teststring mysubdirectory/
搜索有效。
这让我很困惑。如果没有指定,它不应该默认为当前目录吗?至少这就是我理解文档的方式,这也是它似乎也适用于“本地人”的方式。但是一旦我将 ag 部分添加到我的 .vimrc 中,它就不再存在了。
谁能给我提示一下我在这里缺少什么?
PS:如果这很重要:我在 OSX ElCapitan 上使用 iterm2 中的 VIM8 终端版本。