shiki (私記)
← Full changelog

shiki v0.8.4

Released 2026-07-27.

Share: X Bluesky Reddit Hacker News WhatsApp Telegram Email
shiki v0.8.4, running in a terminal

Added

  • Settings screen (leader+s) — a read-only, near-full-screen summary of the current config (general/theme/git/per-notebook overrides/snippets), grouped by section, scrollable with j/k/PageUp/PageDown/Home/End. i/E jump straight to editing config.toml itself (inline or externally, same convention as editing a note); on save the config is re-parsed, applied immediately (theme, keybindings, favorite editor — no restart), and an invalid edit is reported without being written or applied, keeping the previous config running.
  • A fresh install's config.toml is now fully commented, section by section — generated from the real Config::default() values (never hand-duplicated, so a comment can go stale but a default value never can) with prose explaining each table.
  • 7 more built-in /-menu commands, so more of it is useful out of the box with zero config: bullet/numbered list items, link, image, note/warning callouts, and a collapsible details section — alongside the existing headers/code/math/table/checklist/quote/divider/ date/tags/frontmatter, for 19 built-ins total.
  • shiki doctor now flags configuration mistakes that used to fail silently: two keybindings in the same scope bound to the same key (only one ever actually works), a keybinding that collides with leader or quit (always loses to them, so it can never trigger), a keybinding string that doesn't parse to any real key, and two /-menu snippet triggers that collide case-insensitively (e.g. [snippets.H1] next to [snippets.h1]).
  • 3 more built-in themes: Dracula, One Dark, and Monokai — 15 total now. Palettes taken from each project's own official/canonical values, same standard as every other included theme.

Fixed

  • config.toml tables missing an individual key (e.g. [general] with only default_notebook set) used to fail parsing the *entire* config instead of falling back to that one field's default — now every field across every table has its own default, so a partial hand-edit (more likely now that Settings invites editing this file directly) never takes down the whole app.
  • Two /-menu snippet triggers colliding case-insensitively ([snippets.H1] and [snippets.h1] in the same config) used to resolve to whichever one HashMap iteration happened to visit last — different, unpredictably, between runs of the exact same config. Now sorted deterministically, so the outcome (while still worth fixing — shiki doctor reports it) is at least reproducible.
  • PREVIEW's Markdown renderer never actually rendered bold/*italic*/` code (the asterisks/backticks showed up literally), tables, $$math$$ blocks, <details>/<summary>, ordered lists, horizontal rules, or text/!alt links/images — so several of the /-menu's own blocks (table, math, note/warning callouts, details, link, image) looked broken the moment you left edit mode, since a callout's > Warning: ... showed the bold markers raw instead of bolding the text. All of the above are now recognized and styled; <details>` is shown fully expanded (a static preview pane has no fold state to toggle against) rather than actually collapsing.
← v0.8.3 All releases v0.8.5 →