Find Find
Multi-level pipeline search for VSCode — chain multiple grep/grep -v filters just like you would in the terminal.
Features
- Pipeline search: Add multiple search rows. Each row filters the results of the previous one (AND), or merges with them (OR).
- Include / Exclude: Each row can include lines that match or exclude lines that match (like
grep -v).
- File glob filter: Restrict search to specific file types (e.g.
*.go, *_test.go).
- Scope: Search the entire workspace or only the active file.
- Regex / whole-word / case-sensitive toggles per row.
- Fast: Uses VSCode's built-in ripgrep binary. First-layer results are full and untruncated; display is capped at
maxResults.
- Collapse / expand result groups per file, with Expand All / Collapse All buttons.
- Click to jump: Click any result line to open the file at that line.
Usage
- Open the Find Find panel from the Activity Bar (magnifier icon).
- Type a search query in the first row. Results appear automatically.
- Click + to add a second row and further filter or expand results.
- Use && / || to switch between AND (filter) and OR (merge) modes.
- Click the direction icon (✔ / ⊘) to toggle include/exclude for each row.
- Enter a glob pattern in the File filter field to restrict results by filename.
Settings
| Setting |
Default |
Description |
findFind.maxResults |
1000 |
Maximum number of results displayed. Filtering always operates on the full dataset. |
Examples
Find all lines containing error but not timeout:
Row 1: [Include ✔] [&&] error
Row 2: [Exclude ⊘] [&&] timeout
Find lines containing TODO in Go files only:
Row 1: [Include ✔] [&&] TODO
Filter: *.go
Find Find(中文)
VSCode 多级管道搜索 — 像在终端里链式使用 grep/grep -v 一样,对搜索结果进行层层过滤。
功能
- 管道搜索:添加多条搜索行,每行在上一行结果的基础上过滤(AND),或与上一行结果合并(OR)。
- 正向 / 反向:每行可选择保留匹配行(正向)或排除匹配行(反向,等同于
grep -v)。
- 文件名过滤:通过 glob 模式限制搜索的文件类型,例如
*.go、*_test.go。
- 范围切换:在整个工作区或仅当前文件中搜索。
- 每行独立配置:正则表达式 / 全词匹配 / 大小写敏感,每行独立控制。
- 性能优异:使用 VSCode 内置 ripgrep,第一层全量搜索不截断,截断仅在展示时生效。
- 折叠 / 展开:每个文件的结果可独立折叠,支持一键全部展开或折叠。
- 点击跳转:点击任意结果行,直接跳转到对应文件的对应行。
使用方法
- 在活动栏点击放大镜图标,打开 Find Find 面板。
- 在第一行输入搜索关键词,结果自动出现。
- 点击 + 添加第二行,对结果进一步过滤或扩展。
- 使用 && / || 切换 AND(过滤)或 OR(合并)模式。
- 点击方向图标(✔ / ⊘)切换该行的正向/反向匹配。
- 在 File filter 输入框中填写 glob 模式,按文件名限制搜索范围。
配置项
| 配置 |
默认值 |
说明 |
findFind.maxResults |
1000 |
最多显示的结果条数。过滤始终在完整数据集上进行,截断只影响展示。 |
示例
找出包含 error 但不包含 timeout 的行:
第1行:[正向 ✔] [&&] error
第2行:[反向 ⊘] [&&] timeout
仅在 Go 文件中查找 TODO:
第1行: [正向 ✔] [&&] TODO
文件过滤:*.go
| |