The Debian Edu / Skolelinux
-project provide an instruction manual for teachers, system
-administrators and other users that contain useful tips for setting up
-and maintaining a Debian Edu installation. This text is about how the
-text processing of this manual is handled in the project.
-
-
One goal of the project is to provide information in the native
-language of its users, and for this we need to handle translations.
-But we also want to make sure each language contain the same
-information, so for this we need a good way to keep the translations
-in sync. And we want it to be easy for our users to improve the
-documentation, avoiding the need to learn special formats or tools to
-contribute, and the obvious way to do this is to make it possible to
-edit the documentation using a web browser. We also want it to be
-easy for translators to keep the translation up to date, and give them
-help in figuring out what need to be translated. Here is the list of
-tools and the process we have found trying to reach all these
-goals.
-
-
We maintain the authoritative source of our manual in the
-Debian
-wiki, as several wiki pages written in English. It consist of one
-front page with references to the different chapters, several pages
-for each chapter, and finally one "collection page" gluing all the
-chapters together into one large web page (aka
-the
-AllInOne page). The AllInOne page is the one used for further
-processing and translations. Thanks to the fact that the
-MoinMoin installation on
-wiki.debian.org support exporting pages in
-the Docbook format, we can fetch
-the list of pages to export using the raw version of the AllInOne
-page, loop over each of them to generate a Docbook XML version of the
-manual. This process also download images and transform image
-references to use the locally downloaded images. The generated
-Docbook XML files are slightly broken, so some post-processing is done
-using the documentation/scripts/get_manual program, and the
-result is a nice Docbook XML file (debian-edu-wheezy-manual.xml) and
-a handfull of images. The XML file can now be used to generate PDF, HTML
-and epub versions of the English manual. This is the basic step of
-our process, making PDF (using dblatex), HTML (using xsltproc) and
-epub (using dbtoepub) version from Docbook XML, and the resulting files
-are placed in the debian-edu-doc-en binary package.
-
-
But English documentation is not enough for us. We want translated
-documentation too, and we want to make it easy for translators to
-track the English original. For this we use the
-poxml package,
-which allow us to transform the English Docbook XML file into a
-translation file (a .pot file), usable with the normal gettext based
-translation tools used by those translating free software. The pot
-file is used to create and maintain translation files (several .po
-files), which the translations update with the native language
-translations of all titles, paragraphs and blocks of text in the
-original. The next step is combining the original English Docbook XML
-and the translation file (say debian-edu-wheezy-manual.nb.po), to
-create a translated Docbook XML file (in this case
-debian-edu-wheezy-manual.nb.xml). This translated (or partly
-translated, if the translation is not complete) Docbook XML file can
-then be used like the original to create a PDF, HTML and epub version
-of the documentation.
-
-
The translators use different tools to edit the .po files. We
-recommend using
-lokalize,
-while some use emacs and vi, others can use web based editors like
-Poodle or
-Transifex. All we care about
-is where the .po file end up, in our git repository. Updated
-translations can either be committed directly to git, or submitted as
-bug reports
-against the debian-edu-doc package.
-
-
One challenge is images, which both might need to be translated (if
-they show translated user applications), and are needed in different
-formats when creating PDF and HTML versions (epub is a HTML version in
-this regard). For this we transform the original PNG images to the
-needed density and format during build, and have a way to provide
-translated images by storing translated versions in
-images/$LANGUAGECODE/. I am a bit unsure about the details here. The
-package maintainers know more.
-
-
If you wonder what the result look like, we provide
-the content
-of the documentation packages on the web. See for example the
-Italian
-PDF version or the
-German
-HTML version. We do not yet build the epub version by default,
-but perhaps it will be done in the future.
-
-
To learn more, check out
-the
-debian-edu-doc package,
-the
-manual on the wiki and
-the
-translation instructions in the manual.
-