Adding yamli’s keyboard to Gmail
April 30, 2009
Yamli is an Arabic frontend to Google (I believe I’ve mentioned it before) which deserves to win all kinds of awards. (Click to skip over verbosity to the howto.) They use a Google suggest-like interface to convert phonetically typed words and phrases to Arabic script. It’s perfect for on the fly typing of short passages on machines where setting up an Arabic keyboard mapping or switching is just not worth it. It is very similar in operation to the Indic scripts gadget which has slowly propagated across Google’s properties, and was recently added to the Gmail editor.
Yamli also offers a stand alone “editor”—really a bigger text box with the ability to print what you type or save it as an RTF document. ([RW]TF?!?! I’m sure there’s a reason for that, but there’s a thousand arguments I can think of against it.) On top of that, there’s an embeddable version (quite customizable), and they’ve pre-created widgets for iGoogle and Facebook.
I’ve become quite addicted to yamli over the last few months, and these are a few things I’ve thought about that would be great to see done:
- Obviously, the first thing I would want to see is it extended to at least the Farsi and Urdu character sets. Sindhi and Pashto would probably just overwhelm the options, so I’m comfortable discriminating against them. I’m Kidding! (Those are two language groups you probably shouldn’t piss off…) These are all in Presentation-Forms-A anyway. (Burushaski and Divehi, on the other hand…) Maybe there could be embedding options to turn off extended character sets. And automatic conversion for things like: ﷺ.
- I would love it if the search bar version worked like the version on the site. (This should be possible, right, considering the way Google and Wikipedia suggest search plugins work?)
- It would be great if in addition to suggesting character conversions it hooked into Google suggest and suggested search term completions. That might be overload though.
- Google could buy out yamli or both parties could open source their work, and we could have a combined widget for Indic and Arabic-based scripts. On top of this, add whatever else is out there for Hebrew, Cyrillic, Greek, and CJK scripts. Allow some sort of configuration to enable and disable language sets. Make it an option throughout Google and embeddable everywhere. (Why not just make this a default behavior of text inputs in html5? I’d even settle for a unicode-typing-text element. I’m sure the working groups are all reading this.)
- I’d really like to have this same unified phonetic typing magic in a text editor or as something OS-wide, or at least DE-wide. This would eliminate a lot of pain and wasted time. Take me as a case study. I type text daily in the following scripts in descending order: English, Urdu, Farsi, Arabic, Roman script with diacritics, Hindi, Telugu. On my main keyboard I have Arabic key stickers. I have memorized the Urdu phonetic keyboard from CRULP . And Indic keyboards are mostly phonetic, but I do have to do a lot of backtracking to get things right. There are a few diacritic shortcuts I know, and the rest I cut and paste or use an on-screen keyboard. I know there are plenty of people who type in a number of scripts on a daily basis. We could all use a tool like this. I’ve transitioned from mostly Emacs to mostly Vim, but I would switch in a heartbeat to whoever enabled this first. In an editor, the Google suggest integration could be replaced with actual word completion based either on a dictionary or the rest of the document, similar to other word completion interfaces.
I’m pretty sure it should be possible to write a user script which yamlifies the Gmail editor. This would be a second-best in my book to the unified version, but most Arabic typing types probably could care less about Indic scripts. So the next best thing until someone does that is to have a yamli widget in Gmail itself. This, it turns out, is within reach of even the laziest among us. There are three simple steps:
- Go to your Gmail settings and enable “Labs.”
- Go to the Labs tab which is now in your Settings, scroll down to the bottom (enabling anything else you like along the way) until you find “Add any Gadget by URL.” Enable this and save changes.
- You now have a “Gadgets” tab in addition to the “Labs” tab. Go to this new tab and add the URL for the yamli iGoogle Gadget:
If you are using NoScript (you are using NoScript aren’t you?) you will need to enable $crazylonghash-opensocial.googleusercontent.com, and clicking in the yamli box without doing so will result in clickjacking warnings. I suppose this also means that yamli’s developers have access to your “friend’s list”—i.e. your Gmail contact list. Which might make you wonder if it’s worth it. But who am I to make that decision for you, I’m just the guy who wants to rewrite w3c specifications for my own obscure purposes.
UPDATE: You can have your dynamarabic keyboard magic and your privacy too! (Or what little is left after Big Brother Goo is done with you.)