βοΈ EditorΒΆ
TINOβs editor is built on CodeMirror 6 and offers Typst-aware syntax highlighting, structural indentation, search and navigation, code folding, and optional Vim keybindings.
TabsΒΆ
Every opened file appears as a tab above the editor. Click a tab to switch to it, or click the Γ button on a tab to close it. Use Close all tabs to clear them all at once. Tabs are persisted across page reloads.
Syntax highlightingΒΆ
.typ files are highlighted with a Typst-aware grammar: comments, strings,
keywords (#let, #show, #import, β¦), function calls, headings,
strong and emphasis, math, labels and references, numbers, and punctuation each
get their own colour. The palette is drawn from the corporate-design colours
and adapts to the active theme (dark and light).
Formatting toolbarΒΆ
The toolbar above the editor provides common Typst formatting actions. For the full syntax reference, see the Typst documentation.
Action |
Typst syntax |
Description |
|---|---|---|
Bold |
|
Wrap the selection in asterisks. |
Italic |
|
Wrap the selection in underscores. |
Heading |
|
Cycle the current lineβs heading level ( |
Bullet list |
|
Start a bullet list on the current line. |
Numbered list |
|
Start a numbered list on the current line. |
Link |
|
Insert a link function call. |
Image |
|
Insert an image function call. |
Table |
|
Insert a 2Γ2 table skeleton. |
Inline code |
|
Wrap the selection in backticks. |
Code block |
|
Wrap the selection in triple backticks. |
Math |
|
Wrap the selection in dollar signs. |
IndentationΒΆ
The editor indents structurally. Pressing Enter keeps the surrounding
indentation, adds a level after an opening bracket ((, [ or {), and
a line that begins with a closing bracket snaps back to match its opener. Plain
prose is left at its current indentation.
Lists continue automatically: pressing Enter on a list item starts the next item (numbered markers increment), while pressing Enter on an empty item ends the list.
Keyboard shortcutsΒΆ
Shortcut |
Action |
|---|---|
Ctrl+S / βS |
Save the current file. |
Ctrl+Z / Ctrl+Y |
Undo / redo. |
Tab / Shift+Tab |
Indent / dedent. |
Enter |
New line with structural indentation; continue a list. |
Ctrl+F / βF |
Open the search panel (find & replace, with match-case / regexp / by-word options). |
F3 / Shift+F3 |
Find next / previous. |
Ctrl+G / βG |
Go to line. |
Ctrl+D / βD |
Select the next occurrence of the selection (multi-cursor). |
Folding and bracketsΒΆ
Collapse a {β¦} or [β¦] block from the fold gutter beside the line
numbers, and click again to expand it. When the cursor sits next to a bracket,
its matching partner is highlighted.
Vim modeΒΆ
Click Vim in the toolbar to enable Vim keybindings. A status bar at the
bottom of the editor shows the current mode and : command line, and the
caret becomes a block cursor in normal mode. The setting is remembered per
browser β click Vim again to return to the default editing mode.
The usual motions and operators apply; u / Ctrl+R undo and redo, and
:w saves the file.
SavingΒΆ
Files are auto-saved a short moment after you stop typing β by default
250 ms, configurable via
TINO_SAVE_DEBOUNCE_MS.
You can also save manually with the Save button, Ctrl+S, or :w in
Vim mode. Unsaved files are marked with a dot on their tab.
PreviewΒΆ
The right-hand panel shows an SVG preview of the current .typ file.
The preview is re-rendered automatically after each save.
Use the Zoom in / Zoom out buttons (or the displayed percentage) to adjust the preview scale.