大家都用什么命令搜索

场景 搜索对象(递归) 命令/后端
N/A 当前 buffer 内容
非项目 当前文件夹下所有文件内容
当前文件夹下所有文件名
项目(Git/Mercurial/Subversion…) 当前项目下所有文件内容
当前项目下所有文件名
当前项目下所有文件内容(含 untracked)
当前项目下所有文件名(含 untracked)

因为 git-grep 结果没含 untracked,所以我在项目下分成了两类。

上面的Markdown 表格
| 场景   | 搜索对象(递归)                       | 命令/后端 |
|--------|----------------------------------------|------|
| N/A    | 当前 buffer 内容                       |      |
| 非项目 | 当前文件夹下所有文件内容               |      |
|        | 当前文件夹下所有文件名                 |      |
| 项目   | 当前项目下所有文件内容                 |      |
|        | 当前项目下所有文件名                   |      |
|        | 当前项目下所有文件内容(含 untracked) |      |
|        | 当前项目下所有文件名(含 untracked)   |      |

我先抛个砖,

场景 搜索对象(递归) 命令/后端
N/A 当前 buffer 内容 大文件换成 rg 了
非项目 当前文件夹下所有文件内容 counsel-rg
当前文件夹下所有文件名 find-file-in-project
项目 当前项目下所有文件内容 counsel-git-grep
当前项目下所有文件名 find-file-in-project
当前项目下所有文件内容(含 untracked) N/A
当前项目下所有文件名(含 untracked) N/A

不过 rg 在 Windows 下有时候响应慢。最喜欢的命令是 counsel-git-grep,一开始有个结果栏,不像 counsel-rg 那样一开始只提示 x chars more。

看到表格在编辑区里对不齐的样子,感觉 Emacs 真好 :laughing: :laughing:

3 个赞
场景 搜索对象(循环) 命令/后端
N/A 当前 buffer 内容 swiper
非项目 当前文件夹下所有文件内容
当前文件夹下所有文件名 swiper
项目 当前项目下所有文件内容
当前项目下所有文件名 counsel-projectile-find-file
当前项目下所有文件内容(含 untracked)
当前项目下所有文件名(含 untracked)

可以提高的方向:

增加了搜索符号的场景

场景 搜索对象(循环) 命令/后端
N/A 当前 buffer 内容 evil-search-forward
当前 buffer 符号 counsel-imenu
非项目 当前文件夹下所有文件内容 counsel-rg
当前文件夹下所有文件名 counsel-find-file
项目 当前项目下所有文件内容 projectile-ripgrep
当前项目下所有文件名 projectile-find-file
当前项目下所有文件内容(含 untracked) projectile-ripgrep
当前项目下所有文件名(含 untracked) counsel-find-file
当前 buffer 符号 xref-find-{defition,reference}
1 个赞