Roam keyboard shortcuts

Updated: January 5th, 2021

A PDF with a comprehensive list of keyboard shortcuts for both Windows and MacOS can be found here.

Want to search this page? Use the shortcut Ctrl-f (Windows) or Cmd-f (macOS).

How to read the shortcuts

Shortcuts are key combinations that often need to be pressed simultaneously. When this is the case, you’ll see the keys mentioned with a hyphen (-) between them (for example: Shift-Tab). Other shortcuts work by pressing keys in succession. When that’s the case, two instructions are shown (for example: Ctrl-c then Ctrl-s).

Navigating Roam

You can navigate Roam using your mouse, but it’s not the fastest way. If you spend several hours per day in Roam, you’ll do yourself a favor by learning how to navigate Roam using your keyboard.

Function Windows shortcut macOS shortcut
Search the database. Cursor jumps to the search window. Ctrl-u Cmd-u
Advanced block search. When you cursor is in a block, opens a search window that allows you to search for blocks in specific pages.

For more information, see the article Using search in Roam.

Ctrl-Shift-9
Search on the current page. Opens a small browser search field. The occurrences of your search term are highlighted. Ctrl-f Cmd-f
Open search result in sidebar (keyboard). When typing in the search bar, this will open the selected page in the sidebar. Shift-Enter Shift-Enter
Open search result in sidebar (mouse). When typing in the search bar, opens the selected page in the sidebar. Shift-Click Shift-Click
Jump to Daily Notes. Takes you directly to the Daily Notes page, no matter where you are in Roam. Alt-d Ctrl-Shift-d
Jump to next Daily Note. Takes you to the next day’s Daily Note when you’re on a specific Daily Note (not the Daily Notes page where you can scroll to other days). Ctrl-Alt-n Ctrl-Option-n
Jump to previous Daily Note. Takes you to the previous day’s Daily Note when you’re on a specific Daily Note (not the Daily Notes page where you can scroll to other days). Ctrl-Alt-p Ctrl-Option-p
Open internal link. Opens the internal link that’s under the cursor. Ctrl-o Ctrl-o
Open internal link in sidebar (keyboard). Opens the internal link under the cursor in the sidebar. Ctrl-Shift-o Ctrl-Shift-o
Open internal link in sidebar (mouse). By pressing the Shift key when clicking an internal link or a bullet, the corresponding page or block opens in the sidebar. Shift-Click Shift-Click
Toggle brackets off or on. Simply gets brackets out of the view if you want to see the text without them. Does not delete the brackets. Ctrl-c then Ctrl-b Ctrl-c then Ctrl-b
Toggle namespace on/abbreviated/off. Namespaces are handy to differentiate between page types. For example, you can place Article/ before a page title, and shorten it to A/ or completely remove it from link names. Ctrl-c then Ctrl-l

Shortcuts for marking up text

Most text formatting in Roam happens with the use of shortcodes. To make our lives easier, the Roam team has created a few shortcuts that place the shortcodes for us.

The shortcuts below work with or without having text selected. When you press them with text selected, the formatting will be applied to the selection. This is not the case for the headings; those always apply to the entire block.

Each shortcut only affects the block in which the cursor is placed.

Function Windows shortcut macOS shortcut
Heading 1 (H1). Makes a first level header out of the block. H1’s are often used for titles. Ctrl-Alt-1 Cmd-Alt-1
Heading 2 (H2). Makes a second level header out of the block. H2’s are often used for subtitles. Ctrl-Alt-2 Cmd-Alt-2
Heading 3 (H3). Makes a second level header out of the block. H3’s are often used for section titles. Ctrl-Alt-3 Cmd-Alt-3
Reset heading/set to paragraph. When a block is a heading, you can use this shortcut to reset the text to normal text. Ctrl-Alt-0 Cmd-Alt-0
TODO/DONE. Makes the block a TODO (clickable textbox). Repeated use of this shortcut on the same block sets it to DONE or removes the checkbox entirely. Ctrl-Enter Cmd-Enter
Bold text. Bolds the selected text by wrapping it between the ** shortcode.

When pressed without any text selected, the shortcode will be placed with the cursor in the middle.

Ctrl-b Cmd-b
Italicize text. Italicizes the selected text by wrapping it between the __ (double underscore) shortcode.

When pressed without any text selected, the shortcode will be placed with the cursor in the middle.

Ctrl-i Cmd-i
Highlight text. Highlights the selected text by wrapping it between the ^^ shortcode.

When pressed without any text selected, the shortcode will be placed with the cursor in the middle.

You can’t highlight text that’s already formatted (like bolded or italicized). If you want to both bold and highlight some text, highlight first and then bold.

Ctrl-h Cmd-h
Strikethrough text. Draws a line through the selected text by wrapping it between the ~~ shortcode.

When pressed without any text selected, the shortcode will be placed with the cursor in the middle.

Ctrl-y Cmd-y
[Roam42] Strikethrough text. Draws a line through all the text in the block by wrapping it between the ~~ shortcode. Alt-Shift-t Alt-Option-t
External link. When you have text selected, this shortcut will create an external link with the selected text as label. Place the URL you want to point to between the parentheses.

When pressed without any text selected, the shortcode will be placed with the cursor in the label part (between [square brackets]).

Ctrl-k Cmd-k
Paste text without formatting. When copying rich text (bolded or italicized), you can paste it without the formatting by using this shortcut. Ctrl-Shift-v Ctrl-Shift-v

Working with blocks

While Roam is not a hierarchical note-taking system, it does have hierarchies within pages. Everything on a Roam page is a block (bullet), and blocks can be nested under other blocks. This creates the hierarchy.

To reduce mouse usage and become a faster knowledge worker, it pays dividends if you learn how to organize and navigate blocks entirely with your keyboard. The shortcuts below work on the block that the cursor is in (unless stated otherwise).

Before we dive into all the possible shortcuts to organize and navigate blocks in Roam, it’s important to understand the difference between parent and child blocks.

A block can be a parent and a child at the same time. A block is a parent when it has blocks nested below, and it’s a child when it’s nested below a block. Here’s an example to illustrate:

Parent and child blocks

 

Function Windows shortcut macOS shortcut
Indent block. Nests the block beneath the block directly above, making it a child of that block. Tab Tab
Unindent block. Brings the block to the level of the parent block, removing it as a child of that block. Shift-Tab Shift-Tab
Move block up. Moves the block up one spot, staying on the same indentation level.

If the block is a child and directly below its parent block, moving the block up will move it to another parent.

Example of block moved up

Ctrl-Shift-Up Cmd-Shift-Up
Move block down. Moves the block down one spot, staying on the same indentation level.

If the block is a child and at the end of its parent’s section, moving the block down will move it to another parent.

Example of block moved up

Ctrl-Shift-Down Cmd-Shift-Down
New block. Pressing Enter/Return will create a new block directly below the previous block. Enter Enter
New line inside block. When you want to start a new line without creating a new block. Shift-Enter Shift-Enter
Undo the previous action. In Roam, undo applies to written text and block arrangements. Ctrl-z Cmd-z
Redo what you undid. In Roam, redo applies to written text and block arrangements. Ctrl-y Cmd-Shift-Z
Zoom in. Shows only the current block and its children. Alt-Right Cmd-. (Cmd-Period)
Zoom out to the parent block. Alt-Left Cmd-, (Cmd-comma)
Open internal link. Opens the internal link that’s under the cursor. Ctrl-o Ctrl-o 
Open link under cursor in sidebar (when editing a block so links are unclickable). Ctrl-Shift-o Ctrl-Shift-o
Collapse all child blocks of the current block. Ctrl-Up Cmd-Up
Expand all child blocks of the current block (if they are currently hidden). Ctrl-Down Cmd-Down
Select the block above where the cursor is placed. Shift-Up Shift-Up
Select the block below where the cursor is placed. Shift-Down Shift-Down
Select the block and its children. Pressing the Esc key will select the block the cursor is in and all of its children. Esc Esc
Select all blocks. Selects all the blocks on the page. Ctrl-Shift-a Cmd-Shift-a
Jump to the beginning of the block. Moves the cursor before the first letter of the block. Ctrl-Home Ctrl-a or Cmd-Left
Jump to the end of the block. Moves the cursor after the last letter of the block. Ctrl-End Ctrl-e or Cmd-Right
Select all text from cursor to end of block. Ctrl-Shift-End Cmd-Shift-Right
Swap the characters on either side of the cursor. (For example: “ab” becomes “ba”.) Ctrl-t
Show last editor of block. Shows the picture of the last editor at the beginning of the block. When you hover over the picture, you see the last edit date and time. Ctrl-c then Ctrl-s Ctrl-c then Ctrl-s

Version control

Versions allow you to create different versions of the same block. They are useful for trying out different wordings before settling on one.

Roam lets us create versions on a block/sentence level. Thus is useful to keep a draft relatively clean while enabling writers to play with different sentences.

Function Windows shortcut macOS shortcut
Add version. Creates an empty version. If a block has versions, a small blue circle with a number appears at the beginning of the block. The number indicates how many versions the block has. Ctrl-,  (Ctrl-comma) Ctrl-, (Ctrl-comma)
Cycle to newer version. Ctrl-Right Ctrl-Shift-. (Ctrl-Shift-Period)
Cycle to older version. Ctrl-Left Ctrl-Shift-, (Ctrl-Shift-Comma)
Expand all versions. All the versions appear in their own blocks. Ctrl-. (Ctrl-Period) Ctrl-. (Ctrl-Period)

 

Was this helpful?