MeCab-ipadic-neologdをshift-jisでコンパイルする
概要
- MeCab-ipadic-neologdはWindows用には作られていない。だけどデフォルトのシステム辞書だけでは精度が悪すぎる...
- そこでMeCab-ipadic-neologdをLinuxやMacOSでコンパイルしてWindowsに辞書だけを持ってくる方法がある。但しデフォルトの文字コードはutf8。
- 文字コードはShif-JISが一般的であるWindowsのために、MeCab解析をShift-jisで使えるようにコンパイルする方法を紹介。Windowsでも幸せなMeCab生活を送りたい人へのtips。
辞書をshift-jisでコンパイル
Mac(linux)側でやること
-
MeCab-ipadic-neologdをダウンロード
-
ダウンロードしたディレクトリの中の/libexec/make-mecab-ipadic-neologd.shを以下に編集
./libexec/make-mecab-ipadic-neologd.sh# 上の行のutf8を下の行のようにshift-jisに書き換えてあげる # ${MECAB_LIBEXEC_DIR}/mecab-dict-index -f UTF8 -t UTF8 -d ${MECAB_DIC_DIR}/ipadic -u ${NEOLOGD_DIC_DIR}/${SEED_FILE_NAME}.dic ${NEOLOGD_DIC_DIR}/${SEED_FILE_NAME} ${MECAB_LIBEXEC_DIR}/mecab-dict-index -f UTF8 -t shift-jis -d ${MECAB_DIC_DIR}/ipadic -u ${NEOLOGD_DIC_DIR}/${SEED_FILE_NAME}.dic ${NEOLOGD_DIC_DIR}/${SEED_FILE_NAME}
./libexec/make-mecab-ipadic-neologd.sh# 上の行を下のように編集 # ${MECAB_LIBEXEC_DIR}/mecab-dict-index -f UTF8 -t UTF8 # ${MECAB_LIBEXEC_DIR}/mecab-dict-index -f UTF8 -t shift-jis
-
MeCab-ipadic-neologdを下のコマンドでコンパイル
./bin/install-mecab-ipadic-neologd -n
-
buildで出来上がったディレクトリの下にあるsys.dicとunk.dicをWindowsマシンに渡してあげる
Windowsでやること
mecabは事前に入っているという前提.
以下のコマンドを叩く
mecab -d hoge-directory # sys.dicとunk.dicを置いた場所のパス
そもそもShift-JISを使って開発してることに驚きを隠せないが・・
後輩が困っていたら教えてあげて下さい。
参考にしたページ