| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Fix Swift 6-mode isolation and attribute warnings | Christian Cleberg | 35 hours | 1 | -2/+2 |
| | | | | | | | | | | | | | Under SWIFT_DEFAULT_ACTOR_ISOLATION = MainActor these are warnings in Swift 5 mode and errors in Swift 6 mode: - Drop @retroactive from 'extension LookupType: AppEnum'; LookupType is declared in this module, so the attribute never applied. - Mark SyntaxHighlightTheme and SyntaxHighlighter nonisolated. They were inferred @MainActor but are built and used from the nonisolated markdown renderers in Task.detached; nonisolated makes the off-main confinement correct (Highlightr's JSContext was being driven off the main actor). | ||||
| * | Add multi-language syntax highlighting (#16) | Christian Cleberg | 2 days | 1 | -0/+222 |
| Splash (Swift-only, since removed) left code rendering unhighlighted everywhere. Add Highlightr (highlight.js) behind a small SyntaxHighlighter service and use it on both surfaces: - Native file viewer: highlight NSAttributedString by language inferred from the filename, picking a light/dark theme from the trait style and re-highlighting on style changes. Falls back to plain text for unknown languages or very large files. - Markdown/org code blocks in the WKWebView (READMEs, tickets, comments): the web view disables JavaScript, so highlight server-side into inline color-styled spans. The color scheme is now part of the render/cache key since colors are baked into the HTML. Covered by unit tests for language mapping and highlighted output. | |||||
