This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: glibc-2.6 shipped with old POT file; deprecated use of "\v"
- From: Benno Schulenberg <bensberg at justemail dot net>
- To: Roland McGrath <roland at redhat dot com>
- Cc: libc-alpha at sources dot redhat dot com
- Date: Tue, 07 Aug 2007 13:37:24 +0200
- Subject: Re: glibc-2.6 shipped with old POT file; deprecated use of "\v"
- References: <20070807001622.89A7A4D04C4@magilla.localdomain>
> > Four messages in this pot file contain a "\v", whose usage is
> > discouraged. Please consider dividing each of these messages
> > into two separate ones.
>
> The use of \v is not incidental, nor are those \v characters part
> of the text that can be changed by translators. The use of \v as
> a separator is part of the ABI of the argp functions (see
> argp.h:struct argp.doc). The uses you cite are in argp doc
> strings where \v must be preserved as the separator between the
> two parts of the string.
Certainly. In principle there is nothing wrong with the use of "\v",
it is just that gettext complains: when running `msgmerge` of any libc
PO file, for example `msgmerge nl.po libc.pot >/dev/null`, it produces
several warning messages like these:
nl.po:1064: internationalized messages should not contain the `\v' escape sequence
nl.po:2395: internationalized messages should not contain the `\v' escape sequence
The reason for these warnings is, I suppose, that putting two sentences
that are not directly related and not adjacent in the output into a single
string is somewhat confusing.
At several places libc's code does the right thing, and separates those
two sentences. For example in nss/makedb.c, it uses doc[] for just the
docstring and more_help() for the bug-reporting string.
In nss/getent.c it would be enough to move the bug-reporting sentence to
the beginning of more_help(). For catgets/gencat.c something similar.
The other two occurences need a little more work as more_help() has to
be added.
Regards,
Benno