AVIM for Firefox

| 1 Comment | No TrackBacks | Edit

Vietnamese computing is a very fragmented experience. Not only are there several character encodings for Vietnamese, but Vietnamese computer users must also choose between several popular input methods. As you’ll recall from November, an input method is a procedure for typing in a complex, often non-alphabetic writing system. An input method editor (IME) is software that intercepts your keystrokes and translates them into more complex characters, such as Chinese characters, on the fly. Today’s major operating systems provide IME for most complex writing systems, notably Chinese and Japanese.

Vietnamese is alphabetic, unlike Chinese, but because of its large set of letter–diacritical mark combinations, it’s impractical to simply assign each key to a letter or accented letter, as with French or Spanish. Making matters worse, operating systems have historically provided poor support for Vietnamese input. Microsoft Windows and Mac OS X (until 10.5 Leopard) don’t include an IME for Vietnamese, so each Vietnamese-language website is expected to embed one using JavaScript. Webpages, ordinarily the least powerful of computing technologies, thus end up implementing one of the operating system’s core responsibilities: text input. Predictably, there are at least a dozen such IMEs, and each site uses a different one.

It’s a situation no one likes, but it’s not easy to convince operating system vendors to ship good support for Vietnamese, since the market for it is still relatively small. As a stop-gap solution, three of these IME’s authors have released Firefox extensions that provide Vietnamese typing support on any webpage within the browser. Since the Web browser is pretty much the application that users keep open all day, it’s not an entirely bad solution.

Back in November, I released a keyboard layout for Vietnamese, to improve the Vietnamese typing situation on the Mac. Although the keyboard layout provided support for every application on the system, it was far from ideal, because very few Vietnamese speakers use Mac OS X. Now I finally have a way to show non-Mac users some input method love too.

In 2006, I made a number of modifications to one of the IME extensions, Hiếu Đặng’s AVIM extension. However, because the original extension was a kludge and I didn’t yet consider my version to be of release quality, I hung onto the modifications for nearly two years. Recently, I briefly encountered a curious phenomenon known as free time and began shaping AVIM into a much more presentable extension.

AVIM for Firefox

Since it was introduced to the Vietnamese Wikipedia in 2005, AVIM has turned a very poor editing experience into a pleasant one. My productivity at the site increased dramatically, as I could begin to write and edit articles from directly within the site, rather than copy-pasting my composed text from another program. I hope that this extension will give you the same dramatic increase in productivity, no matter what site you frequent.

Vietnamese Dictionary 1.0 for Firefox

| No Comments | No TrackBacks | Edit

Any serious computer user lives by Firefox extensions. My copy of Firefox has around 30 installed, and I wouldn’t part with more than five of them. It’s bad enough that I employ the Nightly Tester Tools extension to shove out-of-date extensions down Firefox’s figurative throat and Menu Editor to keep my sprawling Tools menu (the product of 30 extensions) tidy.

I know most of this blog’s readers don’t write in Vietnamese, but for the few who do, I spent a bit of last weekend writing an extension for Firefox and its companion e-mail program, Thunderbird, that checks your Vietnamese spelling as you type. Unlike the last piece of software I released, this one requires hardly any explanation. You know if you need it.

A smile and nod

| No Comments | No TrackBacks | Edit

The old joke goes: if you know three languages, you’re trilingual; if you know two languages, you’re bilingual; and if you know only one language, you’re an American.

Ohio has struggled with immigration from Hispanic countries more than the small number of immigrants would indicate. Late last year, four illegal immigrants from a poor village in central Mexico were found stabbed to death inside their home, vividly symbolizing the hostility that immigrants face in that part of the country.

Pills with bank accounts

| No Comments | No TrackBacks | Edit

In high school, the Spanish teachers would always warn about the perils of using AltaVista’s Babel Fish service to quickly translate to and from English and Spanish. The canonical example was always, “I can pass the test,” which supposedly used to translate to, “Yo lata fallecer el probar,” or something to that effect. For the non-hispanophones out there, that ungrammatical sentence roughly translates back to English as, “I tin can pass away the to challenge” [major sic]. So much for Douglas Adams’ “proof” of the non-existence of God.

It gets better (read: more entertaining) with non-cognate languages, like those from the Near- and Far East. None of the major online translation services, like Babel Fish or Google Translate, offer automatic translation to or from Vietnamese, and it’s a good thing they didn’t. As I mentioned a couple years ago, even linguists can get the translation humorously wrong.

Ngựa thành Troy

| No Comments | No TrackBacks | Edit

With extensions for programs like Firefox at the convergence of desktop applications and the Web, they can at times become attack vectors:

Starting in mid-Feburary, Vietnamese users of Mozilla’s open source Firefox browser were at risk of infection from malicious Trojan Horse code seemingly accidentally embedded in a language pack available on its Add-ons site.

The add-on’s author is not suspected of intentionally booby-trapping the file, but instead had his own system infected. That Trojan inserted a banner-ad displaying script into any html [sic] file on his system, which included the help files for the language pack.

Ironically, the HTML files have been removed altogether from the forthcoming Firefox 3, because Mozilla has decided to use an online, wiki-based help system, rather than the static help files that come packaged with Firefox 2.

Application security is still important these days, but as software vendors race to embrace add-ons and RIAs, Web technologies can no longer be considered confined within a tight security “sandbox”. It’s not even just a security issue, either: with phishing- and other fraud-based attacks so prevalent, software developers need to be especially vigilant about any user interface details that could be used to deceive.

As the author of a similar extension for Thunderbird, Firefox’s companion e-mail client, I should note that the Vietnamese localization pack I wrote for Thunderbird is not affected by the trojan. The current version was released in 2005, long before the Firefox localization package.

By the way, an updated version of that localization pack is in the works, based on the Firefox extension. Although I did consult some parts of the Firefox extension’s source code to resolve some tough-to-translate terms, there was no code sharing of any kind. (Not even copy-pasting.)

You can track my progress by pointing your Subversion client (such as TortoiseSVN) to http://version.1ec5.org/vi/. And if you happen to be thạo tiếng Việt, please contact me; I’d be more than happy to accept your help.

To clarify, only advertising banners were inserted, not actual worm or trojan code. See Asa Dotzler’s explanation.

My name’s Minh Nguyen, though I style myself Minh Nguyễn, with all the wonderful diacritics. I’m a graduate of St. Columban and St. Xavier in Cincinnati and currently a senior studying Computer Science at Stanford University. Since March 2002, Minh’s Notes has been home to my occasional thoughts on an eclectic mix of topics, including computers, language, politics, and school.

The views expressed herein are representative of their respective authors as individuals, not of their employers. Any resemblance to real individuals, living or deceased, is purely coincidental, except when it’s not.

Designs

Photos

  • AVIM Icon
  • Suggestions for “xoá” in the Vietnamese Dictionary extension
  • Flood
  • Snow in April
  • Camino 0.7 at startup
  • Camino 0.7 splash screen
  • Firebird 0.71 Downloads Sidebar
  • Firebird 0.71 at startup
  • Phoenix 0.5 at startup
  • Netscape 3.04 Gold

Archives

Powered by Movable Type 4.2-en