Keyboard shortcuts
macOS: use ⌘ (Command) anywhere this page says Ctrl.
The table below matches the global handler in keyboardService.svelte.js.
Shortcuts are ignored while focus is in inputs the handler explicitly skips for certain keys. For example, Delete does not delete a note when typing in an INPUT, TEXTAREA, or contenteditable field.
Global shortcuts
| Shortcut | Action |
|---|---|
| Ctrl+P | Open Quick Switcher (fuzzy search by note title) |
| Ctrl+F | Open Search panel (full-text + semantic) |
| Ctrl+N | New note |
| Ctrl+T | New blank tab |
| Ctrl+Tab / Ctrl+Shift+Tab | Cycle tabs forward / backward (only when more than one tab exists) |
| Ctrl+W | Close active tab |
| Ctrl+S | Save current note |
| Ctrl+Shift+L | Lock vault (only if a vault password exists and vault is unlocked) |
| Ctrl+Shift+Enter | Send selection to chat |
| Delete | Delete active note (when not editing text and note is not locked) |
| F11 | Toggle focus / distraction-free mode (hides panels) |
| Escape | Exit focus mode when no modal is open (see source for the exact guard list) |
Context-specific shortcuts
The bundled feature guide (FEATURE_GUIDE in featureGuide.js) also lists interactions that depend on view focus.
Examples:
- M on a Kanban card to start move mode
- Arrow keys inside calendars and menus
- Enter to send a chat message
- Escape to close dialogs
Those are not all centralized in keyboardService. Individual components handle them.
Chat tip
You can optionally include the feature guide in chat context via the “Feature guide” toggle so the model sees the same shortcut summary.
See AI assistant, Views & surfaces, and Settings glossary — Keybinds.