Harmony I18n Tool Plan

Requirement

As we see the Harmony Project has a infrastructure but has no data, we need them to meet customer requirement. A tool automatic setup i18n mechanism for open source project will do a lot benefit to all lightweight projects to their custimers

Goal

The project is plan to make up an automatic tool that helps project to automatically extract the messages in source code, analysis if necessary to localized, then translate and adjust, and at last inject into the source code and apply the localization.
The tool focus on Java Projects, using java ResourceBundle or property loading mechanism.

High level Design

The tool can be depart into 3 small tools/sequences:
1 String extractor and analyzer
In this step, the tool shall look for all strings in the project. Note not all Strings can be localized or it's not necessary. We have to detect, maybe with user's hint (by argument/profile) or user's decision (decide the necessary files)
2 the translator
We don't focus on the translator as there's so many translators and tools, however we may look for a mechanism to automatically translate and adjust for the open source project, so we may offer choice for customers for the style. We are not going to find a 100% correct translation.
3 the injector
This part will apply a formalized i18n mechanism into the source code, using ResourceBundle or property loading, this also help the customer to fix the translation easily.

Reference

1 [https://issues.apache.org/jira/browse/HARMONY-6453|issues]

=the old info from gsoc2009

Subject ID

harmony-i18n-tool

Title

Automatic localization tool for open source project

ASF Project

_Apache Harmony

http://harmony.apache.org_

Keywords

open source project, localization, automatic translation

Description

_The Harmony Project has no localized data for worldwide customers. This project plans to create an automatic tool that helps projects to translate the necessary messages. The tool will automatically extract the messages, conduct analysis if necessary to translate, translate and adjust, and at last inject into the source code with ResourceBundle or property loading mechanism and apply the localization. There are many open source projects in existence, most of which do not have localized messages for customer convenience, including the Harmony project, so the tool may also be helpful on a wider scale. (

http://wiki.apache.org/harmony/Harmony_i18n_tool)_

Possible Mentors

Jing Lv (Jimmy) (committer)

Status

No student yet

  • No labels