MeCab 0.91 がリリース2006年05月01日 03時11分00秒

MeCab 0.91 がリリースされました。

 http://sourceforge.jp/projects/mecab/

KAKASI, ChaSen, MeCab の異体字の扱い2006年04月10日 22時19分49秒

KAKASI には異体字辞書 itaijidict があるので、辞書にある異体字の違いは吸収されます。
例えば kakasidict には「国語」は登録されていますが、「國語」は登録されていません。しかし、itaijidict で 「國」と「国」が関係付けられているため、

$ echo 國語 | kakasi -JH
こくご

と異体字を用いた単語であっても、認識します。
ChaSen/MeCab を調べてみると、ChaSen では

$ echo 国語 | chasen
国語 コクゴ 国語 名詞-一般
EOS

$ echo 國語 | chasen
國 クニ 國 名詞-一般
語 ゴ 語 名詞-接尾-一般
EOS

となり、単語として認識していません。
MeCab では

$ echo 国語 | mecab
国語 名詞,一般,*,*,*,*,国語,コクゴ,コクゴ
EOS

$ echo 國語 | mecab
國 名詞,一般,*,*,*,*,國,クニ,クニ
語 名詞,接尾,一般,*,*,*,語,ゴ,ゴ
EOS

となり、こちらも単語として認識していません。

ChaSen/MeCab では異体字の単語を登録しておかなければならないということでしょうか。

ところで、Namazu は異体字を特別扱いしていないので、"国語" で "國語" が見つかることはありません。
そういうモードがあると良いかもしれません。(旧字の文献を検索する場合等には)

mecab-ipadic-2.7.0 200604082006年04月08日 17時03分09秒

mecab-ipadic-2.7.0 20060408 が公開されましたので、辞書をバージョンアップしました。

http://www.akaneiro.jp/public/mecab-ipadic.zip

から辞書ファイルをダウンロードして、手順に従ってインストールを行ってください。

MeCab 分かち書き用辞書2006年04月04日 19時13分27秒

MeCab の辞書作成ツールの mecab-dict-index には -w オプションがあり、分かち書き用の辞書を作成することができます。

Namazu では MeCab を分かち書きにしか使いませんので、分かち書き用の辞書で十分です。

分かち書き用の辞書は通常の辞書よりサイズが小さくなります。
sys.dic のサイズを比較すると以下の通りです。
通常 36897200
分かち書き用 15062273

また、-c オプションに euc-jp shift_jis utf-8 を指定することで、それぞれの漢字コードの辞書が作成できます。(Namazu では EUC-JP の辞書を使います。)

sys.dic のサイズを比較すると
euc-jp 36897200
shift-jis 36755616
cp932 36753464
utf-8 48055864
となりました。
Perl のバージョンは 5.8.0 でしたので、cp932 の結果は Perl のバージョンによって異なるでしょう。

ところで、Linux で作成した辞書と Windows で作成した辞書とで、ファイルサイズは同じでしたが、内容に差がありました。
この差は何によって生じるものかは不明です。(精度の問題???)

MeCab PPM2006年04月04日 15時46分19秒

MeCab 0.90 がリリースされましたので、MeCab の PPM を作成しました。

 http://www.akaneiro.jp/PPMPackages/800/MeCab.ppd

ppm コマンドでインストールができます。

 C:> ppm uninstall MeCab
 C:> ppm install http://www.akaneiro.jp/PPMPackages/800/MeCab.ppd

MeCab Perl モジュールは ppm コマンドでインストールできますが、Text-Kakasi 同様に PPM のインストールだけでは動作せず、辞書と mecabrc のインストールおよび設定が必要になります。

 http://www.akaneiro.jp/public/mecab-ipadic.zip

から辞書ファイルをダウンロードして、手順に従ってインストールを行ってください。

Namazu for Windows 2.0.16 では EUC-JP の辞書を前提にしています。

[追記]

現在、インストール方法が変わりました。 詳しくは http://namazu.asablo.jp/blog/2008/09/29/3788573 をご覧ください。

MeCab 0.90 における mecabrc ファイルの優先順位2006年04月04日 02時27分56秒

MeCab 0.90 における mecabrc ファイルの優先順位

1. コマンドラインパラメータ -r, --rcfile で指定した mecabrc ファイル

2. 環境変数 HOME が設定されている場合 ~/.mecabrc ファイル

3. 環境変数 MECABRC で指定した mecabrc ファイル

4. レジストリ HKEY_LOCAL_MACHINE\software\mecab\mecabrc の mecabrc ファイル
[Windowsのみ]

5. レジストリ HKEY_CURRENT_USER\software\mecab\mecabrc の mecabrc ファイル
[Windowsのみ]

6. DLL と同じディレクトリの mecabrc
[Windowsのみ]

7. MECAB_DEFAULT_RC
UNIX は /usr/local/etc/mecabrc
Windows は、C:\Program Files\mecab\etc\mecabrc

 注意) コンパイルオプションに変更が可能


Windows版はインストーラにより、Administrator でインストールを行うとHKEY_LOCAL_MACHINE (共有利用)を設定します。 通常は、HKEY_CURRENT_USER (個人利用)を設定します。

Windows 版の mecabrc の位置は {app}\etc\mecabrc です。

ちなみに 辞書は UNIX では /usr/local/lib/mecab/dic/ipadic に Windows では {app}\dic\ipadic になります。

MeCab 0.90 リリース2006年03月27日 01時44分08秒

MeCab 0.90 がリリースされました。

http://mecab.sourceforge.jp/

pltests でテストしただけですが、特に問題なく動作するようです。

MeCab Perl PPM その後2006年03月12日 05時32分54秒

Windows + ActivePerl の環境で、MeCab の Perl バインドをコンパイルできるようになりました。 詳細は後日まとめなおします。以下は、メモ書き程度のものです。

MeCab および辞書(EUC-JP)をインストールし、mecab.exe が動作することを確認します。

http://search.cpan.org/~mbarbon/ExtUtils-FakeConfig-0.06/lib/ExtUtils/FakeConfig.pm

をまずインストールします。 (注意: この時、dumpbin.exe が必要でした。)

次に \Migw\bin と nmake.exe 等のパスを通して、通常のコマンドプロンプトを開きます。 mecab-perl-0.90rc10 に移動し、Makefile.PL の中の mecab-config を使っている部分を書き換えます。

$ perl -MConfig_m Makefile.PL

生成された Makefile の libmecab.a のところを -lmecab に書き換えて

$ nmake
$ nmake test
$ nmake install

で、MeCab Perl モジュールが動作しました。

MeCab 0.90rc10 で再び2006年03月10日 22時18分46秒

MeCab 0.90rc10 が公開されました。http://mecab.sourceforge.jp

  • SWIG 1.3.28 を使うようにした。perl/ruby/java/python のバインディングの再構築。 perl の $1 の問題はエラーと認識されますが、これを仕様とします。
  • CSV のルーチンを書いた。"," を含む素性など CSV の範囲で記述できる
  • perl 5.8 以下でもなんとか動くようにした。ただし文字コード変更はできない
  • Windows バージョンで mecabrc の場所がレジストリにないばあいはlibmecab.dll があるディレクトリから読み込むようにした
  • Windows 版の開発に Visual Studio Express を使うようにした。

となりました。 これにより再び、 Namazu 2.0.15 では $1 の問題が発生します。

仕様にされてしまったので、仕方なしに以前行った対策をHEADにほどこしました。

MeCab 0.90rc8 公開2006年01月23日 17時09分25秒

0.90rc8 が公開されていたので確認しました。

以下の問題が改善されました。

・perl バインディングで、
parse ($1);
でエラーにならなくなりました。

・改行で終わらない行も正しく処理されるようになりました。

次のバグが確認できました。

・perlバインディングで $VERSION が 0.90rc7 のままとなる。