【问题标题】:ack-grep: command not found in gvim after upgrade to Ubuntu 18.04ack-grep:升级到 Ubuntu 18.04 后在 gvim 中找不到命令
【发布时间】:2018-10-26 20:43:18
【问题描述】:

现在在 gvim 中运行 :Ack anything 会给出

|| /bin/bash: ack-grep: command not found

ack-grep 已经是最新版本(2.22-1)

它在 Ubuntu 16.04 中运行良好。我在 ~/.vim/bundle/ack.vim/ 中有 ack.vim 插件

【问题讨论】:

  • 如果从终端运行 ack-grep 会发生什么?
  • ack-grep: command not found,但也许那只是因为我跑了: sudo dpkg-divert --local --divert /usr/bin/ack --rename --add /usr/bin /ack-grep ?
  • 既然我们已经确定这不是您的 vim 设置的问题,您可能会在 'ask ubuntu' 获得更好的帮助。
  • 他们只是说使用 ask 而不是 ack-grep。我不知道如何让 ack.vim 工作
  • 看起来g:ackprg 是一个变量,您可以在其中选择要运行的命令,所以也许您可以将它指向ask 或任何其他可能与其目的兼容的东西。 github 页面有一个使用 Silver Searcher 的示例,命令为 ag --vimgrep

标签: vim grep ack


【解决方案1】:

假设您正在使用这个ack.vim 插件。那么你不应该做任何事情。

Ack.vim 将按以下顺序搜索可执行文件:ack-grepack。您可以使用g:ackprg 覆盖它。如果你设置了g:g:ackprg,那么你需要调整g:ackprg设置为ack的可执行路径。

let g:ackprg = '/usr/local/bin/ack'

就个人而言,除非您确实需要,否则我会避免设置 g:ackprg 变量。

您可能还想研究比ack 更快的grep 程序。例如The Silver Searcherripgrep。我还没有真正发现需要像 ack.vim 这样的插件,我只是设置了 'grepprg''grepformat' 并使用 :grep 搜索。

【讨论】:

  • 只需安装 Silver Searcher 即可解决问题,谢谢。 ack.vim 在那之后就像以前一样工作。 ack.vim 让我可以用 \AK 搜索光标下的单词,这很方便。不确定仅 grep 是否可用。
  • Ripgrep/Silver searcher "star search": nnoremap <silent> <leader>* :<c-u>execute "grep '" . expand('<cword>') . "' -w"<bar>redraw!<bar>:cc<cr>
猜你喜欢
  • 1970-01-01
  • 2020-09-10
  • 1970-01-01
  • 1970-01-01
  • 2019-02-16
  • 1970-01-01
  • 2021-04-24
  • 2021-06-06
  • 2020-06-05
相关资源
最近更新 更多