Man page - rkmapphonogram(3)
Packages contains this manual
apt-get install libcanna1g-dev
Available languages:
en jaManual
RKMAPPHONOGRAM
名 前形 式
説 明
戻 り 値
名 前
RkMapPhonogram - 指 定 さ れ た ロ ー マ 字 か な 変 換 テ ー ブ ル を 用 い て ロ ー マ 字 か な 変 換 を 行 う
形 式
#include
<canna/RK.h>
int RkMapPhonogram(romaji, dst, maxdst, src, srclen, flags,
ulen, dlen, tlen, rule)
struct RkRxDic *romaji;
unsigned char *dst;
int maxdst;
unsigned char *src;
int srclen;
int flags;
int *ulen;
int *dlen;
int *tlen;
int *rule;
説 明
RkMapPhonogram は , 指 定 さ れ た ロ ー マ 字 か な 変 換 テ ー ブ ル を 用 い て ロ ー マ 字 か な 変 換 を 行 い ま す . romaji は , RkOpenRoma(3) に よ り 返 さ れ た ロ ー マ 字 か な 変 換 テ ー ブ ル へ の ポ イ ン タ を 与 え ま す . RkMapPhonogram は , 領 域 src か ら srclen バ イ ト 続 く デ ー タ を ロ ー マ 字 列 と し て 解 釈 し , ロ ー マ 字 列 先 頭 と 一 致 す る ロ ー マ 字 か な 変 換 規 則 を ロ ー マ 字 か な 変 換 テ ー ブ ル か ら 探 し ま す . 対 応 す る 変 換 規 則 が 見 つ か っ た 場 合 に は , 対 応 す る か な 文 字 列 を dst 領 域 に 格 納 し そ の バ イ ト 長 を dlen に て 返 し ま す . た だ し , 文 字 列 の バ イ ト 数 が maxdst -1 を 超 え る 場 合 に は 結 果 は 切 り 捨 て ら れ ま す .
flags は , ロ ー マ 字 か な 変 換 を 制 御 す る た め の フ ラ グ で 以 下 を or で 組 合 わ せ ま す .
|
RK_SOKUON |
促 音 処 理 を 有 効 に し ま す . 促 音 処 理 は , 先 頭 2文 字 が 同 一 文 字 xxで あ り , ロ ー マ 字 か な 変 換 テ ー ブ ル フ ァ イ ル に 登 録 さ れ て い な い 時 に 限 り , xxか ら 「 っ 」 へ 変 換 し ま す . こ の 処 理 は 旧 形 式 の ロ ー マ 字 か な 変 換 テ ー ブ ル を 使 用 し て い る と き 用 で す 。 |
||
|
RK_FLUSH |
す べ て の ロ ー マ 字 を 強 制 的 に 変 換 し ま す . こ れ は 最 後 の nの 処 理 に 有 効 で す . |
ulen, dlen, tlen は , ロ ー マ 字 か な 変 換 の 進 行 具 合 を 管 理 す る こ と に 使 わ れ ま す .
例 え ば , ‘‘tt’’の よ う な 文 字 を RkMapPhonogram に 与 え る と 最 初 の ‘‘t’’が ロ ー マ 字 か な 変 換 に 使 わ れ , dst に は ‘‘っ ’’が 返 り ま す . 残 り の ‘‘t’’は 次 の ロ ー マ 字 か な 変 換 に て 再 び 使 用 さ れ ま す . こ の 後 ‘‘a’’が 入 力 さ れ た 場 合 , 前 回 の RkMapPhonogram で 残 さ れ た ‘‘t’’と 入 力 さ れ た ‘‘a’’を RkMapPhonogram に 与 え , ‘‘た ’’を 得 ま す .
ulen に は , src の う ち ロ ー マ 字 か な 変 換 に 用 い ら れ た 文 字 の バ イ ト 長 が 返 り ま す .
dlen に は ロ ー マ 字 か な 変 換 さ れ た 結 果 得 ら れ た か な の バ イ ト 長 が 返 り ま す .
そ し て , tlen に は , 次 の ロ ー マ 字 か な 変 換 で 引 き 続 き 使 わ れ る べ き 文 字 の バ イ ト 長 が 返 り ま す . tlen で 示 さ れ る 文 字 列 は , dst バ ッ フ ァ に お い て , ロ ー マ 字 か な 変 換 済 の 文 字 列 の 後 ろ に 置 か れ ま す .
ulen, dlen, tlen に 対 し て ヌ ル ポ イ ン タ を 与 え た 場 合 に は , こ れ ら の 値 は 返 ら ず 単 に 無 視 さ れ ま す .
rule に て , ロ ー マ 字 か な 変 換 ル ー ル に 関 す る 情 報 を や り と り し ま す . 最 初 に RkMapPhonogram を 呼 ぶ 時 は 0を 格 納 し た 変 数 へ の ポ イ ン タ を 与 え て 下 さ い . 最 初 の 呼 出 し か ら 戻 っ た 時 に そ の 変 数 に は (0の 代 わ り に )ロ ー マ 字 か な 変 換 ル ー ル に 関 す る 内 部 的 な 情 報 が 返 さ れ ま す . ロ ー マ 字 か な 変 換 を 続 け る 場 合 は , 前 回 指 定 し た 変 数 へ の ポ イ ン タ を 再 び RkMapPhonogram に 与 え て 下 さ い .
戻 り 値
dst で 返 さ れ る 文 字 が ロ ー マ 字 か な 変 換 テ ー ブ ル に 存 在 し た ル ー ル を 用 い て 変 換 さ れ た も の で あ る か ど う か を 返 し ま す . ロ ー マ 字 か な 変 換 テ ー ブ ル に あ っ た ル ー ル が 使 わ れ た 場 合 に は 1を 返 し , そ う で な い 場 合 に は 0を 返 し ま す .