1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
\r
5 <link rel="stylesheet" type="text/css" href="../green.css">
\r
6 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
\r
7 <title>chise_swig_perl</title>
\r
13 <img src="../images/logo2.gif">
\r
14 <h1>chise_swig_perl</h1>
\r
18 <p>chiseライブラリ(concord + libchise)をPerlで利用するための仕組みです。SWIGを利用しています。Cygwinでも利用可能です。</p>
\r
22 <p><a href="http://cvs.m17n.org/viewcvs/chise/kage/tools/">CVSリポジトリ</a>より入手してください。</p>
\r
24 <blockquote><pre>% cvs -d:pserver:anonymous@cvs.m17n.org:/cvs/chise co kage/tools</pre></blockquote>
30 <dd>SWIG定義インターフェイスファイル</dd>
\r
31 <dt>chiseperl.pl</dt>
\r
32 <dd>簡単にlibchiseを使うための高級(?)ライブラリ</dd>
\r
37 <p>すでにconcordとlibchiseが使える状態であると仮定します。Cygwin等適宜ディレクトリを読みかえてください。</p>
\r
40 % swig -c++ -perl -I/usr/local/include chise.i
41 % g++ -c chise_wrap.cxx -I/usr/lib/perl/5.8/CORE
42 % g++ -shared -lchise chise_wrap.o -o chise.so -Wl,-rpath,/usr/local/lib
45 <p>(上記はCGI等で利用するために -Wl,-rpath,/usr/local/lib のオプションを含めてライブラリパスも埋め込んでいます)</p>
\r
49 <p>最終的に以下のファイルを利用します</p>
\r
53 <li>chise.so または chise.dll</li>
\r<li>chiseperl.pl</li>
\r
58 <p>chise.hを元に、libchiseの関数を呼び出してもいいのですが、chiseperl.plを活用するともう少し簡単にlibchiseをPerlから利用できます。</p>
\r
63 <dt>void init_chise();</dt>
\r
64 <dd>初期化します。必ず実行してください</dd>
\r
65 <dt>void close_chise();</dt>
\r
66 <dd>バッファ等を開放します</dd>
\r
67 <dt>void update_chise();</dt>
\r
68 <dd>chise_feature_sync相当関数。新オブジェクトの割り当てや、素性の更新処理をデータベースに反映させます。</dd>
\r
69 <dt>void search_newid();</dt>
\r
70 <dd>未使用の文字オブジェクトIDを探します。内部用です。</dd>
\r
71 <dt>$var get_feature_value($feature, $char_id);</dt>
\r
72 <dd>chise_char_gets_feature_value相当。素性名とcharIDから素性を得ます</dd>
\r
73 <dt>$var set_feature_value($feature, $char_id, $value);</dt>
\r
74 <dd>chise_char_set_feature_value相当。素性をセットします</dd>
\r
75 <dt>$var create_new_char($feature, $value);</dt>
\r
76 <dd>新しい文字オブジェクトを生成します</dd>
\r
77 <dt>$char_id decode_char($feature_char, $int);</dt>
\r
78 <dd>chise_ds_decode_char相当。CCSとコードからUCSコードを得ます(?)</dd>
\r
83 <p>いわゆるPerlのモジュールっぽくない実装になっています。基本的に内部でしか使いません。</p>
\r
87 <dd>CHISEデータベースセットのハンドル</dd>
\r
88 <dt>@chise_feature</dt>
\r
89 <dd>素性の一覧リスト(文字列)</dd>
\r
92 <dt>$chise_newid</dt>
\r
93 <dd>void search_newid();の結果が格納されます</dd>
\r
98 <p>すみません。準備中です。たとえば<a href="../chise_linkmap/">CHISE漢字連環図</a>を参考することができます。</p>
\r
102 <p>現在Cygwinでコンパイルはできますが、現在のlibchiseバージョンに対応したCHISE文字データベースをCygwin上で用意することはできません。この問題はもうすぐ解決されるはずです。</p>
\r
107 <li><a href="http://www.kanji.zinbun.kyoto-u.ac.jp/projects/chise/">CHISE Project</a></li>
\r
108 <li><a href="http://www.swig.org/Doc1.3/Perl5.html">SWIG on Perl</a> 大変参考になります。</li>
\r
109 <li><a href="../chise_linkmap/">CHISE漢字連環図</a> chise_swig_perl を実際に利用しています。</li>
\r
112 <hr class="footer">
\r
113 KAMICHI Koichi -- fonts.jp
\r