/screen-reader-mode

Updates Visual Studio Code User Settings with recommended settings for screen reader users.

Primary LanguageTypeScriptGNU General Public License v3.0GPL-3.0

Screen Reader Mode README

Version Latest Downloads Repo size

A Visual Studio Code extension for users of screen readers like NVDA, JAWS and VoiceOver. It is intended for students who are learning to code with Python, but also other languages. The extension updates User Settings and adds a few extra keyboard shortcuts. The overall idea is to make things as simple as possible. See list of features below.

Table of Contents

Features

This extension disables and enables various user settings. It also adds some new shortcuts.

Disables

  • Disables Git (students will basically work on smaller projects and do not need Git)
  • Disables Preview Mode (each file will have their own tab)
  • Disables Watermark Tips when no editor is open
  • Disables Startup Editor (the startup editor will be empty until you open a file)
  • Disables Minimap (not accessible with screen readers)
  • Disables Hover (not accessible with screen readers)
  • Disables Parameterhints (not accessible with screen readers)
  • Disables Workspace Trust (students will basically work on their own files)
  • Disables Jupyter Auto Start (you can always start Jupyter later on)
  • Disables Recommended Extensions (to avoid unneccesary notifications)
  • Disables Pylint messages in the Warning and Convention categories (only showing errors)

Enables or adds

  • Enables Pylint (If Pylint is not installed, you will be notified)
  • Enables Accessibility Support (for screen readers to work properly)
  • Adds shortcut to toggle Quick Suggestions on or off
  • Adds shortcut to access the Notifications list
  • Adds shortcut to access the Status Bar

How to use

  1. Make sure Python is installed on your system.
  2. Open Extensions view and make sure you have the Python extension from Microsoft installed.
  3. From Extensions view, search for and install this extension ('Recommended Settings' from publisher Statped).
  4. Restart Visual Studio Code.
  5. The installed extension will now provide you with a few additional commands.
    • Recommended User Settings (Screen Readers)
    • Toggle Automatic Quick Suggestions
    • Notifications: Show Notifications
    • Focus Status Bar
  6. Open Command Palette and select Recommended User Settings (Screen Readers). This will modify your Visual Studio Code User Settings.

Available Commands and shortcuts

The extension provides you with some new Command Palette commands:

Command Windows macOS Description
Recommended User Settings (Screen Readers) N/A N/A Updates User Settings with recommended settings
Toggle Automatic Quick Suggestions* Ctrl+Alt+Q Command+Option+Q Toggles Automatic Quick Suggestions on or off
Notifications: Show Notifications Ctrl+Alt+N Command+Option+N Shows notification list
Focus Status Bar Ctrl+Alt+B Command+Option+B Sets focus on the first item of the Status Bar

*Toggles Automatic Quick Suggestions on or off: For some screen reader users, Quick Suggestions makes coding more complicated. The suggestions list that pops up might be confusing and do not work well with all screen readers. When disabled, Quick Suggestions may still be triggered manually with Ctrl+Space.

Modified User Settings

This extension modifies User Settings as described below. User Settings are located at:

  • Windows: %APPDATA%\Code\User\settings.json
  • macOS: $HOME/Library/Application Support/Code/User/settings.json
// Git
"git.enabled": false,
"git.autofetch": false,
"git.ignoreMissingGitWarning": true,

// Workbench
"workbench.editor.enablePreview": false,
"workbench.tips.enabled": false,
"workbench.startupEditor": "none",

// Editor
"editor.minimap.enabled": false,
"editor.hover.enabled": false,
"editor.parameterHints.enabled": false,
"editor.accessibilitySupport": "on",

// Security
"security.workspace.trust.enabled": false,

// Python
"python.languageServer": "Pylance",
"python.linting.enabled": true,
"python.linting.pylintEnabled": true
"python.linting.pylintArgs": [
    "--disable:W,C" //disables Pylint messages in the Warning and Convention categories
]

// Miscellaneous
"jupyter.disableJupyterAutoStart": true,
"extensions.ignoreRecommendations": true

Prerequisits

Python extension from Microsoft.

Visual Studio Code Accessibility

A description of all accessibility features in Visual Studio Code can be found at code.visualstudio.com/docs/editor/accessibility.

Release Notes

[1.1.1] - 2023-03-10

  • Fixed typo in package.json