Kubuntu, Dvorak and Firefox

I have been a Windows user since 1996 when my father bought us the first desktop which came with Windows 95. Like most of the poor souls out there, I started with QWERTY. It was in the year 2000 that I started training myself to type properly, well with the exception of the B and Y keys. It just made more sense to me to use the “wrong” hand to type those key, rather than the typical way.

Fast forward to end of 2008, my brother convinced me to give Kubuntu a try. Why Kubuntu, you ask? One of the reasons is that my brother was and still is using Ubuntu, and I thought giving Kubuntu a go would let me find out more about the differences between the two. Besides, Linus Torvalds himself has been quoted to say “I don’t use Gnome, because in striving to be simple, it has long since reached the point where it simply doesn’t do what I need it to do. Please, just tell people to use KDE.”

So, in October 2008, I gave Kubuntu Intrepid Ibex a try but unfortunately, it was completely unusable. Wireless was not working, the graphics were not working well, and at last I had to admit defeat and say that it is buggy as hell.

In March 2009, I started using Dvorak keyboard, and at that time, I was still using Windows, Windows Vista, that is. The reason was that I was waiting for the next release of Kubuntu in April. I tried using the built in Dvorak keyboard (under Region and Language setting) and soon found out that I need to relearn all the keyboard shortcuts, especially Undo, Cut, Copy and Paste. Having them all accessible using the left hand is essential especially when I am working on a Spreadsheet.

After some time searching online, I found out a nice little tool called AutoHotKey which allows me to bind all the keys from QWERTY to Dvorak and revert back to QWERTY whenever I press a modifier botton, such as Ctrl, Alt or Window. The code that I used was posted at the AutoHotKey forum by somebody with the display name Igor. There was, however a bug of some sort that I don’t really remember what the problem was. In my defence, it has been so many months and my memory has always been quite bad. I found out a way to overcome that bug by adding a line into the script (see below) which seems to solve the problem.

; QWERTY to Dvorak mapping
*!d::Send !d <—(Add this line)

I should mention that I gave KeyConfig, a Firefox add-on a try during that time. It did solve the problem of keyboard shortcut in Firefox, but as expected, not in other applications.

In April 2009, Jaunty Jackalope was released and I gave it a try. The advantage of using Kubuntu is that you can change the global keyboard shortcut, and that was precisely what I did. It is under System Settings –> Keyboard & Mouse –> Standard Keyboard Shortcuts. At that time, I started using Programmer Dvorak keyboard layout and I have to admit, typing codes using that keyboard layout is much much more comfortable, especially when I have to use keys such as { } [ ] & ^ $ \ a whole lot in LaTeX. Programmer Dvorak allowed me to type those keys without having to hold the Shift button.

In June 2009, I installed a beta release of KDE 4.3 and that, unfortunately was totally unusable and I stopped using Kubuntu since. Having to revert back to Windows means that I have to relearn how to type in Dvorak, rather than Programmer Dvorak. Fortunately, the changes weren’t too difficult to overcome, but I did like the positions of ‘ and ; (these two keys changes place) that I made corresponding changes in my AutoHotKey script to retain that setting.

In October 2009, I started using Kubuntu Karmic Koala and I have to say, it is a much much more polished release. I do encourage people to give it a try. This time, I use KHotKey to bind all my Dvorak keyboard shortcut to that of QWERTY and as with before, I don’t have to relearn all the keyboard shortcuts. A problem I noticed was that the keyboard shortcut does work properly when I am typing in Firefox’s Awesome Bar, with the Awesome Bar showing it’s search results. However, if the Awesome Bar is not showing the search results, the problem does not occur.

Example, Ctrl+K (in Dvorak) should be sending out a Ctrl+V signal (using KHotkey) but when typing in the Awesome Bar with the search result showing, Ctrl+K signal is sent instead. As some of you would have known, Ctrl+K would bring you to the search bar at the top right corner, but unfortunately I like my Firefox to have extreme minimalist layout and I have since remove all the bookmark (who needs bookmark buttons when you have Awesome Bar, right) and the Search Bar (who needs this as well, when you have Awesome Bar, right?) and all the Forward, Back, Home, etc. I even installed an extension called Hide Menubar which function is quite obvious. So, my Firefox shows the Awesome Bar, the Tabs, and website contents, and the bottom, the Status Bar. Call me crazy, but that’s how I like it.

Extreme Minimalist Firefox

Sorry for the digress, as I was saying, I have removed the Search Bar and pressing Ctrl+K will bring me to Google search page instead. You can imagine how that was driving me insane. When I’m trying to paste something into the Awesome Bar, it brings me to Google search page.

A solution that I tried was to configure Firefox to not show the search result in Awesome Bar. This can be done by changing the value of “browser.urlbar.maxRichResults” from 12 to 0 in about:config. However, the Awesome Bar ceases to be Awesome and that is not something that I can live with.

Next solution is this: Configure shortcuts in Firefox such that Ctrl+K is a shortcut for Paste, not Web Search. This can be very done using the KeyConfig add-on but unfortunately, that add-on no longer works in Firefox 3.5. A little hacking as shown by Ubuntu Guide will tell you how to do it. Next problem that you’ll notice is that all those Cut, Copy and Paste keyboard shortcut configurations in KeyConfig do not work. However, this can be overcome by using the codes suggested by Dorando in MozillaZine. The codes are shown below:

goDoCommand("cmd_copy");
goDoCommand("cmd_paste");
goDoCommand("cmd_cut");

Well, that’s all, folks. Do drop me a comment if you are stuck with any of the steps. Remember, use Firefox and you’ll stay Awesome.