# Keyboard shortcuts

Every key Fennick knows, on a Mac and on Windows.

Fennick uses the keys people already know from other notes apps. On Windows and Linux, `Ctrl` takes the place of `⌘` and `Alt` takes the place of `⌥`, except where the table says otherwise (the fold keys).

## Getting around

| Action | Mac | Windows |
| --- | --- | --- |
| Open the command menu (pages and actions) | `⌘K` or `⌘P` | `Ctrl+K` or `Ctrl+P` |
| Back and forward through pages | `⌘[` `⌘]` | `Ctrl+[` `Ctrl+]` |
| Go to today | `⌃⇧D` | No key. Use the command menu: Go to today. |
| The day before or after (on a day page) | `⌃[` `⌃]` | No key. Use ‹ and › above the title. |
| The sidebar: small (a strip of icons), hidden, full again | `⌘\` | `Ctrl+\` |
| A new tab (on today) | `⌃⌥T` | `Ctrl+Alt+T` |
| Close the tab | `⌃⌥W` | `Ctrl+Alt+W` |
| Go to tab 1 to 8, or the last one | `⌃⌥1` … `⌃⌥9` | `Ctrl+Alt+1` … `Ctrl+Alt+9` |
| The tab before or after | `⌃⌥[` `⌃⌥]` | `Ctrl+Alt+[` `Ctrl+Alt+]` |
| A new page | `⌃⌥N` | `Ctrl+Alt+N` |
| Show or hide the right panel | `⌘⌥\` | `Ctrl+Alt+\` |
| Copy the page's link | `⌘L` | `Ctrl+L` |
| Find on this page | `⌘F` | `Ctrl+F` |
| The next or the previous match (while Find is open) | `⌘G` `⇧⌘G`, or `Enter` `⇧Enter` | `Ctrl+G` `Ctrl+Shift+G`, or `Enter` `Shift+Enter` |
| From the page title to the first block | `Enter` or `↓` | `Enter` or `↓` |

The browser's own Back and Forward buttons, and the trackpad swipe, walk the same pages.

In the [Mac app](getting-started.md#mac), tabs use the Mac's own keys: `⌘T` a new tab, `⌘W` close it, `⌘1` to `⌘9` go to one, `⌘⇧[` `⌘⇧]` the tab before or after.

## Blocks

| Action | Mac | Windows |
| --- | --- | --- |
| New block | `Enter` | `Enter` |
| A new row inside the same block | `⇧Enter` | `Shift+Enter` |
| Indent, outdent | `Tab` `⇧Tab` | `Tab` `Shift+Tab` |
| Move the block up or down | `⌘⇧↑` `⌘⇧↓` | `Ctrl+Shift+↑` `Ctrl+Shift+↓` |
| Fold, unfold (a block with something inside) | `⌘↑` `⌘↓` | `Ctrl+↑` `Ctrl+↓` |
| Fold, unfold a block and every block inside it | `⌃⌘↑` `⌃⌘↓` | `Alt+↑` `Alt+↓` |
| Fold, unfold every block on the page | `⌘⌥↑` `⌘⌥↓` | `Alt+Shift+↑` `Alt+Shift+↓` |
| Tick a to-do, or open a page block. On any other block: make it a to-do. | `⌘Enter` | `Ctrl+Enter` |
| Duplicate the block (a new copy, an entity too) | `⌘D` | `Ctrl+D` |
| Open the block's menu | `⌘/` | `Ctrl+/` |
| Move to another page | `⌘⇧M` | `Ctrl+Shift+M` |
| Change the block's kind (the / menu) | `/` | `/` |

### Turn into

| Kind | Mac | Windows |
| --- | --- | --- |
| Text | `⌘⌥0` | `Ctrl+Alt+0` |
| Heading 1, 2, 3 | `⌘⌥1` `⌘⌥2` `⌘⌥3` | `Ctrl+Alt+1` to `3` |
| To-do | `⌘⌥4` | `Ctrl+Alt+4` |
| Bulleted list | `⌘⌥5` | `Ctrl+Alt+5` |
| Numbered list | `⌘⌥6` | `Ctrl+Alt+6` |
| Quote | `⌘⌥7` | `Ctrl+Alt+7` |
| Code | `⌘⌥8` | `Ctrl+Alt+8` |

> On keyboards with an AltGr key, `Ctrl+Alt` types letters such as # and @, so Fennick never reads it as a shortcut. Use the / menu or the command menu instead.

## Text styles

| Style | Mac | Windows |
| --- | --- | --- |
| Bold | `⌘B` | `Ctrl+B` |
| Italic | `⌘I` | `Ctrl+I` |
| Underline | `⌘U` | `Ctrl+U` |
| Inline code | `⌘E` | `Ctrl+E` |
| Strikethrough | `⌘⇧S` or `⌘⇧X` | `Ctrl+Shift+S` or `Ctrl+Shift+X` |
| Highlight | `⌘⇧H` | `Ctrl+Shift+H` |
| Highlight and write a note (the highlight's peek opens, the caret in its note) | `⌃⌘H` | `Ctrl+Alt+H` |
| Link the selected words (to a page, an entity or a web address) | `⌘K` | `Ctrl+K` |
| Open a web link | Click it | Click it |

With words selected, the key styles them. With nothing selected, the next letters you type take the style.

In the peek that `⌃⌘H` opens: `Tab` from the note's first block goes to About (type to find a page or an entity, `Enter` links it), and `Esc` puts the caret back in your writing, where it was. With the caret in a highlight, `⌃⌘H` opens its peek. See [Highlights](links.md#research-highlights).

## Selecting

| Action | Mac | Windows |
| --- | --- | --- |
| Select the block you are in | `Esc` | `Esc` |
| Select the block's words, then the block, then every block | `⌘A`, again, again | `Ctrl+A`, again, again |
| Select blocks from the text's start or end | `⇧↑` `⇧↓` | `Shift+↑` `Shift+↓` |
| Select from this block to the one clicked | `⇧`-click | `Shift`-click |

### With blocks selected

| Action | Mac | Windows |
| --- | --- | --- |
| Move to the Trash | `Delete` or `⌫` | `Delete` or `Backspace` |
| Copy, cut | `⌘C` `⌘X` | `Ctrl+C` `Ctrl+X` |
| Indent, outdent them together | `Tab` `⇧Tab` | `Tab` `Shift+Tab` |
| Move them up or down | `⌘⇧↑` `⌘⇧↓` | `Ctrl+Shift+↑` `Ctrl+Shift+↓` |
| Make them to-dos, or tick them all | `⌘Enter` | `Ctrl+Enter` |
| Duplicate them | `⌘D` | `Ctrl+D` |
| Move them to another page | `⌘⇧M` | `Ctrl+Shift+M` |
| Step up or down; grow the selection | `↑` `↓`; `⇧↑` `⇧↓` | `↑` `↓`; `Shift+↑` `Shift+↓` |
| Select every block | `⌘A` | `Ctrl+A` |
| Edit the block again | `Enter` | `Enter` |
| Let go | `Esc` | `Esc` |

## Undo, copy and paste

| Action | Mac | Windows |
| --- | --- | --- |
| Undo | `⌘Z` | `Ctrl+Z` |
| Redo | `⌘⇧Z` or `⌘Y` | `Ctrl+Shift+Z` or `Ctrl+Y` |
| Paste the words only (no styles, no blocks) | `⌘⇧V` | `Ctrl+Shift+V` |
| Paste as copy (new blocks, never the same ones) | `⌥⌘V` | `Ctrl+Alt+V` |

## Making a new entity

After **+ New** in a table, a board column, a list, a gallery or a calendar, the caret is in the new entity's name.

| Action | Mac | Windows |
| --- | --- | --- |
| Add it and stop | `Enter` | `Enter` |
| Add it and start the next one | `⇧Enter` | `Shift+Enter` |
| Stop (a new one with no name goes) | `Esc` | `Esc` |

In a sorted view, the new entity stays right above **+ New** while you type its name, and takes its place in the sort when you press `Enter` or leave it.

## In a menu

In the / menu, the @ menu, the # menu and the command menu: `↑` and `↓` move, `Enter` picks, `Esc` closes. In the /, @ and # menus, `Tab` picks too.

## What typing does

| Type | What happens |
| --- | --- |
| `/` at the start or after a space | Opens the menu of block kinds. [Writing](writing.md#kinds) |
| `#name` after some words | Tags the block. [Tags](tags.md) |
| `@` or `[[` | Mentions a page, an entity or a day. [Links](links.md) |
| `??` in a block | Opens the formula builder. In an empty block, a query makes a query block. [The builder](queries.md#builder) |
| `Name::` | Adds a field called Name to what the block sits in (the page, or the block above). [Fields](fields.md#field-any-line) |
| `# `, `- `, `[] ` … at the start of a block | Changes the block's kind. [Markdown](writing.md#markdown) |
| `**bold**`, `*italic*`, ``code``, `~strike~` | Styles the words and drops the marks. [Markdown](writing.md#markdown) |

`⌘N` is the browser's own, so a new page is `⌃⌥N`, or New page in the sidebar or the command menu.
