~/vimma $ less docs/moving.md

page 2/5 · docs/moving

Moving around pages

In normal mode you move around a page with single keys: no mouse, no modifiers. These work on web pages, about: pages and in the PDF viewer.

Scroll

ToPress
Scroll down / upj or k
Scroll left / righth or l
Half a page down / upd or u, or Vim's ctrl+d / ctrl+u
A step down / up, as Vim doesctrl+e or ctrl+y
Top / bottom of the pagegg or G

A number before a key repeats it: 5j scrolls five steps.

  1. Press f. A yellow label, one or two letters, appears on every link, button and field you can see.
  2. Type a label's letters. A link is followed, a button pressed, a text field focused.

F does the same for links only, and opens the one you pick in a new background tab, so you can pick several in turn. While labels show, Backspace undoes a letter and Esc cancels. Things you cannot see (off screen, or under a cookie banner) get no label: scroll first.

Find text

  1. Press / and type. Matches light up as you type, and the status bar counts them.
  2. Press Enter to stay on the match, or Esc to go back to where you were.
  3. n and N go to the next and the previous match.

A search in lower case ignores case; one capital letter makes it match case exactly. ? searches backwards.

Back, forward, reload

ToPress
Back / forwardH or L, or Vim's ctrl+o / ctrl+i
Back three pages3H
Reloadr

Addresses and the clipboard

ToPress
Go to the address bar, its text selectedI
Copy this page's addressyy
Open the address (or search the text) on the clipboard, here / in a new tabp or P
Go up one level in the address / to the site's rootgu or gU
Show the page's sourcegf

Jump to a text field

ToPress
Focus the first text field on the pagei
Focus the first one you can see / the thirdgi or 3gi

Either one puts you in insert mode; Esc brings you back. See Modes.

All the keys for this page

The default bindings, as Vimma's own ctrl+b ? overlay lists them. Name is the action's name, which you use to remap it or to run it as a : command. Every key is on the keys page.

Navigation (17)

ActionKeysName
Goto picker: every tab in every workspacectrl+b gbgoto_picker
Open / close the side panelctrl+b btoggle_sidebar
Scroll downjctrl+escroll_down
Scroll upkctrl+yscroll_up
Scroll lefthscroll_left
Scroll rightlscroll_right
Scroll half a page downdctrl+dscroll_half_down
Scroll half a page upuctrl+uscroll_half_up
Scroll to topggscroll_top
Scroll to bottomGscroll_bottom
Go backHctrl+ohistory_back
Go forwardLctrl+ihistory_forward
Reload pagerreload
Open a URL or search in this tabno default keyopen_url
Go up a level in the URL pathguurl_up
Go to the site's rootgUurl_root
Focus the address bar (as ctrl+l)IIvisualIpanelfocus_urlbar

Page (5)

ActionKeysName
Copy the page's URLyyyank_url
Open the clipboard's URL or search in this tabpopen_clipboard
Open the clipboard's URL or search in a new tabPopen_clipboard_tab
Focus the first text field (with a count: the Nth)gifocus_input
View the page's source in a new tabgfview_source

Hints (3)

ActionKeysName
Follow linkffollow_link
Follow link in new tabFfollow_link_new_tab
Leave hint modeeschinthint_cancel

Find (4)

ActionKeysName
Search in page/find_forward
Search backwards in page?find_backward
Next matchnfind_next
Previous matchNfind_previous

Details

Everything below is Vimma's own user guide for this topic, in full: every edge case and exception. You do not need it to get started.

The clipboard keys

p and P read the system clipboard (the one yy and copy mode's y write). The text is trimmed and its line breaks become spaces; one word with a scheme, a dot or a port (https://…, example.com, localhost:3000) loads as a URL, anything else goes to your default search engine. Text that would load as a javascript: or data: URL (also behind view-source:), or is longer than 8192 characters, is refused with a notice and nothing opens. P's tab opens in the current workspace, as :tabnew's does. Page zoom has no Vimma keys: ctrl+plus, ctrl+minus and ctrl+0 work as in Firefox.

Link hints let you click without the mouse. f puts a short label on everything you could click on screen: links, buttons, form fields, and elements the page made clickable (ARIA buttons and tabs, elements with a click handler), also inside web components and in frames from other sites. Things off screen, hidden or covered by something else (a fixed header, a cookie banner) get no label. Type a label to pick its target: a link is followed, a button is pressed, a text field gets focus and the tab is in insert mode. Labels use the home row (a s d f g h j k l), in reading order: targets near the top get the shortest. As you type, labels that no longer match disappear. Backspace takes back a key and Esc leaves hints without doing anything.

F labels links only and opens the one you pick in a new tab in the background, so you stay on the page and can pick more.

The labels are drawn by the browser, over the page, not inside it: the page cannot see them, restyle them or hide them. Apps that draw their own controls on a canvas (Google Docs, Figma, maps, games) have nothing to label.

Find

Find works as it does in Vim. / opens Firefox's find bar at the foot of the page, empty, and searches as you type, in frames from other sites, inside web components and in the PDF viewer too. Matches are highlighted and counted as in Firefox. The search starts at the top of what you see (or at the selection, if it is on screen), as Vim's starts at the cursor.

  • Case: smartcase. An all lower-case search ignores case (word finds Word); one capital letter makes it match case (Word finds only Word). ctrl+f uses the same rule.
  • **Enter** keeps the match selected and closes the bar; you are back in normal mode. A search that found nothing goes back to where you were, and the status bar says not found.
  • **Esc** cancels: the bar closes, nothing stays selected and the page scrolls back to where it was when you pressed /.
  • **n / N** jump to the next / previous match without opening the bar, wrapping at the ends. After a search that found nothing they do nothing.
  • **?** searches backward: it shows matches as you type, as / does, and Enter lands on the last match before where you were. After ?, n goes on backward and N forward.

ctrl+f still opens Firefox's own find bar, where Enter goes to the next match.

Known limits

Vimma is pre-alpha. What does not work yet, or works with a catch, is listed on the known limits page:

The guide at the top is written for this site; the details are built from Vimma's docs/guide.md and bindings.md at 1050bcc (2026-10-10).

Keys on this site

Keyboard shortcuts for this website
j kscroll down, up
d uhalf a page down, up
gg Gtop, bottom
/search the docs, or filter the keys
] [next, previous docs page
g hgo home
g dgo to the docs
g kgo to keys
g igo to install
g ago to about
?this help; Esc closes it

In Vimma, ctrl+b ? lists every binding.