Provided by: manpages-ru-dev_4.21.0-2_all bug

ИМЯ

       catopen, catclose - открывает/закрывает каталог сообщений

LIBRARY

       Standard C library (libc, -lc)

СИНТАКСИС

       #include <nl_types.h>

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

ОПИСАНИЕ

       Функция catopen() открывает каталог сообщений и возвращает дескриптор каталога. Дескриптор
       остаётся  действительным  до  вызова  catclose()  или  execve(2).  Если   для   реализации
       дескрипторов каталогов используется файловый дескриптор, то для него будет установлен флаг
       FD_CLOEXEC.

       The argument name specifies the name of  the  message  catalog  to  be  opened.   If  name
       specifies  an absolute path (i.e., contains a '/'), then name specifies a pathname for the
       message  catalog.   Otherwise,  the  environment  variable  NLSPATH  is  used  with   name
       substituted  for  %N (see locale(7)).  It is unspecified whether NLSPATH will be used when
       the process has root privileges.  If NLSPATH does not exist in the environment,  or  if  a
       message  catalog  cannot  be  opened  in  any  of  the  paths  specified  by  it,  then an
       implementation defined path  is  used.   This  latter  default  path  may  depend  on  the
       LC_MESSAGES  locale  setting  when  the  flag  argument  is  NL_CAT_LOCALE and on the LANG
       environment variable when the flag argument is 0.  Changing the LC_MESSAGES  part  of  the
       locale may invalidate open catalog descriptors.

       В  аргументе   flag  функции  catopen()  задаётся  источник  используемого языка. Если его
       значение равно NL_CAT_LOCALE, то для LC_MESSAGES  будет  использована  текущая  локаль.  В
       противном случае будет использована переменная окружения LANG.

       Функция  catclose()  закрывает  каталог  сообщений,  указанный  в catalog. Все последующие
       обращения к каталогу сообщений, определяемому catalog, считаются ошибкой.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       The function catopen()  returns a message catalog descriptor of type nl_catd  on  success.
       On  failure,  it  returns (nl_catd) -1 and sets errno to indicate the error.  The possible
       error values include all possible values for the open(2)  call.

       При успешном выполнении функция catclose() возвращает 0, а в случае ошибки значение -1.

ОКРУЖЕНИЕ

       LC_MESSAGES
              Может  быть  источником  LC_MESSAGES  для  локали  и,  таким  образом,   определять
              используемый язык в случае, когда flag установлен в NL_CAT_LOCALE.

       LANG   Язык, используемый в случае, когда flag равен 0.

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).

       ┌────────────────────────────────────────────────────┬──────────────────────┬─────────────┐
       │ИнтерфейсАтрибутЗначение    │
       ├────────────────────────────────────────────────────┼──────────────────────┼─────────────┤
       │catopen()                                           │ Безвредность в нитях │ MT-Safe env │
       ├────────────────────────────────────────────────────┼──────────────────────┼─────────────┤
       │catclose()                                          │ Безвредность в нитях │ MT-Safe     │
       └────────────────────────────────────────────────────┴──────────────────────┴─────────────┘

СТАНДАРТЫ

       POSIX.1-2001, POSIX.1-2008.

ЗАМЕЧАНИЯ

       Описание   выше  соответствует  POSIX.1.  В  glibc  значение  NL_CAT_LOCALE  равно.  Путь,
       используемый  по  умолчанию,  варьируется,  но,  обычно,  представляет   собой   различные
       подкаталоги /usr/share/locale.

СМ. ТАКЖЕ

       catgets(3), setlocale(3)

ПЕРЕВОД

       Русский    перевод    этой    страницы    руководства    был    сделан   Azamat   Hackimov
       <azamat.hackimov@gmail.com>, Dmitriy  S.  Seregin  <dseregin@59.ru>,  Dmitry  Bolkhovskikh
       <d20052005@yandex.ru>,    Katrin    Kutepova    <blackkatelv@gmail.com>,    Yuri    Kozlov
       <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com>

       Этот  перевод  является  бесплатной  документацией;  прочитайте  Стандартную  общественную
       лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы
       узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если вы обнаружите ошибки в переводе  этой  страницы  руководства,  пожалуйста,  отправьте
       электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.