Repository navigation
Implement Player::seek_block_id and enhance TUI with modal keymap - #7
Merged
Merged
Conversation
The outline sidebar holds Headings, which carry a block_id, not a token index. Give it a way to jump there without reaching into the token stream, and report failure rather than moving somewhere arbitrary when a block produced no tokens at all — tables and markup-only headings do not appear in the stream. Part of OXD-032. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011e2oRctuPGDRf9pLs2xWgr
The half of the design that gives back what RSVP takes away. Spec §0.2 admits the cost: no page, no sense of place, no backward glance. Each of these answers one of those. The panel renders Document::source rather than the stripped block text, because Token::byte_span indexes the source. Rendering anything else would need a second mapping that could disagree with the first, and a highlight on the wrong word is worse than no panel. The wrap is cached and redone only when the panel's inner width changes, so a 50 KB document is not re-wrapped 25 times a second at 1500 WPM. The keymap is modal because J/K cannot mean both "speed" and "scroll" at once (§7.1). A binding now declares the modes it applies in, and the help popup and status hints read the same table, so neither can advertise a key that does something else where you are standing. Two layout decisions departed from the §5 mockup: the status block spans the full width, and panel visibility is a width test rather than a size class that also weighed height. Both are argued in ADR 002. Golden frames cover every mode at 80x24, 200x50 and 40x10, plus a style grid — the §3.4.1 guarantees are about attributes, so an ORP that quietly stopped being bold would pass a text-only snapshot. Closes OXD-030, OXD-031, OXD-032, OXD-034, OXD-036 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011e2oRctuPGDRf9pLs2xWgr
Back-annotate spec §5 with the two layout changes, mark the finished Phase 3 cards, and note in OXD-033 that everything but the <n>% jump already shipped in v0.1.0 — its real remaining size is S, not M. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011e2oRctuPGDRf9pLs2xWgr
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.