ヽ(´・肉・`)ノログ

How do we fighting without fighting?

Emacsで選択した範囲のJSONを整形する方法

./json_pretty_print.gif

HTTP のレスポンスで返ってきた 1 行になっている JSON をインデントをつけて眺めたいことがある.とても簡単にできることがわかった.

条件

コマンドラインから json 整形できるツール.今回は jq を利用した.

やり方

  1. JSON を Ctrl-Space で範囲選択する
  2. C-u M-| とキーを押す
  3. ミニバッファに jq . と入力する
  4. 完成

解説

M-| で呼び出されるコマンド shell-command-on-region はEmacsで選択している範囲を標準入力としてコマンドを呼び出し,出力をミニバッファに表示する.

C-u つきで M-| を使うと,Emacs で選択している範囲を標準入力としてコマンドを呼び出し,出力で置換することになる.