Zvec Logo

支持的内容

了解 Zvec-Grep 如何提取代码、文档和结构化文本,以及哪些文件会被跳过。

Zvec-Grep 会将每个被选中的文件分配到一条提取路径。结构化提取器保留有用的源码上下文,其他文本文件则回退为普通文本切块。

结构化代码

以下语言会保留符号、签名、面包屑和周边源码:

  • C 与 C++
  • Go
  • Java
  • JavaScript 与 JSX
  • TypeScript 与 TSX
  • PHP(包括 .phtml 模板)
  • Python
  • Rust

Vue 和 Svelte 文件中的脚本代码也会尽可能使用结构化提取。

在 PHP 文件中,声明之外的模板标记和顶层语句会保留为纯文本切块,仍然可以被搜索到。在支持结构化提取之前已索引的 PHP 文件会保留原有的纯文本切块,直到使用 zg --index --rebuild 重建索引。

文档与结构化文本

内容索引表示
Markdown 与 MDX标题章节和面包屑
TXT、RST、HTML、XML纯文本切块
CSV、JSON、JSONC、TOML、YAML纯文本切块
其他非二进制文件纯文本回退

Ruby、Swift、Kotlin、C#、Scala、Shell、SQL 与 CSS 等其他代码,在没有结构化语法时也会使用纯文本切块。

图片

图片不进入索引。显式包含 GIF、JPEG、PNG 或 WebP 文件,或选择多模态模型,都不会启用图片索引。

当前跳过的内容

PDF 与 Office 文件、压缩包、编译产物、音视频、数据库文件、空文件、根据扩展名或内容采样识别的二进制文件,以及超过大小限制的文件不会进入索引。

使用 zg --index --debug 可以查看被跳过文件的数量和示例。通过 glob、文件类型、ignore 文件、深度和最大文件大小控制扫描范围。

本页目录