This is part of my ongoing efforts of Living Mouseless – or how I learned to stop worrying and love the 80+ buttons I already have.

Do you love Vi so much that you want to use it in more areas of your life? Do you live in the terminal and abhor the mouse? {Please see Aside #2}

There actually is a web browser for Emacs (W3) but I really didn’t want to pile too many distractions into mine. Especially since setting up Vimperator was one of those delightful one-click processes that is so, so rare in Linux. I set this up on my home computer and loved it so much I immediately set it for primetime use (meaning my work terminal) the next day.

Basically you can breeze through web browsing without mouse clicking interruptions, using the Vimperator keybindings you know and love. Plus, the setup could not be more streamlined for easy use.

Download and Install Vimperator

Go to the Vimperator website and download their latest package. Mine was vimperator-3.7.xpi. The .xpi file means its a firefox add-on.

You must manually install this add-on.

To do this, open a firefox browser. Then either go to Tools —> Add Ons in your upper toolbar or try Alt + t + a Now click on the gear icon and select Install Add On from File. Browse and select your .xpi file from your Downloads folder. Firefox will install the add-on and automatically restart your browser. Your tabs will remain intact if you had any open during the installation process.


This website gives a whole lot of information on using Vimperator here. To help me progress faster with Vimperator, I wrote the following on sticky notes posted on my browser frame for quick reference:

Character Navgiation

  • h — scroll left.
  • j — scroll down one line.
  • k — scroll up one line.
  • l — scroll right.

Page Navigation

  • gg — move to the top of the page.
  • G — move to the bottom of the page.
  • Spacebar — move down one page.
  • Shift-spacebar — move up one page.
  • Ctrl-b — scroll down half a page.
  • Ctrl-f — scroll up half a page.

Search Mode

  • / — enter search mode.
  • n — move to the next match in your search. Note: These search term navigators only work after you’ve pressed ENTER following your search term!
  • N — move to the previous match.

Tab Navigation

  • H — go back in the current tab’s history.
  • L — go forward in the current tab’s history.
  • gt — go to the next tab.
  • gT — go to the previous tab.
  • tabde[tach] — Open up tab in its own window, detach from current working window
  • taba[ttach] – attach tab to another window
  • Navigate history links with and <Shift-TAB>

Page Controls

  • d — close the current tab.
  • u — undo: open a previously closed tab (works with multiple previously closed tabs).
  • r — reload the current page.


  • z{i} — Zoom in!
  • z{o} — Zoom out!

Other Useful Controls

  • C-c — Stop loading the page!
  • :tabopen — open in a new tab
  • gU — go to the root, or landing page of the website

Seems like too much to learn? Mischa Poslawsky (aka Shiar) created this super helpful cheatsheet. She also created cheatsheets for vi/vim and mutt.

Hint Mode

The best part about Vimperator is the “Hint Mode”. Press f to enter this mode. And your webpage links will be highlighted. Type in the highlighted number and press Enter, or you can start typing part of the highlighted text. Its important to note that using lowercase “f” will open the link in your current tab, while uppercase “F” will open the link in a new tab.

If you want to copy a link URL, type lowercase “y”. Uppercase “Y” will copy the text description of the link.

In conclusion…

The navigation fun has just begun, but Vimperator has been a fantastic way to not only optimize my browsing but also to keep my Vi skills fresh. My problem is that I keep pressing Ctrl + n to navigate down a page, to which Vimperator gives me a big red error bar that basically says “Stop that. That’s not a thing.”

Don’t worry Emacs, I’ll never cheat on you and leave you for Vi. Never!

An Aside.
1) There is also a beautiful Vi/Vim reference card made from laser-engraved wood on Etsy. You know, as a gift for that special programmer in your life. Link!

2) I don’t exactly abhor the mouse. I’ve always wanted a wireless mouse and I loooove mine. Not just because my wonderful lab mates were kind enough to gift me one for my birthday :) I need to make a glowing mouse pad for it next!