<!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> |