Add --json output flag for batch query results
- 主要语言
- Python
- 星标
- 3.3k
- 派生
- 95
- PR 合并指标
- 30 天内没有已合并 PR
描述
### Problem
`litecli` already supports `--csv` and `--table` for batch output (used with `-e` and stdin queries), but it has no equivalent `--json` flag. The underlying `cli_helpers` library already ships a `json_output_adapter.py`, so the formatter is available — only the CLI flag is missing.
### Solution
Add a `--json` flag parallel to the existing `--csv` and `-t`/`--table` options on the root `cli` command. In the `-e` and stdin branches of `litecli/main.py`, set `litecli.formatter.format_name = "json"` next to the existing `format_name = "csv"` / `"tsv"` assignments. The change should be ~5 lines.
A `table_format = "json"` entry could also be accepted in `~/.config/litecli/config`, mirroring the existing `table_format = "csv"` knob.
### Use case
Scripting and CI pipelines:
litecli mydb.sqlite -e "select id, name from users" --json | jq '.[] | select(.name | startswith("a"))'
…instead of having to pipe `--csv` through `jq -r '@csv'` round-tripping.
贡献指南
调研方向
Start in litecli/main.py and inspect the root cli options plus the existing --csv and --table handling in the -e and stdin branches. Confirm how litecli.formatter.format_name is assigned, then verify that --json appears in help and produces JSON for both batch entry points using the example query; the optional config entry should mirror the existing table_format setting.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- python, sqlite
- 领域
- cli
- Issue 类型
- 功能
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 活跃度
- 冷清
- 描述清晰度
- 描述清楚
- 新手友好度
- 84/100