Guide · 6 min read
Document editor
Write in Miton's rich-text editor — slash menu, tracked changes, outline panel, and word count.
- Product stage
- Pre-release development
- Last reviewed
- 2026-07-23
- Successful result
- The change is visible in the active project.
What this accomplishes
Write in Miton’s rich-text editor — slash menu, tracked changes, outline panel, and word count.
The Writer editor is built on TipTap (ProseMirror) with formatting, lists, tables, images, code blocks, tracked suggestions, citations, and footnotes.
Tracked changes are covered below. Citations are in citation system; export in export to PDF and DOCX.
Current availability
This page documents behaviour verified in Miton development builds. Miton is still pre-release and is not publicly downloadable; invited beta users will receive a signed desktop build with automatic updates.
Before you start
- A Miton development build, an active project and Writer open.
- A connected model; keep the source material or existing document in the same project.
The editor surface
The editor surface is a TipTap instance with the Miton extensions loaded. The editor supports:
- Block types — heading (1-6), paragraph, list (bullet, ordered, checklist), blockquote, code block, image, table, horizontal rule.
- Inline marks — bold, italic, underline, strikethrough, code, link.
- Improve suggestions — inline diff decorations for agent-proposed changes, reviewed against the original text before they are applied.
- Citations — footnotes, endnotes, bibliography.
- Footnotes and endnotes — numbered or symbol-prefixed.
- Tables — with row and column headers, configurable alignment, configurable borders.
- Images — inline or block, with caption, with alt text.
- Code blocks — with syntax highlighting for every supported language.
The editor supports the standard keyboard shortcuts (Cmd+B for bold, Cmd+I for italic, Cmd+K
for link, etc.). The full keyboard shortcut list is in the
reference keybindings.
The slash menu
The slash menu is a CoW panel that opens when the user types / at the start of a line. The slash
menu shows the block types the user can insert, plus a few custom actions:
- Heading 1-6 — insert a heading.
- Paragraph — insert a paragraph.
- List — insert a bullet, ordered, or checklist list.
- Blockquote — insert a blockquote.
- Code block — insert a code block.
- Image — insert an image.
- Table — insert a table.
- Horizontal rule — insert a horizontal rule.
- Citation — insert a citation (opens the citation picker).
- Footnote — insert a footnote.
The slash menu also shows a search input. The user can type to filter the menu; the user can
navigate the menu with the keyboard; the user can press Enter to insert the selected item.
The slash menu is per-session. The user’s recent insertions are surfaced at the top of the menu; the user’s favourites are pinned below.
The tracked-changes model
Agent-proposed improvements appear as inline diff decorations from ImproveDiffExtension. Review
the original and proposed text together before applying the edit. Use the editor’s normal undo
history immediately if an accepted edit is not right for the document.
The editorial principle is explained in Writing without surrendering your voice.
The outline panel
The outline panel is a CoW panel that shows the document’s structure as a tree. The outline is auto-generated from the document’s headings; the outline updates as the user types. The outline is clickable; clicking a heading in the outline jumps the editor to the heading.
The outline panel is in the right side of the editor. The user can close the outline without losing the navigation; the user can reopen the outline with the panel menu.
The outline panel also shows the document’s metadata:
- Word count — the total number of words.
- Character count — the total number of characters (with and without spaces).
- Reading time — the estimated reading time at 250 words per minute.
- Flesch reading ease — a readability score.
- Flesch-Kincaid grade level — a grade- level score.
The metadata is per-document; the metadata updates as the user types. The user can use the metadata to gauge the document’s length and readability.
The word / character / reading-time bar
The word / character / reading-time bar is a status bar at the bottom of the editor. The bar shows the document’s word count, character count, and reading time. The bar is the same metadata as the outline panel; the bar is a quick-glance view.
The bar is always visible. The bar updates in real time as the user types. The bar is a CoW panel; the user can hide the bar in Settings under “Editor → Status bar”.
The per-block selection
The per-block selection is a CoW panel that shows the selected block’s properties. The user clicks a block; the panel shows the block’s type, the block’s properties, the block’s metadata.
For example, the user clicks an image block; the panel shows the image’s source, the image’s alt text, the image’s caption, the image’s alignment. The user can edit the properties in the panel; the changes are applied to the document.
The per-block selection is per-block-type. The panel’s properties depend on the block’s type. A heading block shows the heading’s level, the heading’s text, the heading’s anchor (if any). A code block shows the code’s language, the code’s content, the code’s line numbers. A table block shows the table’s rows, the table’s columns, the table’s headers.
The keyboard shortcuts
The editor supports the standard keyboard shortcuts:
Cmd+B— toggle bold.Cmd+I— toggle italic.Cmd+U— toggle underline.Cmd+Shift+S— toggle strikethrough.Cmd+`— toggle inline code.Cmd+K— insert link.Cmd+Z— undo.Cmd+Shift+Z— redo.Cmd+A— select all.Cmd+X— cut.Cmd+C— copy.Cmd+V— paste.Cmd+1throughCmd+6— set the current block’s heading level.Cmd+0— set the current block to a paragraph.Cmd+Shift+7— toggle ordered list.Cmd+Shift+8— toggle bullet list.Cmd+Shift+9— toggle blockquote.Cmd+Alt+F— insert footnote.Cmd+Shift+C— open the citation picker.
The full keyboard shortcut list is in the reference keybindings.
What the editor does not cover
The editor does not cover:
- Real-time collaboration — the editor does not have built-in real-time collaboration. The user can use a third- party tool for real-time collaboration; the agent can sync the third-party tool’s state into the document. Planned for a follow-on sprint.
- Version control — the editor does not have built-in version control beyond the per-turn rewind. The user can use git for version control; the git integration is in the cross-cutting per-turn rewind page.
- Comments — the editor does not have built-in comments. The user can use the tracked-changes model for inline notes; the user can also use a third-party tool for comments.
The editor focuses on the rich-text features the user can implement with the existing primitives (TipTap, ProseMirror). The features that require additional runtime are documented above; the user can extend the editor with plugins.
What success looks like
The editor is a TipTap (ProseMirror) instance with the Miton extensions. The user gets the standard rich-text features (formatting, lists, tables, images, code blocks) plus Writer-specific tools primitives (improve suggestions, citations, footnotes).
The improve-suggestions model is the right shape for AI-assisted writing. The model proposes; the user disposes. The user’s voice stays intact.
The slash menu is the entry point for inserting blocks. The user types /; the user picks a block;
the block is inserted.
The outline panel and the word / character / reading-time bar are the document’s metadata. The metadata updates as the user types; the metadata is a quick-glance view of the document’s structure and length.
Common failures and recovery
- Confirm the intended document and project are active.
- Keep the original text when reviewing a model-proposed change.
- Check the model connection and retry only the failed action, not the complete document.
Related next action
Return to the Writer overview to choose the next document task.