Skip to content

Calyx v0.49.0

Choose a tag to compare

@yuuichieguchi yuuichieguchi released this 19 Oct 11:49
· 30 commits to main since this release

What's Changed

VS Code-style diff view

  • The built-in diff view now shows both files in full and computes the diff inside Calyx with a Swift port of VS Code's diff algorithm, so line pairing, character-level changes, and side-by-side alignment match VS Code
  • Three layouts: Automatic (side by side above 900 pt wide, inline at or below), Inline, and Side by Side. Choose from the diff toolbar "..." menu, the command palette, or Settings → Appearance → Changes → Diff layout (#52)
  • Character-level highlights on changed lines and +/- gutter indicators in both layouts
  • Side by side: both panes scroll together, and hatched filler rows keep matching lines level
  • Opening a diff scrolls to the first change and centers it; refreshing the same file keeps your scroll position
  • Go to Next / Previous Change, wrapping around at the ends: toolbar up/down buttons, the command palette, or the View menu (Option+F5 / Option+Shift+F5)
  • Overview ruler along the right edge shows where the changes are and which part is on screen; click or drag it to jump (on by default; Settings → Appearance → Changes → Show overview ruler)
  • Collapse Unchanged Regions (off by default), with controls to reveal hidden lines above, below, or all at once (Settings → Appearance → Changes → Collapse unchanged regions)
  • Ignore Trim Whitespace (on by default) recomputes the diff live when toggled (Settings → Appearance → Changes → Ignore trim whitespace)
  • Files over 50 MB show a "File too large to compare" banner; a diff that takes longer than 5 seconds to compute stops early and says so in a banner
  • Review comments work in both layouts, on either side

Word wrap in the diff view

  • Long lines wrap at the pane width (on by default)
  • Wrapped lines keep the original line's indentation and carry no line number
  • Side by side: the shorter side is padded so both panes stay aligned
  • Toggle from the diff toolbar "..." menu, the command palette, View → Word Wrap (Option+Z), or Settings → Appearance → Changes → Word wrap
  • Resizing the window keeps the top visible line in place

UI

  • Settings → Appearance → Changes adds Diff layout, Collapse unchanged regions, Ignore trim whitespace, Show overview ruler, and Word wrap