Translation and Review Guidelines: Difference between revisions

From Localization Lab Wiki
Jump to navigation Jump to search
No edit summary
 
(28 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__TOC__
'''Please review the tips and guidelines below prior to localizing projects. The following information will help you navigate the Transifex interface and more effectively and accurately translate and review projects.'''
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Read the ''Developer Notes'' and ''Translation Instructions'' in Transifex.'''
===Do not Machine Translate===
:The ''Developer Notes'' and ''Instructions'' are located in the Web Editor in between the source text and the translation text field. Make sure to read and follow any available instructions for the string you are translating.
:Machine translation tools like Google Translate and Microsoft Translator Hub are useful resources, however they should never be used as the foundation of your translation, particularly long-form text which is less and less likely to be accurate the longer it is.


[[File:Developer notes.png|500px|center|Example of ''Developer Notes''.]]
:Keep in mind that even if you heavily post-edit machine translations, the grammar, style, tone and terminology used in the machine translation can still greatly affect your translation.
<br>
|}
|}


{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Communicate!'''<br>
===Communicate===
:'''''Leave '''[https://docs.transifex.com/translation/tools-in-the-editor#comments Comments]''' for other translators'''''
:'''''Leave '''[https://docs.transifex.com/translation/tools-in-the-editor#comments Comments]''' for other translators'''''
::Localization in the Localization Lab community is a group effort! If you are simply fixing a typo or grammatical error, feel free to make the changes necessary without leaving a comment. If you are changing key terminology or significantly changing the structure of a translation, leave a comment for the previous translator to briefly explain the change. Be sure the ''mention'' them by including @ followed by their username in your comment.
::Localization in the Localization Lab community is a group effort! If you are simply fixing a typo or grammatical error, feel free to make the changes necessary without leaving a comment. If you are changing key terminology or significantly changing the structure of a translation, leave a comment for the previous translator to briefly explain the change. Be sure the ''mention'' them by including @ followed by their username in your comment.
Line 16: Line 19:
:'''''Leave '''[https://docs.transifex.com/translation/tools-in-the-editor#issues Issues]''' for project maintainers'''''
:'''''Leave '''[https://docs.transifex.com/translation/tools-in-the-editor#issues Issues]''' for project maintainers'''''
::If you don't understand what a string means, need more context or there is a typo or fundamental issue with the source text, let the project maintainer know! You can do this by creating an ''Issue''. Developers and project maintainers are notified of issues so that they can be addressed efficiently.
::If you don't understand what a string means, need more context or there is a typo or fundamental issue with the source text, let the project maintainer know! You can do this by creating an ''Issue''. Developers and project maintainers are notified of issues so that they can be addressed efficiently.
::There are several priority levels to chose from when creating an issue:
::*'''Low:''' Minor and cosmetic changes to a source string.
::* '''Normal:''' Typos, questions or changes affecting the meaning of a source string that may hinder translation.
::* '''High:''' Significant issues with the localizability or coherence of the source string.
::* '''Critical:''' Issues with the source string that might break the software.
|}
|}


{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Do not translate or transliterate application or project names.'''<br>
===Read the ''Developer Notes'' and ''Translation Instructions'' in Transifex===
:The ''Developer Notes'' and ''Instructions'' are located in the Web Editor in between the source text and the translation text field. Make sure to read and follow any available instructions for the string you are translating.
 
[[File:Developer notes.png|500px|center|Example of ''Developer Notes''.]]
<br>
|}
 
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
===Do Not Translate or Transliterate Application or Project Names===
:Do not translate or transliterate project, company or application names that do not have an official or widely adopted regional variation.
:Do not translate or transliterate project, company or application names that do not have an official or widely adopted regional variation.


:Some projects have widely used and accepted translations or transliterations of their names. If this is the case in your language, feel free to use the localized version.
:Some projects have widely used and accepted translations or transliterations of their names. If this is the case in your language, feel free to use the localized version.
::'''Example:''' تويتر ''Transliteration of Twitter in Arabic''
::'''Example:''' تويتر (''Transliteration of Twitter in Arabic'')
<br>
 
|}
|}


{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Focus on consistency.'''
===Focus on Consistency===
In addition to recurring terminology, you will often encounter strings that are duplicate or directly reference other strings. It is important to ensure these translations are consistent across the entirety of a project.
::'''Example:''' If "Create Account" appears in a string in a project, use the [https://docs.transifex.com/translation/translating-with-the-web-editor#searching-and-filtering-for-strings filters] in the Web Editor to see where else "Create Account" appears in the rest of the project resources and make sure the translation is consistent.
 
[[File:Reference_to_another_string_1.png|500px|center|Reference to "Create Account" in a string.]]<br>
[[File:Reference_to_another_string_2.png|500px|center|Original "Create Account" string.]]<br>
 
:Transifex has several features to help you manage consistency across translations:
:Transifex has several features to help you manage consistency across translations:
:* The '''[https://docs.transifex.com/translation/using-translation-memory-and-concordance-search#concordance-search Concordance Search]''' allows you to search for words and phrases across multiple resources within the same project and across different projects within the same organization. You can use it to see how something is translated in different strings and contexts.<br>
:* The '''[https://docs.transifex.com/translation/using-translation-memory-and-concordance-search#concordance-search Concordance Search]''' allows you to search for words and phrases across multiple resources within the same project and across different projects within the same organization. You can use it to see how something is translated in different strings and contexts.
:* Web Editor '''[https://docs.transifex.com/translation/translating-with-the-web-editor#searching-and-filtering-for-strings Filters]''' allow you to filter and search strings across one or multiple resources in a project. Among many options, you can filter by word or phrase in the source text or in the translation text.<br>
:* The '''[https://docs.transifex.com/projects/search-strings Search Strings]''' feature in Transifex allows you to search words and phrases across all Localization Lab projects using more filters than are available in the simple Concordance Search. You can filter matches by project, resource, target language, source language, tag, date etc.
:* The Localization Lab '''[https://docs.transifex.com/translation/using-the-glossary Glossary]''' is very robust in English, however not all languages have translations for each term. Use the ''Glossary'' tab to double check translation of a term. If the term is not there, select ''View Glossary'' to [https://docs.transifex.com/setup/glossary/adding-termsadd the translation to the glossary].
:* Web Editor '''[https://docs.transifex.com/translation/translating-with-the-web-editor#searching-and-filtering-for-strings Filters]''' allow you to filter and search strings across one or multiple resources in a project. Among many options, you can filter by word or phrase in the source text or in the translation text.
:* The '''[https://docs.transifex.com/translation/using-translation-memory-and-concordance-search#understanding-translation-memory-suggestions Suggestions tab]''' in the web editor lets you view translations from the Localization Lab Translation Memory from other strings and resources in related projects. Translations of strings which are up to 60% the same will appear in this tab. Referencing these suggestions can help you maintain consistency across projects.
:* The Localization Lab '''[https://docs.transifex.com/translation/using-the-glossary Glossary]''' is very robust in English, however not all languages have translations for each term. Use the ''Glossary'' tab to double check translation of a term. If the term is not there, select ''View Glossary'' to [https://docs.transifex.com/setup/glossary/adding-terms add the translation to the glossary].
:::Key project terms will have the label "[project name]" in the ''Comments'' field for the term.
:::Key project terms will have the label "[project name]" in the ''Comments'' field for the term.
:* If a string that you are translating references what appears to be a tab, button, header etc from the software or another project, check to make sure your translation is consistent with the original translation.
:::'''Example:''' If "Create Account" appears in a string in a project, use the [https://docs.transifex.com/translation/translating-with-the-web-editor#searching-and-filtering-for-strings filters] in the Web Editor to see where else "Create Account" appears in the rest of the project resources and make sure the translation is consistent.
[[File:Reference_to_another_string_1.png|500px|center|Reference to "Create Account" in a string.]]
[[File:Reference_to_another_string_2.png|500px|center|Original "Create Account" string.]]
<br>
|}
|}


{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Be aware of placeholders, HTML and Unicode character entities, and mark up language.'''<br>
 
:'''''Placeholders and variables'''''<br>
===Watch out for Placeholders, HTML and Unicode Character Entities, and Markup Language.===
::Many project strings contain '''placeholders''' which may replace [https://www.quackit.com/html/tags/ HTML],  [https://www.quackit.com/xml/tutorial/about_xml.cfm XML] or words and numbers that change within the application's interface. '''It is important to keep these placeholders unchanged in the translation'''. You can move the placeholders depending on where they grammatically make the most sense in your language.
====Placeholders and Variables====
<br>
::Many project strings contain '''placeholders''' which may replace [https://www.quackit.com/html/tags/ HTML],  [https://www.quackit.com/xml/tutorial/about_xml.cfm XML] or words and numbers that change within the application's interface. '''It is important to keep these placeholders unchanged in the translation'''. You can move the placeholders depending on where they grammatically make the most sense in your language.<br><br>
::Hover your mouse over the variable in the English source text to see what the placeholder is replacing.
::Hover your mouse over the variable in the English source text to see what the placeholder is replacing.
<br>
[[File:variable.png|500px|center|Variables in Transifex]]<br>
[[File:variable.png|500px|center|Variables in Transifex]]
<br>
::Sometimes a variable will not be recognized by Transifex and will be editable in the web editor. If you see an element within curly brackets, you can assume that in most cases you should '''not translate''' anything inside the brackets. Double check the ''Developer Notes'' to see if there are any special notes about how to treat the content in brackets. If you are still unsure, create an "Issue" for the string so that a project maintainer can clarify.
::Sometimes a variable will not be recognized by Transifex and will be editable in the web editor. If you see an element within curly brackets, you can assume that in most cases you should '''not translate''' anything inside the brackets. Double check the ''Developer Notes'' to see if there are any special notes about how to treat the content in brackets. If you are still unsure, create an "Issue" for the string so that a project maintainer can clarify.
<br>
[[File:Curly bracket variable.png|500px|center|Curly bracket variables in Transifex]]<br>
[[File:Curly bracket variable.png|500px|center|Curly bracket variables in Transifex]]
<br>
::Placeholders will often provide hints as to what they replace in the app's user interface. If you cannot determine what the placeholder will replace in the app and as a result, don't know how to translate the surrounding content, '''create an issue''' and ask the project maintainer.
::Placeholders will often provide hints as to what they replace in the app's user interface. If you cannot determine what the placeholder will replace in the app and as a result, don't know how to translate the surrounding content, '''create an issue''' and ask the project maintainer.
<br>
::Below, the placeholder '''"{language}"''' will be replaced by the name of a language.
::Below, the placeholder "{language}" will be replaced by the name of a language.
[[File:Language Variable Check.png|500px|center|Language Variable in Transifex]]<br>
[[File:Language Variable Check.png|500px|center|Language Variable in Transifex]]
::Below you can see how the variables '''"{author}"''', '''"{title}"''' and '''"{status}"''' are replaced by different text in the [[Check]] user interface.
<br>
[[File:Status Variable Check.png|300px|center|Status and Author Variables in Check]]<br>[[File:Author_Title_Variables.png|300px|center|Author and Title Variables in Check]]<br>
::Below you can see how the variables "{author}", "{title}" and "{status}" are replaced by different text in the [[Check]] user interface.
[[File:Context for Check Variables.png|300px|center|Context for Check Variables]]<br>
[[File:Context for Check Variables.png|250px|left|Context for Check Variables]] [[File:Status Variable Check.png|250px|right|Status and Author Variables in Check]] [[File:Author_Title_Variables.png|250px|right|Author and Title Variables in Check]]
::Review the [https://docs.transifex.com/translation/html-files#in-the-new-editor Transifex documentation] to learn how to manage placeholders in the translation editor.<br>
<br><br><br><br><br><br><br><br><br><br><br>
::Review the [https://docs.transifex.com/translation/html-files#in-the-new-editor Transifex documentation] to learn how to manage placeholders in the translation editor.


:'''''HTML and Unicode character entities & mark down language'''''<br>
====HTML and Unicode Character Entities & Mark Down Language====
::Sometimes an HTML character entity will not be recognized and replaced by Transifex. In these cases, you can either copy the exact character entity or you can replace it with what it corresponds to.  
::Sometimes an HTML character entity will not be recognized and replaced by Transifex. In these cases, you can either copy the exact character entity or you can replace it with what it corresponds to.<br>
::'''Examples:''' ''&nbsp;'' is equivalent to a non-breaking space; ''&lt;'' is equivalent to <; ''&gt;'' is equivalent to >.
::You can look up HTML entities on the [https://www.w3schools.com/charsets/ref_html_entities_4.asp W3 website].


[[File:HTML character entity 2.png|500px|center|HTML variable in Transifex]]
::'''Examples:'''
::* '''&amp;nbsp;''' is a non-breaking space
::* '''&amp;lt;''' is equivalent to <
::* '''&amp;gt;''' is equivalent to >
[[File:HTML character entity 2.png|500px|center|HTML variable in Transifex]]<br>
[[File:HTML character entity 1.png|500px|center|HTML variable in Transifex]]<br>


[[File:HTML character entity 1.png|500px|center|HTML variable in Transifex]]
====New lines====
 
::The little blue arrows in the source text are equivalent to a new line (''/n''). Make sure to input new lines where indicated in the source text. Do so by simply selecting the ''Enter'' or ''Return'' key on your keyboard. The number of new lines in the translation should be the exact same as the number in the English source text.<br>
:'''''New lines'''''<br>
::The little blue arrows in the source text are equivalent to a new line (''/n''). Make sure to input new lines where indicated in the source text. Do so by simply selecting the ''Enter'' or ''Return'' key on your keyboard. The number of new lines in the translation should be the exact same as the number in the English source text.
<br>
|}
|}


{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Pay attention to the "notranslate" tag'''
===Pay Attention to the "notranslate" Tag===
:Some strings will be assigned the "notranslate" tag and you will find a special message at the bottom of the translation input field. These strings should be copied ''exactly'' using the copy icon in the web editor. If you do not copy these strings exactly, Transifex will give you an error warning.
:Some strings will be assigned the "notranslate" tag and you will find a special message at the bottom of the translation input field. These strings should be copied ''exactly'' using the copy icon in the web editor. If you do not copy these strings exactly, Transifex will give you an error warning.


::''The translation in the example below is '''incorrect''' because this string should be an exact copy of the English source text.''
::''The translation in the example below is '''incorrect''' because this string should be an exact copy of the English source text.''


[[File:Notranslate.png|500px|center|Notranslate tag in Transifex]]
[[File:Notranslate.png|500px|center|Notranslate tag in Transifex]]<br>
<br>
|}
|}


{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Communicate with other translators and reviewers using [https://docs.transifex.com/translation/tools-in-the-editor#comments comments]''' if there is any confusion about a translation, terminology choices, or what the original source text means. '''Mention the contributor's name (@username) to make sure the relevant people are notified.'''
===Punctuation, Capitalization, Double Spaces and Typos===
The small details make a big difference in the end product. Individuals are less likely to trust a tool whose interface is messy or has inconsistent punctuation and capitalization, even if the translation itself is correct.
 
:'''While you are translating and reviewing, make sure that you:'''
:*Use the correct and consistent punctuation;
:*Use correct and consistent capitalization. If there are individual terms that are capitalized in the English source, they are most likely capitalized for a reason. Double check to see if you should also capitalize in the target language translation;
:*Add the correct number of brackets, parentheses and curly brackets in your translation; and  
:*Do not add double spaces unless they are present in the original source content. You can turn on "Display Spaces" in your [https://docs.transifex.com/translation/translating-with-the-web-editor#editor-settings Transifex Editor Settings] which will help you visualize spaces in the source text and your translation.


If you do not mention a contributor's username in a comment or issue, they will not be notified.
::[[File:Display_Spaces.png|500px|center|Display Spaces Transifex]]
|}
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Create an [https://docs.transifex.com/translation/tools-in-the-editor#issues issue] if there is a fundamental problem with a string''' that impedes translation or needs to be changed. This will notify the developer and Localization Lab staff that there is a problem that needs to be resolved.
===Reference other Languages===
If you are multi-lingual, you can view both the English source text and current translations in another language that you speak. This can be helpful when trying to understand the context and meaning of the English source text.
 
You can add an additional source language through the [https://docs.transifex.com/translation/translating-with-the-web-editor#editor-settings Transifex Editor Settings] in the web editor.


There are several priority levels to chose from when creating an issue:
'''Please remember''' that the current translations in another language may or may not be reviewed by a trusted contributor, and you should ultimately defer to the English source text.
*'''Low:''' Minor and cosmetic changes to a source string.
* '''Normal:''' Typos, questions or changes affecting the meaning of a source string that may hinder translation.
* '''High:''' Significant issues with the localizability or coherence of the source string.
* '''Critical:''' Issues with the source string that might break the software.
|}
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Pay attention to references to settings and buttons in other operating systems or pieces of software''' (i.e. iOS or Android) and be sure to use the translation used in those apps / operating systems.<br><br>''Example:'' If the string refers to the Android OS "Settings", make sure the translations corresponds with the Android OS translation.<br><br>Similarly, if the app refers to "Settings" or "Send" etc. in its own interface, make sure the translation is the same across the application.
===Always Keep the End User in Mind===
Ask yourself: "If my 65-year-old parent read this (who has a total of 3 apps on their phone and uses only one of them on a weekly basis), would they understand this without anyone's help?".
 
The goal is not to literally translate words and sentences, but to make the text understandable - while still maintaining accuracy - for people coming from different linguistic, cultural and technical backgrounds.  
|}
|}


{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"  
|
|
'''Punctuation, capitalization, double spaces and typos matter!''' These small details make a big difference in the end product. Individuals are less likely to trust a tool with a messy and inconsistent interface, even if the translation itself is correct. While you are translating and reviewing, make sure you pay attention to the little details and remain faithful to the English source (while still using correct grammar and style for your language).
 
|}
===Know the Style Guide===
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
Check to see if there is a style guide for [https://wiki.localizationlab.org/index.php/Language_Resources your language] on this wiki.
|
 
'''Use the [https://docs.transifex.com/translation/using-the-glossary glossary]!''' Reference the glossary (and [https://docs.transifex.com/translation/using-translation-memory-and-concordance-search#concordance-search Concordance Search]) to make sure you are using the correct terms. Input terms into the glossary as often as possible to help maintain consistency and quality of translations.
No style guide on the Localization Lab wiki for your language team? Refer to [https://wiki.localizationlab.org/index.php/Language_Resources#Multi-Lingual_Style_Guides style guides for other technical projects].
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
Remember that the '''product name should not be translated or transliterated''' for this project unless you think it is necessary for users to understand, in which case you can follow the unique instructions for each on the [[projects]].
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''Read the "[https://docs.transifex.com/translation/tools-in-the-editor#string-instruction-and-developer-notes String Instructions]" and "[https://docs.transifex.com/translation/tools-in-the-editor#string-instruction-and-developer-notes Developer Notes]"''' for each string. They contain valuable information about how to translate the string.
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''If a string is tagged as "[https://docs.transifex.com/projects/preventing-resource-edits#locking-strings notranslate]" or "[https://docs.transifex.com/projects/preventing-resource-edits#locking-strings locked]", do not translate the string.''' [https://docs.transifex.com/translation/translating-with-the-web-editor#shortcut-buttons Copy] the exact string from the original source.
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''Use the "[https://docs.transifex.com/translation/using-translation-memory-and-concordance-search#concordance-search Concordance Search]" and the [https://docs.transifex.com/translation/translating-with-the-web-editor#searching-and-filtering-for-strings search filters]''' to double check that your translations are consistent in terminology, style and tone.
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''Use the ''[https://docs.transifex.com/translation/using-translation-memory-and-concordance-search#understanding-translation-memory-suggestions Suggestions]'' tab in the web editor''' to view translations of other strings and resources in related projects. Translations of strings which are up to 60% the same will appear in this tab. Referencing these suggestions will help you maintain consistency across projects.
|}
{|class="wikitable" style="margin-right: auto; margin-left: 0px; width: Auto; background-color:#ffcccc;"
|
'''Be aware of [https://docs.transifex.com/translation/html-files variables and placeholders]!''' Make sure you maintain variables in the translated text, but feel free to move them around as necessary in your language's grammar.
|}
|}

Latest revision as of 15:12, 26 July 2021

Please review the tips and guidelines below prior to localizing projects. The following information will help you navigate the Transifex interface and more effectively and accurately translate and review projects.

Do not Machine Translate

Machine translation tools like Google Translate and Microsoft Translator Hub are useful resources, however they should never be used as the foundation of your translation, particularly long-form text which is less and less likely to be accurate the longer it is.
Keep in mind that even if you heavily post-edit machine translations, the grammar, style, tone and terminology used in the machine translation can still greatly affect your translation.

Communicate

Leave Comments for other translators
Localization in the Localization Lab community is a group effort! If you are simply fixing a typo or grammatical error, feel free to make the changes necessary without leaving a comment. If you are changing key terminology or significantly changing the structure of a translation, leave a comment for the previous translator to briefly explain the change. Be sure the mention them by including @ followed by their username in your comment.
Leaving comments ensures that other contributors understand why you have made changes, can learn from them, and can make sure to apply the changes to future translations.
Leave Issues for project maintainers
If you don't understand what a string means, need more context or there is a typo or fundamental issue with the source text, let the project maintainer know! You can do this by creating an Issue. Developers and project maintainers are notified of issues so that they can be addressed efficiently.
There are several priority levels to chose from when creating an issue:
  • Low: Minor and cosmetic changes to a source string.
  • Normal: Typos, questions or changes affecting the meaning of a source string that may hinder translation.
  • High: Significant issues with the localizability or coherence of the source string.
  • Critical: Issues with the source string that might break the software.

Read the Developer Notes and Translation Instructions in Transifex

The Developer Notes and Instructions are located in the Web Editor in between the source text and the translation text field. Make sure to read and follow any available instructions for the string you are translating.
Example of Developer Notes.
Example of Developer Notes.


Do Not Translate or Transliterate Application or Project Names

Do not translate or transliterate project, company or application names that do not have an official or widely adopted regional variation.
Some projects have widely used and accepted translations or transliterations of their names. If this is the case in your language, feel free to use the localized version.
Example: تويتر (Transliteration of Twitter in Arabic)

Focus on Consistency

In addition to recurring terminology, you will often encounter strings that are duplicate or directly reference other strings. It is important to ensure these translations are consistent across the entirety of a project.

Example: If "Create Account" appears in a string in a project, use the filters in the Web Editor to see where else "Create Account" appears in the rest of the project resources and make sure the translation is consistent.
Reference to "Create Account" in a string.
Reference to "Create Account" in a string.

Original "Create Account" string.
Original "Create Account" string.

Transifex has several features to help you manage consistency across translations:
  • The Concordance Search allows you to search for words and phrases across multiple resources within the same project and across different projects within the same organization. You can use it to see how something is translated in different strings and contexts.
  • The Search Strings feature in Transifex allows you to search words and phrases across all Localization Lab projects using more filters than are available in the simple Concordance Search. You can filter matches by project, resource, target language, source language, tag, date etc.
  • Web Editor Filters allow you to filter and search strings across one or multiple resources in a project. Among many options, you can filter by word or phrase in the source text or in the translation text.
  • The Suggestions tab in the web editor lets you view translations from the Localization Lab Translation Memory from other strings and resources in related projects. Translations of strings which are up to 60% the same will appear in this tab. Referencing these suggestions can help you maintain consistency across projects.
  • The Localization Lab Glossary is very robust in English, however not all languages have translations for each term. Use the Glossary tab to double check translation of a term. If the term is not there, select View Glossary to add the translation to the glossary.
Key project terms will have the label "[project name]" in the Comments field for the term.

Watch out for Placeholders, HTML and Unicode Character Entities, and Markup Language.

Placeholders and Variables

Many project strings contain placeholders which may replace HTML, XML or words and numbers that change within the application's interface. It is important to keep these placeholders unchanged in the translation. You can move the placeholders depending on where they grammatically make the most sense in your language.

Hover your mouse over the variable in the English source text to see what the placeholder is replacing.
Variables in Transifex
Variables in Transifex

Sometimes a variable will not be recognized by Transifex and will be editable in the web editor. If you see an element within curly brackets, you can assume that in most cases you should not translate anything inside the brackets. Double check the Developer Notes to see if there are any special notes about how to treat the content in brackets. If you are still unsure, create an "Issue" for the string so that a project maintainer can clarify.
Curly bracket variables in Transifex
Curly bracket variables in Transifex

Placeholders will often provide hints as to what they replace in the app's user interface. If you cannot determine what the placeholder will replace in the app and as a result, don't know how to translate the surrounding content, create an issue and ask the project maintainer.
Below, the placeholder "{language}" will be replaced by the name of a language.
Language Variable in Transifex
Language Variable in Transifex

Below you can see how the variables "{author}", "{title}" and "{status}" are replaced by different text in the Check user interface.
Status and Author Variables in Check
Status and Author Variables in Check

Author and Title Variables in Check
Author and Title Variables in Check

Context for Check Variables
Context for Check Variables

Review the Transifex documentation to learn how to manage placeholders in the translation editor.

HTML and Unicode Character Entities & Mark Down Language

Sometimes an HTML character entity will not be recognized and replaced by Transifex. In these cases, you can either copy the exact character entity or you can replace it with what it corresponds to.
You can look up HTML entities on the W3 website.
Examples:
  • &nbsp; is a non-breaking space
  • &lt; is equivalent to <
  • &gt; is equivalent to >
HTML variable in Transifex
HTML variable in Transifex

HTML variable in Transifex
HTML variable in Transifex

New lines

The little blue arrows in the source text are equivalent to a new line (/n). Make sure to input new lines where indicated in the source text. Do so by simply selecting the Enter or Return key on your keyboard. The number of new lines in the translation should be the exact same as the number in the English source text.

Pay Attention to the "notranslate" Tag

Some strings will be assigned the "notranslate" tag and you will find a special message at the bottom of the translation input field. These strings should be copied exactly using the copy icon in the web editor. If you do not copy these strings exactly, Transifex will give you an error warning.
The translation in the example below is incorrect because this string should be an exact copy of the English source text.
Notranslate tag in Transifex
Notranslate tag in Transifex

Punctuation, Capitalization, Double Spaces and Typos

The small details make a big difference in the end product. Individuals are less likely to trust a tool whose interface is messy or has inconsistent punctuation and capitalization, even if the translation itself is correct.

While you are translating and reviewing, make sure that you:
  • Use the correct and consistent punctuation;
  • Use correct and consistent capitalization. If there are individual terms that are capitalized in the English source, they are most likely capitalized for a reason. Double check to see if you should also capitalize in the target language translation;
  • Add the correct number of brackets, parentheses and curly brackets in your translation; and
  • Do not add double spaces unless they are present in the original source content. You can turn on "Display Spaces" in your Transifex Editor Settings which will help you visualize spaces in the source text and your translation.
Display Spaces Transifex
Display Spaces Transifex

Reference other Languages

If you are multi-lingual, you can view both the English source text and current translations in another language that you speak. This can be helpful when trying to understand the context and meaning of the English source text.

You can add an additional source language through the Transifex Editor Settings in the web editor.

Please remember that the current translations in another language may or may not be reviewed by a trusted contributor, and you should ultimately defer to the English source text.

Always Keep the End User in Mind

Ask yourself: "If my 65-year-old parent read this (who has a total of 3 apps on their phone and uses only one of them on a weekly basis), would they understand this without anyone's help?".

The goal is not to literally translate words and sentences, but to make the text understandable - while still maintaining accuracy - for people coming from different linguistic, cultural and technical backgrounds.

Know the Style Guide

Check to see if there is a style guide for your language on this wiki.

No style guide on the Localization Lab wiki for your language team? Refer to style guides for other technical projects.