Babylon
Powered by Pivot - 1.40.7: 'Dreadwind' 
XML: RSS Feed 
XML: Atom Feed 
Free your browser's address bar
Javascript Multi Search Engine Form

Problem 1: User Laziness: Surfing the web usually starts with using a text entry field, often called address bar. However, while it's possible to enter a full URI here, most people use a single word. Depending on browser and configuration this takes them either to http://keyword/ or http://www.keyword.com or (the most likely case nowadays) a search engine performing a search on "keyword". This may seem natural and convient but when people google for "google" to find google.com, there's something wrong. However it's not a bug, which we can expect to be fixed any time soon, because search engines, browser and device makers have built a business model around this "wrong".

Problem 2: Search Engine Monopolization and Forced Localization: If all your searches happen via Google you'll only know about the part of the web Google wants you to see. Many search engines try to detect the user's language and location and deliever localized results (and ads) even if the user explicitly selects "include all languages" or navigates to the English/global/.com homepage. However editing the query URI does the trick (for google edit "?hl=") .

Solution to problem 2: Customizable Search Form that gives you choice: A simple web form with a text entry field and many buttons provides all your favourite search engines and other websites like Wikipedia or social bookmarking services. Customizing is simple, all it takes is a HTML button which calls the Javascript function go(uriString): <input type="button" value="TITLE" onClick="go( 'http://uri.to/search?foo=bar&query=' )" /> The query will be appended to uriString.

Solution to problem 1: Overwrite your browser's default search engine: For Gecko based browsers such as Firefox, Iceweasel, Galeon, Epiphany (all tested on Debian Etch) or microB (part of Internet Tablet OS2008), you can go to about:config and set keyword.URL to file:///path/to/search.html?s= where search.html is your customized version of search.html, keyword.enabled to true. For Konqueror you need to set up a search engine for search.html and make it default. (Use a local copy, I don't want to track your searches.)

Free extra: Guessing URIs: Should the query you entered be a domain name, a URI or a part thereof, search.html will offer a list of guessed links. My versions uses German, Austrian, Swiss and international top level domains. To customize this, overwrite the tld array. This part was difficult to implement because guessing a URI and encoding it "correctly" is stricly speaking impossible. I decided not to encode the host part to make IDNs work. The URI handling business uses parseUri 1.2.

Long Story Short: Invest 30 minutes to download, set up and customize search.html and you'll have a powerful search tool inside your browser. I know that some browsers (like Firefox and Konquerer) allow sophisticated search engine integration, but this script has the additional benefit of breaking your browsing habbits.