[小ネタ] AlfredでJSONをpretty print する

alfredのRunScriptとjqを使ってJSONをフォーマットするワークフローを作成しました。
2021.01.15

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

Web APIの開発やAWS CLIを使っていると日々コンソールやブラウザに出力されるJSONを眺めるわけですが、コンパクトなJSONを眺めるのは人類には難しいです。そこでAlfredのワークフロー一発でpretty printできるようにしてみました。

ワークフロー

もうなんだかワークフローの図から出落ちですが、ワークフローは以下の2つで構成します。

  1. Keywordでワークフローをトリガーする
  2. Run Scriptでクリップボード内のJSONをフォーマットし、クリップボードに格納する

スクリプト

以下のようになります。

jqを絶対パスで指定しているのはBASHのプロファイルではパスが通っていなかったからです。

pbpaste | /usr/local/bin/jq . | pbcopy

デバッグ

ワークフロー実行時に発生したエラーなどはワークフローのデバッグウィンドウで確認できます。

最初スクリプトでjqのパスが通っていないのに気づかなかったのですが、デバッグウィンドウを表示して実行することでエラーに気づきました。

まとめ