The files
Translations/zh_CN/options.xml
Translations/zh_CN/tips.xml
Translations/zh_CN/menu.xml
Translations/zh_CN/sys.xml
were already removed as part of commit 0c655af7d1 but were recently
readded by mistake (commit 2a30862e31). Remove them again...
(the new translation infrastructure only needs the master translation
defined by Translations/default/*.xml and the language-specific .xlf
files)
Update them from the latest contents of the
$FG_ROOT/Translations/default/*.xml files (default translation).
This was done with:
fg-update-translation-files \
--transl-dir="/path/to/fgdata/Translations" \
merge-new-master de en_US es fr it nl pl pt zh_CN
- Add <cycle-gui> in Translations/default/menu.xml
- Fix for <dme-desc> in default/options.xml, which mentioned the ADF
instead of the DME.
Thanks to Michael Danilov for these fixes.
The reason French is treated specially is that I completed the
translation up to 100% coverage in Qt Linguist as a test case for the
new translation infrastructure, and have no desire to convert this
translation work to the legacy FlightGear-specific XML format. But of
course, this complete translation is in XLIFF 1.2 format (since it is
saved by Qt Linguist) and thus can't be used by FlightGear yet.
On the other hand, for the other languages, no translator ever modified
the XLIFF files, therefore the best way to proceed for is that people
continue to work with the legacy FlightGear-specific XML format until
the new translation infrastructure is ready (this way, their work is
visible in FlightGear). The Python-based tools in FGMeta allow one to
automatically convert from this legacy format to the XLIFF 1.2 format,
as explained in fgmeta/python3-flightgear/README-l10n.txt. Which is
precisely what this commit does.
The XML declaration says encoding="ISO-8859-1". If you want to use
UTF-8, be my guest and convert the whole file to UTF-8 but please, don't
write UTF-8-encoded strings inside a file declared as ISO-8859-1.
These files have been generated from the existing XML files (cf.
fg-convert-translation-files in fgmeta).
Translations/en_US/FlightGear-nonQt.xlf is for a proper English
translation, where for instance "found %n airport(s)" would have two
plural forms, "found %n airport" and "found %n airports" (most
non-plural strings can be taken verbatim from the default translation,
and at this point there is no plural form at all yet).
This is mainly to make it clear that the "translation" in (after this
commit) Translations/default, a priori corresponding to en_US, has a
special status: it acts as the source describing the set of translatable
strings, each with its id (an XML tag name) and numeric index (a
PropertyList index, often 0 but not always).
In the upcoming i18n infrastructure, the files in Translations/default
will be used to:
- detect all translatable strings (~ string extraction);
- detect obsolete translated strings (those in XLIFF files but not in
Translations/default anymore);
This will allow a script to update the XLIFF files containing real
translations, i.e., update the source strings and possibly remove
obsolete entries.
So, the files in Translations/default have a special "master" status in
this process, and are technically quite different from those in
Translations/de, Translations/es, Translations/fr, etc. The latter XML
files (those not in Translations/default) will be replaced with their
XLIFF equivalent, by the way (conversion script already working).
See discussion at
<https://sourceforge.net/p/flightgear/mailman/message/35910579/>.