Text
A text block holds as many lines as you like. Type anywhere to start one, press Enter for a new line, and use markdown to format it: headings, bullet and numbered lists, code, bold and italic all live inside one block.
Editing
Section titled “Editing”- Start typing with nothing selected to add a text block at the mouse. With a shape selected, the text goes inside it; with an icon selected, it becomes the icon’s caption.
- Double-click a text block to edit it with everything selected, or select it and press Enter to place the caret at the end.
- Enter starts a new line in the same block. Blocks grow as you type and push their neighbours aside.
- Escape (Escape) or a click elsewhere on the canvas finishes editing. A text left empty is removed, and Backspace in an empty text removes it straight away.
- Tab and Shift+Tab nest and unnest list items. The arrow keys carry on into the neighbouring block when the caret is already at the edge of the text.
Formatting
Section titled “Formatting”Formatting is markdown, and the editor applies it as you type: **bold** turns bold the moment
you close it, and - at the start of a line becomes a bullet. The examples below show the
markdown on the left and the block it produces on the right.
The full syntax:
| You type | You get |
|---|---|
**text** or __text__ |
bold |
*text* or _text_ |
italic |
`text` |
code in a monospace face |
# , ## , ### at the start of a line |
a heading, largest to smallest |
- , * or + at the start of a line |
a bullet point; two more spaces nest it |
1. at the start of a line |
a numbered item; the numbers count on from the first |
a line of ``` before and after |
a code block, kept exactly as written |
a backslash before *, _, `, # or - |
that character itself |
Headings scale from the block’s font size, and bold uses the family’s bold weight. Everything else about the text — its family, size, colour, letter spacing and alignment — is set for the whole block in the inspector.
Wrapping
Section titled “Wrapping”Each paragraph and list item wraps on its own at the block’s wrap width. Lines you break yourself with Enter always stay separate lines.
Text in files and for agents
Section titled “Text in files and for agents”The markdown is what a .nifdi.svg file stores as the block’s words, and what the
MCP tools read and write with get_diagram, set_text and insert. An agent
that writes - nginx\n- node into a <text> element gets the same two-item list a person gets by
typing it.