2008/01/28

Text::MeCabの辞書をUTF-8化する

smokeymonkeyのフレンドタイムラインからマルコフしちゃう子:@dabesa - smokeymonkey@ついったー部 - はてなグループ::ついったー部

北海道開発オフで作ったスクリプトを、Twitterアカウント@dabesaとして公開しました。
しかし、形態素解析で使っているText::MeCabがEUCのため、UTF-8のTwitterタイムラインを一度Jcode.pmでEUCにエンコードして、Text::MeCabにかけて、またJcode.pmでUTF-8にエンコードしている状態。色々調べたり、Twitterに投げてるうちに、Text::MeCabをUTF-8で使う方法を発見しました。

debian(sarge) で mecab ipadic を utf-8に変換 - 覚書いろいろ

まず、[-*煙猴*-]: Text::MeCabで遊んでみるで環境構築したときに、mecab-ipadicをインストールしていませんでした。apt-lineにnon-freeを記述していなかったため、apt-cacheにも表示されず(汗)、apt-lineにnon-freeを追加後、aptitudeでmecab-ipadicをインストール。

# aptitude install mecab-ipadic

ipadicをUTF8化してreconfigure。

# cd /usr/share/mecab/dic/ipadic/
# vi dicrc
(以下行追加)
charset = utf8
# for i in * ; do mv $i $i.euc; nkf -w $i.euc > $i; done
# dpkg-reconfigure mecab-ipadic


結果のソースはこれ