How to Navigate Long GitHub Threads with a Screen Reader

Reading a long issue thread with NVDA means hunting for where you stopped after every Load more. What does GitHub’s timeline now announce, and which keys move through it?

How to Navigate Long GitHub Threads with a Screen Reader
TLDR
  • GitHub exposes activity timelines as named lists with item counts and position information.
  • In NVDA on Windows, use browse mode and move through the Activity list with I and Shift+I.
  • Load more and Load all announce how many additional events were fetched.

Use the Activity list to move between events

For a long GitHub issue, navigate to Activity and read its entries as list items. Comments share that list with label changes, commits, reviews and other events. Its accessible structure gives your screen reader a name, count and position to announce.

GitHub's October 8 update improves this nonvisual structure without redesigning the visible timeline. It gives readers an alternative to working through every interactive control just to find the next relevant part of a thread.

The underlying navigation problem is familiar to some contributors. In a community discussion, Nisayuru2001 described difficulty distinguishing comment threads and finding the newest comments with a screen reader. Position information helps establish where the current entry sits within the list.

Start in browse mode, then move item by item

The official Issues guide documents the following route for NVDA on Windows. Use browse mode for the text-oriented issue detail page. Depending on your configuration, the NVDA modifier is Insert or Caps Lock.

  1. Open an issue. If needed, press NVDA + Space to switch to browse mode.
  2. Find the Activity section with heading navigation: H or 2.
  3. Press L to reach the activity list.
  4. Use I for the next event and Shift + I for the previous one. Read the current entry with the up and down arrows.

Each comment occupies one list item. Heading-level-three navigation remains another way to move between comments. Choose an entry first, then read its contents, instead of treating every button as a necessary stop.

Loading history now has an audible result

Load more and Load all belong to the Activity list too. Reach the control with item navigation or Tab and activate it with Enter. Focus moves to the newest event, and the screen reader reports how many events loaded.

Count those as events rather than new comments: activity includes changes other than conversation. The number in GitHub's example is illustrative, not a fixed batch size. This control extends the history inside an open issue; it is separate from paging through a repository's list of issues.

The same structure extends beyond issues

The rollout covers issue, pull request, commit, secret scanning alert and license compliance alert timelines on github.com and GitHub Enterprise Server 3.23.

GitHub names VoiceOver, NVDA and JAWS as examples for trying the change. The keystrokes above are specifically the Windows NVDA workflow. With another screen reader, use its list-navigation commands to hear Activity's count and position, then move into the event you want to read.