Provided by: manpages-ja-dev_0.5.0.0.20180315+dfsg-1_all bug

名前

       catopen, catclose - メッセージカタログのオープン/クローズ

書式

       #include <nl_types.h>

       nl_catd catopen(const char *name, int flag);

       int catclose(nl_catd catalog);

説明

       関数  catopen()   はメッセージカタログをオープンし、カタログディスクリプターを返す。  この
       ディスクリプターは catclose() または  execve(2)   が呼び出されるまで有効である。  カタログ
       ディスクリプターを実装するために  ファイルディスクリプターを使用すると、 FD_CLOEXEC フラグ
       が設定される。

       引き数 name はオープンするメッセージカタログの名前を指定する。 name が絶対パスで指定されて
       いる場合  (すなわち '/' を含んでいる場合)、 name はメッセージカタログへのパス名である。 そ
       れ以外の場合、環境変数 NLSPATHname とともに使用され  %N  を置き換える  (locale(7)   参
       照)。  プロセスが  root  権限を持っているときに NLSPATH が使われるかどうかは指定されていな
       い。 NLSPATH 環境変数が存在しないか、  NLSPATH  で指定されたパスの中の  どのパスにおいても
       メッセージカタログをオープンできない場合、  実装で定義されているパスが使われる。  後者のデ
       フォルトパスは、 flag 引き数が NL_CAT_LOCALE の場合には  LC_MESSAGES  のロケール設定に依存
       し、  flag 引き数が 0 の場合には LANG 環境変数に依存する。 ロケールの LC_MESSAGES を変更す
       ると、 オープンされているカタログディスクリプターが無効になるかもしれない。

       catopen()  の flag 引き数は、使用される言語のソースを示すために使われる。 NL_CAT_LOCALE に
       設定されると、 LC_MESSAGES の現在のロケール設定が使われる。 それ以外の場合は LANG 環境変数
       が使われる。

       関数 catclose()  は catalog で指定されたメッセージカタログをクローズする。  これは、以降の
       catalog で指定されるメッセージカタログへの全ての参照を無効にする。

返り値

       関数 catopen()  が成功すると、 nl_catd 型のメッセージカタログディスクリプターを返す。 失敗
       した場合は (nl_catdv) -1 を返し、 errno を設定してエラーを示す。  ここで起こり得るエラーの
       値には、 open(2) の呼び出しの際に起こり得る全てのエラーの値が含まれる。

       関数 catclose()  は、成功した場合 0 を、失敗した場合 -1 を返す。

環境変数

       LC_MESSAGES
              LC_MESSAGES ロケール設定のソースになることも可能なので、 flagNL_CAT_LOCALE に設
              定されている場合は、使用する言語を決定するのに使われる。

       LANG   flag が 0 の場合、使用する言語を決定する。

準拠

       POSIX.1-2001.

注意

       以上は POSIX.1-2001 における説明である。 glibc では NL_CAT_LOCALE の値は 1 である。 デフォ
       ルトのパスは場合によって様々であるが、通常は   /usr/share/locale  以下のファイルが調べられ
       る。

関連項目

       catgets(3), setlocale(3)

この文書について

       この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部  である。プロジェクト
       の説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。