Suzuri
Reference

Settings

Every setting Suzuri adds on top of Zed's, with its default.

Suzuri uses Zed's settings format, in its own files:

ScopeFile
User~/.config/suzuri/settings.json (Windows: %APPDATA%\Suzuri\settings.json)
Project.zed/settings.json in the project root, shared with Zed

Open the user file with Suzuri → Settings, or zed: open settings from the command palette. Everything in Zed's settings reference applies here too. What follows is what Suzuri adds.

Importing Zed settings

Suzuri and Zed keep separate settings, so changing one never changes the other. To start from your Zed setup, click Zed under Import Settings on the welcome page, or run zed: import zed settings from the command palette. It copies Zed's settings.json, keymap.json, tasks.json, themes, and snippets into Suzuri's folder. Files it replaces are kept with a .before-zed-import suffix. Extensions are not copied; install the ones you want from the extensions page.

Before version 0.6.0, Suzuri shared Zed's folders. The first launch of a newer version copies that state (settings, keymap, themes, open windows, agent threads, extensions) into Suzuri's own folders and leaves Zed's untouched.

API keys and sign-in are not shared either. Suzuri keeps them in the system keychain under its own names, and importing Zed's settings does not bring Zed's keys, so enter them once in Suzuri's agent settings. Versions before 0.6.0 kept Suzuri's keys in a plain-text file, ~/.config/zed/development_credentials; a newer version moves them into the keychain on first launch. That old file is no longer read, and you can delete it once you no longer need to go back to an older version.

To keep sharing one settings folder with Zed instead, replace Suzuri's with a link to Zed's while Suzuri is closed:

mv ~/.config/suzuri ~/.config/suzuri.bak
ln -s ~/.config/zed ~/.config/suzuri

markdown_live_preview

Obsidian-style live preview for markdown buffers.

settings.json
{
  "markdown_live_preview": {
    "enabled": true,
    "heading_styles": {
      "h1": { "font_size": 1.75, "font_weight": 600 },
      "h2": { "font_size": 1.4, "font_weight": 600 },
      "h3": { "font_size": 1.2, "font_weight": 600 },
      "h4": { "font_size": 1.0, "font_weight": 600 },
      "h5": { "font_size": 0.875, "font_weight": 600 },
      "h6": { "font_size": 0.85, "font_weight": 600 }
    },
    "attachments_folder": "attachments",
    "word_count": true
  }
}
KeyDefaultWhat it does
enabledtrueRender markdown inline in the editor.
heading_styles.h1–h6see aboveHeading typography. font_size multiplies the editor's base font size; font_weight is a CSS value from 100 to 900.
attachments_folder"attachments"Folder for dropped and pasted attachments, relative to the note's folder. "" stores them beside the note.
word_counttrueShow a word count in the status bar for markdown notes. Frontmatter, code, math, cite keys and the reference list are not counted.

citations

The vault's bibliography and its Zotero link.

settings.json
{
  "citations": {
    "library": "refs/refs.bib",
    "zotero_url": "http://127.0.0.1:23119"
  }
}
KeyDefaultWhat it does
library"refs/refs.bib"The BibLaTeX file every inserted citation is recorded in, relative to the project root. Pandoc, LaTeX, Typst, and Suzuri's own index all read it directly.
zotero_url"http://127.0.0.1:23119"Where Zotero's local API listens. Zotero must be running with Settings → Advanced → "Allow other applications on this computer to communicate with Zotero" ticked.

markdown_export

How a note becomes a PDF, Word document, HTML page, LaTeX source or EPUB. See Export.

settings.json
{
  "markdown_export": {
    "pdf_engine": "typst"
  }
}
KeyDefaultWhat it does
pdf_engine"typst"The program Pandoc typesets PDFs with. Typst is provisioned by Suzuri, so the default needs no TeX installation. "xelatex", "lualatex", "pdflatex" or "context" use a TeX Live you already have, for a template that pins one.

The bibliography an export cites from is citations.library, above.

typeset_preview

Which engine compiles .tex files for live preview. See Choosing a LaTeX Engine for the full rundown.

settings.json
{
  "typeset_preview": {
    "latex_engine": "auto"
  }
}
ValueMeaning
"auto"latexmk from PATH, falling back to Suzuri's managed TeX Live. Default.
"latexmk"Drive latexmk, which picks the engine the document asks for.
"pdflatex", "lualatex", "xelatex"A specific engine.
{ "external": { "command": "tectonic", "arguments": [] } }Any other program, run in the document's directory with the file name appended.

Zed settings worth knowing here

These are Zed's, but Suzuri changes their defaults or leans on them.

settings.json
{
  "autosave": { "after_delay": { "milliseconds": 1000 } },
  "auto_update": true
}
KeySuzuri defaultWhy
autosave{ "after_delay": { "milliseconds": 1000 } }Notes are terminal artifacts with no build watchers, and agents read the vault from disk, so the buffer and the file shouldn't diverge. It is also what drives the typeset preview loop. Set "off" to save, and recompile previews, only when you press Cmd+S.
auto_updatetrueBackground updates from Suzuri's GitHub releases. See Updating.

On this page