CATGETS(3) | Library Functions Manual | CATGETS(3)

# NAME

`catgets` —
retrieve string from message catalog

# LIBRARY

Standard C Library (libc, -lc)

# SYNOPSIS

`#include <nl_types.h>`

char *
`catgets`(nl_catd catd, int set_id, int msg_id, const char *s);

# DESCRIPTION

The `catgets`() function attempts to retrieve message msg_id of set set_id from the message catalog referenced by the descriptor catd. The argument s points to a default message which is returned if the function is unable to retrieve the specified message.

# RETURN VALUES

If the specified message was retrieved successfully, `catgets`() returns a pointer to an internal buffer containing the message string; otherwise it returns s.

# ERRORS

The `catgets`() function will fail if:

[`EBADF`]
  The catd argument is not a valid message catalog descriptor open for reading.
[`EINTR`]
  The operation was interrupted by a signal.
[`ENOMSG`]
  The message identified by set_id and msg_id is not in the message catalog.

# SEE ALSO

gencat(1), catclose(3), catopen(3), nls(7)

# STANDARDS

The `catgets`() function conforms to X/Open Portability Guide Issue 4, Version 2 (“XPG4.2”).

Major Unix vendors are split over the adoption of the two most important message catalog specifications: catgets or gettext(3). The primary concern with the catgets interface is that every translatable string has to define a number (or a symbolic constant) which must correspond to the message in the catalog. Duplicate message IDs are not allowed. Constructing message catalogs is difficult.

February 12, 2003 | NetBSD 9.0