Jump to: navigation, search

Eclipse Globalization Guidelines

Revision as of 12:13, 7 January 2008 by Kitlo.us.ibm.com (Talk | contribs) (Eclipse Globalization Guidelines)

Eclipse Globalization Guidelines

This document is a working draft.

Kit Lo

Last Updated: January 2008

Note: Please use Babel committers mailing list to add comments instead of embedding them in this document.


Eclipse is an open source project contributed by developers around the world. Every developer’s programming style may be a little different. Often times, developers may not aware that little things they do in their programs may have a huge impacts in globalization of Eclipse. In this document, we try to define a set of guidelines for Eclipse globalization. If these guidelines are adopted by all Eclipse developers and translators, it will lead to greater consistency and the success of globalizing Eclipse.

In this section, we will discuss the rationales behind some of the globalization guidelines. At the end of the document, a summary of the Eclipse Globalization Guidelines is listed.

Eclipse Resource Bundle Process

Standard Java resource bundles are not very memory efficient. The keys for a resource bundle are stored in the class files of the plug-in, which are saved somewhere in the JVM’s data structures. The resource bundles are loaded in whole, even when no string is ever looked up from it.

Eclipse came up with an alternate resource bundle process in release 3.1 to improve memory usage. A conversion tool was provided to migrate to the new resource bundle process. See Message Bundle Conversion Tool for more information.

All ResourceBundle file contents should be encoded in UTF-8

Different operating systems running in different language settings may save files in different encodings. To avoid confusions, we recommend all Eclipse developers and translators to encode all ResourceBundle source file contents and all translated ResourceBundle file contents in UTF-8.

GuidelineIndicator.gifGuideline 1.1

All ResourceBundle source file contents should be encoded in UTF-8.

GuidelineIndicator.gifGuideline 1.2

All translated ResourceBundle file contents should be encoded in UTF-8.