【发布时间】:2021-04-08 11:20:36
【问题描述】:
我只想使用 :Ag 命令进入交互式 ag shell(与 :Files 一样),然后开始输入我的搜索词。
但是,vim 不允许我打开ag 交互界面。如果我输入:Ag,它会报错如下:
E471:需要参数
如果我写下搜索词(如:Ag something),它会打开一个包含结果的新窗格。但这不是我想要的:我想像使用 :Files 命令一样使用ag。
更多信息
我正在使用thoughtbot/dotfiles。
:Ag 命令的定义
:verbose command Ag
Name Args Address Complete Definition
| Ag + file silent! grep! <args>|cwindow|redraw!
设置
这是我的.vimrc 文件中启用ag 的部分。
" Use The Silver Searcher https://github.com/ggreer/the_silver_searcher
if executable('ag')
" Use Ag over Grep
set grepprg=ag\ --nogroup\ --nocolor
" Use ag in fzf for listing files. Lightning fast and respects .gitignore
let $FZF_DEFAULT_COMMAND = 'ag --literal --files-with-matches --nocolor --hidden -g ""'
if !exists(":Ag")
command -nargs=+ -complete=file -bar Ag silent! grep! <args>|cwindow|redraw!
nnoremap \ :Ag<SPACE>
endif
endif
【问题讨论】:
-
“我正在使用 thinkbot/dotfiles。”这就是你的问题的原因。这不是您的配置,因此您不知道其中发生了什么,并且当出现问题时您不知道如何修复它们。无论如何,
:verbose command Ag说什么? -
@romainl 我已将
:verbose command Ag的输出添加到上述问题中 -
1.那个vimrc 不是你的 vimrc。 2. 该命令是由其维护者添加到该文件的临时
:Ag,它需要参数并且根本不涉及fzf。不过,我希望 fzf 覆盖该命令。 -
@romainl 你有什么建议可以在窗口中使用
ag(类似于CtrlP)? -
正如我所说,假设你有一个工作的
:Filesprovided by fzf,我希望 fzf 定义its own:Ag。如果没有,那么一定是某个地方出现了问题,并且您从网络上获得的现成配置并不能轻松找出在哪里。也许 fzf 没有正确安装?也许是别的什么?