Skip to content

v2.8.2

Choose a tag to compare

@github-actions github-actions released this 27 Sep 10:45
· 76 commits to main since this release

What's Changed

  • Panels: VS Code-style tabs, movable tabs and cards, cards organised by job by @thethinkmachine in #99
  • perf(canvas): fix dropped frames when dragging states and zooming by @thethinkmachine in #100
  • feat(trace): draw each step as a row, with its parts and its verdict picked out by @thethinkmachine in #101

Highlights

Panels organised by job, with a new Run tab (#99) — the sidebar cards are now grouped into three tabs, one per job. Machine (left) holds what you are building: the exercise, parameters, alphabets, states, transitions and blocks. Analyze (right) looks at the machine over all its inputs: Language, Batch Test and Complexity. The new Run tab follows one input step by step: Simulate, Trace, Computation Tree and Space-time. Anything that runs a word from somewhere else (Language's trace link, a Batch row, Complexity's worst case, exercise and machine-card test words) switches to Run first.

Move tabs and cards wherever you want them (#99) — drag a tab to reorder it or onto the other panel, and drag a card onto a tab or into the other panel's stack. Escape undoes a move to the other panel. Right-click (or Shift+F10) a tab or a card header for the same moves and a reset. A panel with no tabs left is hidden, and dragging a tab to that edge of the canvas brings it back. The tab strips now look like VS Code's: compact labels with an underline on the selected tab, shrinking to icons when space runs out. Your layout is remembered, and existing layouts keep working.

A readable trace (#101) — each step in the Trace card is now a row: symbols are drawn as chips, the arrow and the state it lands in are marked, and a verdict (ACCEPT, REJECT, LOOP, NO VERDICT) is a badge instead of text that could wrap onto a line of its own. A transducer's output gets its own line. Click a row to jump the player to that step. Selecting text to copy still works.

Smoother dragging and zooming (#100) — dragging a state no longer rebuilds every sticky note's text on every frame, and panning or zooming no longer restyles the whole diagram on every frame. On the MTM example on a 144 Hz display, the slowest drag frames went from 14–21 ms to 7 ms, and zoom's per-frame style work from about 9 ms to 2 ms. This affected the website as well as the desktop app; it was more noticeable in the desktop app on high-refresh displays.

Full Changelog: v2.8.1...v2.8.2