Safarim

Vim keybindings for Safari.

Download on the Mac App Store
Coming soon to the Mac App Store.
Settings live in the toolbar popover.

How it works

Moving around

j and k scroll, d and u scroll half a page, gg and G jump to the top and bottom. J and K switch tabs, H and L go back and forward.

Link hints

Press f and every visible link gets a short label. Type the label to open the link. F does the same in a new tab. The characters used for labels are a setting in the toolbar popover.

Press f and every link gets a label. Type it to open.

Find

/ opens a find bar and matches highlight as you type. Enter returns you to the page with the highlights kept, n and N step through them, and Esc clears them. If the current match is inside a link, Enter follows it.

Press / and matches highlight as you type.

Address bar

o opens an address bar inside the page, so focus never leaves it. Type a few letters of an open tab's title to jump to it, a URL to go there, or anything else to search. Suggestions from your search engine appear as you type. O does the same in a new tab. Arrow keys or Tab move through the list, Enter picks, Esc closes. The search engine and whether to fetch suggestions are settings in the toolbar popover.

Typing

Click into a text field and type as usual. Safarim stays out of the way while a field has focus, and Esc leaves the field so Safarim's shortcuts work again. On a page with its own keyboard shortcuts, press i to pause Safarim and use the page's keys; Esc turns it back on. If it is a site you use all the time, exclude it instead.

Rebinding

Press ? to see every shortcut. Click a key, then press the new one (one key, or a two-key sequence like gg). Conflicts are flagged before they take effect. Enter and Esc are not rebindable.

Excluding a site

The toolbar popover has an Exclude This Site button. For finer control, the exclusion list takes one pattern per line: a bare domain like mail.google.com matches that host and its subdomains, and anything with * or / is matched anywhere in the URL, so *.youtube.com/watch* excludes just the player.

Default Keys

Scrolling

Scroll down
j
Scroll up
k
Scroll left
h
Scroll right
l
Half page down
d
Half page up
u
Go to top
gg
Go to bottom
G

Links

Open link
f
Open link in new tab
F

Find

Find in page
/
Next match
n
Previous match
N
Follow link under match
Enter

Tabs

New tab
t
Previous tab
J
Next tab
K
Close tab
x

Navigate

History back
H
History forward
L
Reload page
r
Search, open URL, or switch tab
o
Search or open URL in new tab
O

Other

Copy page URL
yy
Insert mode (pass keys)
i
Keyboard shortcuts
?
Leave insert / clear find
Esc

Capital letters mean Shift. Dimmed keys are fixed and cannot be rebound. Everything else can be changed by pressing ? in Safari.