2

我最近开始使用 vim 并且我已经玩了一段时间了。

我使用FZFwithAg来完成文件搜索和文件搜索。但我无法搜索特定的文件类型,例如

我只想"getUserInfo".js文件中搜索。

这是我的配置

.bashrc

[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
export FZF_DEFAULT_COMMAND='ag -g ""'
export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"

初始化.vim

Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
Plug 'junegunn/fzf.vim'

我只是:Ag在 vim 中使用来搜索整个目录

4

3 回答 3

0

要在 FZF 中使用文件类型搜索,您需要在 .vimrc 中添加自定义配置。例如,如果您只想搜索 fo javascript 文件,则添加以下内容:

autocmd! VimEnter * command! -nargs=* -complete=file AgJS :call fzf#vim#ag_raw('--js '. <q-args> .' ~/myRepo/src/')

请注意目录的规范 (~/myRepo/src/)。要调用这种搜索,您将使用该:AgJS命令。反过来,该命令可以绑定到其他一些映射。

插件文档中讨论了自定义:https ://github.com/junegunn/fzf.vim#example-customizing-files-command

在一个问题中讨论了您的特定功能请求:https ://github.com/junegunn/fzf.vim/issues/92

于 2020-12-26T18:34:00.103 回答
0

您可以使用--js将搜索限制为 JavaScript 文件:

$ ag getUserInfo --js

$ man ag

于 2020-06-04T06:43:57.923 回答
0

其他两个答案都对我不起作用,在挖掘了 Gregory 链接的相关问题后,我找到了一个对我有用的解决方案:

let s:ag_options = ' --python '

command! -bang -nargs=* Agpy call fzf#vim#ag(<qargs>,s:ag_options,<bang>0)

如果你输入

ag --list-file-types

在终端中,您可以确定在上面的示例中用什么替换 --python 以捕获正确的文件类型。

最后,您只需在 vim 中键入 :Agpy 或任何您命名的命令即可执行。

这也可以在您当前的工作目录中执行,这比在另一个示例中仅固定目录更可取。

于 2021-03-23T17:53:10.807 回答