Keyboard Shortcuts¶
This page contains a list of all shortcuts available throughout the app.
Note
The key Cmd/Ctrl should be interpreted as follows: If you're on macOS, press the Cmd key. On any other platform, press Ctrl.
Custom Shortcuts¶
While the shortcuts shown below are defaults that will work out of the box, it's also possible to apply custom keyboard shortcuts in Zettlr and to apply shortcuts to frequently-used actions actions that have no default keystroke. For instance, if you frequently use a text transform like "Straighten Quotes" or "Remove Line Breaks", you can apply a shortcut to speed up your work.
To add a custom keyboard shortcut, open the Preferences dialogue, then browse to the Shortcuts option. There you will find a list of different areas of the app to which you can apply your shortcuts (at present: the table editor, the text transforms menu, and the broader application interface). Within these, locate the particular action to which you'd like to apply a shortcut. If a shortcut for that action exists, it will appear in gray hint text in the form field below. To change the shortcut, simply click in the form field beneath the action you're interested in. Once the form field comes into focus, the hint text will change to read "Recording…" and Zettlr will listen for the keyboard shortcut you wish to apply. At this point, simply type the keyboard shortcut you wish to use for that action. You're done.
If you decide you don't like a shortcut you've applied, you can simply return to the Shortcuts preference section and click the "Reset" button to the right of the shortcut.
App-wide shortcuts¶
These shortcuts are available across the entire app.
| Shortcut | Description |
|---|---|
| Cmd/Ctrl+, | Open preferences |
| Cmd/Ctrl+Alt+, | Open asset manager |
| Cmd/Ctrl+Q | Quit Zettlr |
| Cmd/Ctrl+N | New file |
| Cmd/Ctrl+Shift+N | New window |
| Cmd/Ctrl+O | Open new workspace |
| Cmd/Ctrl+S | Save file |
| Cmd/Ctrl+E | Export |
| Cmd/Ctrl+P | |
| Cmd/Ctrl+Shift+T | Focus file manager — activates arrow key navigation and type-to-filter |
| Cmd/Ctrl+Alt+L | Toggle dark mode |
| Cmd/Ctrl+Alt+S | Toggle file metadata |
| Cmd/Ctrl+! | Toggle file manager |
| Cmd/Ctrl+Shift+0 | Toggle sidebar |
| Cmd/Ctrl++ | Zoom in |
| Cmd/Ctrl+- | Zoom out |
| Cmd/Ctrl+0 | Reset zoom |
| Ctrl+Tab (macOS) | Next tab |
| Alt+Tab (Win/Linux) | Next tab |
| Ctrl+Shift+Tab (macOS) | Previous tab |
| Alt+Shift+Tab (Win/Linux) | Previous tab |
| Cmd/Ctrl+W | Close current tab |
| Cmd/Ctrl+Shift+W | Close current window |
| F1 | Open this documentation |
Shared Editor shortcuts¶
These shortcuts work when editing both Markdown files and code files.
| Shortcut | Description |
|---|---|
| Tab, Cmd/Ctrl+[ | Indent selection |
| Cmd/Ctrl+Alt+\ | Indent selection |
| Shift+Tab, Cmd/Ctrl+] | Unindent selection |
| ←, →, ↑, ↓ | Move the cursor by one character or line |
| Ctrl+←, Ctrl+→ (Win/Linux) | Move cursor to the next/previous syntactic element, or by one group of word- or non-word characters |
| Alt+←, Alt+→ (macOS) | Move cursor to the next/previous syntactic element, or by one group of word- or non-word characters |
| Cmd+←, Cmd+→ (macOS) | Move the cursor to the beginning or end of the current line |
| Home, End | Move the cursor to the beginning or end of the current line |
| Ctrl+↑, Ctrl+↓ | Move the cursor by one page |
| PageUp, PageDown | Move the cursor by one page |
| Cmd+↑, Cmd+↓ (macOS) | Move cursor to the beginning or end of the document |
| Ctrl+Home, Ctrl+End (Win/Linux) | Move cursor to the beginning or end of the document |
| Enter | Insert a new line and indent according to context |
| Cmd/Ctrl+A | Select all text |
| Cmd/Ctrl+C | Copy |
| Cmd/Ctrl+V | Paste |
| Cmd/Ctrl+X | Cut. Cuts the entire line if nothing is selected |
| Backspace, Delete | Delete character before or after the cursor |
| Backspace | If there is a pair of brackets surrounding the cursor, delete both |
| Ctrl+Backspace, Ctrl+Delete (Win/Linux) | Delete a group of word- or non-word characters before or after the cursor |
| Alt+Backspace, Alt+Delete (macOS) | Delete a group of word- or non-word characters before or after the cursor |
| Cmd+Backspace, Cmd+Delete (macOS) | Delete the entire line before or after the cursor |
| Ctrl+B (macOS) | Move cursor to the left |
| Ctrl+F (macOS) | Move cursor to the right |
| Ctrl+P (macOS) | Move cursor up |
| Ctrl+N (macOS) | Move cursor down |
| Ctrl+A (macOS) | Move cursor to the beginning of the line |
| Ctrl+E (macOS) | Move cursor to the end of the line |
| Ctrl+D (macOS) | Delete character after the cursor |
| Ctrl+H (macOS) | Delete character before the cursor |
| Ctrl+K (macOS) | Delete the line after the cursor |
| Ctrl+Alt+H (macOS) | Delete a group of word- or non-word characters |
| Ctrl+O (macOS) | Split the line at the cursor |
| Ctrl+T (macOS) | Transpose the chars before and after the cursor |
| Ctrl+V (macOS) | Move the cursor one page down |
| Alt+↑, Alt+↓ | Move the current line up or down |
| Shift+Alt+↑, Shift+Alt+↓ | Duplicate the current line up or down |
| Escape | Remove all selections, keeping only one cursor. If there is only one cursor, pressing Escape allows you to use Tab to focus out of the editor |
| Cmd/Ctrl+Enter | Insert a new line, but without continuing syntactic elements such as lists |
| Alt+L (Win/Linux) | Select the current line |
| Ctrl+L (macOS) | Select the current line |
| Cmd/Ctrl+Shift+K | Delete the current line |
| Cmd/Ctrl+Shift+\ | If the cursor touches a bracket, move to the matching bracket |
| Cmd/Ctrl+\ | Toggle comment |
| Alt+A (Win/Linux) | Toggle a block-comment |
| Ctrl+M (Win/Linux) | Toggle whether Tab can be used to tab away from the editor |
| Shift+Alt+M (macOS) | Toggle whether Tab can be used to tab away from the editor |
| Cmd/Ctrl+F | Open search panel |
| F3, Shift+F3 | Find next or previous match |
| Cmd/Ctrl+G | Find next match |
| Cmd/Ctrl+Shift+G | Find previous match |
| Escape | Close search panel |
| Cmd/Ctrl+Shift+L | Select all instances of the currently selected text |
| Cmd/Ctrl+Alt+G | Go to line |
| Cmd/Ctrl+D | Select the next occurrence of the currently selected text, or select the word under the cursor |
| Cmd/Ctrl+Z | Undo |
| Cmd/Ctrl+Shift+Z | Redo |
| Cmd/Ctrl+U | Undo selection |
| Alt+U (Win/Linux) | Redo selection |
| Cmd+Shift+U (macOS) | Redo selection |
Markdown-specific shortcuts¶
These shortcuts work when editing Markdown files.
| Shortcut | Description |
|---|---|
| Cmd/Ctrl+B | Bold |
| Cmd/Ctrl+I | Italic |
| Cmd/Ctrl+Shift+H | Highlight Text |
| Cmd/Ctrl+K | Insert link |
| Cmd/Ctrl+Shift+I | Insert image |
| Cmd/Ctrl+T | Create task-list |
| Cmd/Ctrl+Alt+F | Create Footnote |
| Cmd/Ctrl+Shift+C | Toggle comment |
| Cmd/Ctrl+Alt+C | Copy with formatting |
| Cmd/Ctrl+V | Paste with formatting |
| Cmd/Ctrl+Shift+V | Paste as plain |
| Cmd/Ctrl+L | Insert Zettelkasten ID |
| Cmd/Ctrl+Shift+L | Copy current Zettelkasten ID |
Autocomplete and AutoCorrect shortcuts¶
These shortcuts work when an autocomplete prompt is open, and when autocompleting.
| Shortcut | Description |
|---|---|
| Escape | Close the autocomplete panel |
| ↑, ↓ | Select next/previous suggestion |
| PageUp, PageDown | Move selected suggestion by a page |
| Enter, Tab | Accept Completion |
| Backspace | If there is a smart quote in front of the cursor, replace it with a regular quote. |
| Space, Enter | Auto-replace if the text in front of the cursor matches a replacement pattern |
Snippet shortcuts¶
These shortcuts work while you are inserting a snippet with tab stops.
| Shortcut | Description |
|---|---|
| Tab | Go to the next tab stop |
| Esc | Stop snippet insertion process |
Code-specific shortcuts¶
These shortcuts work while editing code files.
| Shortcut | Description |
|---|---|
| Cmd/Ctrl+I | Select the parent syntactic element |
Debug-Mode¶
These shortcuts work when the debug mode is active.
| Shortcut | Description |
|---|---|
| Cmd+Alt+I (macOS) | Open DevTools |
| Ctrl+Shift+I (Win/Linux) | Open DevTools |
| Cmd/Ctrl+Alt+Shift+L | Open logs |
| F5 | Reload window |
Table editor shortcuts¶
These shortcuts work while in Markdown tables.
| Shortcut | Description |
|---|---|
| Tab | Move to the next cell (Shift for previous cell) |
| Enter | Move to the next row (Shift for previous row) |
| Alt+Shift+ArrowUp (macOS: Ctrl+Shift+ArrowUp) |
Add a row before the current one |
| Alt+ArrowUp (macOS: Ctrl+ArrowUp) |
Swap the current row with the previous one |
| Alt+Shift+ArrowDown (macOS: Ctrl+Shift+ArrowDown) |
Add a row after the current one |
| Alt+ArrowDown (macOS: Ctrl+ArrowDown) |
Swap the current row with the next one |
| Alt+Shift+ArrowRight (macOS: Ctrl+Shift+ArrowRight) |
Add a new column to the right of the current one |
| Alt+ArrowRight (macOS: Ctrl+ArrowRight) |
Swap the current column with the next one |
| Alt+Shift+ArrowLeft (macOS: Ctrl+Shift+ArrowLeft) |
Add a new column to the left of the current one |
| Alt+ArrowLeft (macOS: Ctrl+ArrowLeft) |
Swap the current column with the previous one |
| Shift+Cmd/Ctrl+K | Delete the current column |
| Cmd/Ctrl+Backspace | Clears out the current column (i.e., inserts whitespace) |
| Shift+Cmd/Ctrl+Backspace | Clears out the current row (i.e., inserts whitespace) |
| Alt+Shift+Cmd/Ctrl+Backspace | Clears out the entire table |
| Ctrl+C | Aligns the current column center |
| Ctrl+L | Aligns the current column left |
| Ctrl+R | Aligns the current column right |
| Cmd/Ctrl+Shift+A | Aligns the table at the main selection head (not left/right/center, but adds the appropriate padding so that it is formatted nicely. Requires a monospaced font for proper visuals.) |