8

我最近将ripgrep添加到我的vim 插件列表中,并且在安装后立即开始在我加载 vim 时收到此错误消息:

Error detected while processing /Users/my_macbook/.vim/plugged/vim-ripgrep/plugin/vim-ripgrep.vim:

line  149: E1208: -complete used without -nargs
Press ENTER or type command to continue

打开有问题的文件并查看第 148-149 行会发现:

148 command! -nargs=* -complete=file Rg :call s:Rg(<q-args>)
149 command! -complete=file RgRoot :call s:RgShowRoot()

我在这里完全没有我的深度,特别是考虑到这个错误是通过简单地安装插件产生的;我对基础文件 ( vim-ripgrep.vim) 进行了 0 次更改。

有没有人在安装 ripgrep 后遇到过类似的慢性错误,如果有,您是如何解决的?

4

3 回答 3

6

恭喜,您在 FOSS 程序中发现了一个错误。下一步是通过他们的问题跟踪器通知维护者,或者,如果您知道如何修复它,请提交补丁。

举个例子,作者分配了一个完成方法,-complete=file但是自定义命令,例如:RgRoot默认情况下不接受参数,因此该命令按原样没有意义:如果你不能传递参数,你就不能完成参数。

它只需要一个-nargs=*,就像它楼上的邻居一样:Rg,才能正常工作,并且错误消息非常清楚:

line  149: E1208: -complete used without -nargs

请参阅:help -complete:help -nargs,更一般地,:help user-commands

于 2021-07-26T16:18:33.090 回答
4

正如另一个答案所述,这是此插件中的一个错误。目前有一个开放的拉取请求来解决这个问题:https ://github.com/jremmen/vim-ripgrep/pull/58 不幸的是,存储库目前未维护,因此不太可能很快合并。 这个活跃的分叉页面可以帮助您识别新的维护者。

在 vim-ripgrep 有新的维护者之前,我建议在你的~/.vim/plugged/vim-ripgrep目录中检查那个分支并重新打开 vim。

于 2021-08-05T17:22:31.340 回答
0

如果您使用的是 vim-plug,请尝试更改

Plug "jremmen/vim-ripgrep"

Plug "miyase256/vim-ripgrep", {'branch': 'fix/remove-complete-from-RgRoot'}

以下是详细步骤:

  1. 评论Plug "jremmen/vim-ripgrep"
  2. :PlugClean
  3. 添加Plug "miyase256/vim-ripgrep", {'branch': 'fix/remove-complete-from-RgRoot'}
  4. :PlugInstall
于 2021-11-03T05:37:09.347 回答