Reference

Options

Everything comark() accepts.
interface ComarkOptions {
  plugins?: EditorPlugin[]              // later ones replace same-name earlier ones
  registerDefaultPlugins?: boolean      // alert, attributes, components, frontmatter, html, task-list (default true)
  components?: ComponentDef[]           // the component manifest
  frontmatterSchema?: JSONSchema        // keys and values inside the frontmatter
  data?: unknown                        // the `data` binding root: a sample value…
  dataSchema?: JSONSchema               // …or a schema
  meta?: unknown
  metaSchema?: JSONSchema
  links?: LinkTarget[] | ((typed: string) => LinkTarget[] | Promise<LinkTarget[]>)  // pages and assets
  codeLanguages?: LanguageDescription[] // fenced code highlighting and fence-language completion
  completion?: {
    slash?: boolean                     // `/` opens the block menu (true)
    chain?: boolean                     // reopen after a pick with a next step (true)
    drill?: boolean                     // → and ← (true)
    info?: 'auto' | false               // docs panel ('auto')
    maxItems?: number                   // rendered options (80)
    icons?: boolean                     // (true)
  }
  lint?: boolean                        // (true)
  hover?: boolean                       // (true)
  keymap?: boolean                      // (true)
  theme?: boolean                       // (true)
}

interface LinkTarget { url: string, title?: string, kind?: 'page' | 'asset' }

Keymap

KeyCommand
Mod+B / Ibold / italic
Mod+Shift+C / Xcode / strikethrough
Mod+Klink
Mod+Alt+0–6heading level (0: paragraph)
Mod+Shift+U / O / Tbullet / ordered / task list
Mod+Entercheck or uncheck a task
Mod+Shift+Qquote
Mod+Alt+Falign the table
Enter at the end of ::name…body line and closer
* _ ` ~ over a selectionwrap it

Plus the menu keys.

Copyright © 2026