在显示搜索结果之前,终端vim中的Ack正在闪烁它的输出.怎么阻止它?

Raf*_*ega 10 vim ack

我在Ubuntu 12.04中的gnome-terminal和MacOS的终端中使用vim.我使用ack.vim插件来执行项目范围的文本搜索,它工作正常,但有一个令人不安和分心的错误:

当您执行搜索时,整个vim屏幕将返回终端并在运行时显示ack的输出.当它停止运行时,屏幕返回到vim并正确显示搜索结果.此外,当你退出vim时,所有ack的输出都将在终端中.

我知道这个问题https://github.com/mileszs/ack.vim/issues/18但我想在这里发布,看看我是否可以获得有关如何修复它的想法.

在ack.vim中,我可以看到silent execute a:cmd . " " . l:grepargs我认为实际运行ack命令的行.沉默的选择已经存在,就我的vim-fu带我而言.:S

任何人有任何想法如何解决这个问题?

ZyX*_*ZyX 8

这是vim自己的:grep*命令如何工作的问题,而不是ack.vim问题.您无法阻止使用终端,但设置shellpipe>,&>2>/dev/null>将阻止命令将输出复制到终端(默认情况下,此选项是2>&1|tee和/ &>2>&1>值最接近当前完成的操作).

  • @RafaelVega它应该在你的vimrc中设置.**不建议在插件中设置它.**AFAIR这对于Linux上的`csh`来说是错误的,对于Windows上的`cmd.exe`来说肯定是错误的. (3认同)