它不可以像ag一样,搜索出来的buffer是多个独立的吗?rg只可以有一个搜索结果
额,我用的是 ivy-occur,可以把搜索结果搞出去,不会覆盖。没试过不用 ivy 单独用 rg。
纯猜测,试试加按 C-u
前缀,或者看下文档,感觉会有这样的功能。
这个我看了下rg.el的代码,它是直接硬编码的buffer名。应该是改不了的。
ag是提供了 ag-reuse-buffers
和 ag-reuse-window
这两个变量来设置的。
我默认都是喜欢搜索在同一个窗口里,所以我把上面两个变量都设置为了t。
(setq ag-reuse-window 't)
(setq ag-reuse-buffers 't)
ripgrep
确实是写死的,估计作者考虑这样使用更习惯吧,可以向作者提个需求。
我试了下,手动修改 buffer 名字是可以的。可以自己加 advice,每次搜索前重命名 buffer 名字。
我个人不大这么用,可以用counsel-rg
和ivy-occur
代替你的需求。
另外,个人更推荐 rg.el 而不是ripgrep
包。功能更强大,界面更友好。有个rg-save-search
(s
)命令直接保存当前搜索结果,比ag
更合理。l
命令可以列出所有的 rg 搜索 buffer。
上个动图参考:
2 个赞