The prefix and tabs
Tabs, panes and workspaces are driven by ctrl+b, tmux's prefix: press ctrl+b, let go, then press one more key. Firefox's tab strip is hidden; the status bar shows where you are (tab 2/5), and ctrl+b g lists every tab when you need to see them.
How the prefix works
- Press ctrl+b and let go. The status bar shows
prefix. - Press the command key, such as c for a new tab.
There is no time limit between the two, and Esc cancels. The prefix works in every mode, in the URL bar and while you type in a field, and the page never sees it. Prefer ctrl+a? Set prefix in config.toml.
Tab keys
| To | Press |
|---|---|
| Open a new tab | ctrl+b c or t |
| Next / previous tab | ctrl+b n / ctrl+b p, or gt / gT |
| Go to tab 1 to 9 | ctrl+b 1 … ctrl+b 9, or 3gt for tab 3 |
| Close the tab | ctrl+b shift+x or x |
| Rename the tab | ctrl+b shift+t |
| List every tab | ctrl+b g or b |
t, gt, x and b are the normal-mode shortcuts; the ctrl+b forms work everywhere. Tab numbers and next / previous stay within the current workspace.
Find a tab
ctrl+b g (or b) lists the tabs of every workspace in the window. Move with j and k and press Enter, or press / and type a few letters of the title or address to narrow the list. Esc or q closes it. Picking a tab in another workspace takes you there.
Rename a tab
ctrl+b shift+t asks for a name at the bottom of the window. The name replaces the page title in the status bar and the tab list, and survives a restart. An empty name brings the title back.
See every key
ctrl+b ? lists every binding over the page. Press / and type to filter it; Esc or q closes it. Keys your config.toml changes are marked *.
Firefox's own keys
Most still work: ctrl+t, ctrl+shift+t, ctrl+tab, alt+1…alt+9, ctrl+l, ctrl+f and the rest. The few on keys Vimma uses are off, so a key never means two things: close a tab with x rather than ctrl+w, and find Vimma's bookmarks on ctrl+b shift+b. Firefox's shortcuts has the list, and how to change it.
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.
Help (3)
| Action | Keys | Name |
|---|---|---|
| Show all bindings (filter with /) | ctrl+b ? | show_keybinds |
| Close the bindings overlay | eschelpqhelp | help_close |
| Filter the bindings overlay | /help | help_filter |
Tabs (14)
| Action | Keys | Name |
|---|---|---|
| New tab | ctrl+b ct | new_tab |
| Next tab (with a count: go to tab N) | ctrl+b ngt | next_tab |
| Previous tab | ctrl+b pgT | previous_tab |
| Jump to tab 1 in this workspace | ctrl+b 1 | select_tab_1 |
| Jump to tab 2 in this workspace | ctrl+b 2 | select_tab_2 |
| Jump to tab 3 in this workspace | ctrl+b 3 | select_tab_3 |
| Jump to tab 4 in this workspace | ctrl+b 4 | select_tab_4 |
| Jump to tab 5 in this workspace | ctrl+b 5 | select_tab_5 |
| Jump to tab 6 in this workspace | ctrl+b 6 | select_tab_6 |
| Jump to tab 7 in this workspace | ctrl+b 7 | select_tab_7 |
| Jump to tab 8 in this workspace | ctrl+b 8 | select_tab_8 |
| Jump to tab 9 in this workspace | ctrl+b 9 | select_tab_9 |
| Rename tab | ctrl+b shift+t | rename_tab |
| Close tab | ctrl+b shift+xx | close_tab |
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 bindings overlay
While the overlay is open it takes every key, so ctrl+w cannot close the tab behind it. Rows for bindings that do not run yet are dimmed, under a legend that says so; actions your config.toml rebinds are marked *. In normal mode bare digits start a count (3j), so a page's own digit shortcuts need i first.
Goto picker and tab rename
ctrl+b g (or b in normal mode, or :ls) opens a list of the window's tabs over the page: the tab number (the one ctrl+b 1..9 uses), the title or your rename, and the site. The current tab is selected. Like the bindings overlay it takes every key while open, so nothing reaches the page.
j/k,Down/Up,ctrl+n/ctrl+pmove;Entergoes to the selected tab./starts a search: type a few letters of the title, URL or rename. Matches are highlighted, best first: the start of a title beats a word inside it, which beats letters spread out. Letters with diacritics count as their own letters first (käputs "Käyttäjät" on top), and still match without them, lower down (kafinds it after "Kalenteri").Backspace,ctrl+wandctrl+udelete a letter, a word, everything.Escin a search goes back to moving through the filtered list;Escorqthen closes the picker and focus returns to the page.
The picker lists every tab of every workspace in the current window, workspace by workspace; the number is the tab's place in its workspace. Enter on a tab of another workspace switches to that workspace.
ctrl+b shift+t opens a one-line prompt at the foot of the window with the tab's current name. Type a name and press Enter; Esc cancels. An empty name removes the rename, so the page title shows again. :tabrename name does the same in one step (:tabrename alone opens the prompt). The name replaces the title in the status bar and the picker and is saved with the session, so it survives a restart (with Firefox's "Open previous windows and tabs") and undoing a closed tab. Invisible and direction-changing characters are removed, runs of spaces become one, and a name is cut at 100 characters.
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).