Modes
One keyboard, several meanings. Because d only deletes when you're in the mode where d means delete, HUME can put a whole editor's worth of commands on plain letters — no modifier gymnastics.
The active mode is shown on the right of the status bar. Esc always takes you back to Normal.
Normal mode
Normal mode is the default. You land here at startup and return here with Esc. In Normal mode, keys are commands — they move the cursor, modify text, or switch to another mode. Nothing you type appears in the buffer.
Enter from: any mode via Esc
Insert mode
Insert mode lets you type text directly into the buffer. The cursor changes to a bar to indicate you are inserting.
Enter from Normal:
Enter Insert mode with i, a, I, A, o, O, or c. See Editing for what each key does.
Exit: Esc or Ctrl+c
Extend mode
Extend mode works like Normal mode, but every motion extends the current selection instead of replacing it. Use it to build up a multi-character or multi-line selection before acting on it. Motions also run in reverse: moving back toward where you started shrinks the selection instead of growing it.
Enter: e (toggles; status bar shows EXT)
Exit: Esc, e again, or ; (collapse to head) / Ctrl+; (collapse to anchor, kitty only)
Command mode
Invoked with :, command mode opens the command mode prompt at the bottom of the screen. Type a command name and press Enter to execute. Press Esc to dismiss.
See Command mode for a full list of commands.
Search mode
Invoked with / (forward) or ? (backward). Type a pattern and press Enter to jump to the first match. n / N cycle through matches afterward.
Sift mode
Invoked with s in Normal mode. Sift mode opens a regex prompt (⫽). Enter a pattern and press Enter to narrow each existing selection down to its matching sub-ranges. Use it to break a selection into individual tokens.
Enter from Normal: s
Multi-key sequences
Some Normal-mode keys wait for a second key before doing anything. Either they open a small family of related commands, or they take a single character as their argument.
Prefixes
| Prefix | Keys | Purpose |
|---|---|---|
| Goto | g + key | Jump to a position in the buffer, or to the next/previous instance of a structural kind — see Default Keys |
G | G + key | Case transforms, and other non-goto commands Vim puts under g — see Default Keys |
| Match | m + key | Select text objects and surrounding delimiters — see Selections |
| Match WORD | M M | Select the WORD under the cursor — see Selections |
| View | z + key | Scroll the view to a position, or open a fuzzy picker — see Moving Around and Fuzzy Finder |
| Pane | Ctrl+p + key | Move focus between panes — see Default Keys |
| Register | " + char | Target a specific register for yank, paste, or delete — see Copy & Paste |
Keys that take a character
| Keys | Purpose |
|---|---|
f, F, t, T + char | Jump to a character on the current line — see Moving Around |
r + char | Replace the selected characters with the typed character — see Editing |
m w + char | Wrap the selection in that character — see Selections |
Count prefix
| Prefix | Purpose |
|---|---|
1–9 then [0-9]* | Repeat the next command a number of times — see Editing |