To: Inkscape Translators' list
Cc: Christian Perrier, Debian-Installer co-ordinator (FYI ;) )
On 18/08/2007, at 12:53 AM, Xavier Conde Rueda wrote:
> Hi all,
> many thanks for your help! Anyway, I think developers should add
> comments explaining the meaning of these terms, so I'll open a
> bugzilla case for it too.
Actually, the Inkscape PO file explains a lot more terms than any =20
other graphics package I've translated.
The Best and the Worst in i18n Context
BEST: The Debian Installer Level 1 file has excellent, detailed use =20
of contextual information.
WORST: GIMP is notorious for its cryptic strings and complete lack of =20=
context. When I queried some strings which were one character long =20
and had no explanation whatsoever, the developer responded curtly, =20
"You should know what it means." Gee, I should be an expert on all =20
aspects of software.
Inkscape ranks close to the top. :)
However, that's because most PO files don't supply contextual =20
information. They should, if they want accurate translations.
I suggest Inkscape starts using the msgctxt  feature in the more =20
recent gettext packages. This feature has been created specifically =20
for contextual information, and works with translation memory, so we =20
don't have the context all mixed up with the string IDs.
(context should _never_ be quoted in the original string)
#, This is an action
#, This is an object
This is a much easier to manipulate with translation memory and =20
merging, and much less confusing, in every way.
Xavier, please quote your bug link here, and I'll add the info on =20
from Clytie (vi-VN, Vietnamese free-software translation team / nh=C3=B3m =
Vi=E1=BB=87t h=C3=B3a ph=E1=BA=A7n m=E1=BB=81m t=E1=BB=B1 do)
 GUI program support:
- PO files can now contain messages constrained to a certain context.
Most often such a context is a menu, dialog or panel =20
The syntax in the PO file is
- The xgettext program can be told through the --keyword flag which
function/macro argument has the role of a context.
- The (non-public) include file gettext.h defines macros pgettext, =20=
etc. that take a context argument.
For more information, see the node "Contexts" in the manual.
I also recommend using msgid-previous, which allows you to diff =20
changed strings. D-I uses that, too. They set an excellent example =20
for the rest of free-software i18n.