]> git.ipfire.org Git - thirdparty/gettext.git/commitdiff
New manual pages.
authorBruno Haible <bruno@clisp.org>
Mon, 21 May 2001 12:57:47 +0000 (12:57 +0000)
committerBruno Haible <bruno@clisp.org>
Sun, 28 Jun 2009 14:35:49 +0000 (16:35 +0200)
14 files changed:
ChangeLog
Makefile.am
configure.in
man/ChangeLog [new file with mode: 0644]
man/Makefile.am [new file with mode: 0644]
man/bind_textdomain_codeset.3.in [new file with mode: 0644]
man/bindtextdomain.3.in [new file with mode: 0644]
man/dcgettext.3 [new file with mode: 0644]
man/dcngettext.3 [new file with mode: 0644]
man/dgettext.3 [new file with mode: 0644]
man/dngettext.3 [new file with mode: 0644]
man/gettext.3.in [new file with mode: 0644]
man/ngettext.3.in [new file with mode: 0644]
man/textdomain.3.in [new file with mode: 0644]

index 1b558459486b9acd057c7e50fc55667f282546c1..18a1c64d5afbf969dcf4ab68a78d843faa93204e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2001-05-20  Bruno Haible  <haible@clisp.cons.org>
+
+       * Makefile.am (SUBDIRS): Add man.
+       * configure.in (AC_OUTPUT): Add man/Makefile.
+
 2001-05-17  Bruno Haible  <haible@clisp.cons.org>
 
        * configure.in (ALL_LINGUAS): Add cs, gl, id, it, ru. zh.
index 4edc9c534f0bf47aceb210cdebd9fa3b1bbd60eb..bc1fe06d1db6d8271a31729111caa0145666760c 100644 (file)
@@ -25,7 +25,7 @@ ACLOCAL_AMFLAGS = -I m4
 gettextsrcdir = $(datadir)/gettext
 gettextsrc_DATA = ABOUT-NLS
 
-SUBDIRS = doc intl lib src po m4 misc tests
+SUBDIRS = doc intl lib src po man m4 misc tests
 
 EXTRA_DIST = BUGS DISCLAIM README.gemtext aclocal.sh \
              djgpp/Makefile.maint djgpp/README.in djgpp/README \
index c09bea0c9bb2235b8892c921f43e1c5c01e7b6cd..c965ed2599bb22a2daea270f91cbfc81e16f0d2f 100644 (file)
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 AC_PREREQ(2.13)
-AC_REVISION($Revision: 1.25.2.2 $)
+AC_REVISION($Revision: 1.25.2.3 $)
 AC_INIT(src/msgfmt.c)
 AM_INIT_AUTOMAKE(gettext, 0.10.38)
 RELEASE_DATE=2001-05-19      dnl in "date +%Y-%m-%d" format
@@ -105,8 +105,8 @@ $RELEASE_DATE  GNU  <bug-gnu-utils@gnu.org>
 
 EOF
 
-AC_OUTPUT([Makefile lib/Makefile intl/Makefile src/Makefile \
-           po/Makefile.in doc/Makefile tests/Makefile m4/Makefile \
+AC_OUTPUT([Makefile lib/Makefile intl/Makefile src/Makefile po/Makefile.in \
+           doc/Makefile man/Makefile tests/Makefile m4/Makefile \
           misc/Makefile misc/gettextize], [
   dnl Workaround an automake-1.4 bug which generates a distclean-recursive
   dnl target in Makefile.in which causes a "make distclean" failure on FreeBSD.
diff --git a/man/ChangeLog b/man/ChangeLog
new file mode 100644 (file)
index 0000000..d196f6d
--- /dev/null
@@ -0,0 +1,10 @@
+2001-05-20  Bruno Haible  <haible@clisp.cons.org>
+
+       * Makefile.am: New file.
+       * gettext.3.in: New file.
+       * ngettext.3.in: New file.
+       * textdomain.3.in: New file.
+       * bindtextdomain.3.in: New file.
+       * bind_textdomain_codeset.3.in: New file.
+       * dgettext.3, dcgettext.3, dngettext.3, dcngettext.3: New files.
+
diff --git a/man/Makefile.am b/man/Makefile.am
new file mode 100644 (file)
index 0000000..dc1c4d1
--- /dev/null
@@ -0,0 +1,113 @@
+## Makefile for the man subdirectory of the GNU NLS Utilities
+## Copyright (C) 2001 Free Software Foundation, Inc.
+##
+## This program is free software; you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 2, or (at your option)
+## any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program; if not, write to the Free Software
+## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+## Process this file with automake to produce Makefile.in.
+
+VERSION = @VERSION@
+mandir = @mandir@
+docdir = $(prefix)/doc/@PACKAGE@
+htmldir = $(docdir)
+
+AUTOMAKE_OPTIONS = 1.2 gnits
+
+man_MAN3 = gettext.3 ngettext.3 \
+textdomain.3 bindtextdomain.3 bind_textdomain_codeset.3
+man_MAN3IN = gettext.3.in ngettext.3.in \
+textdomain.3.in bindtextdomain.3.in bind_textdomain_codeset.3.in
+man_MANS = $(man_MAN3) \
+dgettext.3 dcgettext.3 dngettext.3 dcngettext.3
+
+man_HTML = gettext.3.html ngettext.3.html \
+textdomain.3.html bindtextdomain.3.html bind_textdomain_codeset.3.html
+
+EXTRA_DIST = $(man_MANS) $(man_MAN3IN) $(man_HTML)
+MAINTAINERCLEANFILES = $(man_MAN1) $(man_MAN3) $(man_HTML)
+
+RM = rm -f
+
+# groff 1.17 or newer.
+MAN2HTML = groff -mandoc -Thtml
+
+
+# We distribute both the man pages and their HTML equivalent.
+# The user can generate the parts, via
+#   make man
+#   make html
+
+all-local: html
+install-data-local: install-html
+installdirs-local: installdirs-html
+uninstall-local: uninstall-html
+
+
+# Man pages.
+
+gettext.3: gettext.3.in $(top_srcdir)/configure.in
+       sed -e 's/@''VERSION''@/@VERSION@/g' < $(srcdir)/gettext.3.in > t-$@
+       mv t-$@ $@
+ngettext.3: ngettext.3.in $(top_srcdir)/configure.in
+       sed -e 's/@''VERSION''@/@VERSION@/g' < $(srcdir)/ngettext.3.in > t-$@
+       mv t-$@ $@
+textdomain.3: textdomain.3.in $(top_srcdir)/configure.in
+       sed -e 's/@''VERSION''@/@VERSION@/g' < $(srcdir)/textdomain.3.in > t-$@
+       mv t-$@ $@
+bindtextdomain.3: bindtextdomain.3.in $(top_srcdir)/configure.in
+       sed -e 's/@''VERSION''@/@VERSION@/g' < $(srcdir)/bindtextdomain.3.in > t-$@
+       mv t-$@ $@
+bind_textdomain_codeset.3: bind_textdomain_codeset.3.in $(top_srcdir)/configure.in
+       sed -e 's/@''VERSION''@/@VERSION@/g' < $(srcdir)/bind_textdomain_codeset.3.in > t-$@
+       mv t-$@ $@
+
+
+# Man pages in HTML format.
+
+html: $(man_HTML)
+
+gettext.3.html: gettext.3.in
+       $(MAN2HTML) $(srcdir)/gettext.3.in > t-$@
+       mv t-$@ $@
+ngettext.3.html: ngettext.3.in
+       $(MAN2HTML) $(srcdir)/ngettext.3.in > t-$@
+       mv t-$@ $@
+textdomain.3.html: textdomain.3.in
+       $(MAN2HTML) $(srcdir)/textdomain.3.in > t-$@
+       mv t-$@ $@
+bindtextdomain.3.html: bindtextdomain.3.in
+       $(MAN2HTML) $(srcdir)/bindtextdomain.3.in > t-$@
+       mv t-$@ $@
+bind_textdomain_codeset.3.html: bind_textdomain_codeset.3.in
+       $(MAN2HTML) $(srcdir)/bind_textdomain_codeset.3.in > t-$@
+       mv t-$@ $@
+
+install-html:
+       $(mkinstalldirs) $(DESTDIR)$(htmldir)
+       for file in $(man_HTML); do \
+         if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
+         $(INSTALL_DATA) $$dir/$$file $(DESTDIR)$(htmldir)/$$file; \
+       done
+
+installdirs-html:
+       $(mkinstalldirs) $(DESTDIR)$(htmldir)
+
+uninstall-html:
+       for file in $(man_HTML); do \
+         $(RM) $(DESTDIR)$(htmldir)/$$file; \
+       done
+
+
+# One more automake bug.
+installdirs: installdirs-local
diff --git a/man/bind_textdomain_codeset.3.in b/man/bind_textdomain_codeset.3.in
new file mode 100644 (file)
index 0000000..e1373cf
--- /dev/null
@@ -0,0 +1,72 @@
+.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 2 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\"   GNU glibc-2 source code and manual
+.\"   GNU gettext source code and manual
+.\"   LI18NUX 2000 Globalization Specification
+.\"
+.TH BIND_TEXTDOMAIN_CODESET 3 "May 2001" "GNU gettext @VERSION@"
+.SH NAME
+bind_textdomain_codeset \- set encoding of message translations
+.SH SYNOPSIS
+.nf
+.B #include <libintl.h>
+.sp
+.BI "char * bind_textdomain_codeset (const char * " domainname ,
+.BI "                                const char * " codeset );
+.fi
+.SH DESCRIPTION
+The \fBbind_textdomain_codeset\fP function sets the output codeset for message
+catalogs for domain \fIdomainname\fP.
+.PP
+A message domain is a set of translatable \fImsgid\fP messages. Usually,
+every software package has its own message domain.
+.PP
+By default, the \fBgettext\fP family of functions returns translated messages
+in the locale's character encoding, which can be retrieved as
+\fBnl_langinfo(CODESET)\fP. The need for calling \fBbind_textdomain_codeset\fP
+arises for programs which store strings in a locale independent way (e.g.
+UTF-8) and want to avoid an extra character set conversion on the returned
+translated messages.
+.PP
+\fIdomainname\fP must be a non-empty string.
+.PP
+If \fIcodeset\fP is not NULL, it must be a valid encoding name which can be
+used for the \fBiconv_open\fP function. The \fBbind_textdomain_codeset\fP
+function sets the output codeset for message catalogs belonging to domain
+\fIdomainname\fP to \fIcodeset\fP. The function makes copies of the argument
+strings as needed.
+.PP
+If \fIcodeset\fP is NULL, the function returns the previously set codeset for
+domain \fIdomainname\fP. The default is NULL, denoting the locale's character
+encoding.
+.SH "RETURN VALUE"
+If successful, the \fBbind_textdomain_codeset\fP function returns the current
+codeset for domain \fIdomainname\fP, after possibly changing it. The resulting
+string is valid until the next \fBbind_textdomain_codeset\fP call for the same
+\fIdomainname\fP and must not be modified or freed. If a memory allocation
+failure occurs, it sets \fBerrno\fP to \fBENOMEM\fP and returns NULL. If no
+codeset has been set for domain \fIdomainname\fP, it returns NULL.
+.SH ERRORS
+The following error can occur, among others:
+.TP
+.B ENOMEM
+Not enough memory available.
+.SH BUGS
+The return type ought to be \fBconst char *\fP, but is \fBchar *\fP to avoid
+warnings in C code predating ANSI C.
+.SH "SEE ALSO"
+.BR gettext (3),
+.BR dgettext (3),
+.BR dcgettext (3),
+.BR ngettext (3),
+.BR dngettext (3),
+.BR dcngettext (3),
+.BR textdomain (3),
+.BR nl_langinfo (3),
+.BR iconv_open (3)
diff --git a/man/bindtextdomain.3.in b/man/bindtextdomain.3.in
new file mode 100644 (file)
index 0000000..d027872
--- /dev/null
@@ -0,0 +1,69 @@
+.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 2 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\"   GNU glibc-2 source code and manual
+.\"   GNU gettext source code and manual
+.\"   LI18NUX 2000 Globalization Specification
+.\"
+.TH BINDTEXTDOMAIN 3 "May 2001" "GNU gettext @VERSION@"
+.SH NAME
+bindtextdomain \- set directory containing message catalogs
+.SH SYNOPSIS
+.nf
+.B #include <libintl.h>
+.sp
+.BI "char * bindtextdomain (const char * " domainname ", const char * " dirname );
+.fi
+.SH DESCRIPTION
+The \fBbindtextdomain\fP function sets the base directory of the hierarchy
+containing message catalogs for a given message domain.
+.PP
+A message domain is a set of translatable \fImsgid\fP messages. Usually,
+every software package has its own message domain. The need for calling
+\fBbindtextdomain\fP arises because packages are not always installed with
+the same prefix as the <libintl.h> header and the libc/libintl libraries.
+.PP
+Message catalogs will be expected at the pathnames
+\fIdirname\fP/\fIlocale\fP/\fIcategory\fP/\fIdomainname\fP.mo,
+where \fIlocale\fP is a locale name and \fIcategory\fP is a locale facet such
+as \fBLC_MESSAGES\fP.
+.PP
+\fIdomainname\fP must be a non-empty string.
+.PP
+If \fIdirname\fP is not NULL, the base directory for message catalogs belonging
+to domain \fIdomainname\fP is set to \fIdirname\fP. The function makes copies
+of the argument strings as needed. If the program wishes to call the
+\fBchdir\fP function, it is important that \fIdirname\fP be an absolute
+pathname; otherwise it cannot be guaranteed that the message catalogs will
+be found.
+.PP
+If \fIdirname\fP is NULL, the function returns the previously set base
+directory for domain \fIdomainname\fP.
+.SH "RETURN VALUE"
+If successful, the \fBbindtextdomain\fP function returns the current base
+directory for domain \fIdomainname\fP, after possibly changing it. The
+resulting string is valid until the next \fBbindtextdomain\fP call for the
+same \fIdomainname\fP and must not be modified or freed. If a memory allocation
+failure occurs, it sets \fBerrno\fP to \fBENOMEM\fP and returns NULL.
+.SH ERRORS
+The following error can occur, among others:
+.TP
+.B ENOMEM
+Not enough memory available.
+.SH BUGS
+The return type ought to be \fBconst char *\fP, but is \fBchar *\fP to avoid
+warnings in C code predating ANSI C.
+.SH "SEE ALSO"
+.BR gettext (3),
+.BR dgettext (3),
+.BR dcgettext (3),
+.BR ngettext (3),
+.BR dngettext (3),
+.BR dcngettext (3),
+.BR textdomain (3),
+.BR realpath (3)
diff --git a/man/dcgettext.3 b/man/dcgettext.3
new file mode 100644 (file)
index 0000000..9082c86
--- /dev/null
@@ -0,0 +1 @@
+.so man3/gettext.3
diff --git a/man/dcngettext.3 b/man/dcngettext.3
new file mode 100644 (file)
index 0000000..5fcf629
--- /dev/null
@@ -0,0 +1 @@
+.so man3/ngettext.3
diff --git a/man/dgettext.3 b/man/dgettext.3
new file mode 100644 (file)
index 0000000..9082c86
--- /dev/null
@@ -0,0 +1 @@
+.so man3/gettext.3
diff --git a/man/dngettext.3 b/man/dngettext.3
new file mode 100644 (file)
index 0000000..5fcf629
--- /dev/null
@@ -0,0 +1 @@
+.so man3/ngettext.3
diff --git a/man/gettext.3.in b/man/gettext.3.in
new file mode 100644 (file)
index 0000000..8a8766d
--- /dev/null
@@ -0,0 +1,99 @@
+.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 2 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\"   GNU glibc-2 source code and manual
+.\"   GNU gettext source code and manual
+.\"   LI18NUX 2000 Globalization Specification
+.\"
+.TH GETTEXT 3 "May 2001" "GNU gettext @VERSION@"
+.SH NAME
+gettext, dgettext, dcgettext \- translate message
+.SH SYNOPSIS
+.nf
+.B #include <libintl.h>
+.sp
+.BI "char * gettext (const char * " msgid );
+.BI "char * dgettext (const char * " domainname ", const char * " msgid );
+.BI "char * dcgettext (const char * " domainname ", const char * " msgid ,
+.BI "                  int " category );
+.fi
+.SH DESCRIPTION
+The \fBgettext\fP, \fBdgettext\fP and \fBdcgettext\fP functions attempt to
+translate a text string into the user's native language, by looking up the
+translation in a message catalog.
+.PP
+The \fImsgid\fP argument identifies the message to be translated. By
+convention, it is the English version of the message, with non-ASCII
+characters replaced by ASCII approximations. This choice allows the
+translators to work with message catalogs, called PO files, that contain
+both the English and the translated versions of each message, and can be
+installed using the \fBmsgfmt\fP utility.
+.PP
+A message domain is a set of translatable \fImsgid\fP messages. Usually,
+every software package has its own message domain. The domain name is used
+to determine the message catalog where the translation is looked up; it must
+be a non-empty string. For the \fBgettext\fP function, it is specified through
+a preceding \fBtextdomain\fP call. For the \fBdgettext\fP and \fBdcgettext\fP
+functions, it is passed as the \fIdomainname\fP argument; if this argument is
+NULL, the domain name specified through a preceding \fBtextdomain\fP call is
+used instead.
+.PP
+Translation lookup operates in the context of the current locale. For the
+\fBgettext\fP and \fBdgettext\fP functions, the \fBLC_MESSAGES\fP locale
+facet is used. It is determined by a preceding call to the \fBsetlocale\fP
+function. \fBsetlocale(LC_ALL,"")\fP initializes the \fBLC_MESSAGES\fP locale
+based on the first nonempty value of the three environment variables
+\fBLC_ALL\fP, \fBLC_MESSAGES\fP, \fBLANG\fP; see \fBsetlocale\fP(3). For the
+\fBdcgettext\fP function, the locale facet is determined by the \fIcategory\fP
+argument, which should be one of the \fBLC_xxx\fP constants defined in the
+<locale.h> header, excluding \fBLC_ALL\fP. In both cases, the functions also
+use the \fBLC_CTYPE\fP locale facet in order to convert the translated message
+from the translator's codeset to the current locale's codeset, unless
+overridden by a prior call to the \fBbind_textdomain_codeset\fP function.
+.PP
+The message catalog used by the functions is at the pathname
+\fIdirname\fP/\fIlocale\fP/\fIcategory\fP/\fIdomainname\fP.mo. Here
+\fIdirname\fP is the directory specified through \fBbindtextdomain\fP. Its
+default is system and configuration dependent; typically it is
+\fIprefix\fP/share/locale, where \fIprefix\fP is the installation prefix of the
+package. \fIlocale\fP is the name of the current locale facet; the GNU
+implementation also tries generalizations, such as the language name without
+the territory name. \fIcategory\fP is \fBLC_MESSAGES\fP for the \fBgettext\fP
+and \fBdgettext\fP functions, or the argument passed to the \fBdcgettext\fP
+function.
+.PP
+If the \fBLANGUAGE\fP environment variable is set to a nonempty value, and the
+locale is not the "C" locale, the value of \fBLANGUAGE\fP is assumed to contain
+a colon separated list of locale names. The functions will attempt to look up
+a translation of \fImsgid\fP in each of the locales in turn. This is a GNU
+extension.
+.PP
+In the "C" locale, or if none of the used catalogs contain a translation for
+\fImsgid\fP, the \fBgettext\fP, \fBdgettext\fP and \fBdcgettext\fP functions
+return \fImsgid\fP.
+.SH "RETURN VALUE"
+If a translation was found in one of the specified catalogs, it is converted
+to the locale's codeset and returned. The resulting string is statically
+allocated and must not be modified or freed. Otherwise \fImsgid\fP is returned.
+.SH ERRORS
+\fBerrno\fP is not modified.
+.SH BUGS
+The return type ought to be \fBconst char *\fP, but is \fBchar *\fP to avoid
+warnings in C code predating ANSI C.
+.PP
+When an empty string is used for \fImsgid\fP, the functions may return a
+nonempty string.
+.SH "SEE ALSO"
+.BR ngettext (3),
+.BR dngettext (3),
+.BR dcngettext (3),
+.BR setlocale (3),
+.BR textdomain (3),
+.BR bindtextdomain (3),
+.BR bind_textdomain_codeset (3),
+.BR msgfmt (1)
diff --git a/man/ngettext.3.in b/man/ngettext.3.in
new file mode 100644 (file)
index 0000000..874f46f
--- /dev/null
@@ -0,0 +1,60 @@
+.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 2 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\"   GNU glibc-2 source code and manual
+.\"   GNU gettext source code and manual
+.\"   LI18NUX 2000 Globalization Specification
+.\"
+.TH NGETTEXT 3 "May 2001" "GNU gettext @VERSION@"
+.SH NAME
+ngettext, dngettext, dcngettext \- translate message and choose plural form
+.SH SYNOPSIS
+.nf
+.B #include <libintl.h>
+.sp
+.BI "char * ngettext (const char * " msgid ", const char * " msgid_plural ,
+.BI "                 unsigned long int " n );
+.BI "char * dngettext (const char * " domainname ,
+.BI "                  const char * " msgid ", const char * " msgid_plural ,
+.BI "                  unsigned long int " n );
+.BI "char * dcngettext (const char * " domainname ,
+.BI "                   const char * " msgid ", const char * " msgid_plural ,
+.BI "                   unsigned long int " n ", int " category );
+.fi
+.SH DESCRIPTION
+The \fBngettext\fP, \fBdngettext\fP and \fBdcngettext\fP functions attempt to
+translate a text string into the user's native language, by looking up the
+appropriate plural form of the translation in a message catalog.
+.PP
+Plural forms are grammatical variants depending on the a number. Some languages
+have two forms, called singular and plural. Other languages have three forms,
+called singular, dual and plural. There are also languages with four forms.
+.PP
+The \fBngettext\fP, \fBdngettext\fP and \fBdcngettext\fP functions work like
+the \fBgettext\fP, \fBdgettext\fP and \fBdcgettext\fP functions, respectively.
+Additionally, they choose the appropriate plural form, which depends on the
+number \fIn\fP and the language of the message catalog where the translation
+was found.
+.PP
+In the "C" locale, or if none of the used catalogs contain a translation for
+\fImsgid\fP, the \fBngettext\fP, \fBdngettext\fP and \fBdcngettext\fP functions
+return \fImsgid\fP if \fIn\fP == 1, or \fImsgid_plural\fP if \fIn\fP != 1.
+.SH "RETURN VALUE"
+If a translation was found in one of the specified catalogs, the appropriate
+plural form is converted to the locale's codeset and returned. The resulting
+string is statically allocated and must not be modified or freed. Otherwise
+\fImsgid\fP or \fImsgid_plural\fP is returned, as described above.
+.SH ERRORS
+\fBerrno\fP is not modified.
+.SH BUGS
+The return type ought to be \fBconst char *\fP, but is \fBchar *\fP to avoid
+warnings in C code predating ANSI C.
+.SH "SEE ALSO"
+.BR gettext (3),
+.BR dgettext (3),
+.BR dcgettext (3)
diff --git a/man/textdomain.3.in b/man/textdomain.3.in
new file mode 100644 (file)
index 0000000..d1a3569
--- /dev/null
@@ -0,0 +1,57 @@
+.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
+.\"
+.\" This is free documentation; you can redistribute it and/or
+.\" modify it under the terms of the GNU General Public License as
+.\" published by the Free Software Foundation; either version 2 of
+.\" the License, or (at your option) any later version.
+.\"
+.\" References consulted:
+.\"   GNU glibc-2 source code and manual
+.\"   GNU gettext source code and manual
+.\"   LI18NUX 2000 Globalization Specification
+.\"
+.TH TEXTDOMAIN 3 "May 2001" "GNU gettext @VERSION@"
+.SH NAME
+textdomain \- set domain for future gettext() calls
+.SH SYNOPSIS
+.nf
+.B #include <libintl.h>
+.sp
+.BI "char * textdomain (const char * " domainname );
+.fi
+.SH DESCRIPTION
+The \fBtextdomain\fP function sets or retrieves the current message domain.
+.PP
+A message domain is a set of translatable \fImsgid\fP messages. Usually,
+every software package has its own message domain. The domain name is used
+to determine the message catalog where a translation is looked up; it must
+be a non-empty string.
+.PP
+The current message domain is used by the \fBgettext\fP, \fBngettext\fP
+functions, and by the \fBdgettext\fP, \fBdcgettext\fP, \fBdngettext\fP and
+\fBdcngettext\fP functions when called with a NULL domainname argument.
+.PP
+If \fIdomainname\fP is not NULL, the current message domain is set to
+\fIdomainname\fP. The string the function stores internally is a copy of the
+\fIdomainname\fP argument.
+.PP
+If \fIdomainname\fP is NULL, the function returns the current message domain.
+.SH "RETURN VALUE"
+If successful, the \fBtextdomain\fP function returns the current message
+domain, after possibly changing it. The resulting string is valid until the
+next \fBtextdomain\fP call and must not be modified or freed. If a memory
+allocation failure occurs, it sets \fBerrno\fP to \fBENOMEM\fP and returns
+NULL.
+.SH ERRORS
+The following error can occur, among others:
+.TP
+.B ENOMEM
+Not enough memory available.
+.SH BUGS
+The return type ought to be \fBconst char *\fP, but is \fBchar *\fP to avoid
+warnings in C code predating ANSI C.
+.SH "SEE ALSO"
+.BR gettext (3),
+.BR ngettext (3),
+.BR bindtextdomain (3),
+.BR bind_textdomain_codeset (3)