Skip to content

Appearance

From 0.4.0, Settings → Appearance is a first-class control surface for how Canoryn looks and how code is read. Choices apply across the Chat workbench, Review, File tabs, chat code blocks, and artifacts — not as one-off per-window skins.

Appearance is device-local: fonts and display preferences belong to this Mac. They are not account or chat-session state.

Three independent choices

Keep these separate in your head — Canoryn does not force them to collapse into one “theme”:

ChoiceWhat it controls
Appearance modeLight, Dark, or System (follows macOS)
MoodWorkbench character, accent, and surface style (native vs expressive)
Syntax themeColors of code tokens only

Optional harmonization can pick a suitable syntax theme for the current mood without permanently coupling the two catalogs.

Moods

Native moods (for example Snow / Slate) keep window and content canvases on semantic macOS surfaces. Expressive moods may use gradient / particle chrome. Accent is for selection, focus, and actions — ordinary cards stay on semantic backgrounds.

Syntax themes

Built-in palettes (each with Light and Dark variants):

  • Canoryn Default
  • GitHub
  • Xcode
  • VS Code
  • Dracula
  • Nord
  • Monokai Pro
  • Catppuccin
  • Tokyo Night
  • Solarized

The same resolved palette drives File, Review (unified and split), chat markdown code fences, progress diffs, and the Settings live preview. Foregrounds are nudged only as needed to keep a readable contrast floor on opaque and translucent canvases.

Typography

Two contracts:

  1. Interface fonts — workbench / reading surfaces via semantic text roles. Native macOS menus and controls keep the system hierarchy.
  2. Code fonts — family, point size, and line-height for AppKit editors, gutters, and SwiftUI code blocks together so baselines do not drift.

You can use system fonts or pick from installed families. Changing size should not force a full re-tokenize of every open buffer.

Canoryn follows native macOS font rasterization. There is no supported app-wide “font smoothing” override.

Transparency

Enhanced Transparency can make File / Review editor canvases inherit the shared workbench material instead of painting a solid syntax background.

macOS Reduce Transparency always wins: surfaces fall back to opaque semantic backgrounds. Accessibility preferences outrank app toggles.

Live updates

Changing appearance should not blow away your workbench state:

  • open Chat sessions keep identity,
  • editor selection, focus, and scroll are preserved,
  • syntax caches invalidate only when the resolved theme or color scheme actually changes.

Where to configure

  1. Open Settings.
  2. Choose Appearance.
  3. Adjust mode, mood, syntax theme, typography, and transparency.
  4. Use the live preview — it shares the same contract as real File / Review surfaces.