Usable web browser

#Gecko problems: keyboard navigation, Meta key, button8, printing, Acid test, form security

The Web is a common platform for many everyday activities today. But working with it is still often annoying, one reason being lack of a good end user client. We’ve got Emacs for text editing, organizing, communication, programming, file management, calculations, etc. But what do we have for browsing the Web? There is no usable web browser for Emacs and it’s hard to find any usable web browser at all.

I’ve been using Conkeror web browser for several years. But Conkeror is limited by XULRunner and Gecko problems and although it was better than anything else I could find several years ago, it hasn’t been comfortable enough for my needs recently. So I’ve looked for a possible alternative and discovered Uzbl.

I started to like Uzbl almost instantly. I switched to it completely within a few days. Uzbl is not perfect but it’s still a great tool. What’s so attractive about it?

The first thing is that Uzbl is based on WebKit, so the Gecko problems are gone (maybe just to become substituted by WebKit problems, but I enjoy the relief in the meantime). But the more important and more difficult to understand reason is the Uzbl philosophy. Uzbl doesn’t offer much more than a rendering engine with some basic facilities and a simple and easy to use interface to the browser. When I need to make a minor customization of the browser user interface behavior I don’t have to study JavaScript code and bindings while looking through tons of documentation and then to integrate my JavaScript code somewhere. I can simply add a single configuration line and write a shell script (or another kind of program) to implement the feature. All I need is using the simple text protocol and reading the mostly complete documentation consisting of only a few pages of plain text, complemented by looking at some examples. And I can change and debug my scripts separately, without touching or even restarting the browser.

This may not look that important at the first glance and it’s, ehm, unusable for a common end user. But it is absolutely great for a programmer. I’ve already implemented some features for Uzbl that I haven’t implemented for Conkeror for several years and that’s convincing.

There is also an idea to embed Uzbl into Emacs. It’s not currently possible without patching Emacs but once Emacs supports embedding other X applications into it, it should be possible to integrate web browsing facilities into Emacs by the means of Uzbl and thus making a really powerful web user interface.

Leave a Reply

Your email address will not be published. Required fields are marked *