.\" $NetBSD: catgets.3,v 1.16 2003/07/26 19:24:49 salo Exp $ .\" .\" Written by J.T. Conklin . .\" Public domain. .\" .Dd February 12, 2003 .Dt CATGETS 3 .Os .Sh NAME .Nm catgets .Nd retrieve string from message catalog .Sh LIBRARY .Lb libc .Sh SYNOPSIS .In nl_types.h .Ft char * .Fn catgets "nl_catd catd" "int set_id" "int msg_id" "const char *s" .Sh DESCRIPTION The .Fn catgets function attempts to retrieve message .Fa msg_id of set .Fa set_id from the message catalog referenced by the descriptor .Fa catd . The argument .Fa s points to a default message which is returned if the function is unable to retrieve the specified message. .Sh RETURN VALUES If the specified message was retrieved successfully, .Fn catgets returns a pointer to an internal buffer containing the message string; otherwise it returns .Fa s . .Sh ERRORS The .Fn catgets function will fail if: .Bl -tag -width Er .It Bq Er EBADF The .Fa catd argument is not a valid message catalog descriptor open for reading. .It Bq Er EINTR The operation was interrupted by a signal. .It Bq Er ENOMSG The message identified by .Fa set_id and .Fa msg_id is not in the message catalog. .El .Sh SEE ALSO .Xr gencat 1 , .Xr catclose 3 , .Xr catopen 3 , .Xr nls 7 .Sh STANDARDS The .Fn catgets function conforms to .St -xpg4.2 . .Pp Major Unix vendors are split over the adoption of the two most important message catalog specifications: catgets or .Xr 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.