NB61L10nOverview

NetBeans 6.1 L10N Engineering Process (for Sun Supported Languages using WS)

Contents


Overview

There are big two changes in engineering process at NetBeans 6.1 releases:

Mercurial

New versioning system of netbeans.org. Our home repository is : http://hg.netbeans.org/main/l10n. You can get our files by

% hg clone http://hg.netbeans.org/main/l10n

l10n-kit structure

The structure of l10n-kit has been also changed dynamically. We now use the same(almost) structure of nbm/jar files. Please check the detail in NB6.1MLPlan

  • The top directory is based on cluster name, the 2nd directory is based on nbm name
  • All .properties files are generated from nbm/jar files, which means most comment lines are removed. Only #NOI18N comment are there.

l10n-kit

l10n-kit (200804090901) - except OLH

  • Only IDE, Stable UC should start after IDE localization.
l10n-kit type list file Who will prepare l10n-kit How to Translate
.properties list nb61-msg.zip Masaki by WS, TPM will upload it to WS and start project
.html (message) list nb61-msghtml.zip Masaki by WS, TPM will upload it to WS and start project
Other (.url files) list nb61-other.url.zip Masaki Masaki will take them for all languages
Other (.gif files)
\for download page
list nb61-other.img.zip Masaki Masaki will ask Helen to localize
Other (.js files)
\for download page
list nb61-other.js.zip Masaki Masaki will ask Rebecca, Jeremie to translate by hand
Keyboard shortcut sxw pdf_source.zip Masaki TPM will pick up it, please translate pdf_source/shortcuts61.sxw and deliver both sxw and pdf. You can find 6.0 localized files in the same zip files under pdf_source/nb60_localized


OLH l10n-kit (200804170002)

  • Only IDE as same as above kits.
  • OLH starts 12 weeks after UI translation.
l10n-kit
type
list file Who will
prepare
l10n-kit
How to Translate
OLH list nb61-olh.zip Keiichi by WS, TPM will update it to WS and start project


l10n-kit (final) - 200805070101

The following files have been udated:

enterprise5/j2ee-common/j2ee-common/org/netbeans/modules/j2ee/common/project/ui/Bundle.properties
enterprise5/web-project/web-project/org/netbeans/modules/web/project/ui/wizards/Bundle.properties
installer/components/groups/nb-ide-group/data/Bundle.properties
installer/components/products/mysql/src/org/netbeans/installer/products/mysql/Bundle.properties
installer/components/products/mysql/src/org/netbeans/installer/products/mysql/wizard/panels/Bundle.properties
installer/components/products/nb-php/data/Bundle.properties
installer/components/products/portletcontainer/data/Bundle.properties
installer/engine/branding/jdk/src/data/engine.properties
installer/engine/branding/jdk/src/org/netbeans/installer/wizard/components/actions/netbeans/Bundle.properties
installer/engine/branding/jtb/src/data/engine.properties
installer/engine/branding/jtb/src/org/netbeans/installer/wizard/components/actions/netbeans/Bundle.properties
installer/engine/src/data/engine.properties
installer/engine/src/org/netbeans/installer/wizard/components/actions/netbeans/Bundle.properties
installer/engine/src/org/netbeans/installer/wizard/components/panels/netbeans/Bundle.properties
installer/infra/build/web/js/common_strings.js
installer/infra/build/web/js/download_strings.js
installer/mac/newbuild/Bundle.properties
nb6.1/ide-branding/locale/org-netbeans-core-windows_nb/org/netbeans/core/windows/view/ui/Bundle_nb.properties
nb6.1/ide-branding/netbeans/core/locale/core_nb/org/netbeans/core/startup/Bundle_nb.properties
nb6.1/registration/registration/org/netbeans/modules/registration/Bundle.properties
nb6.1/welcome/welcome/org/netbeans/modules/welcome/Bundle.properties
nb6.1/welcome/welcome/org/netbeans/modules/welcome/resources/Bundle.properties
soa2/bpel-editors/bpel-editors/org/netbeans/modules/bpel/properties/Bundle.properties
soa2/sql-wizard/sql-wizard/org/netbeans/modules/jdbcwizard/wizards/Bundle.properties
soa2/xslt-project/xslt-project/org/netbeans/modules/xslt/project/resources/Bundle.properties
soa2/xslt-project/xslt-project/org/netbeans/modules/xslt/project/wizard/Bundle.properties

The following files have been added:

./apisupport1/apisupport-ant/apisupport-ant/org/netbeans/modules/apisupport/ant/TemplateNames.properties
./ide.branding/release/CREDITS.html
./ide.branding/release/README.html
./installer/engine/branding/mysql/src/data/engine.properties
./installer/engine/branding/mysql/src/native/launcher/windows/i18n/launcher.properties
./installer/engine/branding/mysql/src/org/netbeans/installer/wizard/components/Bundle.properties
./installer/engine/branding/mysql/src/org/netbeans/installer/wizard/components/actions/netbeans/Bundle.properties
./installer/engine/branding/mysql/src/org/netbeans/installer/wizard/components/sequences/Bundle.properties
./installer/mac/newbuild/dmg/Resources/Welcome-mysql.html

Update files ONLY:

l10n-kit type list file Who will prepare l10n-kit How to Translate
.properties list nb61-msg.zip Masaki by WS, TPM will upload it to WS and start project
.html (message) list nb61-msghtml.zip Masaki by WS, TPM will upload it to WS and start project
Other (.js files)
\for download page
list nb61-other.js.zip Masaki Masaki asked Rebecca, Jeremie to translate by hand. ja and zh_CN done.


Full set for WS : This full set of l10n-kit will be used when we generate translated files from WS.

l10n-kit type list file Who will prepare l10n-kit How to Translate
.properties list nb61-msg.zip Masaki by WS, TPM will upload it to WS and start project
.html (message) list nb61-msghtml.zip Masaki by WS, TPM will upload it to WS and start project
Other (.url files) list nb61-other.url.zip Masaki Done
Other (.gif files)
\for download page
list nb61-other.img.zip Masaki Done
Other (.js files)
\for download page
list nb61-other.js.zip Masaki Ja,zh_CN Done, Jeremie working
Keyboard shortcut sxw pdf_source.zip Masaki Done


Pre Process

To make the process easier and some other reasons, we're doing some pre-processing for l10n-kit.

  • Original l10n-kit (built in build area) always have unnecessary files, we remove them before translation
  • Files in the original l10n-kit contain mistake, e.g. format error that will cause serious error in WS. We need to fix them before translation.
  • Original l10n-kit contains both message files (.properties, .html files) and online help, we need to separate them
  • Add UTF-8 charset tag to each .html files in both message html and OLH html.
  • Remove version number of cluster for our translation memory
  • <br>u
    can not be handled in WS, so it has been replaced with BACKSLASH_U in our l10n-kit. Please revert back it to the original at post process
./gsf1/javascript-hints/javascript-hints/org/netbeans/modules/javascript/hints/Bundle.properties:
UnicodeConvertDesc=In implementations prior to JavaScript 1.3, Unicode characters could not appear\
 in literals. Use the <br>u escape sequence instead.
  • Remove the specific version number e.g. Dev and RC.
nb6.1/ide-branding/netbeans/core/locale/core_nb/org/netbeans/core/startup/Bundle_nb.properties 
nb6.1/ide-branding/locale/org-netbeans-core-windows_nb/org/netbeans/core/windows/view/ui/Bundle_nb.properties

Post Process

The top directory is based on cluster name, but cluster version is omitted when we get them from WS. Please run the following,

  • Rename to actual directory name with version number (see below)
  • Installer files (installer/ and nbi/ files) should be under other/ in repository
mv apisupport apisupport1
mv cnd cnd2
mv enterprise enterprise5
mv gsf gsf1
mv ide ide9
mv identity identity2
mv java java2
mv mobility mobility8
mv nb nb6.1
mv platform platform8
mv profiler profiler3
mv ruby ruby2
mv soa soa2
mv uml uml5
mv vw vw2 
mv xml xml2
mkdir other
mv ide.branding other/ide.branding
mv nbi other/nbi
mv installer other/installer
  • Add _<lang> for .properties and message .html files
  • Change directory structure for OLH files
  • native2ascii for .properties
  • Replace BACKSLASH_U to
    <br>u
./gsf1/javascript-hints/javascript-hints/org/netbeans/modules/javascript/hints/Bundle.properties
  • revert some translation to English to avoid over-translation. Please prepare NOI18N files in the same rule with 6.0. See the detail instructions in NB6L10nValidationNoi18n. The location is
translatedfiles/www/6.1/validation/noi18nprops/

You can find the script in noi18n_commentout.zip

  • noi18n_commentout_ALL.sh
     : Please run the script after renaming
  • Please make sure all files (except .properties) should be UTF-8 encoding.

How to integrate

Note if you work on NtBeans 6.1 platform localization, please use http://hg.netbeans.org/release61/l10n instead, please do not use http://hg.netbeans.org/main/l10n.

Current our home is : http://hg.netbeans.org/main/l10n . Please integrate translated files into the repository. The followings are very simple scenario. Please check the detail How To docs for the operation of Mercurial. Here is the example when you use command line on Solaris/Linux. You can also use NetBeans 6.0.1/6.1 Mercurial support.

1. clone main/l10n

% hg clone http://hg.netbeans.org/main/l10n

2. Update .hg/hgrc

[Paths]
default = http://hg.netbeans.org/main/l10n
default-push = https://masaki:<YOUR_PASSWD>@hg.netbeans.org/main/l10n

[Ui]
username = Masaki Katakai <masaki@netbeans.org>

[Extensions]
hgext.hgk = 
hgext.fetch = 

3. Put your files under src/<lang> e.g. src/zh_CN or src/pt_BR.

4. Add files first if you need to add new files

% hg add src/zh_CN

Files under src/zh_CN will be added at the next commit.

5. Commit your files

% hg ci src/zh_CN

Files under src/zh_CN will be integrated at hg push

6. Fetch changes

% hg fetch

Pull changes from a remote repository, merge new changes if needed.

7. Verify your push

% hg out --verbose

8. If OK, push your changes

% hg push

9. If you want to get the latest update, run pull

% hg pull -u

10. Verify your updates on http://hg.netbeans.org/main/l10n

daily builds

will be prepared under daily build/ml directory.

status and validation page

will be prepared.

Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo