我在Ubuntu 12.04的gnome-terminal中使用vim,在MacOS的终端中也是如此。我使用ack.vim插件执行项目范围的文本搜索,它工作得很好,但有一个令人不舒服和分散注意力的bug:
当您执行搜索时,整个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
有没有人有办法解决这个问题?
发布于 2012-11-10 21:13:28
这是一个ack.vim
自己的:grep*
命令如何工作的问题,而不是vim的问题。您不能阻止使用终端,但将shellpipe
设置为>
、&>
或2>/dev/null>
将防止命令将输出复制到终端(默认情况下,此选项为2>&1|tee
,&>
或2>&1>
值与当前执行的操作最接近)。
发布于 2014-06-13 21:09:18
建议的解决方案可以工作,但现在按下ctrl-z后,vim-screen显示在输出中。
https://stackoverflow.com/questions/13322161
复制相似问题