I have a similar alias for borkdude’s ‘jet’ tool.
The extra nice thing about jet is you can convert json into edn, then pipe it into an inline babashka repl where you can inspect the object with all the power of clojure. It is super duper nice for quickly looking through hunks (even huge hunks) of json. You can sum things up, filter through thousands of elements, generate a json schema with malli, whatever you want!
I use similar approach for fixing up clipboard contents with
tr '\n' ' ' | sed 's/\t/ /g; s/ */ /g'
But also I switched to xsel at one point, as xclip doesn't seem to deal as well with unicode. It could be xclip has been fixed since then, though.
I have this as a bash script and a some similar bash and python scripts for converting between python's print(my_dict) and json, or to run some python (mostly the dicts) through black.
The j2p is pretty self-evident if you know any python, and the only trick to p2j was knowing `ast.literal_eval(input_str)`.
Should be print(repr(my_dict)) in case my_dict is actually a string, or you'd have an injection attack
A universal tool (well, since I use Windows, a Windows tool) to modify the clipboard would be cool.
So, copy text to clipboard, press a hotkey to popup the menu, and it'll offer options depending on the detected text. For example changing the clipboard contents to prettified (if it detects JSON, XML, HTML), or formatting a number back and forth (e.g. working with SSN's out of numerical DB entries when they prefer AAA-GG-SSSS).
I like the version where it throws the error. That way I will realize I might not have copied the right JSON (or forgotten to copy)
Cool idea! I think it would look better as a function than an alias, but that doesn’t matter much.
There is also:
- xq for xml
- yq for yaml
yq can do a lot more than just yaml:
> yq is a portable command-line YAML, JSON, XML, CSV, TOML, HCL and properties processor
I didn't even know such a tool existed until Opus used it.
Not mine, just very useful