Introduction

gbrainy is translated like any other GNU GetText localizable application, like for example all the applications in the GNOME project.

General recommendations

Since gbrainy contains many logic and verbal analogies questions is very important that you keep the precision of the original English sentence. A low quality translation may cause a logic puzzle or a verbal analogy to be more difficult or impossible to solve.

Additionally gbrainy translation files include comments that can assist the translator to contextualize a translation or to understand how it will be shown in the application. For example:

 #. Translators: {0} is replaced by a number, {1} by a year (like 1940)
 #: ../src/Games/Memory/MemoryFacts.cs:107
 #, csharp-format
 msgid ""
 "Shiny Cars had already announced a {0} days production halt next month, but "
 "before that it had not cut production since {1}."

If you use a tool to assist you during the translation process, it is important that you make sure that you can visualize these comments.

gbrainy uses also brackets to indicate references to variables that are usually numeric. For example:

 #: ../data/games.xml.h:11
 msgid ""
 "Every digit has 8 possibilities. The total number of possibilities is 8 at "
 "the power of [digits]."

The [digits] keyword will be replaced by a numeric value during runtime. You should not translate these variable names. If you do so, gbrainy will be unable to find them at runtime and to replace them by the right value.

Verbal analogies

One of the game types that gbrainy supports is verbal analogies. In this case, the player should prove his verbal aptitude. The verbal analogies are stored in a file called verbal_analogies.xml (you have more details here). It is important that you read these before start to translate them to understand the context.

Unfortunately, the sentences in PO files do not follow the original XML order, and you will find that questions and answers are not consecutive, making more difficult to associate them during the translation. Have the verbal_analogies.xml file handy as a reference.

Adapting analogies for your language

If an analogy is difficult to translate or does not work for your language, feel free to adapt the original question and answer as much as you need to make it work.

For example:

 # Question
 msgid "feet / two | toes"
 # Valid answers
 msgid "ten | 10"

The concept toes does not exist in Spanish language. The verbal analogy does not work. In this case, you can change 'toes' for 'fingers' and adapt the answer accordingly.

 #: ../data/verbal_analogies.xml.h:83
 msgid "feet / two | toes"
 msgstr "pies / dos | dedos"

 msgid "ten | 10"
 msgstr "veinte | 20"

Ignoring analogies for your language

If an analogy is very difficult to adapt to your language you can indicate to gbrainy that to ignore this analogy. You can do so using the '<ignore>' keyword in the question.

For example:

 # Question
 msgid "feet / two | toes"
 msgstr "<ignore>"

When gbrainy loads the verbal analogies file will ignore this one and it will be never show to the user.

Providing additional valid answers

You can also provide additional valid answers using the "|" character to separate them. For example, the English word sticky in Catalan language can be translated with different valid synonyms, you want them to be recognized as valid answers. In this case:

 #: ../data/verbal_analogies.xml.h:88
 msgid "sticky"
 msgstr "enganxós | enganxifós | apegalós | pegallós"

The words enganxós, enganxifós, apegalós and pegallós are synonyms that gbrainy will recognize as valid answers.

gbrainy includes also many analogies that contain a relationship between nouns and verbs. For example:

  <analogy>
  <_question type = "PairOfWordsCompare">shovel / dig | axe</_question>
  <_answer correct ="yes">chop</_answer>
 </analogy>

In these cases, it is important that you use the same verb tense when translating both verbs, we recommend to use infinitives.

Testing your translation

Finally, it is very important that you test the final translation by running gbrainy in your language. The reasons are:

  • Since gbrainy contains many logic and verbal analogies questions is very important that you make sure that the questions, answers, tips and explanations for every puzzle work together nicely. An error of this kind, may cause a logic puzzle or a verbal analogy to be more difficult or impossible to solve.
  • Many translations may appear in contexts that you did not expect to or at runtime are concatenated with other translations making a sentence that does not make much sense.
  • Sometimes the translated text is too big to fit in a control. Gtk is generally very good at this but some controls packed in boxes or custom written controls may have this problem.
  • Even if you are careful, many times there are hotkey conflicts in menu bars and context menus. The easiest way to spot them is just to run the application.
  • Sometimes you hit internationalization problems. For example, numbers or dates not formatted following your locale convention, something that can be misleading. You can actually see them running the application in English but using your locale. Please, notify to the development team immediately if you find any of these issues.

Apps/gbrainy/Localizing (last edited 2013-11-18 19:41:14 by WilliamJonMcCann)