Related link: http://legonet.org/~griffin/firefox_vi-bindings.html
There have been a lot of articles written recently about the Firefox web browser as it nears 1.0. I’ve used Mozilla or other Gecko-based browsers as my main browser for quite a long time, first with Mozilla and then a few years ago Galeon. I particularly loved Galeon’s tabbed browsing features and configurability (something Mozilla didn’t have at the time) and other nice features such as vi-style navigation (using h,j,k, and l to move left, down, up, and right respectively, just like in vi).
Without getting too much into what happened (it still sometimes makes me want to rant), Galeon underwent a rewrite and as a result lost many of the features that made me love it. While many of those features have started to return, in the mean time I found myself toggling between Galeon and Phoenix/Firebird/Firefox (or whatever name the project will end up having once three programmers in Malaysia or somewhere send mozilla.org a Cease and Desist letter stating that they named their Open Source minesweeper game “Firefox” two years ago).
Neither browser in its current incarnation completely satisfied me, although Firefox with the Tabbed Browser Extensions came the closest. I’ve been using that combination on all of my computers full-time except for my laptop. My laptop “only” has 256Mb of RAM and an 867Mhz Crusoe, and Firefox ran really slowly on such a setup.
This is interesting for two reasons. One, the fact that Firefox under Windows ran so much faster than Firefox under Linux, and two that Firefox, which aims to eliminate all the “bloat” from the complete Mozilla suite, actually ran slower than Mozilla on my machine (and Galeon ran slower than both).
I found myself toggling between Mozilla, Firefox, and Konqueror on my laptop, because Konqueror blew away all the Gecko-based browsers in speed, yet I still needed Mozilla and Firefox for certain sites. Another advantage to Konqueror was that it supported vi-style navigation. I’m a trained touch-typist, and I hate having to move my hands away from home row over to the arrow keys just to scroll down a page. This is doubly annoying on my laptop, because it has a trackpoint mouse, so I can even navigate with my mouse without leaving home row, but I still had to reach over for the arrow keys to scroll down a page.
Speed and vi-navigation were the two things keeping me away from Firefox full-time on my laptop, and both of those things have seemed to be remedied as of a few days ago. The speed issue has seemed to be fixed in the latest version of Firefox to hit Debian Sid (0.99+1.0RC1-3). I’m not exactly sure what changes they made, but there is a definite difference in opening new tabs and loading pages. It could still be faster but it’s a marked improvement.
Also I’ve discovered how to enable vi-style navigation on Firefox. This page lists the very simple steps in the process, which are to create a userHTMLBindings.xml file in your res/builtin directory for your Mozilla install. In this file put:
<?xml version="1.0"?> <!-- In order to work correctly, this file must be named --> <!-- res/builtin/userHTMLBindings.xml in the mozilla tree. --> <bindings id="htmlBindings" xmlns="http://www.mozilla.org/xbl" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <binding id="browserUser"> <handlers> <handler event="keypress" key="k" command="cmd_scrollLineUp"/> <handler event="keypress" key="j" command="cmd_scrollLineDown"/> <handler event="keypress" key="l" command="cmd_scrollRight"/> <handler event="keypress" key="h" command="cmd_scrollLeft"/> </handlers> </binding> </bindings>
Save the file and restart Firefox and hjkl work as advertised. I think Firefox is going to be the full-time browser on the laptop from here on out.
Have you noticed an increase in Firefox’s speed under Linux lately?