我很长一段时间都是Vimmer.但是,我一直在切换到
shell进行搜索.这避免了我使用quickfix功能.
切换到shell的主要原因是当我在Vim内部使用grep(使用:grep)时,我无法跟进进度.
任何提示如何在Vim内重现这种模式将不胜感激.
我没有看到与你相同的vim行为.当我运行:grep时,我仍然在搜索完成之前在vim中查看结果(不在quickfix中)(但在搜索完成之前我无法做任何事情).
原文链接:https://www.f2er.com/bash/384925.html我甚至尝试过不使用vim设置或插件:
gvim -u NONE -U NONE
如果这不是你的行为,请检查你的grepprg.我的默认值是:
:verbose set grepprg grepprg=grep -n $* /dev/null
当我使用run grep -e“score”-R / etc时,我在vim中看到这个输出:
:!grep -n -e "score" -R /etc /dev/null 2>&1| tee /tmp/voLcaNS/232
您的系统可能缺少T恤或您的vim不使用它(我在Ubuntu 10.10上使用Vim 7.2). tee将传递给它的文本写入文件和stdout.
如果您正在寻找一种方法让quickfix更新您的搜索结果并且在您搜索时让vim不阻塞,那么您可以编写一个脚本:
>使用grep作为后台进程进行搜索并重定向到文件
>每秒直到grep完成,让vim加载quickfix(cgetfile)中的文件(你可以告诉vim用–remote-expr从另一个进程做一些事情)
您可以尝试使用我的AsyncCommand plugin来启动代码.它执行上述操作,但它仅在搜索完成时加载文件.