gpt4 book ai didi

vim - 是否可以在 Vim 中 grep 快速修复窗口?

转载 作者:行者123 更新时间:2023-12-01 20:14:41 25 4
gpt4 key购买 nike

假设我使用 ag.vim 插件在多个文件中搜索字符串 disabled。它在快速修复窗口中返回一些结果:

1 first_file.rb|1 col 1| disabled something something
2 second_file.rb|1 col 2| disabled another something

是否可以选择快速修复结果作为输入,对它们进行 grep,然后在新的快速修复窗口中打开结果?换句话说,如果我输入 :quickfix_grep first_file,新的快速修复将弹出,只有一个条目:

1 first_file.rb|1 col 1| disabled something something

最佳答案

更新

已经为这个需求编写了一个 vim 插件:https://github.com/sk1418/QFGrep

<小时/>

原始答案:

我对你的目标的理解是:

Your grep result is somehow huge in your quickfix, you want to narrow your view of it. by entering a command with regex, filter the grep result. The filtered result should also be displayed in QuickFix window, so that you could open/jump to the file.

如果以上是您想要的,请查看以下内容:

获取该函数和命令行:

function! GrepQuickFix(pat)
let all = getqflist()
for d in all
if bufname(d['bufnr']) !~ a:pat && d['text'] !~ a:pat
call remove(all, index(all,d))
endif
endfor
call setqflist(all)
endfunction
command! -nargs=* GrepQF call GrepQuickFix(<q-args>)

然后在你的 grep/ack/whatever 显示你的快速修复中的内容之后,你可以输入

:GrepQF <regex>

在您的快速修复中进行过滤。

这里我添加了一个GIF动画。我使用 Ack 而不是 grep,但这没有什么区别。给定的正则表达式将匹配文件名和快速修复中显示的文本。我过滤了两次来证明这一点。

enter image description here

希望有帮助。

关于vim - 是否可以在 Vim 中 grep 快速修复窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15406138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com