Wnn JS Library Manual (FreeWnn4.x)

ライブラリ関数一覧

通信関係のプリミティブ

関数名機能
js_open 日本語マルチクライアントサーバの使用を開始する。
js_close 日本語マルチクライアントサーバの使用を終了する。
js_isconnect カレントのサーバとコネクトしているかを判定する。

環境関係のプリミティブ

js_connect jserverに環境を作成する。
js_disconnect jserverの環境を消去する。
js_env_list jserver 中の全ての環境に関する情報を得る。

ファイル関係のプリミティブ

js_file_read サーバ側のファイルをアップロードする。
js_file_write サーバ側へファイルをダウンロードする。
js_file_receive クライアント側へファイルをダウンロードする。
js_file_send クライアント側のファイルをアップロードする。
js_file_list jserver中のファイルに関する情報を得る。
js_file_list_all jserver中の全てのファイルに関する情報を得る。
js_file_info ファイルの情報を調べる。
js_file_discard ファイルをjserver上からなくす。
js_file_loaded ファイルがjserver上にロードされているかを調べる
js_file_loaded_local ファイルがロードされているかを調べる。
js_file_comment_set ファイルのコメントを設定する。

辞書関係のプリミティブ

js_dic_add 使用辞書を追加する。
js_dic_delete 使用辞書を削除する。
js_dic_list 使用中の辞書を得る。
js_dic_list_all 使用中の全ての辞書を得る。
js_dic_info 辞書情報の取り出し。
js_dic_use 辞書を変換に参加させる(参加させない)の設定。

環境に対する辞書以外の設定のプリミティブ

js_param_get 変換 parameter を取り出す。
js_param_set 変換 parameter を設定する。
js_fuzokugo_set 付属語ファイルを指定する。
js_fuzokugo_get 付属語ファイルを取り出す。

辞書内の単語を操作するプリミティブ

js_word_add 辞書に単語を登録する。
js_word_delete 辞書から単語を削除する。
js_word_search 辞書から単語を引く。
js_word_search_by_env 環境で読みの単語を引く。
js_word_info 辞書の単語に関する情報を得る。
js_word_comment_set 辞書の単語にコメントを設定する。
js_hindo_set 辞書の単語の頻度を設定する。

サーバ・ファイルシステム上のファイルに関するプリミティブ

js_access ファイルのアクセス権を調べる。
js_mkdir サーバの管理下にディレクトリを作成する。
js_file_remove サーバ・サイトのファイルを消去する。
js_file_stat ファイルの種類を調べる。
js_dic_file_create 辞書ファイルをサーバ・サイトに作成する。
js_hindo_file_create 辞書ファイルの頻度ファイルを作る。

クライアント・ファイルシステム上のファイルに関するプリミティブ

js_dic_file_create_client 辞書ファイルをクライアント・サイトに作成する。
js_hindo_file_create_client 辞書ファイルの頻度ファイルをクライアント・サイトに作成する。
js_file_remove_client クライアント・サイトのファイルを消去する。

変換関係のプリミティブ

js_kanren 連文節変換を行う。
js_kantan_dai 単文節変換で大文節変換を行う。
js_kantan_sho 単文節変換で小文節変換を行う。
js_kanzen_dai 単文節変換で大文節変換変換し全候補を得る。
js_kanzen_sho 単文節変換で小文節変換変換し全候補を得る。

品詞関係のプリミティブ

js_hinsi_name 品詞番号から品詞名を得る。
js_hinsi_number 品詞名から品詞番号を得る。
js_hinsi_list 品詞ノード名から品詞名の列を得る。

その他のプリミティブ

js_version サーバ、及び、ライブラリのバージョンを調べる。
js_who サーバの使用者を得る。
js_kill サーバを終了させる。

js_access ファイルのアクセス権を調べる

名称

js_access() ファイルのアクセス権を調べる。

形式

#include "jslib.h"

int
js_access(env,path,amode)
struct wnn_env *env;	/* 環境 */
char *path;		/* パス名 */
int amode;		/* モード */

機能

path で指定されたファイルをサーバ自身のアクセス権で調べる。 amode は、access(2) と同じである。

04 read
02 write
01 execute (search)
00 check existence of file

path と amode を持って、jserver の権限で access(2) を実行する。 path の最大文字数は、128文字である。

返り値

access(2)と同じである。

js_close サーバの使用を終了

名称

js_close() 日本語マルチクライアントサーバの使用を終了する。

形式

#include "jslib.h"

int
js_close(server_id)
WNN_JSERVER_ID *server_id;	/* サーバID */

機能

サーバID server の使用を終了し、サーバとの接続を切る。 再度日本語マルチクライアントサーバを使用するためには、js_open を行う。 登録可能形式辞書、及び、頻度情報のセーブは、行わない。

返り値

正常終了時には 0 を返す。 異常終了時には -1 を返す。

js_connect コネクションを張る

名称

js_connect() サーバとの間にコネクションを張る。

形式

#include "jslib.h"
struct wnn_env *
js_connect(server,env_name, timeout)
char *env_name;			/* 環境名 */
WNN_JSERVER_ID *server;		/* サーバID */
int timeout;			/* タイムアウト時間 */

機能

サーバとの間にコネクションを張り、同時にサーバの内部に環境を作る。 サーバ名で、js_open のリターン値のサーバIDを指定する。 サーバ名の最大文字数は、256文字である。

timeout(秒)以内に、サーバと接続できない場合は、接続を中断し異常終了する。 タイムアウトの設定のために、SIGALARM を使用している。 timeout が 0 または、負の場合は、SIGALARM を使用しない。

返り値

環境名に既に存在する環境を指定した時にはその環境を返し、 NULL を指定した時には新しい環境を作って返す。 異常終了時には、-1 を返す。

使用上の注意

タイムアウトには、SIGALARM を使用しているので、注意が必要である。 SIGALARM を使用する場合には、timeout に 0 を設定しなければならない。

js_dic_add 使用辞書を追加

名称

js_dic_add() 使用辞書を追加する。

形式

#include "jslib.h"

int
js_dic_add(env,fid,hfid, rev, jnice,rw,hrw, pw1, pw2)
struct wnn_env *env;	/* 環境 */
int fid;		/* 辞書ファイルID */
int hfid;		/* 頻度ファイルID */
int rev;		/* 逆変換かどうか */
int jnice;		/* 優先度 */
int rw;			/* 辞書がリードオンリか否か */
int hrw;		/* 頻度ファイルがリードオンリか否か */
char *pw1;		/* 辞書のパスワード */
char *pw2;		/* 頻度ファイルのパスワード */

機能

環境 env にファイルID fid の自立語辞書を追加する。 (最大WNN_MAX_JISHO_OF_AN_ENV 個まで可能である。 WNN_MAX_JISHO_OF_AN_ENV の値は、現在のバージョンでは 30 である。) これにより、変換にその辞書を参照する。

頻度ファイルID hid で頻度ファイルを指定する。

rw, hrw で、辞書、頻度ファイルが、読み取り専用か否かを指定する。

マクロ 意味
WNN_DIC_RDONLY 読み取り専用
WNN_DIC_RW 読み取り/書き込み可能

固定形式辞書、読み取Mり専用辞書には、単語登録/削除ができない。

rev で、逆変換を行なうかどうか、指定する。

マクロ 意味
WNN_DIC_ADD_REV 逆変換
WNN_DIC_ADD_NOR 通常の変換

逆引き形式辞書に対してしか、逆変換は行なうことができない。

辞書、頻度ファイルのパスワードがあれば、それぞれ pw1, pw2 で指定する。 (そのパスワードの文字列の長さは、最大16文字である)

すでに使用されている辞書の頻度ファイルのみを変更することも可能である。

返り値

正常終了時には、辞書番号を返す。 異常終了時には、-1 を返す。

js_dic_file_create 辞書ファイルを作成

名称

js_dic_file_create() 辞書ファイルの作成を行う。

形式

#include "jslib.h"

int
js_dic_file_create(env,fn,type,comment,passwd, hpasswd)
struct wnn_env *env;	/* 環境 */
char *fn;		/* 辞書ファイル */
int type;		/* 辞書の種類  */
w_char *comment;	/* コメント */
char *passwd;		/* 辞書のパスワード */
char *hpasswd;		/* 頻度ファイルのパスワード */

機能

fn で指定した辞書ファイルを作成する。 辞書ファイル名の最大文字数は、100文字である。 コメント comment の最大文字数は、512文字である。 辞書のパスワード passwd と頻度ファイル hpasswd のパスワードの最大文字数は、16文字である。 辞書の種類は、登録可能形式、または、逆引き形式でなくてはならない。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_dic_file_create_client クライアント・サイトに辞書ファイルを作成

名称

js_dic_file_create_client() クライアント・サイトに辞書ファイルの作成を行う。

形式

#include "jslib.h"

int
js_dic_file_create_client(env,fn,type,com,passwd, hpasswd)
struct wnn_env *env;	/* 環境 */
char *fn;		/* 辞書ファイル */
int type;		/* 辞書の種類  */
w_char *com;		/* コメント */
char *passwd;		/* 辞書のパスワード */
char *hpasswd;		/* 頻度ファイルのパスワード */

機能

fn で指定した辞書ファイルを作成する。 辞書ファイル名の最大文字数は、100文字である。 コメント comment の最大文字数は、512文字である。 辞書のパスワード passwd と頻度ファイル hpasswd のパスワードの最大文字数は、16文字である。 辞書の種類は、登録可能形式、または、逆引き形式でなくてはならない。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_dic_delete 使用辞書を削除

名称

js_dic_delete() 使用辞書を削除する。

形式

#include "jslib.h"

int
js_dic_delete(env,dicno)
struct wnn_env *env;	/* 環境 */
int     dicno;		/* 辞書番号 */

機能

辞書番号 dic の辞書を環境 env から削除する。 辞書番号の辞書がない場合、何もしない。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_dic_info 辞書情報の取り出し

名称

js_dic_info() 辞書情報の取り出し。

形式

#include "jslib.h"

int
js_dic_info(env,dic_no,ret)
struct wnn_env *env;	/* 環境 */
int dic_no;		/* 辞書番号 */
WNN_DIC_INFO *ret;	/* 辞書情報 */

機能

辞書番号 dic_no の辞書の情報を得る。 現在使用中の辞書に関する情報を ret に取り出す。 辞書番号の辞書がない場合、何もしない。

返り値

正常終了時には、辞書番号を返す。 異常終了時には、-1 を返す。

js_dic_list 使用中の辞書情報を得る

名称

js_dic_list() 使用中の辞書情報を得る。

形式

#include "jslib.h"

int
js_dic_list(env,ret)
struct wnn_env *env;		/* 環境 */
struct wnn_ret_buf *ret;

機能

環境 env で使用中の辞書情報を得る。 取り出す情報は、struct wnn_dic_info の各項目である。 ret->buf からの辞書の数だけ、struct wnn_dic_info の配列が返される。

返り値

正常終了時には、使用中の辞書の数を返す。 異常終了時には、-1 を返す。

js_dic_list_all 全ての辞書情報を得る

名称

js_dic_list_all() 全ての辞書情報を得る。

形式

#include "jslib.h"

int
js_dic_list_all(server,ret)
WNN_JSERVER_ID *server;	
struct wnn_ret_buf *ret;

機能

サーバ server にロードされている全ての辞書情報を得る。

取り出す情報は、struct wnn_dic_info の各項目である。 ret->buf からの辞書の数だけ、struct wnn_dic_info の配列が返される。

返り値

正常終了時には、全辞書の数を返す。 異常終了時には、-1 を返す。

js_dic_use 辞書の使用/不使用の状態を設定

名称

js_dic_use() 辞書の使用/不使用の状態を設定する。

形式

#include "jslib.h"

int
js_dic_use(env,dic_no,flag)
struct wnn_env *env;	/* 環境 */
int dic_no;		/* 辞書番号 */
int flag;		/* フラグ */

機能

辞書番号 dic_no 辞書の使用する/しないの状態を flag の状態にする。

js_dic_add を行なった瞬間には、全てこの値は 1 になっている。 辞書番号の辞書がない場合、何もしない。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_disconnect コネクションを切る

名称

js_disconnect() サーバとの間のコネクションを切る。

形式

#include "jslib.h"

int
js_disconnect(env)
struct wnn_env *env;	/* 環境 */

機能

env で示される環境を無くす。

返り値

正常終了時には、0 を返す。 env で示される環境がない場合、-1 を返す。

js_env_exist サーバ中に環境が存在するかを調べる

名称

js_env_exist() サーバ中に環境が存在するかを調べる。

形式

#include "jslib.h"

int
js_env_exist(server, env_name)
WNN_JSERVER_ID *server;	
char *env_name;

機能

サーバ server 中に env_name の環境が既に存在するかを調べる。

返り値

環境が存在する時は、1 を、存在しない時は、0 返す。 異常終了時には、-1 を返す。

js_env_list サーバ中の全ての環境に関する情報を得る

名称

js_env_list() サーバ中の全ての環境に関する情報を得る。

形式

#include "jslib.h"

int
js_env_list(server, ret)
WNN_JSERVER_ID *server;	
struct wnn_ret_buf *ret;

機能

サーバ server 中の全ての環境に関する情報を得る。 ret->buf には、struct wnn_env_info の配列が、環境数だけ返される。

返り値

正常終了時には、環境の数を返す。 異常終了時には、-1 を返す。

js_env_sticky 環境をスティッキーにする

名称

js_env_sticky() 環境をスティッキーにする。

js_env_un_sticky() 環境をスティッキーにしない。

形式

#include "jslib.h"

int
js_env_sticky(env)
struct wnn_env *env;

int
js_env_un_sticky(env)
struct wnn_env *env;

機能

js_env_sticky は、環境 env を、スティッキーにする。

js_env_un_sticky は、環境 env を、スティッキーにしない。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_file_comment_set ファイルにコメントをセット

名称

js_file_comment_set() ファイルにコメントをセットする。

形式

#include "jslib.h"

int
js_file_comment_set(env, fid, comment)
struct wnn_env *env;	/* 環境 */
int fid;		/* ファイル番号*/
w_char *comment;	/* コメント */

機能

fid で指定されたファイルにコメントをセットする。 コメントをセット可能なファイルは、辞書ファイル、および、 頻度ファイルである。コメントをセット可能なためには、 そのファイルは dic_add により、登録可能な辞書または更新可能な頻度 ファイルとして設定されている必要がある。

コメント comment の最大文字数は、512文字である。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_file_discard ファイルをサーバ上からなくす

名称

js_file_discard() ファイルをサーバ上からなくす。

形式

#include "jslib.h"

int
js_file_discard(env,fid)
struct wnn_env *env;	/* 環境 */
int fid;		/* ファイルID */

機能

ファイルID fid のファイルをサーバ上からなくす。 ただし、他の環境から参照が残っている場合はこのかぎりではない。 ファイルに使用中の自立語辞書、および、頻度ファイルを指定した場合、 その辞書の使用を中止する。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_file_info ファイルの情報を調べる

名称

js_file_info() ファイルの情報を調べる。

形式

#include "jslib.h"

int
js_file_info(env, fid, file)
struct wnn_env *env;		/* 環境 */
int fid;			/* ファイル id */	
WNN_FILE_INFO_STRUCT *file;

機能

環境 env にロードされている file の情報(WNN_FILE_INFO_STRUCT)を取り出す。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_file_list 環境中の全てファイルに関する情報を得る

名称

js_file_list() 環境中の全てファイルに関する情報を得る。

形式

#include "jslib.h"

int
js_file_list(env,ret)
struct wnn_env *env;		/* 環境 */
struct wnn_ret_buf *ret;

機能

環境 env にロードされている全てのファイルに関する情報を得る。 ret->buf には、WNN_FILE_INFO_STRUCT の配列が、ファイル数だけ返される。

返り値

正常終了時には、ファイル数を返す。 異常終了時には、-1 を返す。

js_file_list_all サーバ中の全てのファイルに関する情報を得

名称

js_file_list_all() サーバ中の全てのファイルに関する情報を得る。

形式

#include "jslib.h"

int
js_file_list_all(server,ret)
WNN_JSERVER_ID *server;	
struct wnn_ret_buf *ret;

機能

サーバ server 中の全てのファイルに関する情報を得る。 ret->buf には、WNN_FILE_INFO_STRUCT の配列が、ファイル数だけ返される。

返り値

正常終了時には、ファイル数を返す。 異常終了時には、-1 を返す。

js_file_loaded サーバマシン上のファイルがロードされているかを調べる

名称

js_file_loaded() サーバマシン上のファイルがロードされているかを調べる。

形式

#include "jslib.h"

int
js_file_loaded(server,path)
WNN_JSERVER_ID *server;		/* サーバのID */
char *path;			/* ファイルのパス名 */

機能

path で示されるサーバマシン上のファイルがロードされているか否かを調べる。 ファイル名の最大文字数は、100文字である。

返り値

ロードされていればファイルIDを、ロードされていなければ -1 を返す。 指定されたファイルが辞書でない場合、-2 を返す。 指定されたファイルがリードされていない場合、-3 を返す。

js_file_loaded_local クライアントマシン上のファイルがロードされているかを調べる

名称

js_file_loaded_local() クライアントマシン上のファイルがロードされているかを調べる。

形式

#include "jslib.h"

int
js_file_loaded_local(server,path)
WNN_JSERVER_ID *server;		/* サーバのID */
char *path;			/* ファイルのパス名 */

機能

path で示されるクライアントマシン上のファイルがロードされているか否かを調べる。 ファイル名の最大文字数は、100文字である。

返り値

ロードされていればファイルIDを、ロードされていなければ -1 を返す。 指定されたファイルが辞書でない場合、-2 を返す。 指定されたファイルがリードされていない場合、-3 を返す。

js_file_password_set ファイルのパスワードを更新

名称

js_file_password_set() ファイルのパスワードを更新する。

形式

#include "jslib.h"

int
js_file_password_set(env, fid, which, old, new)
struct wnn_env *env;	/* 環境 */
int fid;		/* ファイルID */
int which;		/* 辞書/頻度 */
char *old;		/* 旧パスワード */
char *new;		/* 新パスワード */

機能

ファイル fid のファイルのパスワードを更新する。 which で辞書または、頻度を指定する。

旧パスワードを old で、新パスワードを new で、指定する。

返り値

正常終了時には 0 を返す。 異常終了時には -1 を返す。

js_file_read サーバ側のファイルをロード

名称

js_file_read() サーバ側のファイルをロードする。

形式

#include "jslib.h"

int
js_file_read(env,fn)
struct wnn_env *env;	/* 環境 */
char *fn;		/* ファイル名 */

機能

サーバマシン上のファイル fn をロードする。 既にサーバ中に同じファイルがある場合はなにもしない。

返り値

戻り値としてファイルIDを返す。 異常終了時には、-1 を返す。

js_file_receive クライアント側へファイルをダウンロード

名称

js_file_receive() クライアント側へファイルをダウンロードする。

形式

#include "jslib.h"

int
js_file_receive(env,fid,fn)
struct wnn_env *env;		/* 環境 */
int fid;			/* ファイルID */
char *fn;			/* セーブするファイル名 */

機能

ファイルID fid で示されるファイルを、 サーバ側からクライアント側へダウンロードして、 指定するファイル名 fn でセーブする。 指定できるファイルは、辞書、頻度ファイルであり、 付属語ファイルはサポートされていない。 また、ファイル名が NULL または、空文字列の場合、元の名前でセーブする。 fn で指定された名前のファイルがすでに存在し、それが Wnn のファイル (辞書、頻度、付属語)でないならば、エラーとなる。

ファイル名の最大文字数は、100 文字である。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_file_remove ーバのファイルシステムのファイルを消去

名称

js_file_remove() サーバのファイルシステムのファイルを消去する。

形式

#include "jslib.h"

int
js_file_remove(server,n, pwd)
WNN_JSERVER_ID *server;
char *n;		/* ファイル名 */
char *pwd

機能

サーバマシンのファイルシステムのファイル fn を消去する。 その際、ファイルにパスワードが付いている場合には、 パスワードが合わなくてはならない。 ファイル fn がサーバー内に読み込まれている場合には、エラーとなる。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_file_remove_client クライアントのファイルシステムのファイルを消去

名称

js_file_remove_client() クライアントのファイルシステムのファイルを消去する。

形式

#include "jslib.h"

int
js_file_remove_client(server,n, pwd)
WNN_JSERVER_ID *server;
char *n;		/* ファイル名 */
char *pwd

機能

クライアントのファイルシステムのファイル fn を消去する。 ファイルは、wnn のファイル(辞書、頻度、付属語)でなくてはならない。 その際、ファイルにパスワードが付いている場合には、 パスワードが合わなくてはならない。

ファイル fn がサーバー内に読み 込まれている場合には、エラーとなる。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_file_send クライアント側のファイルをアップロード

名称

js_file_send() クライアント側のファイルをアップロードする。

形式

#include "jslib.h"

int
js_file_send(env,fn)
struct wnn_env *env;	/* 環境 */
char *fn;		/* ファイル名 */

機能

クライアントマシン上のファイル fn をサーバにアップロードする。 >既にサーバ中に同じファイルがある場合はなにもしない。

ファイル名の最大文字数は、100 文字である。

返り値

戻り値としてファイルIDを返す。 異常終了時には、-1 を返す。

js_file_stat ファイルのタイプを調べる

名称

js_file_stat() ファイルのタイプを調べる。

形式

#include "jslib.h"

int
js_file_stat(env,path, s)
struct wnn_env *env;	/* 環境 */
char *path;		/* ファイルのパス名 */
WNN_FILE_STAT *s;

機能

パス名 path で指定したファイルのタイプが辞書であるか、 頻度ファイルであるか、付属語ファイルであるかを調べる。 辞書である場合には、辞書の種類を調べ、固定形式辞書か登録可能形式辞書かを調べる。 結果、s に格納する。

ファイル名の最大文字数は、100 文字である。

返り値

正常終了時には 次のファイルのタイプを返す。

WNN_STATIC_DICT 固定形式辞書
WNN_UD_DICT 登録可能形式辞書
WNN_HINDO_FILE 頻度ファイル
WNN_FUZOKUGO_FILE 付属語ファイル
WNN_NOT_A_JISHO その他

ファイルが存在しない時、異常終了時には -1 を返す。

js_file_write サーバマシン上にファイルをセーブ

名称

js_file_write() サーバマシン上にファイルをセーブする。

形式

#include "jslib.h"

int
js_file_write(env,fid,fn)
struct wnn_env *env;		/* 環境 */
int fid;			/* ファイルID */
char *fn;			/* セーブするファイル名 */

機能

ファイルID fid で示されるファイルを指定したファイル名 fn でセーブする。 指定できるファイルは、辞書、頻度ファイルであり、 付属語ファイルはサポートされていない。 また、ファイル名が空文字列の場合、元の名前でセーブする。 fn で指定された名前のファイルがすでに存在し、 それが Wnn のファイル(辞書、頻度、付属語)でないならば、エラーとなる。

ファイル名の最大文字数は、100 文字である。

返り値

正常終了時には、ファイルID を返す。 異常終了時には、-1 を返す。

js_fuzokugo_get 付属語ファイルのファイル番号を得る

名称

js_fuzokugo_get() 付属語ファイルのファイル番号を得る。

形式

#include "jslib.h"

int
js_fuzokugo_get(env)
struct wnn_env *env;		/* 環境 */

機能

環境の付属語ファイルのファイル番号を得る。 もし、付属語ファイルがセットされていない場合には、エラーが返り、 wnn_errorno に WNN_FZK_FILE_NO_LOAD がセットされる。

返り値

正常終了時には、ファイルID を返す。 異常終了時には、-1 を返す。

js_fuzokugo_set 付属語ファイルを指定

名称

js_fuzokugo_set() 付属語ファイルを指定する。

形式

#include "jslib.h"

int
js_fuzokugo_set(env,fid)
struct wnn_env *env;		/* 環境 */
int fid;			/* 付属語ファイルのID */

機能

環境の付属語を fid で指定されたものに切り替える。 指定したファイルが、付属語ファイル以外の場合は、何もしない。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_hindo_file_create 辞書ファイルの頻度ファイルを作る

名称

js_hindo_file_create() 辞書ファイルの頻度ファイルを作る。

形式

#include "jslib.h"

int
js_hindo_file_create(env,fid,fn,comment,hpasswd)
struct wnn_env *env;	/* 環境 */
int fid;		/* 辞書ファイルのID */
char *fn;		/* ファイル名 */
w_char *comment;	/* コメント */	
char *hpasswd;	/* パスワード */

機能

辞書ファイルID fid の頻度ファイルを作る。

頻度ファイル名 fn の最大文字数は、100 文字である。 頻度ファイルのコメント comment の最大文字数は、512 文字である。 頻度ファイルのパスワード hpasswd の最大文字数は、16 文字である。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_hindo_file_create_client クライアント・サイトに辞書ファイルの頻度ファイルを作る

名称

js_hindo_file_create_client() クライアント・サイトに辞書ファイルの頻度ファイルを作る。

形式

#include "jslib.h"

int
js_hindo_file_create_client(env,fid,fn,com,hpasswd)
struct wnn_env *env;	/* 環境 */
int fid;		/* 辞書ファイルのID */
char *fn;		/* ファイル名 */
w_char *com;		/* コメント */	
char *hpasswd;		/* パスワード */

機能

辞書ファイルID fid の頻度ファイルを作る。

頻度ファイル名 fn の最大文字数は、100 文字である。 頻度ファイルのコメント comment の最大文字数は、512 文字である。 頻度ファイルのパスワード hpasswd の最大文字数は、16 文字である。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_hindo_set 辞書ファイルの頻度を設定

名称

js_hindo_set() 辞書ファイルの頻度を設定する。

形式

#include "jslib.h"

int
js_hindo_set(env,dic,entry,ima,hindo)
struct wnn_env *env;	/* 環境 */
int dic;		/* 辞書番号 */
int entry;		/* エントリ番号 */
int ima;		/* 今使ったよビット */
int hindo;		/* 頻度 */

機能

辞書番号 dic_no で示されるエントリ番号 entry の頻度、今使ったよビットを設定する。 ima の値により、今使ったよビットを設定する。

マクロ意味
WNN_IMA_ON 今使ったよビット ON にする。
WNN_IMA_OFF 今使ったよビット OFF にする。
WNN_HINDO_NOP 何もしない。

hindo の値により、頻度を設定する。

マクロ意味
WNN_HINDO_INC 頻度を 1 上げる。
WNN_HINDO_DECL 頻度を 1 下げる。
WNN_ENTRY_NO_USE エントリを変換に使用しない。
WNN_HINDO_NOP 何もしない。
その他 頻度をその値にする。

辞書がない場合(dic_no = -1)は、疑似文節の選択する候補を設定する。 entry の値により以下の候補を第一候補として選択する。

数字の疑似文節

マクロ意味補足
WNN_NUM_HAN 半角数字 読みのまま
WNN_NUM_ZEN 全角数字 123など
WNN_NUM_KAN 漢数字 一二三など
WNN_NUM_KANSUUJI 漢数字 百二十三など
WNN_NUM_KANOLD 漢数字 壱百弐拾参など
WNN_NUM_HANCAN 半角数字 1,234など
WNN_NUM_ZENCAN 全角数字 1,234など

英数字の疑似文節

マクロ意味補足
WNN_ALP_HAN 半角読みのまま
WNN_ALP_ZEN 全角

記号の疑似文節

WNN_KIG_HAN 半角読みのまま
WNN_KIG_JIS 全角(JIS)
WNN_KIG_ASC 全角(ASC)

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_hinsi_dicts ある品詞の単語が登録可能な辞書の一覧を得る

名称

js_hinsi_dicts() ある品詞の単語が登録可能な辞書の一覧を得る

形式

#include "jslib.h"

int
js_hinsi_dicts(env, no,  rb)
struct wnn_env *env;
int no;
struct wnn_ret_buf *rb;

機能

no の番号の品詞の単語を登録可能な辞書の一覧を得る。 返値として辞書の個数を返し、 rb の先に、辞書番号(int)の配列が入れて返される。

登録可能な辞書は、辞書ごとに存在する品詞ノードの情報を元に調べられ、 もし辞書が登録可能なモードで使われており、 品詞ノードの情報の中にその番号の品詞が存在していれば、 その品詞はその辞書に登録可能とみなされる。 また、no として -1 が与えられれば、 登録可能なモードで使われている辞書の一覧が得られる。

返り値

その品詞の語が登録可能な辞書の個数を返す。 異常終了時には -1 を返す。

js_hinsi_list あるノードに属する品詞名の一覧を得る

名称

js_hinsi_list() あるノードに属する品詞名の一覧を得る。

形式

#include "jslib.h"

int
js_hinsi_list(env, dic_no, name, rb)
struct wnn_env *env;
int dic_no;
w_char *name;
struct wnn_ret_buf *rb;

機能

品詞ノード name に属する品詞名に関する情報を得る。 返値として、その品詞ノードに属する品詞および品詞ノードの数を返し、 rb の先に、それらの品詞および品詞ノード名へのポインタの配列 (w_char *) が入れて返される。

もし name が品詞ノードではなく、本当の品詞名なら、返値として 0 が返る。 もし name が品詞ノードでも品詞でもないなら、エラー(WNN_BAD_HINSI_NAME)が返る。

品詞ノードは、自立語辞書ごとに存在する。 品詞ノードが存在しない辞書に関しては、品詞ファイルの設定が用いられる。 辞書は、環境(env)および辞書番号(dic_no)で指定する。

返り値

そのノードに属する品詞(および品詞ノード)の個数を返す。 name が品詞なら 0 を返す。 異常終了時には -1 を返す。

js_hinsi_name 品詞番号から名前を取る

名称

js_hinsi_name() 品詞番号から名前を取る。

形式

#include "jslib.h"

js_hinsi_name(server, no, rb)
WNN_JSERVER_ID *server;
int no;	
struct wnn_ret_buf *rb;

機能

品詞番号 no を品詞名に変換し、その品詞名を rb の先に返す。 品詞名は、(w_char *) である。 server で、どのサーバの品詞情報を用いるか指定する。

返り値

正常終了時には 0 を返す。 異常終了の場合には、-1 を返す。

js_hinsi_number 品詞名を品詞番号に変換

名称

js_hinsi_number() 品詞名を品詞番号に変換する。

形式

#include "jslib.h"
int
js_hinsi_number(server, name)
WNN_JSERVER_ID *server;
w_char *name;

機能

品詞名 name を品詞番号に変換し、その品詞番号を返す。 通常の品詞の品詞番号は、0から始まる。 複合品詞の品詞番号は、2 バイトの十分大きい値(FUKUGOU_START) から、逆向きに付けられる。

返り値

品詞番号を返す。 異常終了時には、-1 を返す。

js_hinsi_table_set 辞書に登録可能な品詞の一覧を登録

名称

js_hinsi_table_set() 辞書に登録可能な品詞の一覧を登録する

形式

#include "jslib.h"

int
js_hinsi_table_set(env, dic_no, hinsi_table)
struct wnn_env *env;	/* 環境 */
int dic_no;		/* 辞書番号 */
w_char *hinsi_table;

機能

辞書に登録可能な品詞の一覧を登録する。 環境 env の dic_no の 辞書に hinsi_table で、 指定された品詞の一覧を登録する。

返り値

正常終了時には 0 を返す。 異常終了時には -1 を返す。

js_isconnect サーバと接続されているかの判定

名称

js_isconnect() サーバと接続されているかの判定

形式

#include "jllib.h"

int
js_isconnect(env)
struct wnn_env *env;

機能

環境 env のサーバと接続されているかを調べる。

返り値

接続されていれば、0 を返す。 接続されていなければ、-1 を返す。

js_kanren 連文節変換

名称

js_kanren() 連文節変換を行う。

形式

#include "jslib.h"

int
js_kanren(env,yomi,hinsi,fzk,vec,vec1,vec2,rb)
struct wnn_env *env;		/* 環境 */
w_char *yomi;			/* 読み列 */
int hinsi;			/* 品詞番号 */
w_char *fzk;			/* 付属語文字列 */
int vec;			/* 接続ベクター */
int vec1;			/* 接続ベクター */
int vec2;			/* 接続ベクター */
struct wnn_ret_buf *rb;		/* 変換結果を返すエリアへのポインタ */

機能

読み yomi を連文節変換し、第一候補の列を返す。

hinsi, fzk は、yomi の文節の前の文節の品詞番号、付属語文字列を指定する。

品詞番号、付属語文字列を指定した場合は、yomi 先頭の文節を 前の文節に接続できる小文節列(前の文節を含めて大文節となる)として変換する。

前の文節に接続できる候補が無い場合は、大文節の先頭になれるものを返す。 それもない場合は、大文節の先頭になれないもの(その前に、指定した品詞以外 の品詞がこなくてはいけないもの。たとえば、hinsi に名詞を指定したときの 助数詞:助数詞の前には、数詞がきて大文節となる)を返す。

このうちどの候補が選ばれたかは、rb->buf->sbn->status に返される。

マクロ意味
WNN_CONNECT 指定された(品詞、付属語)に接続できた
WNN_SENTOU 大文節の先頭
WNN_NOT_CONNECT 大文節の先頭になれないし、前に接続できない
WNN_GIJI 疑似文節として変換した

前の文節に付属語が無い場合は、NULL を指定する。

前の小文節とは大別文節として変換する時は、hinsi に、

マクロ意味
WNN_BUN_SENTOU 大文節の先頭になれるもの
WNN_ALL_HINSI 全ての小文節
を指定する。

vec、vec1 は、変換のための終端ベクトルを指定する。 後ろの小文節の前端ベクトルを指定する。その場合は、yomi の最後の文節に 後ろの文節を含めたものが大文節となる。 後ろの小文節とは別大文節として変換する時は、vec、 vec1 に、

マクロ意味
WNN_VECT_KANREN連文節変換の終端ベクトル
WNN_VECT_KANTAN単文節変換の終端ベクトル
WNN_VECT_KANZEN全候補取出しの終端ベクトル
WNN_VECT_BUNSETSU文節の終端ベクトル
を指定する。

vec に指定した終端ベクトルは、vec1 に指定した終端ベクトルよりも、評価 基準が高くなる。 通常、vec には後ろの小文節の前端ベクトルを、 vec1 には、WNN_VECT_KANREN を指定する。 vec1 に指定すべき終端ベクトルがない場合は、WNN_VECT_NO を指定する。 この場合 vec のみが変換に使用される。

vec2 は、連文節変換時の途中の文節で使用される。 通常、vec2 には WNN_VECT_BUNSETSU を指定する。

vec に接続できる文節か、vec1 に接続できる文節かは、 rb->buf->sbn->status_bkwd に返される。 vec に接続できた場合は、WNN_CONNECT_BK が、vec1 に接続できた場合は、 WNN_NOT_CONNECT_BK が返される。 この値は、yomi に指定した、最後語の文節のみが有効である。

rb には、変換結果が返るエリアへのポインタ(struct wnn_ret_buf *)を指定 する。rb は、ユーザが用意し *rb = {0, NULL} に初期化する。 rb->buf に変換結果の大文節の情報(struct wnn_dai_bunsetsu *)の先頭への ポインタが返される。そこから、大文節数だけ大文節の情報が、入っている。

付属語ファイルが読み込まれていない場合は、エラーとなる。

返り値

正常終了時には、大文節数を返す。 異常終了時には、-1 を返す。

js_kantan_dai 大文節単位で単文節変換

名称

js_kantan_dai() 大文節単位で単文節変換を行う。

形式

#include "jslib.h"

int
js_kantan_dai(env,yomi,hinsi,fzk,vec,vec1,rb)
struct wnn_env *env;		/* 環境 */
w_char *yomi;			/* 読み列 */
int hinsi;			/* 品詞番号 */
w_char *fzk;			/* 付属語文字列 */
int vec;			/* 接続ベクター */
int vec1;			/* 接続ベクター */
struct wnn_ret_buf *rb;		/* 変換結果を返すエリアへのポインタ */

機能

読み yomi を大文節として単文節変換し、第一候補を返す。

hinsi, fzk は、yomi の文節の前の文節の品詞番号、付属語文字列を指定する。

品詞番号、付属語文字列を指定した場合は、yomi を前の文節に接続できる 小文節列(前の文節を含めて大文節となる)として変換する。

前の文節に接続できる候補が無い場合は、大文節の先頭になれるものを返す。 それもない場合は、大文節の先頭になれないもの (その前に、指定した品詞以外の品詞がこなくてはいけないもの。 たとえば、hinsi に名詞を指定したときの助数詞:助数詞の前には、数詞がきて大文節となる)を返す。

このうちどの候補が選ばれたかは、rb->buf->sbn->status に返される。
WNN_CONNECT 指定された(品詞、付属語)に接続できた
WNN_SENTOU 大文節の先頭
WNN_NOT_CONNECT 大文節の先頭になれないし、前に接続できない
WNN_GIJI 疑似文節として変換した

前の文節に付属語が無い場合は、NULL を指定する。

前の小文節とは大別文節として変換する時は、hinsi に、
WNN_BUN_SENTOU (大文節の先頭になれるもの)
WNN_ALL_HINSI (全ての小文節)

を指定する。

vec、vec1 は、変換のための終端ベクトルを指定する。 後ろの小文節の前端ベクトルを指定する。 その場合は、yomi の最後の文節に後ろの文節を含めたものが大文節となる。 後ろの小文節とは別大文節として変換する時は、vec、 vec1 に、

WNN_VECT_KANREN 連文節変換の終端ベクトル
WNN_VECT_KANTAN 単文節変換の終端ベクトル
WNN_VECT_KANZEN 全候補取出しの終端ベクトル
WNN_VECT_BUNDETSU 文節の終端ベクトル

を指定する。

vec に指定した終端ベクトルは、vec1 に指定した終端ベクトルよりも、評価基準が高くなる。 通常、vec には後ろの小文節の前端ベクトルを、vec1 には、WNN_VECT_KANRENを指定する。 vec1 に指定すべき終端ベクトルがない場合は、WNN_VECT_NO を指定する。 この場合 vec のみが変換に使用される。

vec に接続できる文節か、vec1 に接続できる文節かは、 rb->buf->sbn->status_bkwd に返される。 vec に接続できた場合は、WNN_CONNECT_BK が、vec1 に接続できた場合は、 WNN_NOT_CONNECT_BK が返される。 この値は、yompi に指定した、最後語の文節のみが有効である。

rb には、変換結果が返るエリアへのポインタ(struct wnn_ret_buf *)を指定す る。rb は、ユーザが用意し *rb = {0, NULL} に初期化する。 rb->buf に変換結果の大文節の情報(struct wnn_dai_bunsetsu *)が返される。

付属語ファイルが読み込まれていない場合は、エラーとなる。

返り値

正常終了時には、大文節数を返す。 異常終了時には、-1 を返す。

js_kantan_sho 小文節単位で単文節変換

名称

js_kantan_sho() 小文節単位で単文節変換を行う。

形式

#include "jslib.h"

int
js_kantan_sho(env,yomi,hinsi,fzk,vec,vec1,rb)
struct wnn_env *env;		/* 環境 */
w_char *yomi;			/* 読み列 */
int hinsi;			/* 品詞番号 */
w_char *fzk;			/* 付属語文字列 */
int vec;			/* 接続ベクター */
int vec1;			/* 接続ベクター */
struct wnn_ret_buf *rb;		/* 変換結果を返すエリアへのポインタ */

機能

読み yomi を小文節として単文節変換し、第一候補を返す。

hinsi, fzk は、yomi の文節の前の文節の品詞番号、付属語文字列を指定する。

品詞番号、付属語文字列を指定した場合は、 yomi を前の文節に接続できる小文節(前の文節を含めて大文節となる)として変換する。 前の文節に接続できる候補が無い場合は、大文節の先頭になれるものを返す。 それもない場合は、大文節の先頭になれないもの (その前に、指定した品詞以外の品詞がこなくてはいけないもの。 たとえば、hinsi に名詞を指定したときの 助数詞:助数詞の前には、数詞がきて大文節となる)を返す。

このうちどの候補が選ばれたかは、rb->buf->sbn->status に返される。
WNN_CONNECT 指定された(品詞、付属語)に接続できた
WNN_SENTOU 大文節の先頭
WNN_NOT_CONNECT 大文節の先頭になれないし、前に接続できない
WNN_GIJI 疑似文節として変換した

前の文節に付属語が無い場合は、NULL を指定する。

前の小文節とは大別文節として変換する時は、hinsi に、
WNN_BUN_SENTOU 大文節の先頭になれるもの
WNN_ALL_HINSI 全ての小文節

を指定する。

vec、vec1 は、変換のための終端ベクトルを指定する。 後ろの小文節の前端ベクトルを指定する。 その場合は、yomi の最後の文節に後ろの文節を含めたものが大文節となる。 後ろの小文節とは別大文節として変換する時は、vec、 vec1 に、
WNN_VECT_KANREN 連文節変換の終端ベクトル
WNN_VECT_KANTAN 単文節変換の終端ベクトル
WNN_VECT_KANZEN 全候補取出しの終端ベクトル
WNN_VECT_BUNDETSU 文節の終端ベクトル
を指定する。

vec に指定した終端ベクトルは、 vec1 に指定した終端ベクトルよりも、評価基準が高くなる。 通常、vec には後ろの小文節の前端ベクトルを、 vec1 には、WNN_VECT_KANREN を指定する。 vec1 に指定すべき終端ベクトルがない場合は、WNN_VECT_NO を指定する。 この場合 vec のみが変換に使用される。

vec に接続できる文節か、vec1 に接続できる文節かは、 rb->buf->sbn->status_bkwd に返される。 vec に接続できた場合は、WNN_CONNECT_BK が、vec1 に接続できた場合は、 WNN_NOT_CONNECT_BK が返される。 この値は、yomi に指定した、最後語の文節のみが有効である。

rb には、変換結果が返るエリアへのポインタ(struct wnn_ret_buf *)を指定する。 rb は、ユーザが用意し *rb = {0, NULL} に初期化する。 rb->buf に変換結果の小文節の情報(struct wnn_sho_bunsetsu *)が返される。

付属語ファイルが読み込まれていない場合は、エラーとなる。

返り値

正常終了時には、小文節数を返す。 異常終了時には、-1 を返す。

js_kanzen_dai 文節単位で単文節変換し全候補を得る

名称

js_kanzen_dai() 大文節単位で単文節変換し全候補を得る。

形式

#include "jslib.h"

int
js_kanzen_dai(env,yomi,hinsi,fzk,vec,vec1,rb)
struct wnn_env *env;		/* 環境 */
w_char *yomi;			/* 読み列 */
int hinsi;			/* 品詞番号 */
w_char *fzk;			/* 付属語文字列 */
int vec;			/* 接続ベクター */
int vec1;			/* 接続ベクター */
struct wnn_ret_buf *rb;		/* 変換結果を返すエリアへのポインタ */

機能

読み yomi を大文節として単文節変換で変換し、全候補の列を返す。

hinsi, fzk は、yomi の文節の前の文節の品詞番号、付属語文字列を指定する。

品詞番号、付属語文字列を指定した場合は、yomi を前の文節に接続できる 小文節列(前の文節を含めて大文節となる)として変換する。

前の文節に接続できる候補が無い場合は、大文節の先頭になれるものを返す。 それもない場合は、大文節の先頭になれないもの (その前に、指定した品詞以外の品詞がこなくてはいけないもの。 たとえば、hinsi に名詞を指定したときの 助数詞:助数詞の前には、数詞がきて大文節となる)を返す。

このうちどの候補が選ばれたかは、rb->buf->sbn->status に返される。
WNN_CONNECT 指定された(品詞、付属語)に接続できた
WNN_SENTOU 大文節の先頭
WNN_NOT_CONNECT 大文節の先頭になれないし、前に接続できない
WNN_GIJI 疑似文節として変換した

前の文節に付属語が無い場合は、NULL を指定する。

前の小文節とは大別文節として変換する時は、hinsi に、
WNN_BUN_SENTOU 大文節の先頭になれるもの
WNN_ALL_HINSI 全ての小文節

を指定する。

vec、vec1 は、変換のための終端ベクトルを指定する。 後ろの小文節の前端ベクトルを指定する。 その場合は、yomi の最後の文節に後ろの文節を含めたものが大文節となる。 後ろの小文節とは別大文節として変換する時は、vec、 vec1 に、

WNN_VECT_KANREN 連文節変換の終端ベクトル
WNN_VECT_KANTAN 単文節変換の終端ベクトル
WNN_VECT_KANZEN 全候補取出しの終端ベクトル
WNN_VECT_BUNDETSU 文節の終端ベクトル
を指定する。

vec に指定した終端ベクトルは、 vec1 に指定した終端ベクトルよりも、評価基準が高くなる。 通常、vec には後ろの小文節の前端ベクトルを、vec1 には、WNN_VECT_KANREN を指定する。 vec1 に指定すべき終端ベクトルがない場合は、WNN_VECT_NO を指定する。 この場合 vec のみが変換に使用される。

vec に接続できる文節か、vec1 に接続できる文節かは、 rb->buf->sbn->status_bkwd に返される。 vec に接続できた場合は、WNN_CONNECT_BK が、vec1 に接続できた場合は、 WNN_NOT_CONNECT_BK が返される。 この値は、yomi に指定した、最後語の文節のみが有効である。

rb には、変換結果が返るエリアへのポインタ(struct wnn_ret_buf *)を指定す る。rb は、ユーザが用意し *rb = {0, NULL} に初期化する。 rb->buf に変換結果の大文節の情報(struct wnn_dai_bunsetsu *)の先頭への ポインタが返される。そこから、大文節数だけ大文節の情報が、入っている。

付属語ファイルが読み込まれていない場合は、エラーとなる。

返り値

正常終了時には、大文節数を返す。 異常終了時には、-1 を返す。

js_kanzen_sho 小文節単位で単文節変換し全候補を得る

名称

js_kanzen_sho() 小文節単位で単文節変換し全候補を得る。

形式

#include "jslib.h"

int
js_kanzen_sho(env,yomi,hinsi,fzk,vec,vec1,rb)
struct wnn_env *env;		/* 環境 */
w_char *yomi;			/* 読み列 */
int hinsi;			/* 品詞番号 */
w_char *fzk;			/* 付属語文字列 */
int vec;			/* 接続ベクター */
int vec1;			/* 接続ベクター */
struct wnn_ret_buf *rb;		/* 変換結果を返すエリアへのポインタ */

機能

読み yomi を小文節として単文節変換で変換し、全候補の列を返す。

hinsi, fzk は、yomi の文節の前の文節の品詞番号、付属語文字列を指定する。

品詞番号、付属語文字列を指定した場合は、 yomi を前の文節に接続できる小文節(前の文節を含めて大文節となる)として変換する。

前の文節に接続できる候補が無い場合は、大文節の先頭になれるものを返す。 それもない場合は、大文節の先頭になれないもの (その前に、指定した品詞以外の品詞がこなくてはいけないもの。 たとえば、hinsi に名詞を指定したときの 助数詞:助数詞の前には、数詞がきて大文節となる)を返す。

このうちどの候補が選ばれたかは、rb->buf->status に返される。

WNN_CONNECT 指定された(品詞、付属語)に接続できた
WNN_SENTOU 大文節の先頭
WNN_NOT_CONNECT 大文節の先頭になれないし、前に接続できない
WNN_GIJI 疑似文節として変換した

前の文節に付属語が無い場合は、NULL を指定する。

前の小文節とは大別文節として変換する時は、hinsi に、

WNN_BUN_SENTOU 大文節の先頭になれるもの
WNN_ALL_HINSI 全ての小文節
を指定する。

vec、vec1 は、変換のための終端ベクトルを指定する。 後ろの小文節の前端ベクトルを指定する。 その場合は、yomi の最後の文節に後ろの文節を含めたものが大文節となる。 後ろの小文節とは別大文節として変換する時は、vec、 vec1 に、

WNN_VECT_KANREN 連文節変換の終端ベクトル
WNN_VECT_KANTAN 単文節変換の終端ベクトル
WNN_VECT_KANZEN 全候補取出しの終端ベクトル
WNN_VECT_BUNDETSU 文節の終端ベクトル
を指定する。

vec に指定した終端ベクトルは、vec1 に指定した終端ベクトルよりも、 評価基準が高くなる。 通常、vec には後ろの小文節の前端ベクトルを、vec1 には、WNN_VECT_KANREN を指定する。 vec1 に指定すべき終端ベクトルがない場合は、WNN_VECT_NO を指定する。 この場合 vec のみが変換に使用される。

vec に接続できる文節か、vec1 に接続できる文節かは、 rb->buf->sbn->status_bkwd に返される。 vec に接続できた場合は、WNN_CONNECT_BK が、vec1 に接続できた場合は、 WNN_NOT_CONNECT_BK が返される。 この値は、yomi に指定した、最後語の文節のみが有効である。

rb には、変換結果が返るエリアへのポインタ(struct wnn_ret_buf *)を指定する。 rb は、ユーザが用意し *rb = {0, NULL} に初期化する。 rb->buf に変換結果の小文節の情報(struct wnn_sho_bunsetsu *)の先頭へのポインタが返される。 そこから、小文節数だけ小文節の情報が、入っている。

付属語ファイルが読み込まれていない場合は、エラーとなる。

返り値

正常終了時には、大文節数を返す。 異常終了時には、-1 を返す。

js_kill サーバを終了させる

名称

js_kill() サーバを終了させる。

形式

#include "jslib.h"

int
js_kill(server)
WNN_JSERVER_ID *server;	

機能

サーバ server にコネクトしているクライアントが他に存在しない場合、 0 を返し server を終了させる。他にクライアントが存在している場合には、 自分を除いたクライアント数が返される。

返り値

自分を除いたクライアント数が返される。

js_mkdir サーバの管理下にディレクトリを作成

名称

js_mkdir() サーバの管理下にディレクトリを作成する。

形式

#include "jslib.h"

int
js_mkdir(env,path)	
struct wnn_env *env;		/* 環境 */
char *path;			/* 作成するディレクトリ名 */

機能

サーバマシン上にパス名 path で示されるディレクトリを作成する。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_open 日本語マルチクライアントサーバの使用を開始する

名称

js_open() 日本語マルチクライアントサーバの使用を開始する。

形式

#include "jslib.h"

WNN_JSERVER_ID *
js_open(server, timeout)
char *server;		/* サーバのいるマシンのホスト名 */
int timeout;		/* タイムアウト時間 */

機能

日本語マルチクライアントサーバ (jserver) の使用を開始する。 サーバのいるマシンのホスト名 server が、NULLまたは、空文字列、または、 "unix" の場合は、ホスト名は、"unix" になり、 UNIX ドメインのソケットが使用される。 それ以外の場合は、ホスト名は、gethostname(3N)で得た値になり、 INET ドメインのソケットが使用される。

timeout(秒)以内に、サーバと接続できない場合は、接続を中断し異常終了する。 タイムアウトの設定のために、SIGALARM を使用している。 timeout が 0 または、負の場合は、SIGALARM を使用しない。

返り値

正常終了時には、サーバIDを返す。 異常終了時には、NULL を返す。

使用上の注意

タイムアウトには、SIGALARM を使用しているので、注意が必要である。 SIGALARM を使用する場合には、timeout に 0 を設定しなければならない。

js_open_lang ランゲージ・スペシフィックな変換サーバの使用を開始する

名称

js_open_lang() ランゲージ・スペシフィックな変換サーバの使用を開始する。

形式

#include "jslib.h"

WNN_JSERVER_ID *
js_open(server, lang, timeout)
char *server;		/* サーバのいるマシンのホスト名 */
char *lang;		/* ランゲージ */
int timeout;		/* タイムアウト時間 */

機能

ランゲージ・スペシフィックな変換サーバの使用を開始する。 サーバのいるマシンのホスト名 server が、NULLまたは、空文字列、または、 "unix" の場合は、ホスト名は、"unix" になり、UNIX ドメインのソケットが使用される。 この場合の、ソケットの終端名は、serverdefs ファイル中の lang が一致する行の第3項が使用される。 それが見つからない場合は、デフォルト /tmp/jd_sockV4 である。 それ以外の場合は、ホスト名は、gethostname(3N)で得た値になり、 INET ドメインのソケットが使用される。 この場合の、サービス名は、serverdefs ファイル中のlang が一致する行の第4項が使用される。 それが見つからない場合は、デフォルト wnn4 である。

lang で、変換対象の言語を指定する。

"ja_JP" 日本語
"zh_CN" 中国語
"ko_KR" 韓国語
"zh_TW" 台湾語
である。

timeout(秒)以内に、サーバと接続できない場合は、接続を中断し異常終了する。 タイムアウトの設定のために、SIGALARM を使用している。 timeout が 0 または、負の場合は、SIGALARM を使用しない。

返り値

正常終了時には、サーバIDを返す。 異常終了時には、NULL を返す。

使用上の注意

タイムアウトには、SIGALARM を使用しているので、注意が必要である。 SIGALARM を使用する場合には、timeout に 0 を設定しなければならない。

js_param_get 変換パラメータを取り出す

名称

js_param_get() 変換パラメータを取り出す。

js_param_set() 変換パラメータを設定する。

形式

#include "jslib.h"

int
js_param_get(env,para)
struct wnn_env *env;	/* 環境 */
struct wnn_param *para;	/* パラメータ */

int
js_param_set(env,para)
struct wnn_env *env;	/* 環境 */
struct wnn_param *para;	/* パラメータ */

struct wnn_param {
		int     n;      /* N(大)文節解析のN */
		int     nsho;   /* 大文節中の小文節の最大数 */
		int     p1;     /* 幹語の頻度のパラメータ */
		int     p2;     /* 小文節長のパラメータ */
		int     p3;     /* 幹語長のパラメータ */
		int     p4;     /* 今使ったよビットのパラメータ */
		int     p5;     /* 辞書のパラメータ */
		int     p6;     /* 小文節の評価値のパラメータ */
		int     p7;     /* 大文節長のパラメータ */
		int     p8;     /* 小文節数のパラメータ */
		int     p9;     /* 疑似品詞 数字の頻度 */
		int     p10;    /* 疑似品詞 カナの頻度 */
		int     p11;    /*疑似品詞 英数の頻度*/
 		int     p12;    /*疑似品詞 記号の頻度*/
 		int     p13;    /*疑似品詞 閉括弧の頻度*/
 		int     p14;    /*疑似品詞 付属語の頻度*/	
 		int     p15;    /*疑似品詞 開括弧の頻度*/
};

機能

js_param_get は、env で示される環境の変換パラメータを取り出す。

js_param_set は、env で示される環境の変換パラメータ para に設定する。

	<小文節の評価値> = 	p1 * <頻度> +
			   	p2 * <小文節長> +
			   	p3 * <自立語長さ> +
			   	p4 * <今使ったよBIT> +
			   	p5 * <辞書プライオリティ>

	<大文節の評価値> = 	p6 * <小文節の評価値の合計> / <小文節数> +
			   	p7 * <大文節長> +
			   	p8 * <小文節数> +

で評価値を求め、変換候補の順位を決定する。

n, nsho は 1 以上の整数でなければならない。

p1, p2, p3, p4, p5, p6, p7, p8, p9,...,p15 は任意の整数である。

返り値

正常終了時には 0 を返す。 異常終了時には、-1 を返す。

js_set_lang 環境に、ランゲージをセット

名称

js_set_lang() 環境に、ランゲージをセットする。

js_get_lang() 環境から、ランゲージをとりだす。

形式

#include "jslib.h"

void
js_set_lang(env, lang)
struct wnn_env *env;
char *lang;

char *
js_get_lang(env)
struct wnn_env *env;

機能

js_set_lang は、環境 env に、使用するランゲージ lang をセットする。 lang が、NULL の場合、環境変数 $LANG から取り出す。 $LANG が、設定されていない場合は、デフォルトの値が設定される。

デフォルトの値は、

js_JP.ujis@xim=Wnn
である。

返り値

js_get_lang は、 環境 env に、設定されているランゲージへのポインターを返す。

js_version サーバ、及び、ライブラリのバージョンを調べる

名称

js_version() サーバ、及び、ライブラリのバージョンを調べる。

形式

#include "jslib.h"

int
js_version(server,serv,libv)
int *serv;			/* サーバのバージョン */
int *libv;			/* ライブラリのバージョン */
WNN_JSERVER_ID *server;		/* サーバのID */

機能

サーバID server のサーバ、及び、ライブラリのバージョンを調べ、 それぞれ serv、libv に返す。

91年10月1日現在、バージョンは、サーバのバージョンが Ox4100,ライブラリのバージョンがOx4003である。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_who サーバの使用者を得る

名称

js_who() サーバの使用者を得る。

形式

#include "jslib.h"

int
js_who(server,ret)
WNN_JSERVER_ID *server;	
struct wnn_ret_buf *ret;

機能

サーバ server にコネクトしているクライアントの情報を返す。 ret->buf から、WNN_JWHO の配列がクライアントの数だけ返される。

返り値

正常終了時には、クライアントの数を返す。 異常終了時には、-1 を返す。

js_word_add 辞書に単語を登録

js_word_add() 辞書に単語を登録する。

名称

形式

#include "jslib.h"

int
js_word_add(env,dic_no,yomi,kanji,comment,hinshi,init_hindo)
struct wnn_env *env;	/* 環境 */
int dic_no;		/* 辞書番号 */
w_char *yomi;		/* 読み */
w_char *kanji;		/* 漢字 */
w_char *comment;	/* コメント */	
int hinshi;		/* 品詞 */
int init_hindo;		/* 頻度初期値 */

機能

辞書番号 dic の辞書に漢字 kanji, 読み yomi, コメント comment, 品詞 hinsi, 頻度初期値 init_hindo の語を登録する。

漢字と読みとコメントの合計最大文字数は、127文字である。 辞書がない、または、辞書が、固定形式辞書、読み込み専用の場合は、エラーとなる。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_word_comment_set 単語にコメントをセット

js_word_comment_set() 単語にコメントをセットする。

名称

形式

#include "jslib.h"

int
js_word_comment_set(env, dic_no, entry, comment)
struct wnn_env *env;	/* 環境 */
int dic_no;		/* 辞書番号 */
int entry;		/* エントリー番号 */
w_char *comment;	/* コメント */

機能

dic_no, entry で指定された辞書内の単語にコメントをセットする。 コメントをセット可能なためには、その辞書は、登録可能である必要がある。

漢字と読みとコメントの合計最大文字数は、127文字である。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_word_delete 辞書から単語を削除

名称

js_word_delete() 辞書から単語を削除する。

形式

#include "jslib.h"

int
js_word_delete(env,dic_no,entry)
struct wnn_env *env;		/* 環境 */
int dic_no;			/* 辞書番号 */
int entry;			/* 辞書のエントリー番号 */

機能

辞書番号 dic の辞書からエントリー番号 jisyo_entry で示される単語を削除する。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_word_info 辞書引きを行う

名称

js_word_info() 辞書引きを行う。

形式

#include "jslib.h"

int
js_word_info(env,dic_no,entry,ret)
struct wnn_env *env;		/* 環境 */
int dic_no;			/* 辞書番号 */
int entry;			/* エントリ番号 */
struct wnn_ret_buf *ret;

機能

辞書番号 dic_no で示される辞書ファイルの エントリ番号 entry の語の情報を取り出す。 ret->buf に、struct wnn_jdata へのポインタが返される。

返り値

正常終了時には、0 を返す。 異常終了時には、-1 を返す。

js_word_search 辞書から単語を検索

名称

js_word_search() 辞書から単語を検索する。

js_word_search_by_env() 環境の内の全ての辞書から単語を検索する。

形式

#include "jslib.h"

int
js_word_search(env,dic_no,yomi,ret)
struct wnn_env *env;		/* 環境 */
int dic_no;			/* 辞書番号 */
w_char *yomi;			/* 読み */
struct wnn_ret_buf *ret;

int
js_word_search_by_env(env,yomi,ret)
struct wnn_env *env;		/* 環境 */
w_char *yomi;			/* 読み */
struct wnn_ret_buf *ret;

機能

js_word_search は、辞書番号 dic の辞書から 読み yomi で指定される項目を検索する。

js_word_search_by_env は、環境 env の全ての辞書から 読み yomi で指定される項目を検索する。

読みの最大文字数は、256文字である。 検索結果は、ret->buf から struct wnn_jdata の配列が項目数だけ返される。

返り値

正常終了時には、検索された項目数を返す。 異常終了時には、-1 を返す。


“Iwao Watanabe” iwao@dsl.gr.jp