Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
145 changes: 73 additions & 72 deletions docs/keyboard-shortcuts.md
Original file line number Diff line number Diff line change
@@ -1,133 +1,134 @@
# Keyboard Shortcut Reference

## GitHub Navigation with Assistive Technology

This reference lists keyboard shortcuts for navigating GitHub with a screen reader. It covers three screen readers: NVDA, JAWS, and VoiceOver.

---

#### NVDA (Windows)
### NVDA (Windows)

NVDA is a free, open source screen reader for Windows. Download it from [nvaccess.org](htps://nvaccess.org).

#### Single-Key Navigation (Browse Mode)

Use these keys to jump to specific element types on any GitHub page.

| Key | Moves to |
|-----|----------|
| H | Next heading |
| Shift+H | Previous heading |
| 1-6 | Next heading of that level |
| K | Next link |
| B | Next button |
| F | Next form field |
| T | Next table |
| D | Next landmark region |
| L | Next list |
| I | Next list item |
| Key | Moves to |
| ------- | -------------------------- |
| H | Next heading |
| Shift+H | Previous heading |
| 1-6 | Next heading of that level |
| K | Next link |
| B | Next button |
| F | Next form field |
| T | Next table |
| D | Next landmark region |
| L | Next list |
| I | Next list item |

#### Switching Modes

| Key | Action |
|-----|--------|
| Insert+Space | Toggle between Browse Mode and Focus Mode |
| Insert+F7 | Elements list (links, headings, form fields, buttons) |
| Key | Action |
| ------------ | ----------------------------------------------------- |
| Insert+Space | Toggle between Browse Mode and Focus Mode |
| Insert+F7 | Elements list (links, headings, form fields, buttons) |

#### Reading Commands

| Key | Action |
|-----|--------|
| Key | Action |
| ------ | ----------------------------------- |
| NVDA+↓ | Start reading from cursor (Say All) |
| NVDA+↑ | Read current line |
| Ctrl | Stop reading |
| NVDA+↑ | Read current line |
| Ctrl | Stop reading |

---

## JAWS (Windows)
### JAWS (Windows)

JAWS (Job Access With Speech) is a professional screen reader for Windows made by Freedom Scientific.

### Single-Key Navigation (Virtual Cursor)
#### Single-Key Navigation (Virtual Cursor)

| Key | Moves to |
|-----|----------|
| H | Next heading |
| Shift+H | Previous heading |
| 1-6 | Next heading of that level |
| U | Next unvisited link |
| K | Next link |
| B | Next button |
| F | Next form field |
| T | Next table |
| R | Next landmark region |
| Key | Moves to |
| ------- | -------------------------- |
| H | Next heading |
| Shift+H | Previous heading |
| 1-6 | Next heading of that level |
| U | Next unvisited link |
| K | Next link |
| B | Next button |
| F | Next form field |
| T | Next table |
| R | Next landmark region |

### Switching Modes
#### Switching Modes

| Key | Action |
|-----|--------|
| Enter | Activate Focus Mode on a form field |
| Insert+Z | Toggle Virtual PC Cursor |
| Num Pad Plus | Open PC Cursor (exit forms mode) |
| Key | Action |
| ------------ | ----------------------------------- |
| Enter | Activate Focus Mode on a form field |
| Insert+Z | Toggle Virtual PC Cursor |
| Num Pad Plus | Open PC Cursor (exit forms mode) |

### Reading Commands
#### Reading Commands

| Key | Action |
|-----|--------|
| Key | Action |
| -------- | ----------------------------------- |
| Insert+↓ | Start reading from cursor (Say All) |
| Insert+↑ | Read current line |
| Ctrl | Stop reading |
| Insert+↑ | Read current line |
| Ctrl | Stop reading |

---

## VoiceOver (macOS)
### VoiceOver (macOS)

VoiceOver is the built-in screen reader on macOS. Activate it with Command+F5.

The VoiceOver modifier key (VO key) is Control+Option.

### Rotor Navigation
#### Rotor Navigation

The Rotor is VoiceOver's navigation hub. Open it with VO+U, then use ←/→ to switch between element types, and ↑/↓ to navigate within a type.

Element types available in the Rotor: Headings, Links, Form Controls, Tables, Landmarks, Web Spots.

### VO Commands for GitHub
#### VO Commands for GitHub

| Command | Action |
|---------|--------|
| VO+U | Open Rotor |
| VO+Right/Left | Move forward/backward |
| VO+Up/Down | Adjust setting in Rotor |
| VO+Space | Activate current element |
| Command | Action |
| ------------- | ----------------------------- |
| VO+U | Open Rotor |
| VO+Right/Left | Move forward/backward |
| VO+Up/Down | Adjust setting in Rotor |
| VO+Space | Activate current element |
| VO+Shift+Down | Interact with current element |
| VO+Shift+Up | Stop interacting |
| VO+A | Start reading from cursor |
| Ctrl | Stop reading |
| VO+Shift+Up | Stop interacting |
| VO+A | Start reading from cursor |
| Ctrl | Stop reading |

---

## Screen-Reader-Neutral Shortcuts (All Screen Readers)
### Screen-Reader-Neutral Shortcuts (All Screen Readers)

These shortcuts work in GitHub regardless of screen reader, because they are browser or operating system shortcuts.

### GitHub Page Shortcuts
## GitHub Page Shortcuts

| Key | Action |
|-----|--------|
| ? | Show keyboard shortcut help for the current page |
| G then I | Go to Issues tab |
| G then P | Go to Pull Requests tab |
| G then C | Go to Code tab |
| Key | Action |
| -------- | ------------------------------------------------ |
| ? | Show keyboard shortcut help for the current page |
| G then I | Go to Issues tab |
| G then P | Go to Pull Requests tab |
| G then C | Go to Code tab |

### Form and Input

| Key | Action |
|-----|--------|
| Ctrl+Enter | Submit a comment or form |
| Tab | Move to next focusable element |
| Shift+Tab | Move to previous focusable element |
| Enter | Activate a focused button or link |
| Space | Check/uncheck a checkbox; activate a button |
| Key | Action |
| ---------- | ----------------------------------------------- |
| Ctrl+Enter | Submit a comment or form |
| Tab | Move to next focusable element |
| Shift+Tab | Move to previous focusable element |
| Enter | Activate a focused button or link |
| Space | Check/uncheck a checkbox; activate a button |
| Arrow keys | Navigate within a radio group, tab bar, or menu |

---
Expand Down