@elastic/esql-语法
不要用手编辑此包中的任何文件 . 所有类型脚本文件都是由
语法同步 CI 任务 elastic/elasticsearch。编辑源语法.
自动生成的 ANTLR4 TypeScript Lexer 和 解析器 用于 ESQQL 语法.
这是一个内部的工作空间包——它不会被发布到npm.
目录
| 文件 | 说明 |
src/esql_lexer.g4 | 欧语 |
src/esql_parser.g4 | 欧语 |
src/esql_lexer.ts | 生成的 ANTR4 语法 |
src/esql_parser.ts | 生成的 ANTR4 解析器 |
src/esql_parser_listener.ts | 生成的 parse- tree 倾听器 |
src/lexer/ | 支持语法子语法 |
src/parser/ | 支持解析子语法 |
src/lexer_config.js | 手写 Lexer 超级类( PromQL 深度跟踪, 特征旗帜) |
src/parser_config.js | 手写解析器超级类( 地标) |
语法同步
线人的工作 .buildkite/scripts/esql_grammar_sync.sh 复制更新的语法
elastic/elasticsearch,再生 TypeScript 文物,并打开 PR 触摸
只有这个包裹。 当同步添加了新的语法规则时, 后续 PR 到
@elastic/esql 将其接入AST层(见 /grammar-sync-update 技术).
手动重生
pnpm --filter @elastic/esql-grammar build:antlr4
要求数 antlr CLI(英语:CLI). 在 macOS 上安装 :
pnpm --filter @elastic/esql-grammar antlr4:deps
关于 @elastic/esql-grammar 的常见问题
@elastic/esql-grammar 是什么?
为ESQQL语法自动出品的ANTLR4 TypeScript文物. 不要用手进行编辑.
如何安装 @elastic/esql-grammar?
在项目目录运行 npm install @elastic/esql-grammar,或使用 pnpm add / yarn add / bun add。
@elastic/esql-grammar 支持 TypeScript 吗?
支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。
@elastic/esql-grammar 支持 ESM 还是 CommonJS?
同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。
@elastic/esql-grammar 可以商用吗?
@elastic/esql-grammar 使用 Elastic-2.0 许可。声明的许可为 Elastic-2.0,请阅读许可原文确认使用条件。以上为概括,不构成法律意见,请以许可原文为准。
@elastic/esql-grammar 的下载量有多少?
根据 npm 官方下载统计,@elastic/esql-grammar 在 2026/10/14 – 2026/11/12 这 30 天内被下载 398,327 次,日均约 13,278 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。
@elastic/esql-grammar 还在维护吗?
最新版本 4.39.0 发布于 2026/11/11(2 天前);至今共发布 34 个版本,其中过去 12 个月发布了 34 个;首次发布于 2026/07/06。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。