Posted at

(自分は)ノンプログラミングでMovableType形式のファイルをHexoのマークダウン形式ファイルに変換した話


ノンセキュア接続のブログサービスはもういや


俺はライブドアブログをやめるぞジョジョォォォォ

はい、言ってみたかっただけです。ジョジョはネタしか知りませんのでここまで。

というわけで、ブログのお引っ越しです。いままで使ったことのある、はてなブログ、FC2ブログ、Seesaaブログ、アメーバブログとかに戻ろうかと思いましたが、どれもこれも中途半端なサービス状況で、はてなブログで「httpsを有効にする」って設定があって、「これかー」と思って押してみたら画像がhttpのままでアカン状態に…。新しく始めるのならばこれでいいんでしょうけどねぇ(きっとメディアもhttpsになってくれる)…。

吟味に吟味を重ね、HugoではなくHexoでGithub Pagesに移行しましょうと言う形なりました。なんでHexoかって言うと「1回使ったことがある」、それだけです。言うてどっちもマークダウンで書いていくし変わんないだろーとフラグを立てるわたくし。


だいたいのブログサービスのエクスポートはMT形式

そう、MovableType形式なのです。これを機に全部のいままでの全部の作ったブログサービスからエクスポートしてマージしようとして、はてなブログもライブドアブログもFC2ブログもSeesaaブログもMT形式。CMSマーケットシェアがワードプレスで6割いくらしいこのご時世にそろいもそろってMovableType!まあ、ブログシステムの先駆者でしたからね、MovableType。


さあて、Hexo形式に変換するぞってあれ…

MT形式→Hugo形式のプログラムはあったが、Hexoに変換してくれる物がない…。同じだろーって変換を掛ける。無事Hugo形式のマークダウンファイルが多数できました。Hexoのホームディレクトリにズガンとぶち込み$ hexo deploy -g!!!!!いえーい!!もう終わり!……と思ったが甘かった。表示がなんか変。


HugoとHexoではタイトル周りの書き方が違った

Hugoだと

+++

title = hogehoge
date = YYYYMMDD
あとはタグみたいないろいろメタデータ
+++

みたいになるんです。ですが、Hexoだと

---

title: hogehoge
date: YYYYMMDD
あとはタグみたいないろいろメタデータ
---

こうなるわけです。マークダウンにも方言があるとは聞いていたが…。諦めてHugoにするかと思いはしたがなんかここまで来て折れるのもイヤだなーと思い。


秀丸でGREPして置換

別に複数ファイルに対して一括置換できるならなんでもいいんでしょうけど、たまたま秀丸にそういう機能があったのでそれを使ってみました。

まずは+++---に置換。そして=:に置換。

こんどこそやったーと思ってhexo deploy -g!!!!

あ…。


AタグのHREF、IMGタグのSRCの=まで:にしていた

もちろんリンクも機能しないし、画像もでない。一筋縄ではいかないなー。

href:href=に、src:src=に置換。

いえーす!hexo deploy -g!!!!!


リソース泥棒になっていた

よくよくページを見ていると、画像の配置先がライブドアのままになっていました。これは良くない。imagesディレクトリに画像を保存し、IMGタグのソースをライブドアのサーバーからimagesディレクトリを見るように手動で変更。画像ファイル名がランダム文字列になっててディレクトリもランダムっぽく見えたので…。ああ、私が正規表現を扱うことができればもっと楽になったのに…。しかし画像を扱っている記事がそんなになくて助かった。


感想

Hugoを知らなかったのでHexoという感じだったのですが、これを機にHugo学べば良かったんじゃないかな、俺…。まあなんとかなったので良かったですけど。

あとは正規表現学んでおかなければと思いました。もっと楽に最後できたんじゃないかなーとおもいます。


参考にしたサイト

はてなブログをHugo+AWSに移行しました