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