From 4913cf531934dfb041f2a7d33a837f67af17a4d8 Mon Sep 17 00:00:00 2001 From: laurencewannamaker Date: Sun, 5 Jul 2026 23:26:07 +0000 Subject: [PATCH] =?UTF-8?q?fix(output):=20=E5=85=A8=E5=B1=80=E6=8F=90?= =?UTF-8?q?=E5=8F=96=20flag=20=E6=94=B9=E5=90=8D=20--jq=EF=BC=8C=E9=81=BF?= =?UTF-8?q?=E5=85=8D=E4=B8=8E=20api=20=E5=AD=90=E5=91=BD=E4=BB=A4=20--quer?= =?UTF-8?q?y=EF=BC=88=E6=9F=A5=E8=AF=A2=E5=8F=82=E6=95=B0=EF=BC=89?= =?UTF-8?q?=E8=AF=AD=E4=B9=89=E5=86=B2=E7=AA=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> --- cmd/root.go | 2 +- doc/changes/output-query.md | 12 ++++++------ internal/i18n/locales/en-US.json | 2 +- internal/i18n/locales/zh-CN.json | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cmd/root.go b/cmd/root.go index b628ee1..d79b999 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -54,7 +54,7 @@ func NewRootCmd(opts RootOptions, tr *i18n.Translator) (*cobra.Command, error) { rootCmd.PersistentFlags().StringVar(&cmdutil.Format, "format", "", tr.T("flag.format")) rootCmd.PersistentFlags().BoolVar(&cmdutil.Debug, "debug", false, tr.T("flag.debug")) rootCmd.PersistentFlags().StringVar(&cmdutil.Lang, "lang", "", tr.T("flag.lang")) - rootCmd.PersistentFlags().StringVarP(&output.Query, "query", "q", "", tr.T("flag.query")) + rootCmd.PersistentFlags().StringVar(&output.Query, "jq", "", tr.T("flag.jq")) rootCmd.AddCommand(authCmd.NewAuthCmd(tr)) rootCmd.AddCommand(apiCmd.NewAPICmd(tr)) diff --git a/doc/changes/output-query.md b/doc/changes/output-query.md index 4c741a8..d1a9d49 100644 --- a/doc/changes/output-query.md +++ b/doc/changes/output-query.md @@ -1,4 +1,4 @@ -# 全局 `--query`/`-q` 输出字段提取 +# 全局 `--jq` 输出字段提取 ## 动机 @@ -9,9 +9,9 @@ ## 行为 -- 新增全局持久 flag `--query` / `-q`,对所有命令生效。 +- 新增全局持久 flag `--jq`,对所有命令生效(不占用 `--query`,与 api 子命令的查询参数 flag 无冲突)。 - 路径语法:点分段;段为对象键,或非负整数作为数组下标。 - 例:`-q data.commits.0.sha`、`-q data.total_issues_count`。 + 例:`--jq data.commits.0.sha`、`--jq data.total_issues_count`。 - 标量(字符串/数字/布尔/null)输出裸值,方便 shell 管道直接消费; 对象与数组输出缩进 JSON。 - 错误信息可操作:键不存在时列出该层全部可用键(排序后); @@ -19,9 +19,9 @@ ## 生产实测 -- `issue +list --limit 2 -q data.issues.0.subject` → 裸标题字符串 -- `issue +list -q data.total_issues_count` → `4197` -- 误键 `-q data.issues.0.name` → 报错并列出 29 个可用键(含 `subject`) +- `issue +list --limit 2 --jq data.issues.0.subject` → 裸标题字符串 +- `issue +list --jq data.total_issues_count` → `4197` +- 误键 `--jq data.issues.0.name` → 报错并列出 29 个可用键(含 `subject`) ## 测试 diff --git a/internal/i18n/locales/en-US.json b/internal/i18n/locales/en-US.json index d734711..19e947c 100644 --- a/internal/i18n/locales/en-US.json +++ b/internal/i18n/locales/en-US.json @@ -171,6 +171,7 @@ "flag.issue.status_id": "Issue status ID", "flag.issue.tag_ids": "Comma-separated issue tag IDs", "flag.issue.title": "Issue title", + "flag.jq": "Extract a value from the output by dot-separated path (e.g. data.commits.0.sha)", "flag.lang": "Display language", "flag.limit": "Items per page", "flag.org.id": "Organization ID", @@ -200,7 +201,6 @@ "flag.profile.start_time": "Start time (Unix timestamp)", "flag.profile.user": "Target user login (defaults to the authenticated user)", "flag.profile.year": "Year for the contribution heatmap (e.g. 2025)", - "flag.query": "Extract a value from the output by dot-separated path (e.g. data.commits.0.sha)", "flag.release.body": "Release notes", "flag.release.id": "Release ID", "flag.release.id_or_tag": "Release ID or tag", diff --git a/internal/i18n/locales/zh-CN.json b/internal/i18n/locales/zh-CN.json index 8b274be..f277155 100644 --- a/internal/i18n/locales/zh-CN.json +++ b/internal/i18n/locales/zh-CN.json @@ -171,6 +171,7 @@ "flag.issue.status_id": "议题状态 ID", "flag.issue.tag_ids": "逗号分隔的议题标签 ID", "flag.issue.title": "议题标题", + "flag.jq": "按点分路径从输出中提取字段(如 data.commits.0.sha)", "flag.lang": "显示语言", "flag.limit": "每页条目数", "flag.org.id": "组织 ID", @@ -200,7 +201,6 @@ "flag.profile.start_time": "开始时间(Unix 时间戳)", "flag.profile.user": "目标用户登录名(默认为当前认证用户)", "flag.profile.year": "贡献热力图的年份(如 2025)", - "flag.query": "按点分路径从输出中提取字段(如 data.commits.0.sha)", "flag.release.body": "发布说明", "flag.release.id": "发布 ID", "flag.release.id_or_tag": "发布 ID 或标签",