Editor Toolbar Reference

The toolbar is the second row of the document header, and it is the only way to produce formatting in Leed. There are no markdown input rules: typing ## gives you the characters ##, and typing **bold** gives you asterisks. Every heading, list, alert and table on your site started as a click here or as the keyboard shortcut for that click. On a read-only page the toolbar renders nothing at all — row 2 is empty rather than grayed out.

This page lists every control in the order it appears, with the shortcut that fires it and the exact Leed Markdown it writes into your page.

Reading the toolbar left to right

The controls sit in one rounded strip, in seven groups separated by thin dividers, with the mode switch pushed to the far right end.

The editor toolbar at full width, with every control visible
  1. History — Undo · Redo
  2. Block type — the paragraph-and-headings selector
  3. Inline marks — Bold · Italic · Strikethrough · Code · Highlight · Keystroke
  4. Inline objects — Link · Subscript · Superscript · Inline Math
  5. Media — Insert Asset · YouTube Video
  6. Blocks — Code Block · Mermaid Diagram · Math Block · Alert · Icon, then Tab Group · Iframe · Collapsible Block · Form · Horizontal Rule
  7. Structure — Insert Table · Table Operations, then Blockquote · Task List · Bullet List · Ordered List

At the right end, outside the groups, is the mode switch: Editing, Suggesting or Viewing. It is the one control here that changes how your edits are recorded rather than what they produce — see suggesting mode and tracked changes.

The block-type selector

The wide button at the left of the strip shows the current block’s type and switches it. It offers exactly six choices: Paragraph, and Heading 2 through Heading 6.

The block-type dropdown open, listing Paragraph and Heading 2 to 6

Heading 1 is not offered, and that is deliberate. Your page’s title is the H1 on the published page, supplied by the layout from the page’s metadata. A second H1 in the body would compete with it for search engines and for screen-reader users, so the top level of your own content is Heading 2 — which is why the markdown Leed writes for your first section is ## and never #.

Every control

Each row gives the button’s tooltip, its shortcut, the markup it writes, and whether a page type can switch it off. A gate name in the fourth column is a key in the page type’s formatting options; always available means no page type can remove it.

Text and inline marks

ControlShortcutProducesPage-type gateMore detail
UndoCtrl + Z—always available—
RedoCtrl + Shift + Z (also Ctrl + Y on Windows and Linux)—always available—
Block-type selectorCtrl + Shift + 0 for Paragraph, Ctrl + Shift + 2 … 6 for headings## … ######always availableBasic formatting
BoldCtrl + B**bold**always availableBasic formatting
ItalicCtrl + I*italic*always availableBasic formatting
StrikethroughCtrl + ;~~struck~~always availableBasic formatting
CodeCtrl + ` or Ctrl + '`code`always availableBasic formatting
HighlightCtrl + Shift + H==marked==always availableBasic formatting
KeystrokeCtrl + Shift + K[[Ctrl]]always availableBasic formatting
SubscriptCtrl + ,H~2~Oalways availableBasic formatting
SuperscriptCtrl + .E=mc^2^always availableBasic formatting
Inline Math—``math E = mc^2``always availableMath

Highlight is worth one caution: the editor lets you pick a color for a highlight, and the format does not carry one. Every highlight publishes as the site’s default <mark>, so a color you choose here is an editing convenience only.

ControlShortcutProducesPage-type gateMore detail
LinkCtrl + K[text](url), or [text](pageid:<id>) for one of your own pagesalways availableLinks and the link picker
Insert Asset—![alt](src) for an image, {% cloudflare %} for a video, {% audio %} for audioalways availableInserting media and embeds
YouTube Video—{% youtube %}always availableInserting media and embeds
Icon—{% icon %}iconsEmbeds and icons
Iframe—{% iframe %}iframeInserting media and embeds
Form—{% form %}hidden on posts page typesPlacing a form on a page

The Asset button opens your asset library rather than a file field, and what it inserts depends on what you pick — an image becomes an image, a video becomes a Cloudflare video player, an audio file becomes an audio element. The Link button opens a three-tab picker whose most useful behavior is invisible: paste one of your own URLs into it and it converts to a durable page link.

Insert: blocks and containers

ControlShortcutProducesPage-type gateMore detail
Code BlockCtrl + Shift + {a fenced block, ```pythoncodeBlockCode blocks
Mermaid Diagram—```mermaiddiagramsDiagrams
Math Block—```mathmathBlockMath
Alert—:::info … :::alertAlerts
Tab Group—===tabs-container … ===tabGroupTabs
Collapsible Block—+++> Title … +++>, or ++++ Title … ++++ once you set it to start collapsedcollapsibleBlockCollapsible sections
BlockquoteCtrl + Shift + >> quotedalways availableBasic formatting
Horizontal RuleCtrl + Shift + _---always available—

The Mermaid and Math blocks are the same block as Code Block with the language fixed, which is why all three behave identically once inserted. The Tab Group button is disabled while your cursor is already inside a tab group — tab groups cannot be nested — and on a workspace that has predefined tab groups configured it becomes a dropdown offering those groups as well as a plain custom one.

Structure: lists, tables and rules

ControlShortcutProducesPage-type gateMore detail
Insert Table—a GFM pipe table with a header rowtableTables
Table Operations—edits the table in place: insert row above/below, insert column left/right, merge cells, split cell, delete row/column/tabletableBlock types and block settings
Task ListCtrl + Shift + 7- [ ] itemalways availableLists and task lists
Bullet ListCtrl + Shift + 8- itemalways availableLists and task lists
Ordered ListCtrl + Shift + 91. itemalways availableLists and task lists

The Table Operations menu appears only when your cursor is in a table. It has no alignment control, and none is missing by accident: column alignment is not part of what the editor stores, so a table you build here publishes with its columns in the site’s default alignment. Fidelity and unsupported syntax collects that and the handful of other things markdown can express and the editor cannot.

The More menu

The toolbar collapses by the width of the toolbar itself, not the width of your window — so a wide right rail can collapse it on a screen where a narrow one would not. Groups drop out from the right as space runs short, and every one of them reappears in a kebab menu tooltipped More at the end of the strip. Nothing is ever removed; it moves.

Below this toolbar widthThis group moves into More
1330 pxBlockquote, Task List, Bullet List, Ordered List
1270 pxInsert Table, Table Operations
1160 pxTab Group, Iframe, Collapsible Block, Form, Horizontal Rule
1000 pxCode Block, Mermaid, Math Block, Alert, Icon
800 pxInsert Asset, YouTube Video

Below 1380 px the mode switch drops its text label and keeps its icon. History, the block-type selector, the inline marks and the inline objects never collapse.

The toolbar at a narrow width with the More menu open

Controls that are missing

A control that is absent from More as well is not a bug and not a plan limit — it is a setting on the page’s type. Nine block features can be switched off per page type: code blocks, diagrams, math blocks, alerts, icons, tab groups, iframes, collapsible blocks and tables. The Form button follows a separate rule and is hidden outright on posts-type page types.

Keys that are not buttons

Some of the editor’s most useful behavior has no control at all.

KeysWhat they do
Tab / Shift + TabIndent or outdent a list item. Inside a table, move to the next or previous cell
Alt + ↑ / Alt + ↓Join the current block with the one before or after it
Ctrl + [Lift the current block out of the container it is in — an alert, a collapsible, a tab panel
EscapeSelect the parent block instead of the text inside it
Ctrl + Enter or Shift + EnterInsert a hard line break. Inside an alert, collapsible, tab group or code block, this is also how you get a new paragraph out below it
Ctrl + JOpen the AI assistant for the current block
Ctrl + Shift + SShow page statistics
Ctrl + Shift + ? or F1Open the Keyboard shortcuts dialog

The shortcuts dialog is generated from the editor’s own key registry rather than hand-maintained, grouped into Editor, Formatting, Blocks, Lists and Navigation, so it is the authoritative list for whatever version you are running. It covers editor keys only; the shortcuts that work anywhere in the CMS are on keyboard shortcuts.

There is no AI button on this toolbar. The assistant is reached with Ctrl + J, from the hover pill on the right of any block, or from the Assistant tab in the right rail — all three are described on AI help in the editor.

ESC