fix(output): 全局提取 flag 改名 --jq,避免与 api 子命令 --query(查询参数)语义冲突
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
This commit is contained in:
parent
497bd6a071
commit
4913cf5319
|
|
@ -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))
|
||||
|
|
|
|||
|
|
@ -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`)
|
||||
|
||||
## 测试
|
||||
|
||||
|
|
|
|||
|
|
@ -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",
|
||||
|
|
|
|||
|
|
@ -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 或标签",
|
||||
|
|
|
|||
Loading…
Reference in New Issue