はてなダイアリーからはてなブログへの移行で、手直ししたこと・諦めたこと

はてなダイアリー終了が近づいているため、はてなブログに移行したことは、先日も書いた。

www.toyfish.blog

それ以降に、記事を手直ししたことと、諦めたことをメモしておく。

手直ししたこと

はてな記法で書いていた記事は、そのままはてなダイアリーからはてなブログにインポートされた。

はてなブログでもはてな記法は一応サポートされているので、リンクや装飾も概ねそのまま残ってくれた。

ただし、仕様に違いがあるようで、以下の点については、過去記事を総なめして手動で手直しを行った。

定義リスト記法中の [] でのエスケープが無視される

定義リストは :用語:説明 の形式で書けるが、用語の部分に : が含まれている場合、用語全体を [] で囲むことでエスケープできていた。

はてなブログではこれがサポートされておらず、表示が崩れてしまったため、HTML の dl/dt/dd 要素を直接書くかたちに直した。

手直し前
:[]Jumanji: Welcome to the Jungle[]:ジュマンジ/ウェルカム・トゥ・ジャングル
:[]Beast Wars: Transformers[]:ビーストウォーズ 超生命体トランスフォーマー
手直し後
<dl>
<dt>Jumanji: Welcome to the Jungle[]</dt>
<dd>ジュマンジ/ウェルカム・トゥ・ジャングル</dd>
<dt>Beast Wars: Transformers</dt>
<dd>ビーストウォーズ 超生命体トランスフォーマー</dd>
</dl>

id 記法のリンクが切れる

id 記法を使うと、はてなダイアリー内の特定の日記や、特定の日付、あるいは、特定の記事へのリンクを簡単に表現できていた。

id:sardine
id:sardine:20181006
id:sardine:20181006#p1
id:sardine:20181006:p1

はてなブログでは、1 ユーザが複数のブログを持てるようになったためか、日付や記事を指定していても、id:<ユーザ名>の部分にしか自動リンクが生成されない上、そのリンク先はダイアリーやブログではなく、ユーザのプロフィールページになってしまった。

仕方がないので、ひとつひとつリンク先を確認して、普通のリンクや、リンクカードで置き換えた。

僕は、自分の過去記事に言及するときに id 記法を頻用していたので、対象箇所が意外と多かった。

YouTube 動画の埋め込みが消える

YouTube 動画を埋め込んでいた箇所は、プレイヤーが表示されなくなっていた。記法が変わっているため、:movie の部分を :embed:cite に置き換える必要があった。

プレイヤーのサイズは、はてなダイアリーでは 4:3 固定だったのに対し、はてなブログでは可変になったので、横長の動画も埋め込みやすくなった。

なお、同じ動画でも、ニコニコ動画のは変更しなくても大丈夫だった。謎。

手直し前
[http://www.youtube.com/watch?v=f-VLvAnWthw:movie]
手直し後
[http://www.youtube.com/watch?v=f-VLvAnWthw:embed:cite]

blockquote 要素の cite・title 属性が無視される

はてなダイアリーでは、blockquote 要素に属性を付けて書くと、引用記法と同様に引用元を示すことができた。

はてなブログでは引用元が表示されなかったため、引用記法に置き換えた。

ついでに、他のブログを参考にして、引用表記を右寄せにするようCSSカスタマイズも入れた。

手直し前
<blockquote cite="https://example.com/" title="Example Domain">
This domain is established to be used for illustrative examples in documents.
</blockquote>
手直し後
>https://example.com/:title=Example Domain>
This domain is established to be used for illustrative examples in documents.
<<

Twitter ツイートの埋め込みが崩れる

twitter 記法で埋め込んだツイートについて、情報自体はちゃんと表示されているが、見た目が崩れて見づらくなっていた。

ツイートのURLを調べて貼り直した。

手直し前
twitter:15109130116:detail
手直し後
[https://twitter.com/newmst/status/15109130116:embed]

諦めたこと

移行できないデータ

はてなブログが対応していないデータは、はてなダイアリーから移行することができなかった。

自分の書いた記事が当時どのように読まれていたかがわかる貴重なデータなので、消えてしまうのは残念だ。ただ、そんなに過去のデータを見返したりしてたわけじゃないので、今後もあっても見ないだろうということで、すっぱり諦めた。

日記モードでの表示がなくなった

はてなダイアリーはその名の通り「日記」のサービスとして始まったので、その日付のページを開くと、その日に書いた記事の全文が表示されていた。

のちに、大見出しごとに別ページとして表示するブログモードが追加されたけど、僕は日記モードのまま使っていた。

はてなブログへ移行すると、はてなダイアリーへのアクセスもはてなブログにリダイレクトしてもらうことができるんだけど、日付ごとのページからのリダイレクト先は、記事のページではなくて、日付ごとの記事一覧ページになっているようだ。

例えば過去に自分の記事をツイートしてくれた人がいるとして、

このツイートに書かれているリンク http://d.hatena.ne.jp/sardine/20090626 のリダイレクト先は、全文をすぐ読めるように記事のページ https://www.toyfish.blog/entry/20090626/p1 になってほしいところだ。

でも、実際には、この日付の記事一覧ページ https://www.toyfish.blog/entries/2009/06/26 にリダイレクトされてしまう。

Twitter からジャンプしてきた人がいたとしても、一覧ページで記事を選び直さないと本文が読めない。人によっては、すぐさま戻るボタンに手がのびてしまいそうだ。

ちなみに、どの記事かわかるように末尾に足して http://d.hatena.ne.jp/sardine/20090626/p1 にしてみても、リダイレクト先はやはり一覧ページになってしまうようだ。日記モードだからなのか、ブログモードでも同じなのかは、試してないので不明。

この際自分自身はどうでもよくて、見にきた人が不便になるのが嫌なんだけど、今のところ対策できてない。JavaScript で「一覧ページに 1 記事しかなかったら強制的にジャンプさせる」ということはできそうだけど、はてなブログのシステムからの乖離が大きくなると、別の何かに副作用がありそうで、断念した。