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

Using the TUI

Launching a profile opens the ratatui interface: a status bar (registration, MWI), the call list, and a mode line. Below are the keybindings per mode and overlay.

Profile picker

KeyAction
EnterStart selected profile
Ctrl+NCreate new profile
Ctrl+EEdit selected profile
Ctrl+YClone selected profile
Ctrl+DDelete selected profile (confirmation)
/ Navigate (wrap-around)
PgUp / PgDnMove by one screenful
Home / EndFirst / last profile
EscQuit

Typing filters the list. Every word has to appear somewhere in the row — in the profile name or in the subtitle next to it — in any order, so dev sipgate finds a profile named [DEV] Channel 01 registered at sipgate.

A marks a profile that already has a session running. Starting a second one registers another contact with the provider, and the provider then decides which of them a call reaches. A profile whose file cannot be read is marked ⚠ unreadable instead of failing only once you start it. Ctrl+E on such a profile opens profile.toml in $EDITOR rather than the form — a form cannot be filled from a file that does not parse, and the text is what needs fixing. Starting it is refused with a note above the list.

If ringo.toml itself could not be loaded, that is shown there too. It is worth saying in the picker specifically: the picker runs before the log file is opened, so the warning would otherwise reach nobody.

Normal mode (default)

KeyAction
dEnter Dial mode
aAccept incoming call
sSilence the ringtone (the call keeps ringing)
b / DelHang up
hHold / resume the selected call (toggle)
mToggle microphone mute
MToggle deafen (microphone and speaker)
t / TBlind / attended transfer
0-9 * #DTMF tones (during a call)
f / TabOpen contacts (Tab switches calls when several are active)
e / l / cEvent log / baresip log / call history
Ctrl+RFuzzy-search dial history
Ctrl+EEdit profile (no active call)
Ctrl+PSwitch profile (back to picker)
:Open the command bar
q / Ctrl+CQuit (with / without confirmation)

Dial mode

KeyAction
EnterDial and return to Normal mode
EscCancel
BackspaceDelete character / exit when empty
/ Home EndMove / jump the cursor
/ Navigate dial history
TabOpen contacts
Ctrl+RFuzzy-search dial history

Transfer mode

KeyAction
EnterExecute the transfer
TabOpen contacts
/ / Ctrl+RDial-history navigation / search
EscCancel

Contacts overlay

KeyAction
/ , g / GNavigate / jump to top-bottom
EnterSelect number (dial or transfer)
/Search
a / e / dAdd / edit / delete contact
EOpen contacts in $EDITOR
f / EscClose

Command bar

Open with :. Tab-completes commands; Enter runs, Esc closes.

Commands: dial <n>, hangup, accept, hold, resume, mute, dtmf <digits>, transfer <uri>, contacts, events, log, history, edit, switch, help, quit.

Call history / log views

KeyAction
/ , g / GNavigate / jump
Enter(history) copy peer to dial input — redial
/(history) search
d / D(history) delete entry / clear all
e / l / cSwitch between event log / baresip log / call history
EscClose