なんでこんなに放置プレーになっているかというと、 途中で JSON の仕様を勘違いしていることに気づいたから。
しかし、そろそろ初心に戻ろうと、今年は少し進展させたい。
と言うことで、しっかり JSON の仕様を理解して(ると思う)、 このプラグインの入出力の鍵となる各ファイルの形式をもう一度見直した結果。
まず categories_index.json 。
[ { "directory": "/home/public_html/devlosxom/data", "count": 7 }, { "directory": "/home/public_html/devlosxom/data/About", "count": 2 }, { "directory": "/home/public_html/devlosxom/data/Doc", "count": 4 }, { "directory": "/home/public_html/devlosxom/data/Doc/Idea", "count": 1 }, { "directory": "/home/public_html/devlosxom/data/Plugin", "count": 1 }, { "directory": "/home/public_html/devlosxom/data/Plugin/Spec", "count": 1 } ]次 categories_alias.json(categories.alias) 。
[ { "directory": "/home/public_html/devlosxom/data/About", "alias": "このブログについて" }, { "directory": "/home/public_html/devlosxom/data/Doc", "alias": "ドキュメント" }, { "directory": "/home/public_html/devlosxom/data/Doc/Idea", "alias": "アイデア" }, { "directory": "/home/public_html/devlosxom/data/Doc/Resources", "alias": "参考資料・メモ" }, { "directory": "/home/public_html/devlosxom/data/Plugin", "alias": "プラグイン" }, { "directory": "/home/public_html/devlosxom/data/Plugin/Spec", "alias": "仕様" } ]最後に archives_index.json 。
[ { "year": 2007, "count": 7 }, { "year": 2007, "month": 5, "count": 1 }, { "year": 2007, "month": 5, "day": 4, "count": 1 }, { "year": 2007, "month": 4, "count": 2 }, { "year": 2007, "month": 4, "day": 18, "count": 1 }, { "year": 2007, "month": 4, "day": 7, "count": 1 }, { "year": 2007, "month": 3, "count": 3 }, { "year": 2007, "month": 3, "day": 24, "count": 1 }, { "year": 2007, "month": 3, "day": 3, "count": 1 }, { "year": 2007, "month": 3, "day": 2, "count": 1 }, { "year": 2007, "month": 2, "count": 1 }, { "year": 2007, "month": 2, "day": 26, "count": 1 }, { "count" : 7 } ]このデータ形式を元にコード書き直し。
どこまでコードを使い回さなければならないかもだいたい見えたので、 ちょっとまじめにプログラム構造を考え直そうかと思っています。
ただすぐにコーディングに入らない理由が一つ。 archives_index.json のデータを内部的にどういう構造で扱うかというところで、 ひらめきがない。。。これがひらめいたら。。。今年はちょっと進むと思うな > gin プラグイン