[ANN] Shape Of Things To Come

Yuan Yijun bbbush.yuan at gmail.com
Wed Feb 15 08:05:07 UTC 2006


2006/2/15, Tommy Reynolds <Tommy.Reynolds at megacoder.com>:
> My Fellow Contributors,
>
> Now that the FC5t3 Release Notes panic is over, at least for some of
> us, it is time to break things agai.. I mean, to add wonderful new
> features.
>
> To better fit the process model used by the I18N translating teams,
> our file organization and toolchain need to be modified.  Previously,
> non-English documents have been committed to CVS based on their
> translated XML files.  However, translators do not work with XML
> files the same way that document authors do.  Translators use an
> intermediate file format known as .POT or .PO files, edit those .PO
> files, and then merge the translations back into XML form to produce
> the translated XML files; translated XML files do not spring
> fully-formed from the mind of Zeus but are derived via merging these
> .PO files with the original XML files.
>
> Regrettably, I cannot make all the accomodations necesssary for this
> solely in the "Makefile.common" file.  Document authors will need to
> help.  Happily, the changes should be trivial.
>
> Here is a quick summary of the pending changes.  Refer to the
> "example-tutorial/" document to see the required changes.
>
> 1)  Only one rpm-info.xml file, and that is in the top-level dir.
>
>     "One rpm-info file to rule them all, and in their XML bind them."
>
> 2)  XML file names are now language independant (para.xml, not
>     para-en.xml).
>
>     This is necessary because the translated XML files are produced
>     by substituting replacement text directly into the original XML
>     document files, in an automated process.  If referenced XML
>     files, such as <mediaobjects>, have language-specific names, the
>     translated XML file will reference the wrong picture.
>
>     Therefore, all filenames must not contain a "*-${LANG}.xml"
>     component.
>
> 3)  The "Makefile" in the document directory has been completely
>     rewritten.
>
>     Since translated XML files are automatically created, the
>     original document language must be separated from the enumeration
>     of the translated locales.
>
>     A ${PRI_LANG} variable identifies the original language for
>     the document.  Additional language translations are listed in the
>     ${OTHERS} macro.  The ${XMLEXTRAFILES-${LANG}} variable is no
>     more; instead an XMLFILES_template must be filled out to
>     enumerate the necessary XML files.
>
> 4)  Translated XML files are automatically generated from .POT and
>     .PO files located in a "po/" directory.
>
>     The "po/" file need not exist until translations are created and
>     the ${OTHERS} "Makefile" list populated.  The "po/" directory
>     must be under CVS control.
>
> 5)  Translated XML files should NOT be archived in CVS, since they
>     are now generated files.
>
>     There should be real XML files in the "${PRI_LANG}/" directory
>     and that directory should be under CVS control.
>
>     Directories and files for the translations enumerated in the
>     ${OTHERS} list are dynamically created and destroyed.  For
>     example, if ${OTHERS} is defined as:
>
>     OTHERS=de no it ru
>
>     Then directories "de/", "no/", "it/", "ru/" need NOT exist and
>     should NOT be placed under CVS control.
>
>     XML files such as "de/example-tutorial.xml" will be dynamically
>     created from the "en/example-tutorial.xml",
>     "po/example-tutorial.pot", and "po/de.xml" files and should NOT
>     be placed under CVS control.
>
> 6)  Many new virtual targets have been added to "Makefile.common",
>     such as "make xml-de", "make po-de", and the like.
>
>     Consult the "Makefile.common".  You'll just have to look ;-)
>
> As always, comments, suggestions, patches and bribes are cheerfully
> accepted.
>
> Cheers
>

Cheers! I have long been waiting for such things to happen. Previously
I have to generate pot, merge and translate, generate xml and edit
entities manually then compile.... long and boring. We can concentrate
on one thing now.

Not test yet, how about docs-common/common/fedora-entities-{$LANG}.ent?



--
bbbush ^_^




More information about the fedora-docs-list mailing list