Update 11/22/2017: See my new post for the current extensions I use.
One of the best ways to get started writing Dragonfly macros is to set up web browsing by voice. Thanks to the extensibility of modern browsers, this works surprisingly well. Note that Dragon does have built-in support for web browsing, although I find it doesn’t work very well. The extension tends to cause pages to hang, and it requires that you speak the link you want to click on, which introduces ambiguities and doesn’t work well for all clickable elements. And of course, it’s not very customizable. I do recommend you try it first to see if it works for you, and to think about what you would like to improve in your custom version.
To begin with, you’ll want to decide between Firefox and Chrome. Both of these support the extensions you’ll need, so it is really a matter of personal preference. Firefox is probably the easiest to get started with, although I prefer Chrome.
First, you need to install an extension that labels clickable elements on the page, so you can speak a label to click on an element. I recommend Mouseless Browsing for Firefox and Vimium for Chrome. If you are using Firefox, try out this sample Dragonfly module. If you are using Vimium, you will need to bind one command to label the clickable elements, and another to actually click a particular element. Since you’ll be using these a lot, make them as terse as possible. I use “links” for the former and I simply speak the number for the latter. To make it even faster, I only allow one-syllable numbers to be used in labels. I also recommend binding the Vimium shortcuts that let you quickly open a bookmark.
Next, you’ll want to enumerate tabs so you can quickly jump between them. I think the Firefox extension already does this, and I created one for Chrome, Tab Namer. My extension also extracts the hostname and appends it to the tab name, so you can easily use it to define contexts in Dragonfly (e.g. to bind keyboard shortcuts for specific sites).
The last extension I rely on is Keyboard Shortcuts to Reorder Tabs. The Linux version of Chrome binds these shortcuts by default, but not the Windows version.
As always, if there are extensions you find useful, please post them in the comments!
When you are ready for even faster browsing, check out my post on Custom web commands with WebDriver.
3 thoughts on “Browsing the Web”
The need for 2 voice commands per link with the Chrome extensions makes Chrome substantially worse than Firefox for voice usage.
You can find sample Vocola commands for using Firefox and mouseless browsing at:
For what it’s worth, I have used mouseless browsing with Firefox, but I found it was often distracting to have all the numbers present in the page. Maybe it would work better if I blacklisted it on certain pages (e.g. hyperlinked code). I also just have a strong preference for Chrome for other reasons.
Also worth noting that I forked Vimium to fix a few annoyances (in particular I made it modeless so it is always ready to display link numbers even if the cursor is in a text box).
Different styles for different folks I suppose. I find the doubling of the number of utterances with chrome unacceptable.
Chrome has a number of useful features and I’m starting to see software that only works with it, so I’m really hoping someone will write an extension that can leave the link numbers displayed at all times.