DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(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ç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ç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