Keyboard Shortcuts
RustMail's web UI supports vim-style keyboard navigation.
Global
These work anywhere in the UI.
| Key | Action |
|---|---|
j | Select next message |
k | Select previous message |
d | Delete selected message |
u | Bring back the last deleted message |
D | Delete all messages |
s | Star or unstar the selected message |
/ | Focus search bar |
Esc | Clear active filters, or close the message detail panel |
d leaves the message out of the list straight away, but waits a few seconds before deleting it, so u, or the Undo button on the notice that appears, brings it back. Deleting another message closes the previous one's window, and so does the window running out; after that the message is gone for good. D asks for confirmation instead, because clearing the inbox cannot be undone.
Message list
Tab reaches the message list as a single stop; the arrow keys then move within it. Individual rows are not tab stops, so the list stays navigable no matter how many rows are on screen.
| Key | Action |
|---|---|
↓ | Select next message |
↑ | Select previous message |
Home | Select the first message |
End | Select the last loaded message |
The inbox loads messages a page at a time, so End lands on the last message fetched so far. Pressing it again after the next page arrives moves further down.
The star toggle on each row is not a tab stop either; use s to star the selected message.
Under the Unread filter the selected message stays in the list even after it has been marked read. Selecting a message marks it read, so without that exception the row you just landed on would vanish and take your place in the list with it. The list shrinks behind you as you move instead. Other filters make no such exception.
Shortcuts are active when no input field is focused, and are ignored when a modifier key is held, so browser chords such as Cmd/Ctrl+D keep their normal behaviour.
