IEHelpers plug-in :: WSIE – Web Shortcuts

Documentation for release 0.7b [2003.09.12]

Welcome to the WSIE documentation page.

Introduction

WSIE is part of the IEHelpers project, an OSI-certified Open Source project that provides free plug-ins for enhancing the browsing experience with Microsoft Internet Explorer.

WSIE provides you with a very neat feature taken straight from the Konqueror browser: Web Shortcuts.

Web Shortcuts empower users to access their common Web queries in a few keystrokes. While originally designed for search engine queries (e.g. Google, Yahoo!, Altavista), it expanded into a full-fledged URI expansion mechanism, with common targets such as bug tracking systems, language reference manuals, reference databases (e.g. IMDb, IETF), dictionaries, news sites, and more!

Of course, the shortcuts are fully customizable, using a dialog box available right from Internet Explorer's menu bar.

Installing / Uninstalling WSIE

WSIE comes as a DLL containing various COM objects. It also relies on a WSIEPlugin.ini file to store shortcuts.

Installation is fairly straightforward.

PLEASE NOTE: this section does not cover compiling the source code archive. Developers downloading the source are assumed to be competent enough to know how to proceed. This section focuses on the binaries archive file.

Once you've downloaded the binaries file (WSIE-version-Binaries.zip), unzip it wherever you please. We advise you create a specific directory, such as C:\Program Files\IEHelpers\WSIE, so as to easily find the plug-in on your disk, and provide a central place for later IEHelpers plug-ins to be installed in a consistent fashion.

Upgrading?

If you are upgrading from a former version, just to be sure, start by closing any Internet Explorer window, along with any application that makes use of Internet Explorer's WebBrowser control to display HTML contents (e.g. Outlook Express, Outlook, eDonkey2000, NewzCrawler). When no more WebBrowser control is active, you can safely replace your former WSIEPlugin.dll file with its new version.

It is best to unzip where you had previously unzipped your earlier version of the plug-in, so as not to end up with multiple versions of WSIE on your disk. In such a case, you may encounter an error message displayed by your unzipping program, stating the WSIEPlugin.dll file could not be deflated. This usually means that the DLL is still in use by some running program that leverages Internet Explorer technology. Close programs you suspect may do so, and retry unzipping.

At any rate, you can unzip your new version in a new place. You will then need to register this new version, in order for Internet Explorer to know where the more recent DLL file is located. Failing to register the new plug-in if it was installed in a different directory than the former one will make Internet Explorer oblivious to this new plug-in.

Helper scripts

WSIE provides three script files designed to help you install, upgrade or uninstall the plug-in.

WSIE and you

This section is about how you can get further information on WSIE and IEHelpers, and otherwise interact with the project.

Home pages

User feedback and technical support

User's guide

This section explains how to use the Web Shortcuts feature, and how to configure them by adding, tailoring or removing definitions.

Using Web Shortcuts

Using a Web Shortcut is trivial (otherwise that wouldn't make much of shortcut, would it?). Access your location bar, then type (one of) the shortcut's key(s), followed by a colon (:) and the shortcut parameter(s):

Example of shortcut usage in the location bar

Then just hit the Return key to browse, as you normally would. WSIE fires up to analyze your URI. When finding a match among the keys of available shortcuts, it expands your URI accordingly and resets the browsing towards the expansion:

The location bar once the expanded URI was browsed to

Note: since the events WSIE can hook on pertain only to actual browsing requests, the shortcuts are—unfortunately—not available in the Run... command (Ctrl+R, Start | Run...). However, IEHelpers focus on enhancing the Internet Explorer experience from a user standpoint, so we deem this shortcoming highly acceptable.

Configuring shortcuts

WSIE registers a new menu item in Internet Explorer's Tools menu, captioned Configure Web Shortcuts:

The shortcut configuration menu item

Its hotkey is N, so if you are keyboard-enclined, you can access it quickly through the Alt key for the Tools menu, then the N key.

Clicking this menu item opens the configuration dialog:

The configuration dialog

This dialog contains a list of all available shortcuts, by alphabetical order of name. On the right-hand column, a list of the keys for each shortcut is displayed. You do not need to enlarge the column to view all shortcuts; should the list be too long for display, simply hover the cursor over it: a popup will appear to show the complete list.

The Add, Change and Remove buttons are also accessible through the intuitive Insert, Return and Delete keys, in addition to their hotkeys.

Multiple shortcuts can be selected for mass removal through traditional multi-select means. In such a situation, WSIE will display a confirmation dialog for each shortcut, with All and Cancel buttons in addition to the customary Yes and No. The Cancel button will stop enumerating selected shortcuts for deletion, while the All button will forgo further confirmation and mass-remove all pending selected shortcuts.

Important: Your changes are cancellable at any time, and only through clicking the Apply button do you commit your settings to the plug-in and .INI file persistency.

Note: the system menu for the dialog features a « About... » option that displays a small information message box.

Clicking the Add or Change button opens the shortcut dialog:

The shortcut definition dialog

Search URI expansion syntax reference

As of release 0.7, WSIE supports the whole syntax defined by Konqueror. Here is a reference for it, which we hope will be more comprehensive than the help tooltip in Konqueror!

Every expansion must be enclosed within the following two delimiter sequences: \{ (backslash, left curly brace) and } (right curly brace).

To understand the description below, you must know that what you type after the shortcut, on the address bar, is split into "elements." The splitting uses spaces and ampersands (&) as delimiters. Name=value pairs are distinguished from other text elements in several syntaxes.

An expansion can have one of the following syntaxes:

Available expansion syntaxes
Name Syntax Expansion mechanism
Full text 0 (zero) The whole text you typed after the shortcut.
Stripped params @ (“at” sign) The sum of all text elements you typed after the shortcut, save the name=value parameter pairs. The matching elements get separated by one space.
Positional 1–… (positive integer) The element at the given position among those typed in by the user. Name=value pairs are not treated in any special way. The first element has index 1 (one). If the element does not exist (the index is too high), the expansion is empty. Konqueror originally allowed only indices 1 to 9 (one to nine); WSIE imposes no such limitation, though need for 10+ index-defined expansions should be very rare.
Match sequence name[,"literal text" or any syntax[…]] The comma-separatd sequence of syntaxes is analyzed from left to right. The first syntax getting satisfied terminates expansion for the whole sequence.
  • The first extra syntax here leverages name=value pairs typed in by the user. You can type a name here, and if a corresponding pair was typed in by the user, the sequence expands to the pair's value.
  • The second extra syntax is literal text, which appears between double quotes ("). It is only valid if last in the sequence, and expands to itself (unquoted).
  • Full text and stripped params (resp. 0 and @) are always deemed satisfied (therefore, you would use them last in the sequence, if at all)
  • Positional notation is satisfied only if the user's typing does have an element at the required index.

These examples should help clarify those definitions:

Simple syntax
Search URI is: http://www.google.com/search?q=\{@}&ie=UTF-8&oe=UTF-8
User types: gg:iehelpers some_name=some_value
Expanded URI is: http://www.google.com/search?q=iehelpers&ie=UTF-8&oe=UTF-8
Notice the name/value pair was not used.

Positional syntax
Search URI is: http://www.docbook.org/tdg/en/html/\{1}.html
User types: db:acronym
Expanded URI is: http://www.docbook.org/tdg/en/html/acronym.html

Positional/sequence syntax
Search URI is: http://search.cpan.org/search?mode=\{mode,2,"dist"}&query=\{query,q,1}
User types: cpan:browser
Expanded URI is: http://search.cpan.org/search?mode=dist&query=browser
Notice the first expansion defaulted out to its literal text because there was neither a mode-named pair, nor a second text element.

Extensive sequence syntax
Search URI is: http://www.google.com/search?as_q=\{all,@}&num=\{num,"10"}&as_epq=\{exact,""}&as_sitesearch=\{site}&ie=UTF-8&oe=UTF-8
User types: ggx:iehelpers site=tddsworld.com num=25
Expanded URI is: http://www.google.com/search?as_q=iehelpers&num=25&as_epq=&as_sitesearch=tddsworld.com&ie=UTF-8&oe=UTF-8

Available shortcuts

Herebelow is a list of all shortcuts available by default as of the current release (0.7b).

Disclaimer: the presence of a given site in the default Web Shortcuts does not mean IEHelpers endorses it in any way. IEHelpers shall in no way be held liable for any undesired consequence of relying on such a site's contents. Most of the default shortcuts come straight from Konqueror's default set. There is no guarantee whatsoever that a given site is the best for its purpose range.

Default Web Shortcuts in WSIE
Name Description Key(s)
Global search engines
AllTheWeb fast A Web search engine... atw, alltheweb
AltaVista The classic, although losing wind at a major rate. av, altavista
Ask Jeeves Supposedly, answers queries in natural English language. ask, jeeves
Excite Yet another classic Web search engine. ex, excite
GO.com Search this large news portal and web sites directory. seek
Google The #1 search engine. gg, google
Google (I'm Feeling Lucky) Direct access to the IFL feature (browse to first search result). ggl, gglucky
Google Advanced Search Access to advanced search features. ggx
Google Groups Google's newsgroups search, which took over from the popular DejaNews and improved it. ggg, groups, dj, deja
Google Image Search Search for images instead of web pages. ggi, images
Hotbot Yet another classic. hb, hotbot
Lycos Feed the dog a nice little query. ly, lycos
Mamma - Mother of all Search Engines Moms know all, that's a given. Test this assertion here. mm, mamma
MetaCrawler Another good ol' golden name of search engines. mc, meta, metacrawler
Vivisimo A document clustering service roaming the Web. vi
Voila A major news portal. voila
Yahoo Search One of the indomitable Web pillars, chock-a-block with news and sites. yy
Specific search engines
Austrian Online Telephone Book You get it. tel_at
AustroNaut Austria-centric Web search engine. austro, austronaut
Feedster Find blogs, search blog contents, and more. blog, rss, feedster
QRZ.com callsign database Ham radio licensees search engine. qrz, call
Teletekst search provider Search the Dutch on-TV-screen text service pages. tt, teletekst
IT (Computers, OS, Programming languages) References and Databases
CPAN - Comprehensive Perl Archive Network All about the Perl programming language. cpan
CTAN - Comprehensive TeX Archive Network All about the TeX document writing language. ctan
CTAN Catalogue More references about TeX. ctan_cat
Debian Bugtracking System Find any bug in the Debian (Linux distro) database, now! bts
DocBook - The Definitive Guide Reference of elements in DocBook (XML-based technical writing).
db, docbook
Free On-Line Dictionary Of Computing FOLDOC, your one-stop source to IT/Geek technical terms and acronyms. fd, foldoc
IETF Requests for Comments Instant access to the RFC's by number. rfc, rfcs
KDE App Search Find KDE applications. apps, appsy
KDE Bug Database Bug Number Search Examine a specific KDE bug report by its bug#. bug, bugno, bugnr
KDE Bug Database Fulltext Search Search full-text through the KDE bug database. bugft
Microsoft Developer Network Search Search the MSDN for technical articles, API references... msdn
Open Directory An Open-Source web sites directory service. dmoz, odp
OpenPGP Key Search Find PGP keys registered with this OpenPGP key repository. pgp, pgpkeys
PHP Search -- Full manual search Search all of the PHP manual. Their search process leverages Google technology.
phpm
PHP Search -- Function list Narrow down your search to the function list. Ideal for quick reference. phpf
Python Reference Manual Search the whole reference manual for the Python scripting language.
py, python
RPM-Find Find an RPM-type package in seconds. rf, rpmfind
Ruby Application Archive Sift through this repository of applications for the Ruby programming language. raa
SourceForge Search for software projects at the prominent Open Source software hosting platform. sf, sourceforge
W3C Technical Recommendations Obtain quick access to TR's using the standard /TR/ prefix whose keyname you know (eg. xhtml1, CSS2, html4) tr
News sites
Freshmeat « News for nerds, stuff that matters » fm, freshmeat
Non-IT Reference databases, dictionaries and translators
Acronym Database Search for acronyms, e.g. IMHO, TTFN, FWIW, ASAP, HTH, AFAIK... ad, acro, acronym
Internet Movie DataBase -- Person search Search for actors/actresses, directors, screenwriters... imdbp
Internet Movie DataBase -- Title search Get a movie's complete data instantly! imdb
LEO-Translate English-German translator. leo
Merriam-Webster Dictionary The ultimate English dictionary, with detailed articles and pronounciation info. dict, webster
Merriam-Webster Thesaurus Find synonyms with detailed context for any English word. ths, thesaurus
Whatis query An all-encompassing repository of concise definitions. What is FUD? Emacs? wi, whatis

Upcoming attractions

There are plans to completely refit the configuration dialog, towards some more effective, more ergonomic design.

Also, a merging functionality will allow users to merge any or all of the default shortcuts into their own shortcut lists, without erasing their customized settings.