m17n ライブラリ 1.8.4
読み取り中…
検索中…
一致する文字列を見つけられません
型定義 | 関数 | 変数
ロケール

ロケールオブジェクトとそれに関する API. [詳解]

型定義

typedef struct MLocale MLocale
 MLocale 構造体.
 

関数

MPlistmlanguage_list (void)
 3文字言語コードをリストする.
 
MSymbol mlanguage_code (MSymbol language, int len)
 言語コードを得る.
 
MPlistmlanguage_name_list (MSymbol language, MSymbol target, MSymbol script, MSymbol territory)
 
MTextmlanguage_text (MSymbol language)
 与えられた言語自身で書かれた言語名を返す.
 
MPlistmscript_list (void)
 スクリプト名をリストする.
 
MPlistmscript_language_list (MSymbol script)
 与えられたスクリプトを用いる言語をリストする.
 
MLocalemlocale_set (int category, const char *name)
 現在のロケールを設定する.
 
MSymbol mlocale_get_prop (MLocale *locale, MSymbol key)
 ロケールプロパティの値を得る.
 
int mtext_ftime (MText *mt, const char *format, const struct tm *tm, MLocale *locale)
 日付と時間をフォーマットする.
 
MTextmtext_getenv (const char *name)
 環境変数を得る.
 
int mtext_putenv (MText *mt)
 環境変数を変更/追加する.
 
int mtext_coll (MText *mt1, MText *mt2)
 現在のロケールを用いて2つの M-text を比較する.
 

変数

MSymbol Miso639_1
 
MSymbol Miso639_2
 
MSymbol Mterritory
 
MSymbol Mmodifier
 
MSymbol Mcodeset
 

詳解

ロケールオブジェクトとそれに関する API.

m17n ライブラリはロケール関連情報を MLocale 型のオブジェクトで表現する。

型定義詳解

◆ MLocale

typedef struct MLocale MLocale

MLocale 構造体.

MLocale 構造体は、ロケールの名前、言語、地域、モディファイア、コードセット、および対応するコード系に関する情報を保持するために用いられる。

この構造体の内容は実装に依存する。 内部構造はアプリケーションプログラムからは見えない。

参照:
mlocale_get_prop()

関数詳解

◆ mlanguage_list()

MPlist * mlanguage_list ( void  )

3文字言語コードをリストする.

関数 mlanguage_list() は、整形式 (well-formed) plist を返す。各キー は Msymbol であり、個々の値は ISO639-2 に定められた3文字言語コー ドを名前とするシンボルである。

戻り値:
この関数が返す plist は、呼び出し側が m17n_object_unref() を使っ て解放する必要がある。
参照:
mscript_list().

◆ mlanguage_code()

MSymbol mlanguage_code ( MSymbol  language,
int  len 
)

言語コードを得る.

関数 mlanguage_code() は、language に対応した ISO-639 言語コード が名前であるようなシンボルを返す。language はシンボルであり、その 名前は、ISO639-2 3文字言語コード、ISO639-1 2文字言語コード、英語名、 のいずれかである。

len は返される言語コードの種類を決定する。len が3の場合は ISO639-2 3文字言語コードが返される。2の場合は、もし定義されていれ ば ISO639-1 2文字言語コードが、そうでなければ Mnil が返される。0 の場合は、もし定義されていれば2文字コードが、そうでなければ3文字コー ドが返される。

戻り値:
もし情報が得られれば、この関数は Mnil 以外のシンボルを返す。そう でなければ Mnil を返す。
参照:
mlanguage_name(), mlanguage_text().

◆ mlanguage_name_list()

MPlist * mlanguage_name_list ( MSymbol  language,
MSymbol  target,
MSymbol  script,
MSymbol  territory 
)

◆ mlanguage_text()

MText * mlanguage_text ( MSymbol  language)

与えられた言語自身で書かれた言語名を返す.

関数 mlanguage_text() は、言語 language で書かれた language の 名前を M-text の形式で返す。その言語の代表的な文字がわかっている場 合は、返される M-text の各文字に、キーが Mtext で値がその代表的な 文字を含む M-text であるようなテキストプロパティが付加される。

戻り値:
求める情報が得られた場合、この関数が返す M-text を変更したり解放し たりしてはいけない。情報が得られなかった場合は NULL が返される。
参照:
mlanguage_code(), mlanguage_name().

◆ mscript_list()

MPlist * mscript_list ( void  )

スクリプト名をリストする.

関数 mscript_list() は、整形式 (well-formed) plist を返す。各キー は Msymbol であり、個々の値はスクリプト名を名前とするシンボルであ る。

戻り値:
この関数が返す plist は、呼び出し側が m17n_object_unref() を使っ て解放する必要がある。
参照:
mscript_language_list(), mlanguage_list().

◆ mscript_language_list()

MPlist * mscript_language_list ( MSymbol  script)

与えられたスクリプトを用いる言語をリストする.

関数 mscript_language_list() は、script を用いる言語をリストする。 script はシンボルで、その名前は Unicode Character Database に示さ れているスクリプト名をすべて小文字にしたものである。

戻り値:
この関数は、整形式 (well-formed) plist を返す。各キーは Msymbol であり、個々の値は ISO639-1 に定められた2文字言語コード (定義されていない場合は ISO639-2 に定められた3文字言語コード) を名 前とするシンボルである。返される plist は変更したり解放したりして はならない。script が未知の場合は NULL が返される。
参照:
mscript_list(), mlanguage_list().

◆ mlocale_set()

MLocale * mlocale_set ( int  category,
const char *  name 
)

現在のロケールを設定する.

関数 mlocale_set() は現在のロケールの一部を設定したり問い合わせたりする。ここで一部とは category で指定され、setlocale() の有効な第一引数となるものでなくてはならない。

locale が NULL でなければ、指定した部分のロケールがlocale に設定される。 locale がシステムにサポートされていなければ、設定は行われず、現在のロケールは変わらない。

locale が NULL ならば、現在のロケールの指定した部分を問い合わせる。

戻り値:

呼び出しに成功すれば、mlocale_set() はロケールに対応する opaque ロケールオブジェクトを返す。ロケールの名前は関数 mlocale_get_prop() によって得ることができる。 そうでなければ NULL を返す。

エラー:
MERROR_LOCALE

◆ mlocale_get_prop()

MSymbol mlocale_get_prop ( MLocale locale,
MSymbol  key 
)

ロケールプロパティの値を得る.

関数 mlocale_get_prop() は、ロケール localekey プロパティの値を返す。 keyMname, Mlanguage, Mterritory, Mcodeset, Mmodifier, Mcoding のいずれかである。

◆ mtext_ftime()

int mtext_ftime ( MText mt,
const char *  format,
const struct tm *  tm,
MLocale locale 
)

日付と時間をフォーマットする.

関数 mtext_ftime() は時刻データ (broken-down time) tmformat で指定された形式に清書し、結果をM-text mt に付加する。フォーマットは NULL でなければ ロケール locale に、または現在のロケール(LC_TIME) に従う。

引数 tmformat の意味は strftime() の場合と同じ。

参照:
strftime().

◆ mtext_getenv()

MText * mtext_getenv ( const char *  name)

環境変数を得る.

関数 mtext_getenv()name で指される文字列と合致する文字列を環境変数のリスト中から探す。

見つかった場合には、その値を現在のロケール(LC_CTYPE) に従って M-text にデコードし、そのM-text を返す。

見つからなければ、NULL を返す。

◆ mtext_putenv()

int mtext_putenv ( MText mt)

環境変数を変更/追加する.

関数 mtext_putenv() は M-text mt に従って、環境変数の値を変更したり追加したりする。この関数は、現在のロケール (LC_CTYPE) に従ってmt をエンコードし、それを引数として関数 putenv を呼ぶ。

戻り値:
この関数は、成功した場合には 0 を、エラーが起これば -1 を返す。

◆ mtext_coll()

int mtext_coll ( MText mt1,
MText mt2 
)

現在のロケールを用いて2つの M-text を比較する.

関数 mtext_coll() は2つの M-text mt1mt2 を比較する。戻り値は負の整数値, 0, 正の整数値のいずれかであり、それぞれ mt1mt2 より小さい、同じ、大きい場合に相当する。比較は現在のロケール (LC_COLLATE) に基づいて行われる。

この関数は M-text のテキストプロパティとして自動的にキャッシュされる情報を利用するので、2度目以降の同じ比較は1度目より速く実行される。

変数詳解

◆ Miso639_1

MSymbol Miso639_1

◆ Miso639_2

MSymbol Miso639_2

◆ Mterritory

MSymbol Mterritory

"territory" という名前を持つシンボル.

◆ Mmodifier

MSymbol Mmodifier

"modifier" という名前を持つシンボル.

◆ Mcodeset

MSymbol Mcodeset

"codeset" という名前を持つシンボル.


m17n-lib Home