Skip to content

keynot 0.3.0

Choose a tag to compare

@devjgm devjgm released this 08 Jul 17:57

Added

  • Background gradients: colors.background accepts
    { gradient: ['#hex', ...], direction: vertical | horizontal | radial }
    in addition to a solid color. The dark theme's default background is
    now a slate gradient (#2d2d30 down to #181818).
  • Code blocks render as small terminal windows: a rounded border with
    traffic-light dots, the language name in the bottom edge, and a panel
    darker than any background. code_style: plain restores the bare
    panel; the frame color is themeable as colors.code_border.
  • The speaker line highlight is column-aware: down/up walk lines within
    a column, left/right move between columns, and moving past the
    slide's edge changes slides (so single-column decks behave exactly as
    before).
  • keynot check errors on unknown frontmatter keys, listing each with
    its line number and the valid keys; keynot play ignores them so a
    deck written for a newer keynot still opens on an older one.
  • Error reports are colorized on a terminal (respecting NO_COLOR);
    piped output stays plain.
  • FORMAT.md documents every frontmatter default, enforced by tests that
    fail when the docs drift from the code.

Changed

  • The dark theme's code panel darkened to #141414 so it stands out
    against the gradient background.

Fixed

  • Reloading with r no longer freezes the show while URL images
    re-fetch; decodes happen on a worker thread and the network is never
    touched from the draw path.
  • A highlight begun during a slide transition no longer lands on an
    arbitrary line of the incoming slide.