はてなブログでは当面こうやって長年日記を読むことにした

去年の今日の日記、おととしの今日の日記、3年前の今日の日記というふうに、過去の日記を日付で串刺し表示する機能を「長年日記」という。Web上に限らず長期間日記をつけていると、自分があとで読み返して楽しめる。ふり返りの契機として1年おきというのはほどよく忘れていてちょうどよく、はてなダイアリーでは長年日記機能を愛用していた。という話を以前書いた。

さて、はてなダイアリーには長年日記機能があったが、はてなブログに同等の機能はない。一応要望も出してはいるものの、実装は望み薄とも思っている。じゃあ自分でなんとかできないかと考えて以下のようなことを書いた。

はてなブログでは長年日記機能がなくなってしまったが、はてなブログライターを使っていれば長年日記的な運用ができるというアイデアはある。

今日のエントリのテキストファイル(????-02-19_??.txt)を集めて、任意の年(西暦1000年とか)の2月19日分として登録する。http://ima.hatenablog.jp/entries/2003/02/19のようなURL(途中が「archive」ではなく「entries」)にアクセスすればその日の各エントリの冒頭ではなく全文が表示されるから、http://ima.hatenablog.jp/entries/1000/02/19を見ればその日の長年日記をまとめて読めるというわけ。そういうスクリプトを書こうと思っているが、なかなか手が回らない。

さらばはてなダイアリー - ただいま村

はてなブログライターの使い方は以下を参照。

上のようなスクリプトを作りたくても「なかなか手が回らない」状況は今も変わらず、でもブックマークレットを使って長年日記を読めるアイデアが出てきた。これならわりとすぐに実装できる。できた。

上でも引用したようにはてなブログには、ページ上の日付をクリックして行くその日のエントリ一覧(例:http://ima.hatenablog.jp/archive/2016/12/16)とは別に、その日のエントリをまとめて全文表示するURL(例:http://ima.hatenablog.jp/entries/2016/12/16)もある。今日の日付をもとに年月日を指定したURLへ移動できれば、ある年の今日の記事をまとめ読みできる。これだと長年日記をすべての年のぶんまとめて表示できるわけではないが、ひとまずここへ行けるブックマークレットを作ろう。

さらに、そのURLから前の年や次の年へ移動するブックマークレットを作ればいい。

ということで、6つのブックマークレットを作った。

  1. 特定のはてなブログの、去年の今日の記事を全文表示する
  2. いま見ているはてなブログの、去年の今日の記事を全文表示する
  3. 前年同日のはてなブログを全文表示する
  4. 特定のはてなブログの、2013年の今日の記事を全文表示する
  5. いま見ているはてなブログの、2013年の今日の記事を全文表示する
  6. 翌年同日のはてなブログを全文表示する

特定のはてなブログの、去年の今日の記事を全文表示する

今日の長年日記をさかのぼって読みたい人向け。スクリプト内のURLに書かれたはてなブログの、去年の今日の記事をまとめて表示します。スクリプト内のURLを任意に変更してご利用ください。その前の年へさかのぼりたいときはhttp://let.hatelabo.jp/Imamura/let/g5G3garB1dlyを、特定のはてなブログについて任意の年の今日の記事を表示したい場合はhttp://let.hatelabo.jp/Imamura/let/hLHXga2DwJ0Vを、いま見ているはてなブログの去年の今日の記事を表示したい場合はhttp://let.hatelabo.jp/Imamura/let/hLHXgaqN4JUQをご利用ください。

【長年日記】特定のはてなブログの、去年の今日の記事を全文表示する - Hatena::Let

↓タイトル部をブックマークへドラッグ&ドロップすると登録できます。スマートフォンだと、いったん適当なページをブックマークしてからそのブックマークの「編集」に入り、URLを下の「javascript:~();」に入れ替えます。登録されたブックマークを選択するとブックマークレットが起動して、目的の動作をしてくれます。


/*
 * @title 【長年日記】特定のはてなブログの、去年の今日の記事を全文表示する
 * @description 今日の長年日記をさかのぼって読みたい人向け。スクリプト内のURLに書かれたはてなブログの、去年の今日の記事をまとめて表示します。スクリプト内のURLを任意に変更してご利用ください。その前の年へさかのぼりたいときはhttp://let.hatelabo.jp/Imamura/let/g5G3garB1dlyを、特定のはてなブログについて任意の年の今日の記事を表示したい場合はhttp://let.hatelabo.jp/Imamura/let/hLHXga2DwJ0Vを、いま見ているはてなブログの去年の今日の記事を表示したい場合はhttp://let.hatelabo.jp/Imamura/let/hLHXgaqN4JUQをご利用ください。
 * @include http://*
 * @license MIT License
 * @require
 */

javascript:(function(){var date=new Date();var yy=String(date.getFullYear() - 1);var mm="0" + String(date.getMonth() + 1);var dd="0" + String(date.getDate());var mm=(mm.substr(mm.length - 2 , 2));var dd=(dd.substr(dd.length - 2 , 2));location.href="http://ima.hatenablog.jp/entries/"+yy+"/"+mm+"/"+dd;})();

いま見ているはてなブログの、去年の今日の記事を全文表示する

今日の長年日記をさかのぼって読みたい人向け。はてなブログ独自ドメイン可)を見ている状態で実行すると、去年の今日の記事をまとめて表示します。その前の年へさかのぼりたいときはhttp://let.hatelabo.jp/Imamura/let/g5G3garB1dlyを、任意の年の今日の記事を表示したい場合はhttp://let.hatelabo.jp/Imamura/let/hLHXgamKze9pをご利用ください。

【長年日記】いま見ているはてなブログの、去年の今日の記事を全文表示する - Hatena::Let


/*
 * @title 【長年日記】いま見ているはてなブログの、去年の今日の記事を全文表示する
 * @description 今日の長年日記をさかのぼって読みたい人向け。はてなブログ(独自ドメイン可)を見ている状態で実行すると、去年の今日の記事をまとめて表示します。その前の年へさかのぼりたいときはhttp://let.hatelabo.jp/Imamura/let/g5G3garB1dlyを、任意の年の今日の記事を表示したい場合はhttp://let.hatelabo.jp/Imamura/let/hLHXgamKze9pをご利用ください。
 * @include http://*
 * @license MIT License
 * @require
 */

javascript:(function(){if(location.href.match(/^(https?:\/\/[^\/]+\/).*/))var date=new Date();var yy=String(date.getFullYear() - 1);var mm="0" + String(date.getMonth() + 1);var dd="0" + String(date.getDate());var mm=(mm.substr(mm.length - 2 , 2));var dd=(dd.substr(dd.length - 2 , 2));location.href=RegExp.$1+"entries/"+yy+"/"+mm+"/"+dd;})();

前年同日のはてなブログを全文表示する

長年日記をさかのぼって読みたい人向け。はてなブログ独自ドメイン可)で「http(s)://~/entries/yyyy/mm/dd」というURLを表示しているときに実行すると、前の年の同じ日へ移動します。http://let.hatelabo.jp/Imamura/let/g5G3ga2b08kOhttp://let.hatelabo.jp/Imamura/let/hLHXgaqN4JUQのあとに実行することを想定しています。

【長年日記】前年同日のはてなブログを全文表示する - Hatena::Let


/*
 * @title 【長年日記】前年同日のはてなブログを全文表示する
 * @description 長年日記をさかのぼって読みたい人向け。はてなブログ(独自ドメイン可)で「http(s)://~/entries/yyyy/mm/dd」というURLを表示しているときに実行すると、前の年の同じ日へ移動します。http://let.hatelabo.jp/Imamura/let/g5G3ga2b08kOやhttp://let.hatelabo.jp/Imamura/let/hLHXgaqN4JUQのあとに実行することを想定しています。
 * @include http://*
 * @license MIT License
 * @require
 */

javascript:(function(){var url = location.href.match(/(https?:\/\/[^\/]+\/entries\/)(\d{4})(\/\d\d\/\d\d)/);location.href=url[1]+(--url[2])+url[3];})();

特定のはてなブログの、2013年の今日の記事を全文表示する

今日の長年日記を過去分から読みたい人向け。スクリプト内のURLに書かれたはてなブログの、2013年の今日の記事をまとめて表示します。スクリプト内のURLや「/2013/」を任意に変更してご利用ください。次の年へ移動したいときはhttp://let.hatelabo.jp/Imamura/let/hLHXgaq-k5Fsを、特定のはてなブログについて去年の今日の記事を表示したいときはhttp://let.hatelabo.jp/Imamura/let/g5G3ga2b08kOを、今見ているはてなブログについて2013年の今日の記事を表示したいときはhttp://let.hatelabo.jp/Imamura/let/hLHXgamKze9pをご利用ください。

【長年日記】特定のはてなブログの、2013年の今日の記事を全文表示する - Hatena::Let


/*
 * @title 【長年日記】特定のはてなブログの、2013年の今日の記事を全文表示する
 * @description 今日の長年日記を過去分から読みたい人向け。スクリプト内のURLに書かれたはてなブログの、2013年の今日の記事をまとめて表示します。スクリプト内のURLや「/2013/」を任意に変更してご利用ください。次の年へ移動したいときはhttp://let.hatelabo.jp/Imamura/let/hLHXgaq-k5Fsを、特定のはてなブログについて去年の今日の記事を表示したいときはhttp://let.hatelabo.jp/Imamura/let/g5G3ga2b08kOを、今見ているはてなブログについて2013年の今日の記事を表示したいときはhttp://let.hatelabo.jp/Imamura/let/hLHXgamKze9pをご利用ください。
 * @include http://*
 * @license MIT License
 * @require
 */

javascript:(function(){var date=new Date();var mm="0" + String(date.getMonth() + 1);var dd="0" + String(date.getDate());var mm=(mm.substr(mm.length - 2 , 2));var dd=(dd.substr(dd.length - 2 , 2));location.href="http://ima.hatenablog.jp/entries/2013/"+mm+"/"+dd;})();

いま見ているはてなブログの、2013年の今日の記事を全文表示する

今日の長年日記を過去分から読みたい人向け。はてなブログ独自ドメイン可)を見ている状態で実行すると、2013年の今日の記事をまとめて表示します。スクリプトの末尾近くの「/2013/」は表示する年を示しており、任意の数字に変更して使えます。次の年へ移動したいときはhttp://let.hatelabo.jp/Imamura/let/hLHXgaq-k5Fsを、去年の今日の記事を表示したいときはhttp://let.hatelabo.jp/Imamura/let/hLHXgaqN4JUQをご利用ください。

【長年日記】いま見ているはてなブログの、2013年の今日の記事を全文表示する - Hatena::Let


/*
 * @title 【長年日記】いま見ているはてなブログの、2013年の今日の記事を全文表示する
 * @description 今日の長年日記を過去分から読みたい人向け。はてなブログ(独自ドメイン可)を見ている状態で実行すると、2013年の今日の記事をまとめて表示します。スクリプトの末尾近くの「/2013/」は表示する年を示しており、任意の数字に変更して使えます。次の年へ移動したいときはhttp://let.hatelabo.jp/Imamura/let/hLHXgaq-k5Fsを、去年の今日の記事を表示したいときはhttp://let.hatelabo.jp/Imamura/let/hLHXgaqN4JUQをご利用ください。
 * @include http://*
 * @license MIT License
 * @require
 */

javascript:(function(){if(location.href.match(/^(https?:\/\/[^\/]+\/).*/))var date=new Date();var mm="0" + String(date.getMonth() + 1);var dd="0" + String(date.getDate());var mm=(mm.substr(mm.length - 2 , 2));var dd=(dd.substr(dd.length - 2 , 2));location.href=RegExp.$1+"entries/2013/"+mm+"/"+dd;})();

翌年同日のはてなブログを全文表示する


長年日記を過去から読みたい人向け。はてなブログ独自ドメイン可)で「http(s)://~/entries/yyyy/mm/dd」というURLを表示しているときに実行すると、次の年の同じ日へ移動します。http://let.hatelabo.jp/Imamura/let/hLHXga2DwJ0Vhttp://let.hatelabo.jp/Imamura/let/hLHXgamKze9pのあとに実行することを想定しています。

【長年日記】翌年同日のはてなブログを全文表示する - Hatena::Let
/*
 * @title 【長年日記】翌年同日のはてなブログを全文表示する
 * @description 長年日記を過去から読みたい人向け。はてなブログ(独自ドメイン可)で「http(s)://~/entries/yyyy/mm/dd」というURLを表示しているときに実行すると、次の年の同じ日へ移動します。http://let.hatelabo.jp/Imamura/let/hLHXga2DwJ0Vやhttp://let.hatelabo.jp/Imamura/let/hLHXgamKze9pのあとに実行することを想定しています。
 * @include http://*
 * @license MIT License
 * @require
 */
javascript:(function(){var url = location.href.match(/(https?:\/\/[^\/]+\/entries\/)(\d{4})(\/\d\d\/\d\d)/);location.href=url[1]+(++url[2])+url[3];})();

これで自分のはてなブログ長年日記を読んだり、好きなブログの長年日記を読んだりできるようになった。さっそく「マイル日記」(http://salucoro-mile.hatenadiary.jp/)の長年日記を読んでムフフとなった。こういう育児系ブログは去年、おととし…と見ていく楽しみが特に大きい。