Professional Documents
Culture Documents
Begin: 2003.
Last modified on: 16 November 2022.
VERY IMPORTANT: Please announce your intention if you want to translate FET into
your language.
Another person might work on the same translation as you and time might be wasted.
VERY IMPORTANT: Please follow the English words and do not translate incompletely
a field. Either translate it or not, but not partially.
Please read the instructions below very carefully and follow them:
(alternative procedure:
Modify the file "fet-v.v.v/src/src.pro", by adding a line
in the TRANSLATIONS section for your language (for instance, adding
a backslash after the last translation and then "../translations/fet_it.ts" for
Italian).
Enter the directory "fet-v.v.v/src/" and type "lupdate src.pro".
This will create the needed file, named "fet-v.v.v/translations/fet_**.ts").
It is highly advisable to disable number heuristic, as it is not good for the FET
translations
(run "lupdate src.pro -disable-heuristic number").
Number heuristic comes up with weird looking translations for some fields, like
"Weight 100.0% {100%}".
STEP 2.
You do not have to translate all the fields. Just leave the corresponding fields
marked as unfinished (untranslated).
There are some comments in the translation file, they are not to be translated,
they just help you.
You can see that for instance in the "FET XML files" field.
Please translate the FetMainForm_template section firstly. This is the main form
(the menu and the shortcuts).
Please double check the translation of the main menu practically from FET (see
below how to check your translation
in FET, by renaming it as an already existing translation). The main form is very
important and there should be
no mistakes here, especially in the constraints description.
Send the file with the completely translated FetMainForm_template section to the
FET authors. It may take a
long time for you to translate all the fields in FET, but if you translate only the
main form it takes usually
a short time and your partial translation will be added to official FET, helping
other users until the complete
translation will be ready.
STEP 3.
STEP 4.
Send all the three modified files to the FET authors (the important file is
fet_**.ts, you may omit the others).
The first time you send your file(s), please also send the name of your language,
written in your language
(for instance, for the Romanian translation this name is: Română).
Of course, anyone can redo/improve current translations. The best variants will be
chosen.
Qt homepage: https://www.qt.io/
For GNU/Linux it is available if you type "linguist" (possibly preceded by the path
to Qt executables) on the
command-line (Linguist is part of Qt development tools).
For Windows, you will have to download the latest Qt from the Qt homepage.
For macOS, maybe you have Qt Linguist precompiled available for download from your
package manager,
or you can download the latest Qt from the Qt homepage.
Please try to keep the length of large fields (the ones relating to constraints) in
FetMainForm_template
to a minimum, otherwise they will look too big. This is the main menu.
This way, the main menu will look good in your language
(please check the main menu of FET with your translation).
Also, in the FetMainForm_template there appear some terms like: &Help. This means
that Help has
as accelerator the letter H. You can translate in your language like: &Ajutor,
preferably take care of this:
in the same menu (like File menu) there should be unique accelerators.
Please try to follow the original (English) line arrangement. That is, if you
meet: "Current activity's<new line symbol>
description"
you have to split your message if it is too wide (wider than the widest line).
For instance, the translation would be:
"Descrierea activității<new line symbol>
curente"
New line symbol is a special sign in Linguist, you'll see it, it is like Greek
symbol for Pi.
Also, in linguist there is a special character (a dot) for a space.
New line means you need to put a new line character (press Enter).
Please take care to punctuation, because Linguist requires it. You have to end
each translation with the same punctuation mark as the English one. For
instance:
"Compulsory conflicts:"
would become:
"Conflicte obligatorii:"
If you don't do that, you will get an exclamation mark for this translation.
It would be a good idea to send the fet_**.ts file after only a few
modifications, so that the FET authors can check it if it works, so your work
is not wasted. If that goes well, you can continue working on it.
If you do not want your email address to be listed in the TRANSLATORS section,
please specify that,
and provide another method of contacting you.
Note: Arabic, Farsi and Hebrew are written right-to-left. If you want to test a
usual left-to-right translation,
rename it differently from fet_ar.qm, fet_fa.qm or fet_he.qm. If you want to test a
right-to-left translation,
rename it as fet_ar.qm, fet_fa.qm or fet_he.qm.
Note: to add your translation into FET, without renaming it as an already existing
language, you need to change
these files/functions:
- void usage(QTextStream* out, const QString& error) in the file
src/interface/fet.cpp
- void initLanguagesSet() in the file src/interface/fet.cpp
- void FetMainForm::populateLanguagesMap(QMap<QString, QString>& languagesMap) in
the file src/interface/fetmainform.cpp
- the TRANSLATIONS section of the file src/src.pro (add your language, similar to
the other languages. Please see
also the alternative procedure for STEP 1).
Then recompile. But this is complicated and unneeded.
Note: under macOS, to test your translation, you need to put it into the
directory /usr/share/fet/translations/,
fet.app/Contents/MacOS/translations/, or fet.app/Contents/MacOS/ (information
provided by a translator).
More notes for the macOS platform, from a user: copying the translation file
fet_**.qm into the directory fet.app/Contents/MacOS/translations
is possible from the command line in X11 xterm (but it is not possible with the
finder program, because the file extension ".app" is
exclusive for applications, so the program finder interprets a directory with the
extension ".app" as an application).
There are some variables written with uppercase letters, like: MAX_TOTAL_SUBGROUPS.
These names must remain unchanged.
There are many small fields which are repeated many times, in different contexts
(sections). If you translated such a field at least once,
running lupdate will automatically fill the other identical fields (using the 'same
text' heuristic), so you will only need to check these
fields and mark them as finished (if the field has a specific
disambiguation/comment, check that it corresponds). These fields will be marked
as translated, but unfinished (probably with a yellow question mark). Remember to
disable 'number heuristic': "lupdate src.pro -disable-heuristic number",
as recommended above.