Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
translation [2019_04_29 09:06] – [Updating translations with new File Fabric releases] minor changes kamrantranslation [2024_02_20 23:55] (current) – external edit 127.0.0.1
Line 1: Line 1:
-====== Translation Localization ======+====== Languages, Translation and Localization ====== 
 +== last updated on Feb 21, 2023 ==
  
-The Enterprise File Fabric Web interface supports translation/localization, allowing you to customize the strings displayed in your File Fabric.+The Access Anywhere Web interface supports translation/localization, allowing you to customize the strings displayed.
  
-Out of the box, the Enterprise File Fabric (appliance) ships with the following language support:+Out of the box the following languages are supported:
  
   * English   * English
 +  * French
 +  * German
   * Italian   * Italian
-  * Polish+  * Spanish
  
-At its core, the File Fabric uses the [gettext](https://en.wikipedia.org/wiki/Gettext) standard to handle translations.  +At its core, the platform uses the [gettext](https://en.wikipedia.org/wiki/Gettext) standard to handle translations.  
  
 ===== Which language is selected? ===== ===== Which language is selected? =====
  
-When a user visits Enterprise File Fabric service's  web interface, the users Browser will inform the File Fabric with a list of languages the user is happy to receive in order of preference. Typically, browsers will make the users current operating system locale the most highly preferred language. The File Fabric will take this list of preferred languages, and selects a language that is closest to the users most preferred language and one that is supported by the File Fabric+When a user visits the Access Anywhere Server web interface, the user's browser will inform the server with with a list of languages the user is happy to receive in order of preference. Typically, browsers will make the users current operating system locale the most highly preferred language. The server will take this list of preferred languages, and select a language that is closest to the users most preferred language and one that is supported by Access Anywhere.
  
 Some browsers may also provide override settings, or extensions, that also allow users to select their desired language that may differ from their operating system's settings.  Some browsers may also provide override settings, or extensions, that also allow users to select their desired language that may differ from their operating system's settings. 
  
 ==== Translation management ==== ==== Translation management ====
-The File Fabric provides an interface where the administrator can manage the translations. You must have the ApplAdmin account details to acces it. + 
 +Access Anywhere provides an interface where the administrator can manage the translations. You must have the ApplAdmin account details to acces it. 
  
 To visit this interface, login as the **ApplAdmin** user, and click on **Settings** \> **Languages** To visit this interface, login as the **ApplAdmin** user, and click on **Settings** \> **Languages**
Line 27: Line 31:
  
 From this screen you will notice the following controls: From this screen you will notice the following controls:
-  * **Download current version of .pot files** — To translate the File Fabric you will need the base "template" files. This link allows you to download these files 
-  * **Force to use selected language** — When this is set to anything other than "autodetect", the File Fabric will not perform any language negotiation with the browser and will always display in the selected language.  
-  * **Default language** — This sets the default language that is served if no mutual language can be negotiated with the users browser. 
-  * **Active languages** — This controls which languages are available. Download links to the translation files for these files are provided.  
  
-==== Translating the File Fabric ==== +  * **Download current version of .pot files** — To translate all expressions you will need the base "template" filesThis link allows you to download these files
-Before you begin any translation of the File Fabric, you should first ensure that you have suitable translation tools available. As the File Fabric uses the gettext standard, many free and paid tools exist, such as [POEdit](https://poedit.net/) (Windows + Mac compatible) which can be used to ease the editing process. You should ensure you have something sufficient installed before proceeding. +
  
-If you are translating the File Fabric into language that does not exist, then you should start by clicking the **Download current version of .pot files** link. +  * **Force to use selected language** — When this is set to anything other than "autodetect", Access Anywhere will not perform any language negotiation with the browser and will always display in the selected language. 
 +  
 +  * **Default language** — This sets the default language that is served if no mutual language can be negotiated with the user's browser. 
 + 
 +  * **Active languages** — This controls the active languages and download links to the translation files for available languages.  
 + 
 +==== New Translations ==== 
 + 
 +Before you begin any translation you should first ensure that you have suitable translation tools available. Access Anywhere uses the gettext standard, many free and paid tools exist, such as [POEdit](https://poedit.net/) (Windows + Mac compatible) which can be used to ease the editing process. You should ensure you have something sufficient installed before proceeding.  
 + 
 +If you are translating into language that does not exist, then you should start by clicking the **Download current version of .pot files** link. 
  
 In the download, you will receive a ZIP file that contains 3 POT files, each of which contain different translation strings used in different parts of the application.  In the download, you will receive a ZIP file that contains 3 POT files, each of which contain different translation strings used in different parts of the application. 
Line 49: Line 58:
 When prompted, select the language you wish to translate to. When prompted, select the language you wish to translate to.
  
-{{::translation_language_and_sme_code_pot_and_/_translation___localization_-_storage_made_easy/_documentation.png?400|}}+{{::select_language.png?400|}}
  
 The tool will then allow you to input translations.  The tool will then allow you to input translations. 
Line 63: Line 72:
 Once you have completed the translations, you will have 3 .PO files containing translations.  Once you have completed the translations, you will have 3 .PO files containing translations. 
  
-Whilst you are saving changes to the PO files, some applications like POEdit automatically generate .MO files. These are compiled versions of the PO files and are also required by the File Fabric+Whilst you are saving changes to the PO files, some applications like POEdit automatically generate .MO files. These are compiled versions of the PO files and are also required by the server.
  
 If your editor does not automatically compile the PO files into MO files, then most editors provide an option to convert into MO.  If your editor does not automatically compile the PO files into MO files, then most editors provide an option to convert into MO. 
Line 77: Line 86:
 The process for updating existing translations is similar to the process for creating new translations, however in this case the process will not start with POT files, it will start with PO files instead (already converted to PO).  The process for updating existing translations is similar to the process for creating new translations, however in this case the process will not start with POT files, it will start with PO files instead (already converted to PO). 
  
-You can then make you changes, compile, and upload to the File Fabric+You can then make you changes, compile, and upload to the server.
  
-==== Updating translations with new File Fabric releases ==== +==== Updating translations with new Access Anywhere Server releases ====
-When you update your File Fabric installation to new versions, your existing translations will be persisted with the updates. +
  
-However, as with any new release, it is likely that new strings will have been introduced. With each release, the File Fabric's POT (template) files are updated, and you should perform a merge with the POT files to ensure you have no missing strings. +When you update your installation to new versions, your existing translations will be persisted with the updates.  
 + 
 +However, as with any new release, it is likely that new strings will have been introduced. With each release, the Access Anywhere's POT (template) files are updated, and you should perform a merge with the POT files to ensure you have no missing strings. 
  
 To do this, download the new POT files. For each POT file, like **sme\_code.pot**, you will need to merge it with our previous translated PO file.  To do this, download the new POT files. For each POT file, like **sme\_code.pot**, you will need to merge it with our previous translated PO file. 
Line 94: Line 104:
 This will merge the old PO file with the new template (maintaining existing translations) and create a new file called **sme\_code\_fr\_new.po**. You can check the new file, and once happy rename it to the original name. Repeat this process for each PO and relevant POT file that exists. This will merge the old PO file with the new template (maintaining existing translations) and create a new file called **sme\_code\_fr\_new.po**. You can check the new file, and once happy rename it to the original name. Repeat this process for each PO and relevant POT file that exists.
  
-Once done, follow the previous instructions for uploading your PO files to the File Fabric.+Once done, follow the previous instructions for uploading your PO files to the Access Anywhere Server. 
 + 
 +## Troubleshooting 
 + 
 +PO and POT Files can be found under 
 + 
 +    /var/www/smestorage/public_html/languages 
 + 
 +==== Replacing text in the English ("en") language ==== 
 +     
 +English ("en") is the base language.  You cannot change the strings for English directly but you can add a new language and force that language to be used.  At a high level the steps are: 
 + 
 +  * Download the .pot files for the current language ("en") using the link at the top of the Languages page. 
 +  * Copy the .pot files to .po files(s), adding the language code to the names of the files as described on the doc. page, for example: "sme_code_en.po"
 +  * Edit the .po files that contain the strings strings that you want to change, replacing the empty message strings with the new values you want. 
 +  * Compile all three .po files, producing three .mo files. All of these files should sit together. 
 +  * Zip the six files (.po and .mo) and upload them to the server. 
 +  * Set the newly uploaded language as the default language. 
 + 
 +The .po files that you will be starting with are the base files for the Server.  In these files the message IDs are the strings that Access Anywhere displays in its base language (English) by default, and the message strings are all empty. 
 + 
 +You should find the message IDs that match the strings you want to replace and put the replacement values between the quotes of the associated message strings.  You will probably have to make changes in all three .po files.  Also, you will probably want to search the files for messages where the text you want to change is a substring of the message ID and change those message strings as well. You only need to edit the messages you want to change; leave the remainder as empty quotes.