Jump to: navigation, search

Translating Gramps using Weblate

6,796 bytes added, 17:56, 5 October 2021
See also
{{languages|Translating Gramps using Weblate}}
As of Gramps 5.2.x, [ Hosted Weblate] is used for translations.
Translators are advised to read the [ Weblate documentation].
Registration is easy - just click on [ Register].
The ''E-mail '' and ''Full name '' fields are used to credit your contributions.
You need to be signed in to translate, otherwise you can only make suggestions.
Any authenticated user can edit translations. Changes are automatically submitted as a pull request to the Gramps GitHub repository. This can take 24 hours since Weblate attempts to group changes from the same author in a process called [ "lazy commits"].
Some translators have been designated as ["dedicated reviewers"]. A list of reviewers can be found on the [[Portal:Translators|Translators Portal]] page.
A reviewer an can approve translations. After a translation has been approved, it can only be changed by a reviewer or administrator, although any user can still make suggestions.
== Bulk edit ==
= Translation issues =
== General guidance ==
* Take heed with special characters. You must have the same number of and types as the original string.
* Verify spelling and grammar on your translation.
* Don't translate "too freely". Your translation should be as close match to the original as possible.
* Be consistent with your translations. If you decide on a specific word/phrase for something, stick to that throughout the translation.
== Hard to translate phrases ==
Some things are just hard to translate. Below are a few of the more difficult items, along with some suggestions on how to handle them.
=== Gramps terminology ===
There are terms with special significance in computer software. The terms are often creatively awkward constructs in English... just so the term is more unique and stands out in a sentence. Translating the words literally or substituting a translation of the underlying concept may not be workable. It may be necessary to become ''creative'' and substitute a similarly awkward (and short!) label in your target language.
The labels of some Gramps core concepts or interface elements hold that higher level of significance. These must be translated consistently between the User Interface and the Wiki. (Inconsistent translations will confuse the users.)
''Example:'' The '''[[Gramps_Glossary#active_person|Active Person]]''' in Gramps is not a person with a healthy amount of vigorous physical exercise. Instead, it is the record from the [[Gramps_Glossary#people|People]] [[Gramps_Glossary#category|Category]] that is the focal center of reference for display & change. Neither would translate into a memorable label.
The [[Gramps Glossary]] is a good resource for understanding the context and significance of such terms. If you translate the Glossary and then alphabetize the translated terms, also leave an ID SPAN with the untranslated English term. This allows hotlinks from untranslated pages to work in unison with translated hotlinks.
If it becomes necessary to be ''creative'' translating a term, please add a [[Translating_Gramps#Language_specific_pages|language specific]] reference page for your language. This helps other Translators share your style of creativity.
=== LDS terminology ===
The Church of Jesus Christ of Latter Day Saints (a.k.a. Mormons) maintains a lot of genealogy data. In the United States, they are probably the non-government organization with the most detailed records available. Genealogical research is important to the Mormon church. They are responsible for defining the [[GEDCOM]] format.
The LDS Church has some specific terminology that can present difficulty in translating. There are two approaches to handling the information.
# If the LDS Church has a presence in your country, contact the LDS Temple in your area and ask them what the correct terminology is in your native language
# If the LDS Church does not have a presence in your country, it would probably be safe to simply not translate the phrases.
These terms include:
# LDS Ordinance names:
#* Sealed to Parents
#* Sealed to Spouse
#* LDS Baptism
#* Endowment
# LDS Status names for Ordinances:
#* Child
#* Cleared
#* Completed
#* Infant
#* Pre-1970
#* Qualified
#* Stillborn
#* Submitted
#* Uncleared
#* BIC (Born In the Covenant)
#* DNS (Do Not Submit)
#* Canceled
#* DNS/CAN (Do Not Submit/Previous sealing cancelled)
== Advanced issues ==
=== Translating mnemonics keys(Keyboard Shortcut keys) ===
Mnemonics are accelerator keys (also known as Keyboard Shortcut keys) you find in labels, accessible by pressing the {{man key press|ALT}} key together with the mnemonic. You see then in the translated text with a low line, <abbr title="exempli gratia - Latin phrase meaning 'for example'">e.g.</abbr>, '_Help' is shown as 'Help' with an underline under the H, and can be put to focus/selected by pressing {{man key press|ALT|h}}.
It is nice if mnemonics on a screen are unique, but it is not required. If you use twice the same mnemonic, the user must press repeatedly the accelerator to switch between the different entries. However, note the following rule:
*"If duplication of access keys in a window is unavoidable, you should still refrain from duplicating the access keys for any of these buttons that appear in the same window: {{man button|OK}}, {{man button|Cancel}}, {{man button|Close}}, {{man button|Apply}} or {{man button|Help}}."
So you should check in your language what the mnemonic key is for those buttons, and avoid using the same in translated text
{{man warn|Warning|Some fonts family will not properly display mnemonics on "g", "j", "p", "q" or "y" as these print the letter over the line under it making it very hard to distinguish the small line. Please avoid to use mnemonics key bindings on these letters. Also try to avoid i and l, as people have difficulty distinguishing between those.}}
Capital letters are no problem though, underlining <abbr title="exempli gratia - Latin phrase meaning 'for example'">e.g.</abbr>, G will work just fine as the letter does not write over the line.
=== Translating relationships ===
Translating relationships is not done within the <code>.po</code> files, except for occasional <code>father</code> and <code>mother</code> strings here and there in the interfaces and reports. Complete translation of all relationships for the language/culture is done inside a relationship calculator plugin.
In short, the need for a plugin comes from the impossibility to translate "first cousin twice removed" in languages such as, <abbr title="exempli gratia - Latin phrase meaning 'for example'">e.g.</abbr>, German or Russian. See the [[Relationship Calculator]] page for details on why and how to create such a plugin.
=== Translating dates ===
Handling date translation is not entirely done within the <code>.po</code> files. Complete handling of date translation for each language/culture is done inside a dedicated date handler module.
The need for a separate module comes from the requirements to handle culture-specific parsing and displaying of dates. For example, the month and day order is different between most European countries and the US. Also, each language has its own set of acceptable modifier and qualifiers for the date: things like "from X to Y" or "between X and Y" may have different word order. Same with "around", "calculated", "estimated". Add to this calendar names, and you have a compelling need for a dedicated module. See the [[Date Handler]] page for details on why and how to create such a module.
=See also=
* [[Coding_for_translation|Coding for Translation]]
* [[Translating_Gramps_using_Weblate|Translating Gramps using Weblate]]

Navigation menu