Vimperator

Vimperator

Vimperator is a Firefox browser extension with strong inspiration from the Vim text editor, with a mind towards faster and more efficient browsing. It has similar key bindings and you could call it a modal web browser, as key bindings differ according to which mode you are in. For example, it has a special Hint mode, where you can follow links easily with the keyboard only. Also most functionality is available as commands, typing :back will go back within the current page history, just like hitting the back button in the toolbar.

However, Vimperator does not try to be a 100% Vim clone, it rather brings Vim’s ideas to the 21st century. This means making use of new graphical capabilities but also of faster computers. Furthermore, great care is taken into making its command line interface more consistent and easier to use, while still being a powerful extension for advanced users.

But Vimperator is more than just a simple command interface to Firefox — it is a complete development environment as well. If you are a web developer, you can enjoy an interactive JavaScript shell — even with completion support. Or if you want to extend Vimperator, you can easily do that by just dropping a JavaScript file in its plugin directory. Browse through our wiki pages for nice tips to customize Vimperator and for frequently asked questions. If you have more questions, you can visit us on IRC, in #vimperator on freenode.

Credits

Vimperator was initially written by Martin Stubenschrott and has found many invaluable contributers who helped out fixing bugs and adding new features.

If you appreciate the work on Vimperator and want to encourage us working on it more, you can send us greetings, patches, or donations:

If you rather prefer getting some nice products for your money, you can also support us by buying some cool merchandise like t-shirts or mugs. Of course, as we believe in free, open source software, only support us financially if you really like Vimperator and the money doesn’t hurt — otherwise just use it, recommend it and like it :)

Download

NOTE: Vimperator will stop functioning with Firefox 57! Firefox 57 will change its add-on ecosystem to be exclusively based on WebExtensions. While this offers (some) compatibility with extensions written for Chrome and Microsoft Edge, it removes the possibility to do many advanced stuff which Vimperator does. Additionally, it would require a full rewrite of Vimperator, which nobody has volunteered for. Therefore we will stop supporting any Firefox version later than Firefox 56. Head over to our GitHub page for a list of alternatives or a detailed discussion. If you want to have famous last words, you can take a survey here to inspire future add-on authors what you actually liked about Vimperator (update: survey results in CSV).

Downloads are hosted on the official Firefox Add-ons repository at addons.mozilla.org, where you can always find the latest version:

Release Notes | Other Versions | Source Code

Features

Vim-like key bindings ( h , j , k , l , gg , G , 0 , $ , ZZ , <C-f> , etc.)

, , , , , , , , , , etc.) Ex commands ( :quit , :open www.foo.com , …) with a proper command line

, , …) with a proper command line Tab completion available for all commands, showing suggestions while you type

Hint mode (start with f to follow a link)

to follow a link) Extensions! Yes, you can extend Vimperator’s functionality with scripts just like you can extend Firefox with extensions

Explore JavaScript objects with :echo window and even context-sensitive tab completion

and even context-sensitive tab completion Easily customizable GUI (easily hide all GUI elements with :set gui= )

) Ability to :source JavaScript files, and to use a ~/.vimperatorrc file with syntax highlighting if you install vimperator.vim

JavaScript files, and to use a file with syntax highlighting if you install vimperator.vim Easy quick searches ( :open foo will search for “foo” in google, :open ebay terminator will search for “terminator” on eBay) with support for Firefox keyword bookmarks and search engines

will search for “foo” in google, will search for “terminator” on eBay) with support for Firefox keyword bookmarks and search engines Count supported for many commands ( 3<C-o> will go back 3 pages)

will go back 3 pages) Beep on errors

Marks support ( ma to set mark ‘a’ on a webpage, 'a to go there).

to set mark ‘a’ on a webpage, to go there). QuickMarks support (quickly go to previously marked web pages with go{a-zA-Z0-9} ).

). :map and :command support (and feedkeys() for script writers).

and support (and for script writers). :time support for profiling

support for profiling Move the text cursor and select text with Vim keys and a visual mode

External editor support

Macros to replay key strokes

AutoCommands to execute action on certain events

A comprehensive :help system, explaining all commands, mappings and options

system, explaining all commands, mappings and options Much more…

Screenshots

Hints allow to follow links with the keyboard

Vimperator’s completion system

Exploring the DOM of the web page

Scripts

While Vimperator offers already lots of cool features, we cannot and don’t want to include every feature directly in the core. Therefore a motivated group of hackers called vimpr provides many enhancements for the Vimperator experience. You can add plugins which add new commands or mappings. Install these plugins by copying them to the ~/.vimperator/plugin/ directory (or %HOME%\vimperator\plugin on Windows) unless noted differently.

If you don’t care about features but just use Vimperator for the sexy looks, you can also theme that by using color schemes. You can install them by copying them to the ~/.vimperator/colors/ directory (%HOME%\vimperator\colors on Windows) and use it with :colorscheme <name> .

Bugs

Unexpected features - sometimes also called bugs - are listed in our issue tracker. You can also file feature requests there.