tds3p-rsvp-reader/TODO.md

56 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# TODO
## Reading profiles
Add selectable reading profiles for punctuation and paragraph pause lengths,
long-word delay, unfamiliar-word timing, and WPM presets. Keep a plain/default
profile that preserves the current cadence.
Replace fixed 2×/3× sidecar word-delay values with categorical timing tags.
Map each category to a configurable delay in reader settings, so changing a
delay does not require regenerating sidecars. Version the format change and
keep existing v1/v2 sidecars readable.
## Dialogue and character colors
Add optional color rendering for dialogue and character names. The converter
should detect conventional quotation marks and styled thought/dialogue spans,
then attribute only high-confidence spans to a canonical entity. Store the
entity identity, never a color, in a compact v3 RSVP sidecar; load a separate,
editable per-book entity map that assigns each entity a hue from 30 through 330
in 30-degree HSL steps at 100% saturation and 75% lightness. Include aliases
so descriptions such as "mysterious man" can later resolve to a named entity,
and report unresolved or ambiguous attribution for review rather than guessing.
Keep the sidecar sparse: unassigned words must have no sidecar record at all,
not a record with an entity ID of zero or another null sentinel. Extend a
record only when it already exists for style/timing metadata or when an entity
assignment requires one. Add a persisted reader setting to toggle coloring
without requiring reconversion.
## Add anti-aliased reader fonts
The current reader uses TFT_eSPI's bitmap FreeSans, FreeSerif, and FreeMono
fonts. They are compact and fast, but their edges remain jagged at large sizes.
Use TFT_eSPI smooth-font (`.vlw`) assets for the reading view and font-setting
previews.
1. Generate or obtain licensed `.vlw` files for sans-serif, serif, and
monospace faces at the seven supported reader sizes: 1, 1.5, 2, 2.5, 3,
3.5, and 4.
2. Place the files in a dedicated SD-card directory, for example
`/fonts/<style>-<size>.vlw`; document these required files alongside the
existing `/books/<book>/<chapter>.txt` layout.
3. Change `Board` to load the selected smooth font from SD when a font setting
is applied, and fall back to the current bitmap font if the file is absent
or cannot be loaded.
4. Continue to clear only the union of the old and new word bounds. Smooth
glyphs should be drawn with an explicit black background so anti-aliased
edge pixels blend correctly without redrawing the status bar or dead space.
5. Measure load time, RAM use, and word-to-word rendering latency on the
T-Display-S3-Pro. Keep the cached active font in memory and avoid SD reads
during normal word advances.
6. Verify that chapter-title and `The End` cards use the same selected smooth
font and remain aligned with normal words.