DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH

# (gettext.info.gz) Names

Info Catalog (gettext.info.gz) Special cases (gettext.info.gz) Sources (gettext.info.gz) Libraries

4.8 Marking Proper Names for Translation
========================================

Should names of persons, cities, locations etc. be marked for
translation or not?  People who only know languages that can be written
with Latin letters (English, Spanish, French, German, etc.) are tempted
to say "no", because names usually do not change when transported
between these languages.  However, in general when translating from one
script to another, names are translated too, usually phonetically or by
transliteration.  For example, Russian or Greek names are converted to
the Latin alphabet when being translated to English, and English or
French names are converted to the Katakana script when being translated
to Japanese.  This is necessary because the speakers of the target
language in general cannot read the script the name is originally
written in.

As a programmer, you should therefore make sure that names are marked
for translation, with a special comment telling the translators that it
is a proper name and how to pronounce it.  Like this:

printf (_("Written by %s.\n"),
/* TRANSLATORS: This is a proper name.  See the gettext
manual, section Names.  Note this is actually a non-ASCII
name: The first name is (with Unicode escapes)
"Fran\u00e7ois" or (with HTML entities) "Fran&ccedil;ois".
Pronunciation is like "fraa-swa pee-nar".  */
_("Francois Pinard"));

As a translator, you should use some care when translating names,
because it is frustrating if people see their names mutilated or
distorted.  If your language uses the Latin script, all you need to do
is to reproduce the name as perfectly as you can within the usual
character set of your language.  In this particular case, this means to
provide a translation containing the c-cedilla character.  If your
language uses a different script and the people speaking it don't
usually read Latin words, it means transliteration; but you should
still give, in parentheses, the original writing of the name - for the
sake of the people that do read the Latin script.  Here is an example,
using Greek as the target script:

#. This is a proper name.  See the gettext
#. manual, section Names.  Note this is actually a non-ASCII
#. name: The first name is (with Unicode escapes)
#. "Fran\u00e7ois" or (with HTML entities) "Fran&ccedil;ois".
#. Pronunciation is like "fraa-swa pee-nar".
msgid "Francois Pinard"
msgstr "\phi\rho\alpha\sigma\omicron\alpha \pi\iota\nu\alpha\rho"
" (Francois Pinard)"

Because translation of names is such a sensitive domain, it is a good
idea to test your translation before submitting it.

The translation project http://sourceforge.net/projects/translation'
has set up a POT file and translation domain consisting of program
author names, with better facilities for the translator than those
presented here.  Namely, there the original name is written directly in
Unicode (rather than with Unicode escapes or HTML entities), and the
pronunciation is denoted using the International Phonetic Alphabet (see
http://www.wikipedia.org/wiki/International_Phonetic_Alphabet').

However, we don't recommend this approach for all POT files in all
packages, because this would force translators to use PO files in UTF-8
encoding, which is - in the current state of software (as of 2003) - a
major hassle for translators using GNU Emacs or XEmacs with po-mode.


Info Catalog (gettext.info.gz) Special cases (gettext.info.gz) Sources (gettext.info.gz) Libraries
automatically generated byinfo2html