feat: iCloud sync, updater, custom tag art, spelling, accessibility, server notebooks, and the unsupported-content pass
- iCloud Drive (#30): conflict versions merge back by replaying their changes,
reads and writes are coordinated, edits publish on a pause and when the app
loses focus; Section::page_at reads earlier page revisions.
- Updater (#33): signed builds published by tools/release.py into dated
folders; the app checks, verifies, stages, and restarts into updates.
- Custom tag art (#47) in the notebook's hidden .snowbound folder, 15
Snowbound symbols, and OneNote-faithful fallbacks.
- Spell checking on every platform (#48); the UI kit's accessibility tree and
keyboard navigation (#20); Open Notebook from Server (#46).
- Unsupported content (#25): table tags, printouts, object-only outlines,
cross-table selections, and equation joins behave as in OneNote 2010.
- Toolbar audit (#49), command palette go-to mode, dialogs top-centre, hover
submenus, tab-drag fixes, dimmed dialogs.
- Sync: replicas keyed by location and identity, duplicate sections tolerated,
unreadable or busy sections set aside instead of failing the notebook,
password-protected sections reported plainly, iCloud placeholders.
- Linux: a single executable that writes its own desktop entry and icon, with
Install and Uninstall; xdg-toplevel-icon on KDE.
- Mac OS X 10.6: pipe-based wakers fix multi-second SMB stalls; readdir
alignment, autorelease pools, the textured window line, and a Snow Leopard
screenshot mode.
- iOS: On My iPhone as a folder, spelling corrections, iCloud location.
- ISC license.
Assisted-by: claude-opus-5.5
0aad32984fclover caruso committed on 9/30/2026, 10:20:19 AMparent77c1c97