FastRead
FastRead is an NVDA add-on for text that changes frequently and needs to be heard immediately.
It is useful for browser dashboards, upload or download speeds, CPU meters, status fields,
terminal output, progress text, and similar live readouts.
When FastRead detects a change, it cancels the previous FastRead message and speaks the newest
text straight away. This avoids a queue of stale messages building up while a value is changing.
Using FastRead
- Move focus, the browse cursor, or the application cursor to the item you want to monitor.
- Press NVDA+Y to turn FastRead on.
- Leave the cursor on the changing item while it updates.
- Press NVDA+Y again to turn FastRead off.
Watcher Slots
FastRead can also pin up to three watched items or lines. This is useful when a value changes
somewhere else in the same window while you move focus to another control, such as a price
changing while you alter options on a web page.
- NVDA+8: read watcher 1. Press twice quickly to set it if empty, or clear it if already set.
- NVDA+9: read watcher 2. Press twice quickly to set it if empty, or clear it if already set.
- NVDA+0: read watcher 3. Press twice quickly to set it if empty, or clear it if already set.
Watcher slots can be set, read, or cleared even when the main FastRead monitor is off.
They only speak automatically while FastRead is on. They stay limited to the same top-level window,
so a watcher set in one browser window will not keep speaking while you work in another app.
When a watched value changes, FastRead speaks the full new watched text.
Automatic watcher speech is queued politely after FastRead's own change announcement, so the
main changed line and the watched value can both be heard.
What It Reads
- Browsers and browse mode: FastRead follows the current line exposed by NVDA's browse/application cursor and speaks the full changed value. For example, a change from 66% to 67% is spoken as 67%, not just 7.
- Terminals and command output: FastRead tries to speak only newly added text, so commands such as ping or tracert can be followed without re-reading the whole buffer. In terminals that use NVDA's live text support, including PuTTY, FastRead interrupts older live output as new lines arrive.
- Focused controls: FastRead watches non-edit focused controls when no browse-mode document is active.
Notes
- FastRead can follow one active cursor item plus up to three pinned watcher slots.
- It works best when the cursor remains on the value or line you want to follow.
- FastRead does not monitor ordinary edit fields while you type, so it should not duplicate NVDA's normal character echo. Terminal and live-output controls are still monitored.
- If focus moves to another application or control, FastRead resets its monitor rather than comparing unrelated text.
- FastRead avoids reading entire browser documents, because doing so can be slow or unsafe in large virtual buffers.
Updates and Source Code
FastRead uses NVDA's add-on update channel for store-compatible updates.
The project page is
https://github.com/OnjLouis/fastRead.
Changes
- 1.0.4: Improved browser combo-box changes so very small diff fragments, such as a lone number, fall back to the full changed value. FastRead now also avoids ordinary edit fields while typing to prevent duplicate character echo. Follow-up for issue #1.
- 1.0.3: Added three watcher slots with NVDA+8, NVDA+9, and NVDA+0. Watchers can follow pinned values in the same window while focus moves elsewhere. They can be set and read while FastRead is off, but only speak automatically while FastRead is on. A single press reads a watcher; a double press sets or clears it. Closes issue #1.
- 1.0.2: Aligned update handling with NVDA Add-on Store distribution.
- 1.0.1: Improved support for NVDA live-text terminals such as PuTTY, so live output interrupts stale FastRead speech instead of behaving like queued NVDA terminal speech.
- 1.0.0: Initial release.