Harmony I18n Tool Plan
- 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
- 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)
- 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.
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.