c4se記:さっちゃんですよ☆

.。oO(さっちゃんですよヾ(〃l _ l)ノ゙☆)

.。oO(此のblogは、主に音樂考察Programming に分類されますよ。ヾ(〃l _ l)ノ゙♬♪♡)

音樂は SoundCloud に公開中です。

考察は現在は主に Scrapbox で公表中です。

Programming は GitHub で開發中です。

JSONを整形してからdiffをとるtool、diff-with-jsonを作った

JSON を整形してから diff をとる tool、diff-with-json を作った。

github.com JSON を jq command に通して整形し、colordiff が在れば其れを、無ければ diff を使って差分を表示する。

次の a1.json と a2.json が在ったとしやう。

// a1.json
{ "m": 42, "n": 57 }
// a2.json
{ "m": 42, "n": "parrot" }

.n を 57 から"parrot"に変へたものだ。此れを diff で diff -u -L a1.json -L a2.json a1.json a2.json として差分を出すと斯う成って了ふ。

--- a1.json
+++ a2.json
@@ -1 +1 @@
-{"m":42,"n":57}
+{"m":42,"n":"parrot"}

JSON の構造は全く無視される。代はりに diff-with-json を使へば diff-with-json -L a1.json -L a2.json a1.json a2.json として、

--- a1.json
+++ a2.json
@@ -1,4 +1,4 @@
 {
   "m": 42,
-  "n": 57
+  "n": "parrot"
 }

JSON の構造を保った差分が見られる。

情報を JSON で、一行に圧縮して Git や SVN に入れてゐる場合に好く使へる。特に svn diff と共に使ふ樣に作ってある。svn diff --diff-cmd diff-with-json と--diff-cmd option として diff-with-json を指定してやれば、SVN に一行にして格納してゐる JSON の差分が見易い。

使ふ時は jq command と、diff 或いは colordiff command が必要だ。

Crystal で作った。