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.
Problem
liteclialready supports--csvand--tablefor batch output (used with-eand stdin queries), but it has no equivalent--jsonflag. The underlyingcli_helperslibrary already ships ajson_output_adapter.py, so the formatter is available — only the CLI flag is missing.Solution
Add a
--jsonflag parallel to the existing--csvand-t/--tableoptions on the rootclicommand. In the-eand stdin branches oflitecli/main.py, setlitecli.formatter.format_name = "json"next to the existingformat_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 existingtable_format = "csv"knob.Use case
Scripting and CI pipelines:
…instead of having to pipe
--csvthroughjq -r '@csv'round-tripping.