Creating Translation Lists
Project translation is also known as Client localization. This is how the user can choose their language-of-choice for the project they are working with. When the user selects a language, the Client will change its text in accordance with the project's translation settings.
Ignition's Language Selector components will allow the user to translate the text of a window or a project to the language of their choice. To ensure all the terms are correctly translated in anticipation of a user using the Language Selector, it is important to leverage the import and export translation features associated with Ignition's Translation Manager.
Setting up new Languages and Terms
Add Global Translation Terms
-
Go to Tools > Translation Manager.
-
Add a language, for example Spanish.
-
Add terms and phrases to be translated.
The translation database shares terms across all projects.
You can use codes for the Key field of your Terms like '#stop' or '#welcome_screen_info' (the # is just for convention, it is not a special character), to help manage longer instruction sets.
Add Component Translation Terms
Alternatively, you can right-click on the Root Container of a window and select Translations. The Translatable Terms panel will provide all the terms on the window. This can provide a central place to manage all the translations associated with the window.
The difference between the Global and the Component translations is that the Component translations are stored on the component instead of in the translation manager's database.
Selecting a Language in the Client
One way to switch between languages you've set up is to add a Language Selector Component to your project and open a client. Now your users can move easily between languages. See Switching the Current Language for more options.
There is no binding involved because the languages are compared directly against the Translation Manager database. All matching terms are automatically translated.
Translation List Import and Export
To export all the terms from a window
-
Right-click on an existing window's Root Container and select Translations.
The Translatable Terms panel is displayed on top of the Property Editor. -
Select all the available Component Terms and mark the terms for translation by clicking the Earth icon with the green plus sign. Note: the list of available terms are based on the components in the Root Container. If you have no available terms, try adding a label or button to the window.
-
Select Tools > Translation Manager.
-
Export the terms by selecting the Export Terms icon on the right of the Translation Manager.
-
Select the Folder location, Base file name, and the appropriate Languages.
-
In the Format drop-down select either PROPERTIES or XML, they both behave the same. The only difference is that the XML format supports UTF-8 encoding directly.
A person can now translate the XML file directly and the XML file can be imported back into Ignition's Translation Manager.
To import terms into Ignition's Translation Manager
-
Go to Tools > Translation Manager, and select the Import Terms icon from the right of the Translation Manager.
-
Choose the file from the Open window, and Click Open.
-
In the Translation Manager, choose the correct Language and choose to import all or the selected terms.
The terms are imported into the Translation Manager.
Global and Component Translation Scopes
The translation database and term lookup rely on two different scopes for term lookup: component scope and global scope. The difference being that component translations are stored on windows, and global translations are stored in the global translation database.
Global Scope
A single language selector on a window has the potential to trigger translations on all windows. This way a single language selector component can exist on a navigation window and provide language translations for all components on all windows.
Component Scope
The component scoped translation terms can display special translations that may be more relevant to the given context of the translation. For example, if the English language has one word that shares meaning between context while the alternate language has two words that differentiate between the two context then the component level translation may be appropriate. If the component level translation is not configured on the component then the translation term is automatically taken from the global scope. Component level translation will reflect on all components that occur on a single window. Component level translations does not encompass terms beyond the window on which they are configured.
Similar Topics ...
-
Switching the Current Language