Show HN: Interactive jq, but it's a bash script using fzf

gist.github.com

3 points by thomascountz 9 hours ago

I was searching for an interactive jq editor when I came across this repo [1], which had an intriguing suggestion for a CLI using only fzf:

echo '' | fzf --print-query --preview "cat *.json | jq {q}"

This sent me down a rabbit hole, and I discovered just how incredibly configurable fzf is.

For instance:

- `--bind=ctrl-y:execute-silent(jq {q} $tempfile | pbcopy)`: You can bind custom keys to execute non-default behaviors, like copying the current selection or `echo`-ing.

- `--query="."`: Start fzf with an initial query (e.g., `.` for jq queries) to streamline the experience.

- `--preview-window=top:90%:wrap`: You can configure fzf into different layouts, behaviors, and ANSI colors.

- `--header=$'ctrl+y : copy JSON\nctrl+f : copy filter\nenter : output\nesc : exit' \`: fzf supports multi-line header to provide instructions or context for the user right in the interface.

[1]: https://github.com/fiatjaf/awesome-jq?tab=readme-ov-file#com...

swah 5 hours ago

Great idea, hope I remember to try next time :)