Page loadedSkip to main content

vimplug

Scroll, follow links, switch tabs, search a page and select text without leaving the home row. One codebase builds a Safari app extension and a Chrome and Edge extension.

View source
  • Browser extension
  • Safari
  • Developer tools
The vimplug settings page, listing each action beside the key that runs it

The problem

Vimium is excellent and does not run on Safari. Vimkey did, but it is closed source and no longer maintained, and its tracker holds years of unanswered reports, several about the extension eating keystrokes meant for the page.

How it works

  • A rewrite rather than a fork, because the original source was never published. It reaches key parity with vimkey and adds what Vimium users expect.
  • The unanswered reports are treated as the specification for what must not go wrong.
  • Normal-mode actions are rebindable, and the configuration is one block of text you can read, version and carry between machines.
  • Releases are unsigned because Safari signing needs a paid Developer ID. The README says plainly what that costs at each Safari launch instead of hiding it.

Built with

  • JavaScript
  • WebExtensions
  • Safari Web Extension
  • Xcode
  • pnpm