---
url: /reference/editor-blocks.md
description: >-
  Every block the task editor offers, its Markdown shortcuts, and what happens
  when you paste text, images and files.
---

# Editor blocks and shortcuts

This page lists what the editor of task descriptions and
[comments](/guides/comment-and-mention) offers:

* [the blocks in its slash menu](#blocks-in-the-slash-menu), with the toolbar of each;
* [the text toolbar](#text-toolbar);
* [the keys and text shortcuts](#text-shortcuts) it understands;
* [what it does with what you paste](#paste-rules).

How to write a description is in [Write a task description](/guides/write-a-task-description).

## Blocks in the slash menu

Type `/` in the editor to open the menu, then a word of the block's name to narrow it. The menu
shows the blocks in six groups, in this order.

### Chips

| Menu entry | What it inserts | Shortcut | Guide |
|---|---|---|---|
| **Mention task** | another task as a chip, with its status; adds a **mentions** relation. Removing the mention removes the relation, unless the task is still mentioned elsewhere in the same task, such as in a comment | `#` | [Mentions](/guides/write-a-task-description#mention-a-person-or-a-task), [Link related tasks](/guides/link-related-tasks) |
| **Mention user** | a person's name as a chip; the person is [notified](/guides/set-up-notifications) and becomes one of the task's [watchers](/guides/assign-and-watch-tasks) | `@` | [Mentions](/guides/write-a-task-description#mention-a-person-or-a-task) |
| **Date…** | a date chip, with a calendar to pick the day | | |
| **Date: Today** | today's date as a chip | | |
| **Emoji** | an emoji, picked in **Search emoji…** | | |
| **Chip** | a blue label inside a line of text; you type its text | | |
| **Chip Warning** | a chip with the warning color and icon | | |
| **Chip Success** | a chip with the success color and icon | | |
| **Chip Note** | a chip with the note color and icon | | |

#### Chip toolbar

| Control | What it does |
|---|---|
| **Icon** | picks the chip's icon |
| color row, **More colors** | picks the chip's color |
| **Fill** | picks how the color fills the chip |

### Basic

| Menu entry | What it inserts | Markdown | Key | Guide |
|---|---|---|---|---|
| **Heading 1**, **Heading 2**, **Heading 3** | a large, medium or small section heading | | `Cmd+Alt+1`, `2`, `3` (`Ctrl+Alt+…`) | [Budget example](/guides/write-a-task-description#budget-example-a-description-in-four-blocks) |
| **Code block** | monospaced code, with a **Language** picker (**Auto** by default, or **Plain text**), **Copy code** and **Remove** | ` ``` ` and a space; ` ```js ` and a space sets the language | `Cmd+Alt+C` (`Ctrl+Alt+C`) | |
| **Quote** | a block quotation | `>` and a space | `Cmd+Shift+B` (`Ctrl+Shift+B`) | |
| **Divider** | a horizontal line | `---` | | |

A heading also comes from:

* `/heading` in the slash menu;
* **Block type** in the [text toolbar](#text-toolbar);
* its key.

::: warning A # starts a task mention
A `#` at the start of a word opens a task search, so `#` is not a heading shortcut.
:::

### Lists

| Menu entry | What it inserts | Markdown | Key | Guide |
|---|---|---|---|---|
| **Bulleted list** | bullet points | `-` and a space | `Cmd+Shift+8` (`Ctrl+Shift+8`) | |
| **Numbered list** | a list numbered in order | `1.` and a space | `Cmd+Shift+7` (`Ctrl+Shift+7`) | |
| **Checklist** | items with checkboxes; `Tab` nests an item | `[ ]` and a space | `Cmd+Shift+9` (`Ctrl+Shift+9`) | [Budget example](/guides/write-a-task-description#budget-example-a-description-in-four-blocks) |
| **Toggle** | a titled block that opens and closes | | | |

### Media

| Menu entry | What it inserts | Other ways | Guide |
|---|---|---|---|
| **Image** | an uploaded picture | paste or drop an image | [Pasted links and screenshots](/guides/write-a-task-description#pasted-links-and-screenshots) |
| **File** | an uploaded file, shown as a chip in the text | paste or drop a file | |

#### Image toolbar

| Control | What it does |
|---|---|
| **S**, **M**, **L**, **Full** | sets the width to 25%, 50%, 75% or 100% of the text column |
| **Align left**, **Align center**, **Align right** | places the image in the column |
| **Zoom** | opens the image in a larger view |
| **Copy image** | copies the image to the clipboard |
| **Remove** | removes the image from the text |

Dragging the image's left or right edge resizes it to any width; near 25%, 50%, 75% or 100% it
snaps to that size.

### Callouts

| Menu entry | What it inserts | Guide |
|---|---|---|
| **Banner** | a colored callout box of the **Info** type | |
| **Banner Warning** | a banner of the **Warning** type | [Budget example](/guides/write-a-task-description#budget-example-a-description-in-four-blocks) |
| **Banner Success** | a banner of the **Success** type | |
| **Banner Note** | a banner of the **Note** type | |

#### Banner toolbar

| Control | What it does |
|---|---|
| **Banner type** | switches the banner to **Info**, **Warning**, **Success** or **Note** |
| **Icon** | picks the banner's icon |
| color row, **More colors** | picks the banner's color |
| **Fill** | picks how the color fills the banner |

Any change in **Icon**, the color row or **Fill** makes **Banner type** read **Custom**.

### Layout

| Menu entry | What it inserts | Guide |
|---|---|---|
| **Table** | a 3×3 table with a header row | |
| **Columns: 2** | two columns side by side, up to four | |

#### Table toolbar

| Control | What it does |
|---|---|
| **Row** | adds a row below |
| **Column** | adds a column to the right |
| **Cell color** | colors the cell, or **No color** |
| **Table options** → **Add row above** | adds a row above |
| **Table options** → **Delete row** | deletes the row |
| **Table options** → **Add column left** | adds a column to the left |
| **Table options** → **Delete column** | deletes the column |
| **Table options** → **Header row** | turns the header row on or off |
| **Table options** → **Delete table** | deletes the whole table |

`Tab` moves to the next cell.

#### Columns toolbar

| Control | What it does |
|---|---|
| **Column** | adds a column to the right |
| **Columns options** → **Add column left** | adds a column to the left |
| **Columns options** → **Delete column** | deletes the column with its text |
| **Columns options** → **Remove columns, keep text** | removes the columns and keeps their text, one column under another |
| **Columns options** → **Delete columns** | deletes the columns and all their text |

## Text toolbar

While the cursor is in text, the toolbar shows:

| Control | What it does |
|---|---|
| **Block type** | turns the line into **Normal text**, **Heading 1**, **Heading 2**, **Heading 3**, **Quote** or **Code block** |
| **Bold**, **Italic**, **Strikethrough**, **Inline code** | styles the selected text |
| **Toggle link** | opens **Paste or type a link**: **Apply** links the selected text, **Remove** unlinks it |
| **Text color** | colors the selected text, or **Default color** |
| **Highlight** | highlights the selected text, or **No highlight** |
| **Clear formatting** | removes the styles from the selected text |
| **Lists** | turns the line into a **Bulleted list**, **Numbered list** or **Checklist** |

When the toolbar is narrow, some controls move into **More formatting**.

## Text shortcuts

Type the marks around a word; the style applies when you type the closing mark.

| Type | You get | Key |
|---|---|---|
| `**text**` or `__text__` | **bold** | `Cmd+B` (`Ctrl+B`) |
| `*text*` or `_text_` | *italic* | `Cmd+I` (`Ctrl+I`) |
| `~~text~~` | ~~strikethrough~~ | `Cmd+Shift+S` (`Ctrl+Shift+S`) |
| `` `text` `` | inline `code` | `Cmd+E` (`Ctrl+E`) |
| `==text==` | highlighted text | `Cmd+Shift+H` (`Ctrl+Shift+H`) |
| | underlined text | `Cmd+U` (`Ctrl+U`) |

A web address you type becomes a link when you finish it with a space.

## Editor keys

| Key | What it does |
|---|---|
| `E` | **Focus description**: puts the cursor in the open task's description. The default key; change it in **User settings** → **Hot keys** |
| `Cmd+Shift+V` (`Ctrl+Shift+V`) | **Paste as plain text**: the text only, with no formatting. The default key; change it in **Hot keys** |
| `Tab` | in a list, nests the item; in a table, moves to the next cell; in plain text, inserts a tab |

Every other key is in [Keyboard shortcuts](/reference/keyboard-shortcuts).

## Paste rules

| You paste | You get | Guide |
|---|---|---|
| formatted text from a web page or a document | the same headings, lists and links | |
| plain text written in [Markdown](https://commonmark.org), for example from a `.md` file | formatted blocks (example below) | |
| anything, with **Paste as plain text** | the text only, with no formatting | |
| one web link on its own, with nothing selected | a link preview: a chip with the page's title and icon, or the site's address if the title can't be read | [Pasted links](/guides/write-a-task-description#pasted-links-and-screenshots) |
| a link to a Hule task, on its own | a task mention chip; a task in another workspace gets no relation | [Link related tasks](/guides/link-related-tasks) |
| a link, over selected text | the text becomes a link | |
| an image, such as a screenshot | an **Image** block, uploaded to the workspace | [Pasted links](/guides/write-a-task-description#pasted-links-and-screenshots) |
| another file | a **File** chip, uploaded to the workspace | |

::: warning Upload fails: Workspace storage limit reached
The [workspace](/concepts/hule-model) has used its storage. Delete files the workspace no longer
needs from tasks and comments; the space comes back about a day later. **Workspace settings** →
**General** → **Storage** shows what is used (you need **Manage general settings**;
[Limits](/reference/limits)).
:::

This Markdown, pasted as plain text:

```text
## Budget

- Rent
- Office

**Due Friday**
```

becomes:

| Markdown | Block |
|---|---|
| `## Budget` | **Heading 2** "Budget" |
| `- Rent`, `- Office` | a **Bulleted list** of two items |
| `**Due Friday**` | "Due Friday" in bold |

### Link preview menu

Right-click a link preview, or use its **Link options** button:

| Item | What it does |
|---|---|
| **Open link** | opens the page |
| **Copy link address** | copies the address |
| **Display as URL** | turns the preview back into the plain address, as a link |
| **Delete** | removes the preview |
