Movable TypeのMarkdownプラグインのエラー対策
Movable Type 5は非常に秀逸な「サイト構築ツール」となっている。このサイトもMT5に移行すべく作業中である。特にMT5で採用されているMarkdown記法は便利だ(詳細は→Markdown - 閾ペディアことのはを参照)。
ところが、Markdownプラグインが原因で記事が公開できないエラーが発生した。解決方法とともにこちらにまとめておく。
この記事のリンク用URL| ≪ 前の記事 ≫ 次の記事
| コメント(1) | トラックバック(2)
(旧: )
MarkdownはShift-JISでは文字化けの可能性あり
本題に入る前に。Markdownプラグインは、Shift-JIS環境では文字化けする可能性がある。最近はケータイもUTF-8のページを読めるようになってきているので、Shift-JISでMTを構築する必要はあまりないと思われる。
"Wide character in subroutine entry"エラー
さて、今回、MT5.0(データベースはMySQL 5、文字コードはUTF-8、日本語環境)において、新規記事をMarkdown記法で投稿した際にエラーが発生した。"Wide character in subroutine entry"と表示される。それまでに他の記事は投稿できていたので、おそらく記事中の何かの文字が問題になったのだろう。
同様の事例として、Movable Type 5への移行を断念 - mt5などの記事も見つかった。
検索してみたところ、かなり苦労した末に「Bug in plugins/Markdown/Markdown.pl - Movable Type Forums」の記事を発見した。まさにこれが解決法の糸口となった。ここに記された対策を応用することで、問題が解決された。
「mtフォルダ/plugins/Markdown/Markdown.pl」について、以下のように修正する。
1) 冒頭部分に
use Encode qw(encode_utf8);
を追加。
2) プラグイン内部に数か所ある
my $key = md5_hex($1);
を
my $key = md5_hex(encode_utf8($1));
に書き換える。
私の環境ではこれでエラーを回避することができた。
- 【広告】★文中キーワードによる自動生成アフィリエイトリンク
この記事のリンク用URL| ≪ 前の記事 ≫ 次の記事
| コメント(1) | トラックバック(2)
(旧: )
"Wide character in subroutine entry"が出てブログの更新ができなくなりましが、こちらの記事のお陰で解決いたしました。
情報を頂き、ありがとうございました。