Main Page   Modules   Data Structures   Globals   Appendix  

文字
[コア API]

文字オブジェクトとそれに関する API. [詳細]

変数: 文字プロパティのキー

これらのシンボルは文字プロパティのキーとして使われる。

MSymbol Mscript
 スクリプトを表わすキー.
MSymbol Mname
 名前を表わすキー.
MSymbol Mcategory
 一般カテゴリを表わすキー.
MSymbol Mcombining_class
 標準結合クラスを表わすキー.
MSymbol Mbidi_category
 双方向カテゴリを表わすキー.
MSymbol Msimple_case_folding
 対応する小文字一文字を表わすキー.
MSymbol Mcomplicated_case_folding
 対応する小文字の列を表わすキー.

マクロ定義

#define MCHAR_MAX
 文字コードの最大値.

関数

MSymbol mchar_define_property (const char *name, MSymbol type)
 文字プロパティを定義する.
void * mchar_get_prop (int c, MSymbol key)
 文字プロパティの値を得る.
int mchar_put_prop (int c, MSymbol key, void *val)
 文字プロパティの値を設定する.

説明

m17n ライブラリは 文字 を文字コード(整数)で表現する。最小の文 字コードは 0 で、最大の文字コードはマクロ MCHAR_MAX によって 定義されている。MCHAR_MAX0x3FFFFF(22ビット) 以上である ことが保証されている。

0 から 0x10FFFF までの文字は、それと同じ値を持つ Unicode の 文字に割り当てられている。

各文字は 文字プロパティ と呼ぶプロパティを 0 個以上持つことがで きる。文字プロパティは キー からなる。キーはシンボルで あり、値は (void *) 型にキャストできるものなら何でもよい。 「文字 C の文字プロパティのうちキーが K であるもの」を簡単に 「文字 C の K プロパティ」と呼ぶことがある。


マクロ定義

#define MCHAR_MAX
 

マクロ MCHAR_MAX は文字コードの最大値を与える。


関数

MSymbol mchar_define_property const char *  name,
MSymbol  type
 

関数 mchar_define_property() は、 <Mchar_table, type, sym > というタグを持ったデータベースを m17n 言語情報ベースから探す。 こ こで symname という名前のシンボルである。typeMstring, Mtext, Msymbol, Minteger, Mplist のいずれかでなければならない。

戻り値:
処理に成功すれば mchar_define_property()sym を返す。 失敗した場合は Mnil を返す。
エラー:
MERROR_DB
参照:
mchar_get_prop(), mchar_put_prop()

void* mchar_get_prop int  c,
MSymbol  key
 

関数 mchar_get_prop() は、文字 c の文字プロパティのうちキーが key であるものを探す。

戻り値:
処理が成功すれば mchar_get_prop() は見つかったプロパティの値を返 す。失敗した場合は NULL を返す。

エラー:
MERROR_SYMBOL, MERROR_DB
参照:
mchar_define_property(), mchar_put_prop()

int mchar_put_prop int  c,
MSymbol  key,
void *  val
 

関数 mchar_put_prop() は、文字 c の文字プロパティのうちキーが key で あるものを探し、その値として val を設定する。

戻り値:
処理が成功すれば mchar_put_prop() は0を返す。失敗した場合は-1を返 す。
エラー:
MERROR_SYMBOL, MERROR_DB
参照:
mchar_define_property(), mchar_get_prop()


変数

MSymbol Mscript
 

シンボル Mscript"script" という名前を持ち、文字プ ロパティのキーとして使われる。このプロパティの値は、この文字の属す るスクリプトを表わすシンボルである。

スクリプトを表わすシンボルの名前は、Unicode Technical Report #24 にリストされているもののいずれかである。

MSymbol Mname
 

シンボル Mname"name" という名前を持ち、文字プロパ ティのキーとして使われる。このプロパティの値は C-string であり、そ の文字の名前を表わす。

MSymbol Mcategory
 

シンボル Mcategory"category" という名前を持ち、文 字プロパティのキーとして使われる。このプロパティの値は、対応する 一般カテゴリ を表わすシンボルである。

一般カテゴリを表わすシンボルの名前は、General Categoryの 省略形として Unicode に定義されているものである。

MSymbol Mcombining_class
 

シンボル Mcombining_class"combining-class" という 名前を持ち、文字プロパティのキーとして使われる。このプロパティの値 は、対応する 標準結合クラス を表わす整数である。

標準結合クラスを表わす整数の意味は、Unicode に定義されているもの と同じである。

MSymbol Mbidi_category
 

シンボル Mbidi_category"bidi-category" という名前 を持ち、文字プロパティのキーとして使われる。このプロパティの値は、 対応する 双方向カテゴリ を表わすシンボルである。

双方向カテゴリを表わすシンボルの名前は、Bidirectional Category の型として Unicode に定義されているものである。

MSymbol Msimple_case_folding
 

シンボル Msimple_case_folding"simple-case-folding" という名前を持ち、文字プロパティのキーとして使われる。このプロパティ の値は、対応する小文字一文字であり、大文字/小文字の区別を無視した 文字列比較の際に使われる。

複雑な比較方法を必要とする文字であった場合(別の一文字と対応付ける ことによって比較できない場合)、このプロパティの値は 0xFFFF に なる。この場合その文字は、Mcomplicated_case_folding というキーの 文字プロパティを持つ。

MSymbol Mcomplicated_case_folding
 

シンボル Mcomplicated_case_folding"complicated-case-folding" という名前を持ち、文字プロパティ のキーとして使われる。このプロパティの値は、対応する小文字列からな る M-text であり、大文字/小文字の区別を無視した文字列比較の際に使 われる。


このページの先頭

Main Page   Modules   Data Structures   Globals   Appendix  

mulemark mule-aist@m17n.org