The TUI's `DiagnosticView` has existed in `src/diag.rs` since v0.1 but was never instantiated, so the local-grid renderer never painted diagnostic underlines. This wires the view in the same way `LspStyleView` and `SyntaxHighlightView` are wired — a Lua binding that pushes the overlay onto the active window, driven from `lsp.lua`'s `attach_buffer` flow with the standard per-buffer dedup table. * `DiagnosticView::kind()` returns `"diagnostic"` so `pmacs.window._overlay_kinds()` can verify attachment. * `pmacs.diag._attach_view(buf, uri)` mirrors `pmacs.lsp._attach_style` exactly: requires active window's buffer matches `buf`, constructs `DiagnosticView::new(uri, store)`, pushes as overlay. * `lsp.lua` calls `pmacs.diag._attach_view` from `attach_buffer` and tracks pushed buffers in `diag_viewed_buffers` to prevent double-attach on repeated `attach_buffer` calls. Scope is intentionally narrow: view attachment only. Navigation bindings, statusline summary, and gutter signs remain follow-ups under task #23. Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| async.lua | ||
| fs.lua | ||
| lsp.lua | ||
| mcp.lua | ||
| syntax.lua | ||