Personal tools
You are here: Home Documents Plone on MacOS Xに日本語検索機能
Document Actions

Plone on MacOS Xに日本語検索機能

by Ichiro Hieda last modified 2006-01-08 19:44

特にひねりもなく,素直にインストールできます.

前提条件

すでに,MacOS XでZope + Ploneが動いているのが前提です.Ploneを動かす一番簡単な方法は,Ploneのサイトから,MacOS X用のインストーラーをダウンロードすることです.当方のテストサイト(現在は停止中)では,そのAll-in-oneインストーラーによらず,Python 2.3をFinkでインストールしてZope-2.8.5-finalをBuild & Installし,そこにPloneのソースを組み込んでいます.

参考記事

必要ライブラリー

MeCabを使うMJSplitterをインストールします.必要となるのは,MeCab Lib, MeCab Python, JapaneseCodesです.それと,おまけにPILです.

MeCab Lib

使用したのは,手元にあったMeCab 0.81です.適当なところに展開して,ディレクトリー内のサブディレクトリー"dic"内にipadic-2.5.1を展開します.MeCab 0.81で使えるipadicの最新はこの2.5.1のようです.

mecab-0.81から,

./configure --prefix=/sw

して,make; sudo make installでいきます.

MeCab Python

mecab-python-0.81を展開してディレクトリーに入ります.このライブラリー以下,Pythonのモジュールのインストールでは,Zopeを動かして いるPythonでbuild & installする必要があります.PloneからダウンロードできるAll-in-oneのインストーラーは,どこにどのバージョンのPythonをイ ンストールするのか(あるいは既存のPythonを使うのか)知りません^^;

FinkでPython 2.3.5をインストールしている場合は,/sw/bin/python2.3で,Zope-2.8.5-finalなど比較的新しい2.8.xを使っている場合は要2.3.5ですので,面倒でもフルパスで指定した方が確実です.

/sw/bin/python2.3 setup.py build
sudo /sw/bin/python2.3 setup.py install

もちろん,buildなしに,いきなりinstallでもいいです.

JapaneseCodecs

JapaneseCodecs-1.4.11を使いました.これも,Pythonモジュールなので,

sudo /sw/bin/python2.3 setup.py install

で,完了.

PIL (Imaging)

これは,日本語検索に関係ありませんが,PoneやCOREBlog2の画像縮小機能で使用しますので,インストールしました.Imaging-1.1.5を使いました.これも,

sudo /sw/bin/python2.3 setup.py install

MJSplitter

いよいよ,MJSplitterです.Version 0.1を使いました.Zopeのインスタンスディレクトリー内のProducts内に展開します.その中の settings.pyをいじります.

text_charset = 'utf-8'
dic_charset = 'euc-jp'

当方は,dic_charsetはeuc-jp以外で成功したことがないからこのようにしています.また,mecab_libpathはコメントアウトしています.

検索機能の実装

Zopeをいったんシャットダウンしてから起動します.ploneのZMIに入り,portal_catalogに入ります.この状態でcontentsタブがアクティブになっていますので, ZCTextIndex LexiconをAddします.UTF-8ですが,日本語の辞書を使っているため,日本語でしか使えませんから,IDは jp_lexiconなどとし,Word Splitterに,MJSplitterを選びます.lexiconなどの漠然としたIDを付けると,後で必ず 誰が^^; どういう目的でインストールしたのか,それとも,そもそもシステムに付いてきたのかわからなくなります.

この辺から先はそこここのWebに書かれているPloneへの日本語検索機能の実装と寸分違いません.

次 に,Indexesタブを押し,Index TypeがZCTextIndexとなっている"Description", "Title", "SearchableText"を削除して再作成します.再作成する際に,Lexiconを今作ったjp_lexiconにするのは言うまでもありませ ん.

Advancedタブを押し,Update Catalogボタンを押して完了です.

トラブルシュート

私が経験したトラブルいくつか.

  • settings.pyのmecab_libpathに余計なことを書いた.
    • コメントアウトすべし
  • Indexの綴り間違い (Description, SearchableText, Title)
    • よそ様のサイトからコピー&ペーストした場合も,よく綴りを確認.
  • Zopeのインスタンスディレクトリーのunix的ownerとZopeのownerの不一致

などです.


« November 2009 »
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Recent entries
アンタッチャブル〜事件記者・鳴海遼子〜 2009-11-21
"QRZ" 2009-11-21
ついに朝日新聞までが「入籍」 2009-11-19
「詳細」をデフォルトにできない 2009-11-19
巨大スズメバチの訪問 2009-11-18
Windows 7勝手に宣伝 2009-11-16
たばこと火災 2009-11-15
副大臣 2009-11-15