Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Default Key Bindings

These are the keys orzma binds when your configuration leaves them alone. To change them, see Key Bindings. Windows and Linux share the same defaults, and only the general shortcuts differ on macOS.

General

ActionmacOSWindows and LinuxWhat it does
leaderCmd (tap)Alt (tap)The key that starts a <Leader> binding (see The leader key).
pasteCmd+VCtrl+VPaste from the system clipboard.
copyCmd+CCtrl+CCopy the active pane’s selection to the system clipboard, then dismiss the selection.
increase-font-sizer:Cmd+Plusr:Ctrl+PlusStep the terminal font size up.
decrease-font-sizer:Cmd+-r:Ctrl+-Step the terminal font size down.
reset-font-sizeCmd+0Ctrl+0Return the terminal font size to [font] size.
release-webview-focus<Leader>u<Leader>uReturn keyboard focus from a focused webview to the terminal.
enter-vi-modeAlt+sAlt+sEnter vi mode.
quitCmd+QunboundQuit orzma.

r: marks a binding that keeps firing while you hold it (see Repeatable bindings).

quit ships unbound on Windows and Linux because the window manager’s own close shortcut (Alt+F4 on Windows) already exits orzma. Bind it explicitly if you want a second way out.

On Windows and Linux, binding paste to Ctrl+V takes that key away from the program running in the terminal, so readline’s quoted-insert and vim’s visual-block mode no longer see it. Set paste = "Ctrl+Shift+V" to give it back.

A copy chord that uses Ctrl alone, such as the stock Ctrl+C, copies only while text is selected; with nothing selected, it reaches the program as usual, so Ctrl+C still interrupts. A copy chord with any other modifier, such as the macOS Cmd+C, always copies.

Panes

ActionDefaultWhat it does
split-vertical-paneAlt+iSplit the active pane side by side (vertical divider); the new pane becomes active.
split-horizontal-paneAlt+oSplit the active pane top and bottom (horizontal divider); the new pane becomes active.
select-left-paneAlt+hMake the pane to the left active.
select-down-paneAlt+jMake the pane below active.
select-up-paneAlt+kMake the pane above active.
select-right-paneAlt+lMake the pane to the right active.
kill-paneAlt+pClose the active pane and end its shell.
resize-left-paner:Alt+Shift+HMove a divider of the active pane 5 cells left, repeatable (see Resizing panes).
resize-down-paner:Alt+Shift+JMove a divider of the active pane 5 cells down, repeatable (see Resizing panes).
resize-up-paner:Alt+Shift+KMove a divider of the active pane 5 cells up, repeatable (see Resizing panes).
resize-right-paner:Alt+Shift+LMove a divider of the active pane 5 cells right, repeatable (see Resizing panes).

Tabs

ActionDefaultWhat it does
new-tabAlt+cOpen a new tab after the last one and show it.
close-tabAlt+Shift+XClose the tab on screen and end every shell in it.
next-tabAlt+]Show the tab to the right, wrapping around.
previous-tabAlt+[Show the tab to the left, wrapping around.
select-tab-1 … select-tab-9Alt+1 … Alt+9Show the first … ninth tab.
rename-tabAlt+rRename the tab on screen.

Vi mode

These keys work only in vi mode. They are set in the [vi-mode] table (see Vi mode keys).

ActionDefaultWhat it does
cursor-lefth, ArrowLeftMove the cursor one cell left.
cursor-downj, ArrowDownMove the cursor one cell down.
cursor-upk, ArrowUpMove the cursor one cell up.
cursor-rightl, ArrowRightMove the cursor one cell right.
line-start0Jump to column 0 (of the first row, on a wrapped line).
line-end$Jump to the last non-blank column; pressed again, jump to the last column, or to the end of the text on a wrapped line.
line-first-char^Jump to the first non-blank column.
next-wordwJump to the next (semantic) word start.
previous-wordbJump to the previous (semantic) word start.
next-word-endeJump to the next (semantic) word end.
next-spaceWJump to the next space-delimited word start.
previous-spaceBJump to the previous space-delimited word start.
next-space-endEJump to the next space-delimited word end.
screen-topHJump to the top visible line.
screen-middleMJump to the middle visible line.
screen-bottomLJump to the bottom visible line.
previous-paragraph{Jump to the previous paragraph boundary.
next-paragraph}Jump to the next paragraph boundary.
matching-bracket%Jump to the bracket matching the one under the cursor.
history-topgScroll to the oldest history line.
history-bottomGScroll to the live tail.
page-upCtrl+BScroll one page up.
page-downCtrl+FScroll one page down.
half-page-upCtrl+UScroll half a page up.
half-page-downCtrl+DScroll half a page down.
scroll-upCtrl+YScroll one line up.
scroll-downCtrl+EScroll one line down.
toggle-selectionv, SpaceToggle a character-wise selection.
toggle-line-selectionVToggle a line-wise selection.
toggle-rect-selectionCtrl+VToggle a rectangular selection. Currently selects whole lines.
yanky, EnterCopy the selection to the clipboard and leave vi mode.
exitq, Escape, Ctrl+CLeave vi mode.
search-forward/Open the search-down prompt (not implemented yet).
search-backward?Open the search-up prompt (not implemented yet).
search-nextnRepeat the previous search (not implemented yet).
search-previousNRepeat the previous search, reversed (not implemented yet).
jump-forwardfOpen the jump-to-char-forward prompt (not implemented yet).
jump-backwardFOpen the jump-to-char-backward prompt (not implemented yet).
jump-to-forwardtOpen the jump-till-char-forward prompt (not implemented yet).
jump-to-backwardTOpen the jump-till-char-backward prompt (not implemented yet).