Scribus is available in over 20 languages, thanks to the many willing souls out there who have spent the time translating. This is no small task, but at least technically not a very difficult one. This page outlines the requirements and procedures for creating or updating such a translation.
Please note that there are many willing contributors to the Scribus project, and there may already be a translation in progress for the language you wish to help for. It would be worthwhile asking on the mailing list to see if someone has started. This is also a courtesy matter. At this point we don’t really have any “official” translators but perhaps you can work together, or take over an old translation if the previous translator no longer has the time to keep it up-to-date. So, here we go ...
lupdate
program installed, which is a part of Qt4, or perhaps a part of the Qt4 development package, depending on your distribution.~/Scribus
directory.qmake -project
.Scribus.pro
file to have the language listed at the bottom that you wish to translate for. For example,
Of course, replace the
TRANSLATIONS += resources/translations/po/scribus.en_GB.ts
en_GB
in this example with the language code you are working with.lupdate Scribus.pro
.resources/translations/po/scribus.en_GB.ts
file..ts
file and copy it into the source directory that contains the translation files (e.g. ~/Scribus/resources/translations
).-DWANT_GUI_LANG="xx_XX
, where xx_XX is the language code for your translation, e.g. en_GB (British English) or pt_BR (Brazilian Portuguese).Unfortunately or fortunately, depending on your point of view, not all parts of the Scribus user interface can be translated via ts files. In two cases you need to edit XML files to translate Scribus, namely for Templates and the Render Frame editor.
To translate Template categories, names and decriptions, you need the file template.xml
from the directory ~/Scribus/resources/templates
. Save this file under a name that helps Scribus identify the language you are translating to, e.g. template.it.xml
for Italian.
The content of the XML file is (hopefully) self-explanatory. There is an entry for each template. A complete entry looks like this:
<template category="Newsletters"> <name>TextBased</name> <file>textbased/textbased.sla.gz</file> <tnail>textbased/textbasedtn.png</tnail> <img>textbased/textbased.png</img> <psize>A4</psize> <color>color</color> <descr>A decent newsletter/magazine originaly created for one non-profit organization. Unrealized unfortunately.</descr> <usage>Right click on text replace what's inside with your own. Or whatever you want to... ;)</usage> <scribus_version>1.2RC1cvs</scribus_version> <date>2004-07-10</date> <author>Petr Vaněk</author> <email>petr@yarpen.cz</email> </template>Fortunately, you need not (actually must not) translate everything in here. What needs a translation is only the strings that are in red in the example above.
As described in Working with Render Frames, this kind of frame is freely configurable. Not only can you add configuration files for new programs, but you can also add translations to existing ones. In contrast to Templates, you don’t have to create new XML files for your translations. Instead, you need to edit the existing ones. The configuration files for Render Frames are located in ~Scribus/resources/editorconfig
. There is a file for each program, e.g. 100_latex.xml
for LaTeX, 300_lilypond.xml
for Lilypond etc.
To make life easier for translators, the developer of the Render Frame plugin has placed an indicator for translatable text strings in the files, namely i18n
, which is an acronym for “internationalization”:
<title><i18n> <en>Ranges</en> <cs>Rozsahy</cs> <de>Bereiche</de> <fr>Rangées</fr> <pl>Zakresy</pl> <ru>Диапазоны</ru> <hu>Tartomány</hu> </i18n></title>
If you want to add a, say, Dutch translation, simply add a string like this to the list above: <nl>Bereik</nl>
. Of course you should only submit a translated configuration file that’s complete to the development team!
Before you start translating the Online Help, you should be aware of the fact that this a huge task, and this doesn’t just refer to the skills or the time required to successfully complete the work. The documentation will be updated on a regular basis, which is why you should contact the team before you are wasting your time on translating files that are in the process of being rewritten or replaced. Also note that some basic HTML knowledge will help a lot, since all help files are written in HTML. Again, you are advised to contact the development team to learn about the rather strict HTML coding conventions for Scribus help files.