m17n ライブラリ 1.8.4
|
データ構造 | |
struct | M17NObjectHead |
管理下オブジェクトの最初のメンバ. [詳解] | |
マクロ定義 | |
#define | M17N_BEGIN_HEADER |
#define | M17N_END_HEADER |
#define | M17N_FUNC(func) ((M17NFunc) (func)) |
汎関数型へのラッパ. | |
型定義 | |
typedef void(* | M17NFunc) (void) |
汎関数型. | |
typedef struct MCharTable | MCharTable |
文字テーブルの型宣言. | |
typedef MPlist *(* | MTextPropSerializeFunc) (void *val) |
シリアライザ関数の型宣言. | |
typedef void *(* | MTextPropDeserializeFunc) (MPlist *plist) |
デシリアライザ関数の型宣言. | |
typedef struct MDatabase | MDatabase |
データベースの型宣言. | |
列挙型 | |
enum | M17NStatus { M17N_NOT_INITIALIZED , M17N_CORE_INITIALIZED , M17N_SHELL_INITIALIZED , M17N_GUI_INITIALIZED } |
m17n ライブラリの状態を示す列挙型. [詳解] | |
enum | MTextFormat { MTEXT_FORMAT_US_ASCII , MTEXT_FORMAT_UTF_8 , MTEXT_FORMAT_UTF_16LE , MTEXT_FORMAT_UTF_16BE , MTEXT_FORMAT_UTF_32LE , MTEXT_FORMAT_UTF_32BE , MTEXT_FORMAT_MAX } |
M-text のフォーマットを指定する列挙型. [詳解] | |
enum | MTextLineBreakOption { MTEXT_LBO_SP_CM = 1 , MTEXT_LBO_KOREAN_SP = 2 , MTEXT_LBO_AI_AS_ID = 4 , MTEXT_LBO_MAX } |
enum | MTextPropertyControl { MTEXTPROP_FRONT_STICKY = 0x01 , MTEXTPROP_REAR_STICKY = 0x02 , MTEXTPROP_VOLATILE_WEAK = 0x04 , MTEXTPROP_VOLATILE_STRONG = 0x08 , MTEXTPROP_NO_MERGE = 0x10 , MTEXTPROP_CONTROL_MAX = 0x1F } |
テキストプロパティを制御するフラグビット. [詳解] | |
関数 | |
enum M17NStatus | m17n_status (void) |
m17n ライブラリのどの部分が初期化されたか報告する. | |
void * | m17n_object (int size, void(*freer)(void *)) |
int | m17n_object_ref (void *object) |
管理下オブジェクトの参照数を 1 増やす. | |
int | m17n_object_unref (void *object) |
管理下オブジェクトの参照数を 1 減らす. | |
MSymbol | msymbol (const char *name) |
シンボルを得る. | |
MSymbol | msymbol_as_managing_key (const char *name) |
管理キーを作る. | |
int | msymbol_is_managing_key (MSymbol symbol) |
MSymbol | msymbol_exist (const char *name) |
指定された名前を持つシンボルを探す. | |
char * | msymbol_name (MSymbol symbol) |
シンボルの名前を得る. | |
int | msymbol_put (MSymbol symbol, MSymbol key, void *val) |
シンボルプロパティに値を設定する. | |
void * | msymbol_get (MSymbol symbol, MSymbol key) |
シンボルプロパティの値を得る. | |
int | msymbol_put_func (MSymbol symbol, MSymbol key, M17NFunc func) |
シンボルプロパティの値(関数ポインタ)を設定する. | |
M17NFunc | msymbol_get_func (MSymbol symbol, MSymbol key) |
シンボルプロパティの値 (関数ポインタ) を得る. | |
MPlist * | mplist () |
プロパティリストオブジェクトを作る. | |
MPlist * | mplist_copy (MPlist *plist) |
プロパティリストをコピーする. | |
MPlist * | mplist_add (MPlist *plist, MSymbol key, void *val) |
プロパティリスト末尾にプロパティを追加する. | |
MPlist * | mplist_push (MPlist *plist, MSymbol key, void *val) |
プロパティリストの先頭にプロパティを挿入する. | |
void * | mplist_pop (MPlist *plist) |
プロパティリストの先頭からプロパティを削除する. | |
MPlist * | mplist_put (MPlist *plist, MSymbol key, void *val) |
プロパティリスト中のプロパティの値を設定する. | |
void * | mplist_get (MPlist *plist, MSymbol key) |
プロパティリスト中のプロパティの値を得る. | |
MPlist * | mplist_put_func (MPlist *plist, MSymbol key, M17NFunc func) |
プロパティリスト中のプロパティに関数ポインタである値を設定する. | |
M17NFunc | mplist_get_func (MPlist *plist, MSymbol key) |
プロパティリストからプロパティの関数ポインタである値を得る. | |
MPlist * | mplist_find_by_key (MPlist *plist, MSymbol key) |
プロパティリスト中から指定のキーを持つプロパティを探す. | |
MPlist * | mplist_find_by_value (MPlist *plist, void *val) |
プロパティリスト中から指定の値を持つプロパティを探す. | |
MPlist * | mplist_next (MPlist *plist) |
プロパティリストの次の部分リストを返す. | |
MPlist * | mplist_set (MPlist *plist, MSymbol key, void *val) |
プロパティリストの最初のプロパティを設定する. | |
int | mplist_length (MPlist *plist) |
プロパティリストの長さを返す. | |
MSymbol | mplist_key (MPlist *plist) |
プロパティリスト中の最初のプロパティのキーを返す. | |
void * | mplist_value (MPlist *plist) |
プロパティリスト中の最初のプロパティの値を返す. | |
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) |
文字プロパティの値を設定する. | |
MCharTable * | mchartable (MSymbol key, void *default_value) |
新しい文字テーブルを作る. | |
int | mchartable_min_char (MCharTable *table) |
int | mchartable_max_char (MCharTable *table) |
void * | mchartable_lookup (MCharTable *table, int c) |
文字テーブル中で文字に割り当てられた値を返す. | |
int | mchartable_set (MCharTable *table, int c, void *val) |
文字テーブル中での文字の値を設定する. | |
int | mchartable_set_range (MCharTable *table, int from, int to, void *val) |
指定範囲の文字に値を設定する. | |
int | mchartable_map (MCharTable *table, void *ignore, void(*func)(int, int, void *, void *), void *func_arg) |
文字テーブル中の文字に対して指定の関数を呼ぶ. | |
void | mchartable_range (MCharTable *table, int *from, int *to) |
値がデフォルトと異なる文字を探す. | |
MCharTable * | mchar_get_prop_table (MSymbol key, MSymbol *type) |
文字プロパティの文字テーブルを得る. | |
MText * | mtext () |
新しいM-textを割り当てる. | |
void * | mtext_data (MText *mt, enum MTextFormat *fmt, int *nunits, int *pos_idx, int *unit_idx) |
int | mtext_len (MText *mt) |
M-text 中の文字の数. | |
int | mtext_ref_char (MText *mt, int pos) |
M-text 中の指定された位置の文字を返す. | |
int | mtext_set_char (MText *mt, int pos, int c) |
M-text に一文字を設定する. | |
MText * | mtext_copy (MText *mt1, int pos, MText *mt2, int from, int to) |
M-text に指定範囲の文字をコピーする. | |
int | mtext_compare (MText *mt1, int from1, int to1, MText *mt2, int from2, int to2) |
二つの M-text の指定した領域同士を比較する. | |
int | mtext_case_compare (MText *mt1, int from1, int to1, MText *mt2, int from2, int to2) |
二つの M-text の指定した領域を、大文字/小文字の区別を無視して比較する. | |
int | mtext_character (MText *mt, int from, int to, int c) |
M-text 中で文字を探す. | |
int | mtext_del (MText *mt, int from, int to) |
指定範囲の文字を破壊的に取り除く. | |
int | mtext_ins (MText *mt1, int pos, MText *mt2) |
M-text を別の M-text に挿入する. | |
int | mtext_insert (MText *mt1, int pos, MText *mt2, int from, int to) |
M-text の一部を別の M-text に挿入する. | |
int | mtext_ins_char (MText *mt, int pos, int c, int n) |
M-text に文字を挿入する. | |
int | mtext_replace (MText *mt1, int from1, int to1, MText *mt2, int from2, int to2) |
M-text の一部を別の M-text の一部で置換する. | |
MText * | mtext_cat_char (MText *mt, int c) |
M-text に一文字追加する. | |
MText * | mtext_duplicate (MText *mt, int from, int to) |
既存の M-text の一部から新しい M-text をつくる. | |
MText * | mtext_dup (MText *mt) |
M-text のコピーを作る. | |
MText * | mtext_cat (MText *mt1, MText *mt2) |
2個の M-textを連結する. | |
MText * | mtext_ncat (MText *mt1, MText *mt2, int n) |
M-text の一部を別の M-text に付加する. | |
MText * | mtext_cpy (MText *mt1, MText *mt2) |
M-text を別の M-text にコピーする. | |
MText * | mtext_ncpy (MText *mt1, MText *mt2, int n) |
M-text に含まれる最初の何文字かをコピーする. | |
int | mtext_chr (MText *mt, int c) |
M-text 中で指定された文字が最初に現れる位置を返す. | |
int | mtext_rchr (MText *mt, int c) |
M-text 中で指定された文字が最後に現れる位置を返す. | |
int | mtext_cmp (MText *mt1, MText *mt2) |
二つの M-text を文字単位で比較する. | |
int | mtext_ncmp (MText *mt1, MText *mt2, int n) |
二つの M-text の先頭部分を文字単位で比較する. | |
int | mtext_spn (MText *mt1, MText *mt2) |
ある集合の文字を M-text の中で探す. | |
int | mtext_cspn (MText *mt1, MText *mt2) |
ある集合に属さない文字を M-text の中で探す. | |
int | mtext_pbrk (MText *mt1, MText *mt2) |
ある集合に属す文字を M-text の中から探す. | |
int | mtext_text (MText *mt1, int pos, MText *mt2) |
M-text 中で別の M-text を探す. | |
int | mtext_search (MText *mt1, int from, int to, MText *mt2) |
M-text 中の特定の領域で別の M-text を探す. | |
MText * | mtext_tok (MText *mt, MText *delim, int *pos) |
M-text 中のトークンを探す. | |
int | mtext_casecmp (MText *mt1, MText *mt2) |
二つの M-text を大文字/小文字の区別を無視して比較する. | |
int | mtext_ncasecmp (MText *mt1, MText *mt2, int n) |
二つの M-text の先頭部分を大文字/小文字の区別を無視して比較する. | |
int | mtext_lowercase (MText *mt) |
M-text を小文字にする. | |
int | mtext_titlecase (MText *mt) |
M-text をタイトルケースにする. | |
int | mtext_uppercase (MText *mt) |
M-text を大文字にする. | |
int | mtext_line_break (MText *mt, int pos, int option, int *after) |
MPlist * | mplist_deserialize (MText *mt) |
M-text をデシリアライズしてプロパティリストを作る. | |
void * | mtext_get_prop (MText *mt, int pos, MSymbol key) |
テキストプロパティの一番上の値を得る. | |
int | mtext_get_prop_values (MText *mt, int pos, MSymbol key, void **values, int num) |
テキストプロパティの値を複数個得る. | |
int | mtext_get_prop_keys (MText *mt, int pos, MSymbol **keys) |
M-text の指定した位置のテキストプロパティのキーのリストを得る. | |
int | mtext_put_prop (MText *mt, int from, int to, MSymbol key, void *val) |
int | mtext_put_prop_values (MText *mt, int from, int to, MSymbol key, void **values, int num) |
同じキーのテキストプロパティを複数設定する. | |
int | mtext_push_prop (MText *mt, int from, int to, MSymbol key, void *val) |
int | mtext_pop_prop (MText *mt, int from, int to, MSymbol key) |
int | mtext_prop_range (MText *mt, MSymbol key, int pos, int *from, int *to, int deeper) |
テキストプロパティが同じ値をとる範囲を調べる. | |
MTextProperty * | mtext_property (MSymbol key, void *val, int control_bits) |
テキストプロパティを生成する. | |
MText * | mtext_property_mtext (MTextProperty *prop) |
あるテキストプロパティを持つ M-text を返す. | |
MSymbol | mtext_property_key (MTextProperty *prop) |
テキストプロパティのキーを返す. | |
void * | mtext_property_value (MTextProperty *prop) |
テキストプロパティの値を返す. | |
int | mtext_property_start (MTextProperty *prop) |
テキストプロパティの開始位置を返す. | |
int | mtext_property_end (MTextProperty *prop) |
テキストプロパティの終了位置を返す. | |
MTextProperty * | mtext_get_property (MText *mt, int pos, MSymbol key) |
一番上のテキストプロパティを得る. | |
int | mtext_get_properties (MText *mt, int pos, MSymbol key, MTextProperty **props, int num) |
複数のテキストプロパティを得る. | |
int | mtext_attach_property (MText *mt, int from, int to, MTextProperty *prop) |
M-textにテキストプロパティを付加する. | |
int | mtext_detach_property (MTextProperty *prop) |
M-text からテキストプロパティを分離する. | |
int | mtext_push_property (MText *mt, int from, int to, MTextProperty *prop) |
M-text にテキストプロパティをプッシュする. | |
MText * | mtext_serialize (MText *mt, int from, int to, MPlist *property_list) |
MText * | mtext_deserialize (MText *mt) |
MDatabase * | mdatabase_find (MSymbol tag1, MSymbol tag2, MSymbol tag3, MSymbol tag4) |
データベース中のデータを探す. | |
MPlist * | mdatabase_list (MSymbol tag0, MSymbol tag1, MSymbol tag2, MSymbol tag3) |
m17n データベースのデータリストを返す. | |
void * | mdatabase_load (MDatabase *mdb) |
データベースからデータをロードする. | |
MSymbol * | mdatabase_tag (MDatabase *mdb) |
データのタグを得る. | |
MDatabase * | mdatabase_define (MSymbol tag1, MSymbol tag2, MSymbol tag3, MSymbol tag4, void *(*loader)(MSymbol *, void *), void *extra_info) |
m17n データベースのデータを定義する. | |
変数 | |
MSymbol | Mnil |
"nil" を名前として持つシンボル. | |
MSymbol | Mt |
"t" を名前として持つシンボル. | |
MSymbol | Mstring |
"string" を名前として持つシンボル. | |
MSymbol | Msymbol |
"symbol" を名前として持つシンボル. | |
MSymbol | Mtext |
"mtext" を名前として持つシンボル. | |
MSymbol | Mcharset |
MSymbol | Mplist |
"plist" を名前として持つシンボル. | |
MSymbol | Minteger |
MSymbol | Mscript |
スクリプトを表わすキー. | |
MSymbol | Mname |
名前を表わすキー. | |
MSymbol | Mcategory |
一般カテゴリを表わすキー. | |
MSymbol | Mcombining_class |
標準結合クラスを表わすキー. | |
MSymbol | Mbidi_category |
双方向カテゴリを表わすキー. | |
MSymbol | Msimple_case_folding |
対応する小文字一文字を表わすキー. | |
MSymbol | Mcomplicated_case_folding |
対応する小文字の列を表わすキー. | |
MSymbol | Mcased |
Case 処理に用いられる値のキー. | |
MSymbol | Msoft_dotted |
MSymbol | Mcase_mapping |
MSymbol | Mblock |
スクリプトブロック名を表すキー. | |
MSymbol | Mchar_table |
MSymbol | Mlanguage |
MSymbol | Mtext_prop_serializer |
シリアライザ関数を指定するシンボル. | |
MSymbol | Mtext_prop_deserializer |
デシリアライザ関数を指定するシンボル. | |
char * | mdatabase_dir |
変数: UTF-16 と UTF-32 のデフォルトのエンディアン | |
enum MTextFormat | MTEXT_FORMAT_UTF_16 |
値が MTEXT_FORMAT_UTF_16LE か MTEXT_FORMAT_UTF_16BE である変数 | |
const int | MTEXT_FORMAT_UTF_32 |
値が MTEXT_FORMAT_UTF_32LE か MTEXT_FORMAT_UTF_32BE である変数 | |
MText * | mtext_from_data (const void *data, int nitems, enum MTextFormat format) |
指定のデータを元に新しい M-text を割り当てる. | |
#define M17N_BEGIN_HEADER |
#define M17N_END_HEADER |
MSymbol Minteger |
MSymbol Msoft_dotted |
MSymbol Mcase_mapping |