gettext: Auxiliary
1
1 8.3.13 Consulting Auxiliary PO Files
1 ------------------------------------
1
1 PO mode is able to help the knowledgeable translator, being fluent in
1 many languages, at taking advantage of translations already achieved in
1 other languages she just happens to know. It provides these other
1 language translations as additional context for her own work. Moreover,
1 it has features to ease the production of translations for many
1 languages at once, for translators preferring to work in this way.
1
1 An "auxiliary" PO file is an existing PO file meant for the same
1 package the translator is working on, but targeted to a different mother
1 tongue language. Commands exist for declaring and handling auxiliary PO
1 files, and also for showing contexts for the entry under work.
1
1 Here are the auxiliary file commands available in PO mode.
1
1 ‘a’
1 Seek auxiliary files for another translation for the same entry
1 (‘po-cycle-auxiliary’).
1
1 ‘C-c C-a’
1 Switch to a particular auxiliary file (‘po-select-auxiliary’).
1
1 ‘A’
1 Declare this PO file as an auxiliary file
1 (‘po-consider-as-auxiliary’).
1
1 ‘M-A’
1 Remove this PO file from the list of auxiliary files
1 (‘po-ignore-as-auxiliary’).
1
1 Command ‘A’ (‘po-consider-as-auxiliary’) adds the current PO file to
1 the list of auxiliary files, while command ‘M-A’
1 (‘po-ignore-as-auxiliary’ just removes it.
1
1 The command ‘a’ (‘po-cycle-auxiliary’) seeks all auxiliary PO files,
1 round-robin, searching for a translated entry in some other language
1 having an ‘msgid’ field identical as the one for the current entry. The
1 found PO file, if any, takes the place of the current PO file in the
1 display (its window gets on top). Before doing so, the current PO file
1 is also made into an auxiliary file, if not already. So, ‘a’ in this
1 newly displayed PO file will seek another PO file, and so on, so
1 repeating ‘a’ will eventually yield back the original PO file.
1
1 The command ‘C-c C-a’ (‘po-select-auxiliary’) asks the translator for
1 her choice of a particular auxiliary file, with completion, and then
1 switches to that selected PO file. The command also checks if the
1 selected file has an ‘msgid’ field identical as the one for the current
1 entry, and if yes, this entry becomes current. Otherwise, the cursor of
1 the selected file is left undisturbed.
1
1 For all this to work fully, auxiliary PO files will have to be
1 normalized, in that way that ‘msgid’ fields should be written _exactly_
1 the same way. It is possible to write ‘msgid’ fields in various ways
1 for representing the same string, different writing would break the
1 proper behaviour of the auxiliary file commands of PO mode. This is not
1 expected to be much a problem in practice, as most existing PO files
1 have their ‘msgid’ entries written by the same GNU ‘gettext’ tools.
1
1 However, PO files initially created by PO mode itself, while marking
1 strings in source files, are normalised differently. So are PO files
1 resulting of the ‘M-x normalize’ command. Until these discrepancies
1 between PO mode and other GNU ‘gettext’ tools get fully resolved, the
1 translator should stay aware of normalisation issues.
1