The WebTranslateIt Blog

i18n news and Product Updates about WebTranslateIt

Support for iPhone and CakePHP file structures

By Edouard on December 1, 2011

I just improved the algorithm used to automatically create target project files names depending on the master project file name.

When you create a new file in WebTranslateIt, WebTranslateIt automatically chooses a target file name for you. For instance, if you translate from English to French and Italian, this file name:

en.yml

Will automatically create and keep in sync:

fr.yml

it.yml

WebTranslateIt looks for the en locale code in your file name, and replace it with the locale code of the target locale. If you don’t have a locale code in your file name, WebTranslateIt adds one for you. For instance index.html creates index.fr.html and index.it.html files.

Now, iPhone apps are a different beast. They use a different file structure that includes the full language name instead of locale code. For instance:

English.lproj/Localizable.strings

Until today, you had to manually rename your target files, which was tedious if you had a lot of files or languages. WebTranslateIt now knows how to handle these file names and creates:

French.lproj/Localizable.strings

Italian.lproj/Localizable.strings

WebTranslateIt also support naming CakePHP language files, which use ISO639-2 codes instead of ISO639-1 codes. So this file:

messages/eng.po

Creates:

messages/fre.po

messages/ita.po

I hope you will find this improvement useful. Thank you for using WebTranslateIt.

File encoding detection improvements — Hello, charlock_holmes!

By Edouard on November 23, 2011

Today I released an update to WebTranslateIt to improve the file encoding detection.

Until today our file encoding detection strategy was using the character encoding detector rchardet when we couldn’t reliably determine the character encoding of a file. The thing is, rchardet was an unmaintained ruby library, so I forked it and maintained it myself.

It was all jolly good, except rchardet contains many bugs. It often finds the wrong encoding for some files, and in some rare cases this led to WebTranslateIt file imports stalling. File encoding detection is so complex it was very hard to fix these bugs.

Yesterday I stumbled upon charlock_holmes, a character encoding detector made by the fine people at Github. It’s actually a ruby wrapper for ICU, a set of C/C++ and Java libraries providing Unicode and Globalization support for software applications. ICU is well maintained and widely used (it’s notably used by Google and Apple) and works very well.

WebTranslateIt’s file encoding detection strategy is now at the top of its class, and no file imports will stall because of encoding detection issues.

I hope you will find this improvement useful, thank you for using WebTranslateIt.

web_translate_it rubygem v1.9.0 released

By Edouard on November 23, 2011

I just released a new version of the web_translate_it gem, the open-source synchronization tool for Web Translate It.

This version 1.9.0 essentially deprecates and removes the wti server command. This command was introducing a dependency on the web server Sinatra, which is far from desirable when including web_translate_it on a Rails application.

If you need wti server, don’t worry: this command now lives in a separate gem called web_translate_it_server, which is an extension for the web_translate_it gem.

To get wti server back, execute:

gem install web_translate_it_server

and then run the server with:

wti-server

Install or Upgrade

To install web_translate_it, please refer to the gem documentation.

To upgrade web_translate_it to its latest version, type in a terminal: gem install web_translate_it.

To install web_translate_it_server, type in a terminal: gem install web_translate_it_server.

Improvement to the translation highlighter

By Edouard on November 22, 2011

I just released another update following last week’s update to the syntactic highlighter so now just any word can be clicked and paste to the translation box.

This is great for translating product names, code, HTML…

HTML blocks:

Words:

Code:

Fine-tuning Translation Memory Suggestions

By Edouard on November 22, 2011

A few weeks ago, I blogged about the recent changes to the Translation Memory server: new ranking algorithm, aberrations removal and pushing the 100% matches to the top.

This morning I added a setting to fine-tune the translation memory matching, based on ranking. At the bottom of the translation interface, in the toolbar, you will find a new selector:

It lets you choose the minimum level of accuracy of the suggestions pulled from the Translation Memory server.

It also lets you control machine translation suggestions. If you select a minimum match of 4, and all suggestions fall under 4, WebTranslateIt will suggest machine translations from Bing Translator and Google Translate, should you have set up the API tokens in the project settings.

How should you use it?

All projects are different, so play with it. I usually lower the ranking for new projects where the Translation Memory is almost empty to 2.

If you project’s translations is mostly complete, you might want to raise the level to 7 or 10.

Note that this is a user setting, so it only affects your own suggestions.

About WebTranslateIt’s ranking

Segment ranking is loosely equivalent to the percentage matching (50%-100%) you can find on traditional translation tools.

WebTranslateIt only pulls good suggestions from the Translation Memory server. Segments with a matching of 2 are OK results, 4 are a good results. 10 are excellent matches and “Complete Match” means the exact same segment was pulled from the Translation Memory.

I hope you will find this improvement useful. Thank you for using WebTranslateIt.