终端 vim 中的确认在显示搜索结果之前闪烁其输出。如何阻止它?



我在Ubuntu 12.04和MacOS终端中使用VIM内部的gnome端子。我使用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

有人对如何解决此问题有任何想法吗?

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

建议的解决方案有效,但是现在vim-screen在按下Ctrl-Z之后输出。

最新更新