shiki (私記)
← Full changelog

shiki v0.7.0

Released 2026-07-23.

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

Added

  • Tags modal (leader+T) is now real, two-level navigation instead of a read-only list: j/k browse tags, Enter/l drills into the notes carrying one, Enter/l there jumps straight to it, h/Esc/Backspace goes back a level.
  • git.remote_template config option: auto-configures a notebook's remote on creation (plain name, not a pasted URL) from a template like "git@git.example.com:notes/{notebook}.git" — the remote still has to already exist on that server; this doesn't create one via any hosting provider's API. Doesn't push immediately (nothing to push yet on an empty notebook); the existing auto_push/auto_sync machinery picks it up naturally.
  • Persistent, on-disk log history (~/.config/shiki/shiki.log) — the logs modal (leader+l) now survives restarts instead of resetting every session, and a new x (behind a confirmation) clears both the in-memory and on-disk history.
  • shiki theme create [--from <name>]: scaffolds all 19 theme color slots into config.toml's [theme.overrides] at once, copied from a real palette, instead of hand-typing hex codes with no example to copy from.
  • First unit tests in shiki-core (git::tests) and shiki-config (config::tests).

Changed

  • All 19 of a theme's color slots are now overridable in [theme.overrides], not just 5 (bg/fg/accent/selection/border) — error/warning/success/tag/link/cursor and 8 others had no override path at all before.
  • Git remote URLs are redacted (user:token@ → ***@) before they ever reach a status message — closes a real exposure: a URL with embedded credentials (common for GitHub/GitLab personal access tokens) used to land in plaintext in the logs modal and clipboard, and would now also have been persisted to disk.

Fixed

  • The theme picker's Enter and shiki theme set no longer wipe custom color overrides when re-confirming/re-setting the theme that was already active with no actual change — previously they reset [theme.overrides] unconditionally on every confirm, silently discarding any hand-written custom colors even when nothing was actually being switched.
← v0.6.0 All releases v0.8.0 →