| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" | |
| "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | |
| <html xmlns="http://www.w3.org/1999/xhtml"> | |
| <head> | |
| <title>Babel Pseudo Translations</title> | |
| <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" /> | |
| <link href="../article.css" type="text/css" rel="stylesheet" /> | |
| </head> | |
| <body> | |
| <h1>Babel Pseudo Translations</h1> | |
| <div class="summary"> | |
| <h2>Summary</h2> | |
| <p>Babel Pseudo Translations are a very useful tool for globalization testing of | |
| Eclipse projects. This article provides step-by-step instructions and examples | |
| describing what are the Babel Pseudo Translations, where to download them, how to | |
| install them, and how to launch Eclipse in Babel Pseudo Translations. Eclipse | |
| developers can use the Babel Pseudo Translations to verify the translatability of | |
| their projects and make sure Eclipse excels in national language support.</p> | |
| <div class="author"> | |
| By Kit Lo, IBM | |
| </div> | |
| <div class="copyright"> | |
| Copyright © 2012 International Business Machines Corp. | |
| </div> | |
| <div class="date"> | |
| January 4, 2012 | |
| </div> | |
| </div> | |
| <div class="content"> | |
| <h2>Introduction</h2> | |
| <p>Eclipse is a global community. It is in everyone's interest to ensure that Eclipse | |
| is globalized and translated into as many languages as possible. Babel is the | |
| globalization project for Eclipse. The goal of the Babel project is to provide a set | |
| of tools to make the job of globalizing Eclipse projects easier. Babel also provides | |
| ways for people worldwide, who are interested, to contribute translations in their | |
| language of choice.</p> | |
| <h2>Babel Translation Server</h2> | |
| <p>The Babel Translation Server (<a href= | |
| "http://babel.eclipse.org/babel/">http://babel.eclipse.org/babel/</a>) is a wiki-like | |
| server where any Eclipse user with an Eclipse Bugzilla ID may login and help | |
| translate Eclipse.</p> | |
| <h2>Babel Language Packs and Update Sites</h2> | |
| <p>Babel produces nightly and weekly language packs from the translations entered | |
| into the Babel Translation Server. Information for the latest Babel Language Packs | |
| and Update Sites is available at: <a href= | |
| "http://www.eclipse.org/babel/downloads.php">http://www.eclipse.org/babel/downloads.php</a></p> | |
| <h2>Babel Pseudo Translation Language Packs</h2> | |
| <p>Among the language packs built are the <b><i>Babel Pseudo Translation Language | |
| Packs</i></b> . Using these pseudo translation language packs, you can:</p> | |
| <ul> | |
| <li>identify hard-coded strings</li> | |
| <li>identify layout and truncation problems</li> | |
| <li>identify the Eclipse project and file where strings come from</li> | |
| </ul> | |
| <h2>Installing the Babel Pseudo Translation Language Packs</h2> | |
| <p>The following is an example on how to install the Babel Pseudo Translation | |
| Language Pack for the Eclipse 3.7 project on Windows. Similar process can be used to | |
| install the Babel Pseudo Translation Language Packs for other Eclipse projects on | |
| different platforms.</p> | |
| <ul> | |
| <li>Assume that you have Eclipse 3.7 installed at: | |
| <b><i>D:\eclipse-SDK-3.7-win32</i></b></li> | |
| <li>Go to the <b><i>Babel Language Packs and Update Sites</i></b> download page at: | |
| <a href= | |
| "http://www.eclipse.org/babel/downloads.php">http://www.eclipse.org/babel/downloads.php</a></li> | |
| <li>Click on the <b><i>Babel Language Pack Zips for Indigo</i></b> link (see figure | |
| 1)</li> | |
| <li style="list-style: none"><br /> | |
| <img src="images/figure001.png" alt= | |
| "Figure 1 - Babel Language Packs and Update Sites Download Page" /><br /> | |
| Figure 1 - Babel Language Packs and Update Sites Download Page<br /> | |
| <br /></li> | |
| <li>Scroll down to the <b><i>Pseudo Translations</i></b> section</li> | |
| <li>Click on the <b><i>Babel Pseudo Translation Language Pack for Eclipse</i></b> | |
| link (see figure 2)</li> | |
| <li style="list-style: none"><br /> | |
| <img src="images/figure002.png" alt= | |
| "Figure 2 - Babel Pseudo Translation Language Packs" /><br /> | |
| Figure 2 - Babel Pseudo Translation Language Packs<br /> | |
| <br /></li> | |
| <li>Download and unzip the pseudo translation language pack to: | |
| <b><i>D:\eclipse-SDK-3.7-win32</i></b></li> | |
| </ul> | |
| <h2>Launching Eclipse in Babel Pseudo Translations</h2> | |
| <ul> | |
| <li>Create a shortcut for the Eclipse executable file: | |
| <b><i>D:\eclipse-SDK-3.7-win32\eclipse\eclipse.exe</i></b></li> | |
| <li>Rename the shortcut to <b><i>eclipse-pseudo</i></b> for easier | |
| identification</li> | |
| <li>Select <b><i>Properties</i></b> from the popup menu for the shortcut</li> | |
| <li>Append the <b><i>-nl en_AA</i></b> command line argument to the end of the | |
| <b><i>Target</i></b> field (see figure 3)</li> | |
| <li style="list-style: none"><br /> | |
| <img src="images/figure003.png" alt= | |
| "Figure 3 - Create Shortcut for Launching Eclipse in Babel Pseudo Translations" /><br /> | |
| Figure 3 - Create Shortcut for Launching Eclipse in Babel Pseudo Translations<br /> | |
| <br /></li> | |
| <li>Click <b><i>OK</i></b> to save the changes</li> | |
| <li>Double-click the shortcut to launch Eclipse in Babel Pseudo Translations</li> | |
| <li>Choose your workspace folder on the <b><i>Workspace Launcher</i></b> dialog and | |
| click <b><i>OK</i></b> to continue</li> | |
| <li>Eclipse will be launched in Babel Pseudo Translations</li> | |
| <li>Note: If your Eclipse package contains other Eclipse projects, you need to | |
| download and install the Babel Pseudo Translation Language Packs for the other | |
| Eclipse projects</li> | |
| </ul> | |
| <h2>Testing with Babel Pseudo Translations</h2> | |
| <ul> | |
| <li>Figure 4 below shows an example of the <b><i>Eclipse IDE for Java EE | |
| Developers</i></b> package with <b><i>Babel Pseudo Translation Language | |
| Packs</i></b> for <b><i>Eclipse</i></b> , <b><i>Datatools</i></b> , | |
| <b><i>Marketplace Client</i></b> , <b><i>Mylyn</i></b> , <b><i>Target Management | |
| (RSE)</i></b> , and <b><i>Webtools</i></b> installed</li> | |
| <li style="list-style: none"><br /> | |
| <img src="images/figure004.png" alt= | |
| "Figure 4 - Eclipse IDE for Java EE Developers Package with Babel Pseudo Translation Language Packs" /> | |
| <br /> | |
| Figure 4 - Eclipse IDE for Java EE Developers Package with Babel Pseudo Translation | |
| Language Packs<br /> | |
| <br /></li> | |
| <li>You will notice that there is a special <b><i>Babel Pseudo Translation | |
| Prefix</i></b> in the form of | |
| <b><i><project-id><pseudo-translation-index>:</i></b> in front of every | |
| string in Eclipse, for example: <b><i>eclipse2824094:General</i></b></li> | |
| <li>A string without the <b><i>Babel Pseudo Translation Prefix</i></b> , for | |
| example, the <b><i>Enable</i></b> checkbox label (enclosed in red in figure 4), is | |
| “usually” hard-coded in the programs and not externalized for | |
| translation</li> | |
| <li>Further investigations have to be done to determine if the source plugins are | |
| properly provided to Babel for string extraction, or if you are missing the Babel | |
| Pseudo Translation Language Packs for other Eclipse projects</li> | |
| <li>The added prefix to every string in Eclipse helps to simulate longer | |
| translations from other languages and hence can help identify layout and truncation | |
| problems in Eclipse</li> | |
| <li>For example, the <b><i>Quick Access</i></b> label for global search field in | |
| the tool bar (enclosed in blue in figure 4) does not take into account of longer | |
| translations from other languages and the label is truncated when Eclipse is | |
| launched in Babel Pseudo Translations</li> | |
| </ul> | |
| <h2>Identify the Eclipse Project and File Where Strings Come From</h2> | |
| <ul> | |
| <li>The Babel Pseudo Translation Language Packs can be used to identify the Eclipse | |
| project and file where strings come from</li> | |
| <li>For example, you'd like to indentify the Eclipse project and file where the | |
| <b><i>webtools2846555:Syntax Coloring</i></b> string comes from</li> | |
| <li>The first part of the Babel Pseudo Translation Prefix tells you that the string | |
| comes from the <b><i>Webtools</i></b> project</li> | |
| <li>Go to the <b><i>Babel Webtools NLS Feature</i></b> folder at where your Eclipse | |
| package is installed: | |
| <b><i>D:\eclipse-jee-juno-M4-win32\eclipse\features\org.eclipse.babel.nls_webtools_en_AA_4.2.0.v20111230043401</i></b> | |
| (see figure 5)</li> | |
| <li style="list-style: none"><br /> | |
| <img src="images/figure005.png" alt= | |
| "Figure 5 - Babel Webtools NLS Feature Folder" /><br /> | |
| Figure 5 - Babel Webtools NLS Feature Folder<br /> | |
| <br /></li> | |
| <li>Open the <b><i>BabelPseudoTranslationsIndex-webtools.html</i></b> file in a web | |
| browser</li> | |
| <li>Find the link for <b><i>webtools2846555</i></b> (see figure 6)</li> | |
| <li style="list-style: none"><br /> | |
| <img src="images/figure006.png" alt= | |
| "Figure 6 - BabelPseudoTranslationsIndex-webtools.html" /><br /> | |
| Figure 6 - BabelPseudoTranslationsIndex-webtools.html<br /> | |
| <br /></li> | |
| <li>Inspect the URL: | |
| <b><i>http://babel.eclipse.org/babel/translate.php?project=webtools&version=3.4&file=org.eclipse.wst.css.ui/plugin.properties&string=CSS_Syntax_Coloring</i></b></li> | |
| <li>The URL shows that the string comes from <b><i>project: webtools</i></b> , | |
| <b><i>version: 3.4</i></b> , <b><i>file: | |
| org.eclipse.wst.css.ui/plugin.properties</i></b> , <b><i>string: | |
| CSS_Syntax_Coloring</i></b></li> | |
| <li>If you click on the URL, login to the Babel Translation Server with your | |
| Eclipse Bugzilla user ID and password, you can help translate the string in your | |
| language (see figure 7)!</li> | |
| <li style="list-style: none"><br /> | |
| <img src="images/figure007.png" alt="Figure 7 - Babel Translation Server" /><br /> | |
| Figure 7 - Babel Translation Server<br /> | |
| <br /></li> | |
| </ul> | |
| <h2>Conclusion</h2> | |
| <p>Babel Pseudo Translations are a very useful tool for Eclipse developers to test | |
| for hard-coded strings, layout and truncation problems, and to identify the Eclipse | |
| project and file where strings come from. Eclipse developers can use the Babel Pseudo | |
| Translations to verify the translatability of their projects and make sure Eclipse | |
| excels in national language support.</p> | |
| <h2>Trademarks</h2> | |
| <p>Eclipse is a trademark of the Eclipse Foundation, Inc.</p> | |
| <p>IBM is a registered trademark of International Business Machines Corporation in | |
| the United States, other countries, or both.</p> | |
| <p>Microsoft and Windows are registered trademarks of Microsoft Corporation in the | |
| United States, other countries, or both.</p> | |
| <p>Oracle and Java are registered trademarks of Oracle and / or its affiliates.</p> | |
| <p>Other company, product, or service names may be trademarks or service marks of | |
| others.</p> | |
| </div> | |
| </body> | |
| </html> |