-
-
Save chales/510c5bed59a32ed0cb55 to your computer and use it in GitHub Desktop.
2016/03/15 | |
Tested with BBEdit 11.5 / OS X 10.11.3 / Python 2.7.10 | |
http://grokin.gs/blog/elegant-json-pretty-print-for-bbedit/ | |
Place the script (or a link to this script) in the ~/Library/Application Support/BBEdit/Text Filters directory | |
Restart BBEdit. | |
The new filter should be under: "Test > Apply Text Filter > bbedit-pretty-json" |
#!/bin/bash | |
python -c "import sys, json; print json.dumps(json.load(sys.stdin), indent=2)" |
If you have jq
installed (which could be simply done via homebrew brew install jq
), then the Format JSON filter could be as simple as
#!/bin/bash
jq .
Environment:
macOS Sonoma 14.5 (23F79)
BBEdit version 15.0.3 (15A102, 64-bit Intel)
Using the current version some UTF-8 characters are returned encoded:
in: "forsøg"
out: "fors\u00f8g"
I have verified, that the BBEdit document is in fact using UTF-8 encoding. Any clues?
Environment: macOS Sonoma 14.5 (23F79) BBEdit version 15.0.3 (15A102, 64-bit Intel)
Using the current version some UTF-8 characters are returned encoded: in: "forsøg" out: "fors\u00f8g"
I have verified, that the BBEdit document is in fact using UTF-8 encoding. Any clues?
Solved: add ", ensure_ascii=False" to the json.dumps command:
#!/bin/bash
python3 -c "import sys, json; print (json.dumps(json.load(sys.stdin), indent=2, ensure_ascii=False))"
I concur with @michaldobisek in that jq is a much more elegant way to go, especially since python is no longer installed on macOS with the developer tools.
I've updated the gist I maintain with this approach: https://gist.github.com/levigroker/3777091
@maccer83 - Thank you. This fixed it for me.