GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Enable keyboard navigation by abitrolly · Pull Request #1784 · python/devguide

Conversation

@abitrolly

@abitrolly abitrolly commented Apr 19, 2026

Copy link
Copy Markdown

This makes it easy to browse the doc without mouse.

https://pradyunsg.me/furo/customisation/#navigation-with-keys

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@abitrolly
Enable keybard navigation
bd34ffc
https://pradyunsg.me/furo/customisation/#navigation-with-keys
@read-the-docs-community

read-the-docs-community Bot commented Apr 19, 2026

Copy link
Copy Markdown

Documentation build overview

📚 CPython devguide | 🛠️ Build #32324346 | 📁 Comparing bd34ffc against latest (76bb6bb)

  🔍 Preview build  

1 files changed
± versions/index.html
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@hugovk

hugovk commented Apr 19, 2026

Copy link
Copy Markdown
Member

Nice little shortcut, but I'm concerned this will interfere with keyboard handling for people using assistive tech such as screen readers.

https://www.w3.org/WAI/ARIA/apg/practices/keyboard-interface/ includes:

So, screen reader users will commonly expect that pressing the right arrow key will expand a collapsed node.

https://webaim.org/techniques/keyboard/ has examples where ←/→ keys are needed.

willingc reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@hugovk hugovk mentioned this pull request Apr 19, 2026
Enable keyboard navigation for Python docs python/cpython#148751
Closed
@abitrolly

abitrolly commented Apr 19, 2026 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Author

@hugovk now this gets tricky - DevGuide actually uses collapsible navigation tree for menu, but.. it doesn't conform to the guidelines itself. I tried several way to expand it on https://devguide.python.org/getting-started/ - right/left/space don't work, tab focus doesn't jump to down arrow. Enter just navigates to the section index page. So the menu tree is not ARIA compatible, and enabling keyboard navigation won't break it.

If somebody decides to make the devguide tree element ARIA compatible, the setting doesn't prevent more specific key handler to do the ARIA thing and prevent default popping to more generic document handler, where the shortcuts are defined.

https://github.com/sphinx-doc/sphinx/blob/cc7c6f435ad37bb12264f8118c8461b230e6830c/sphinx/themes/basic/static/doctools.js#L106

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@abitrolly abitrolly changed the title Enable keybard navigation Enable keyboard navigation Apr 19, 2026
@abitrolly abitrolly mentioned this pull request Apr 19, 2026
Feature: ARIA-compatible collapsible navigation for Sphinx theme #1785
Closed
@willingc willingc mentioned this pull request Apr 21, 2026
Audit accessibility of the devguide #1792
Open
@willingc

willingc commented Apr 21, 2026

Copy link
Copy Markdown
Collaborator

Thanks @abitrolly and @hugovk. I've opened an issue about accessibility #1792.

I am closing this PR as not planned.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@willingc willingc closed this Apr 21, 2026
@abitrolly

abitrolly commented Apr 21, 2026

Copy link
Copy Markdown
Author

@willingc please reopen. The accessibility was an argument that this PR would break it, but now that we've determined that there is nothing to break, I see no reason to keep keep these keyboard shortcuts disabled. They come from Spinx anyways.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@hugovk

hugovk commented Apr 21, 2026

Copy link
Copy Markdown
Member

We haven't determined there's nothing to break.

As I said at python/cpython#148751 (comment), some screen readers use left and right keys, and I think any interception of them could break accessibility. This isn't proven (I only tested VoiceOver on macOS, which isn't affected), but it's not proven the other way either.

willingc reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@abitrolly

abitrolly commented Apr 21, 2026

Copy link
Copy Markdown
Author

@hugovk it works the other way around. It is screen reader that intercepts left and right keys first in "reading mode". So even if you try to intercept these keys in JavaScript, screen reader would be the first to catch them and do its thing,, and your JS code will do nothing.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@willingc

willingc commented Apr 21, 2026

Copy link
Copy Markdown
Collaborator

@abitrolly While I can see your enthusiasm, I don't view this as a critical change right now without an accessibility audit. Thanks!

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@abitrolly

abitrolly commented Apr 21, 2026

Copy link
Copy Markdown
Author

@willingc I doubt that accessibility audit is actionable. In any case, single-handedly cancelling this specific feature, and replacing it with generalization of accessibility audit is a bad move. There is no guarantee that the accessibility audit will happen, and that this feature will be there.

At least I would understand keeping it open until the audit is finished.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@willingc

willingc commented Apr 21, 2026

Copy link
Copy Markdown
Collaborator

@abitrolly, Accessibility audits are actionable, and the Python ecosytem has done work to improve accessibility.

While you are welcome to your opinion, I'm unwilling to merge this right now. I'm not keen on keeping a one-line devguide PR open. If a core team member would like to reopen and mark DO-NOT-MERGE, I do not have any objection. I would prefer that an issue be opened to add next keyboard nav after validating accessibility impact to be more actionable.

merwok reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@abitrolly abitrolly mentioned this pull request Jul 27, 2026
Feature: Add right/left n/p keyboard navigation to all Python docs python/docs-community#199
Open
@abitrolly

abitrolly commented Apr 22, 2026

Copy link
Copy Markdown
Author

@willingc created the issue to track the keyboard shortcuts python/docs-community#199

I also extended it to include vim style n/p keys now that there is a chance to get the proper a11y study. If the study shows that adding them improves UX without hurting a11y, then I will try to make sure Rust docs will get them too.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

3 participants

@abitrolly @hugovk @willingc
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.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.