CINXE.COM

NVDA 2024.4.1 User Guide

<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title>NVDA 2024.4.1 User Guide</title> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="stylesheet" href="styles.css"> <link rel="stylesheet" href="numberedHeadings.css"> </head> <body><h1 id="nvda-202441-user-guide">NVDA 2024.4.1 User Guide</h1> <div class="toc"> <ul> <li><a href="#nvda-202441-user-guide" title="NVDA 2024.4.1 User Guide">NVDA 2024.4.1 User Guide</a><ul> <li><a href="#Introduction" title="Introduction">Introduction</a><ul> <li><a href="#GeneralFeatures" title="General Features">General Features</a></li> <li><a href="#SystemRequirements" title="System Requirements">System Requirements</a><ul> <li><a href="#MinimumSystemRequirements" title="Minimum System Requirements">Minimum System Requirements</a></li> <li><a href="#RecommendedSystemRequirements" title="Recommended System Requirements">Recommended System Requirements</a></li> </ul> </li> <li><a href="#Internationalization" title="Internationalization">Internationalization</a></li> <li><a href="#SpeechSynthesizerSupport" title="Speech Synthesizer Support">Speech Synthesizer Support</a></li> <li><a href="#BrailleSupport" title="Braille support">Braille support</a></li> <li><a href="#LicenseAndCopyright" title="License and Copyright">License and Copyright</a></li> </ul> </li> <li><a href="#NVDAQuickStartGuide" title="NVDA Quick Start Guide">NVDA Quick Start Guide</a><ul> <li><a href="#GettingAndSettingUpNVDA" title="Downloading NVDA">Downloading NVDA</a><ul> <li><a href="#StepsForDownloadingNVDA" title="Steps for Downloading NVDA">Steps for Downloading NVDA</a></li> </ul> </li> <li><a href="#SettingUpNVDA" title="Setting up NVDA">Setting up NVDA</a><ul> <li><a href="#StepsForRunningTheDownloadLauncher" title="Steps for running the downloaded launcher">Steps for running the downloaded launcher</a></li> <li><a href="#StepsForInstallingNVDAFromTheLauncher" title="Steps for installing NVDA from the launcher">Steps for installing NVDA from the launcher</a></li> </ul> </li> <li><a href="#RunningNVDA" title="Running NVDA">Running NVDA</a><ul> <li><a href="#NVDAModifierKey" title="The NVDA Modifier Key">The NVDA Modifier Key</a></li> <li><a href="#InputHelp" title="Input Help">Input Help</a></li> <li><a href="#StartingAndStoppingNVDA" title="Starting and stopping NVDA">Starting and stopping NVDA</a></li> <li><a href="#ReadingText" title="Reading text">Reading text</a></li> <li><a href="#ReportingLocation" title="Reporting location and other information">Reporting location and other information</a></li> <li><a href="#ToggleWhichInformationNVDAReads" title="Toggle which information NVDA reads">Toggle which information NVDA reads</a></li> <li><a href="#TheSynthSettingsRing" title="The synth settings ring">The synth settings ring</a></li> <li><a href="#WebNavigation" title="Web navigation">Web navigation</a></li> </ul> </li> <li><a href="#Preferences" title="Preferences">Preferences</a></li> <li><a href="#Addons" title="Add-ons">Add-ons</a><ul> <li><a href="#AvailableAddons" title="Available add-ons">Available add-ons</a></li> <li><a href="#SearchingForAddons" title="Searching for add-ons">Searching for add-ons</a></li> <li><a href="#InstallingAddons" title="Installing add-ons">Installing add-ons</a></li> <li><a href="#ManagingInstalledAddons" title="Managing installed add-ons">Managing installed add-ons</a></li> <li><a href="#UpdatingAddons" title="Updating add-ons">Updating add-ons</a></li> </ul> </li> <li><a href="#Community" title="Community">Community</a></li> <li><a href="#GettingHelp" title="Getting help">Getting help</a></li> </ul> </li> <li><a href="#MoreSetupOptions" title="More Setup Options">More Setup Options</a><ul> <li><a href="#InstallingNVDA" title="Installation Options">Installation Options</a><ul> <li><a href="#InstallWithIncompatibleAddons" title="Incompatible add-ons warning">Incompatible add-ons warning</a></li> <li><a href="#StartAtWindowsLogon" title="Use NVDA during sign-in">Use NVDA during sign-in</a></li> <li><a href="#CreateDesktopShortcut" title="Create Desktop Shortcut (ctrl+alt+n)">Create Desktop Shortcut (ctrl+alt+n)</a></li> <li><a href="#CopyPortableConfigurationToCurrentUserAccount" title="Copy Portable Configuration to Current User Account">Copy Portable Configuration to Current User Account</a></li> </ul> </li> <li><a href="#CreatingAPortableCopy" title="Creating a Portable Copy">Creating a Portable Copy</a></li> <li><a href="#PortableAndTemporaryCopyRestrictions" title="Portable and Temporary Copy Restrictions">Portable and Temporary Copy Restrictions</a></li> </ul> </li> <li><a href="#GettingStartedWithNVDA" title="Using NVDA">Using NVDA</a><ul> <li><a href="#LaunchingNVDA" title="Launching NVDA">Launching NVDA</a><ul> <li><a href="#WelcomeDialog" title="Welcome Dialog">Welcome Dialog</a></li> <li><a href="#UsageStatsDialog" title="Data usage statistics dialog">Data usage statistics dialog</a></li> </ul> </li> <li><a href="#AboutNVDAKeyboardCommands" title="About NVDA keyboard commands">About NVDA keyboard commands</a><ul> <li><a href="#TheNVDAModifierKey" title="The NVDA Modifier Key">The NVDA Modifier Key</a></li> <li><a href="#KeyboardLayouts" title="Keyboard Layouts">Keyboard Layouts</a></li> </ul> </li> <li><a href="#NVDATouchGestures" title="NVDA Touch Gestures">NVDA Touch Gestures</a><ul> <li><a href="#ExploringTheScreen" title="Exploring the Screen">Exploring the Screen</a></li> <li><a href="#TouchGestures" title="Touch Gestures">Touch Gestures</a><ul> <li><a href="#Taps" title="Taps">Taps</a></li> <li><a href="#Flicks" title="Flicks">Flicks</a></li> </ul> </li> <li><a href="#TouchModes" title="Touch Modes">Touch Modes</a></li> <li><a href="#TouchKeyboard" title="Touch keyboard">Touch keyboard</a></li> </ul> </li> <li><a href="#InputHelpMode" title="Input Help Mode">Input Help Mode</a></li> <li><a href="#TheNVDAMenu" title="The NVDA menu">The NVDA menu</a></li> <li><a href="#BasicNVDACommands" title="Basic NVDA commands">Basic NVDA commands</a></li> <li><a href="#ReportingSystemInformation" title="Reporting System Information">Reporting System Information</a></li> <li><a href="#SpeechModes" title="Speech modes">Speech modes</a></li> </ul> </li> <li><a href="#NavigatingWithNVDA" title="Navigating with NVDA">Navigating with NVDA</a><ul> <li><a href="#Objects" title="Objects">Objects</a></li> <li><a href="#SystemFocus" title="Navigating with the System Focus">Navigating with the System Focus</a></li> <li><a href="#SystemCaret" title="Navigating with the System Caret">Navigating with the System Caret</a></li> <li><a href="#ObjectNavigation" title="Object Navigation">Object Navigation</a></li> <li><a href="#ReviewingText" title="Reviewing Text">Reviewing Text</a></li> <li><a href="#ReviewModes" title="Review Modes">Review Modes</a><ul> <li><a href="#ObjectReview" title="Object Review">Object Review</a></li> <li><a href="#DocumentReview" title="Document Review">Document Review</a></li> <li><a href="#ScreenReview" title="Screen Review">Screen Review</a></li> </ul> </li> <li><a href="#NavigatingWithTheMouse" title="Navigating with the Mouse">Navigating with the Mouse</a></li> </ul> </li> <li><a href="#BrowseMode" title="Browse Mode">Browse Mode</a><ul> <li><a href="#SingleLetterNavigation" title="Single Letter Navigation">Single Letter Navigation</a><ul> <li><a href="#TextNavigationCommand" title="Text paragraph navigation command">Text paragraph navigation command</a></li> <li><a href="#OtherNavigationCommands" title="Other navigation commands">Other navigation commands</a></li> </ul> </li> <li><a href="#ElementsList" title="The Elements List">The Elements List</a></li> <li><a href="#SearchingForText" title="Searching for text">Searching for text</a></li> <li><a href="#ImbeddedObjects" title="Embedded Objects">Embedded Objects</a></li> <li><a href="#NativeSelectionMode" title="Native Selection Mode">Native Selection Mode</a></li> </ul> </li> <li><a href="#ReadingMath" title="Reading Mathematical Content">Reading Mathematical Content</a><ul> <li><a href="#SupportedMathContent" title="Supported math content">Supported math content</a></li> <li><a href="#InteractiveNavigation" title="Interactive Navigation">Interactive Navigation</a></li> <li><a href="#InstallingMathPlayer" title="Installing MathPlayer">Installing MathPlayer</a></li> </ul> </li> <li><a href="#Braille" title="Braille">Braille</a><ul> <li><a href="#BrailleAbbreviations" title="Control Type, State and Landmark abbreviations">Control Type, State and Landmark abbreviations</a></li> <li><a href="#BrailleInput" title="Braille Input">Braille Input</a><ul> <li><a href="#BrailleKeyboardShortcuts" title="Inputting keyboard shortcuts">Inputting keyboard shortcuts</a></li> </ul> </li> </ul> </li> <li><a href="#Vision" title="Vision">Vision</a><ul> <li><a href="#VisionFocusHighlight" title="Visual Highlight">Visual Highlight</a></li> <li><a href="#VisionScreenCurtain" title="Screen Curtain">Screen Curtain</a></li> </ul> </li> <li><a href="#ContentRecognition" title="Content Recognition">Content Recognition</a><ul> <li><a href="#Win10Ocr" title="Windows OCR">Windows OCR</a></li> </ul> </li> <li><a href="#ApplicationSpecificFeatures" title="Application Specific Features">Application Specific Features</a><ul> <li><a href="#MicrosoftWord" title="Microsoft Word">Microsoft Word</a><ul> <li><a href="#WordAutomaticColumnAndRowHeaderReading" title="Automatic Column and Row Header Reading">Automatic Column and Row Header Reading</a></li> <li><a href="#BrowseModeInMicrosoftWord" title="Browse Mode in Microsoft Word">Browse Mode in Microsoft Word</a><ul> <li><a href="#WordElementsList" title="The Elements List">The Elements List</a></li> </ul> </li> <li><a href="#WordReportingComments" title="Reporting Comments">Reporting Comments</a></li> </ul> </li> <li><a href="#MicrosoftExcel" title="Microsoft Excel">Microsoft Excel</a><ul> <li><a href="#ExcelAutomaticColumnAndRowHeaderReading" title="Automatic Column and Row Header Reading">Automatic Column and Row Header Reading</a></li> <li><a href="#ExcelElementsList" title="The Elements List">The Elements List</a></li> <li><a href="#ExcelReportingComments" title="Reporting Notes">Reporting Notes</a></li> <li><a href="#ExcelReadingProtectedCells" title="Reading Protected Cells">Reading Protected Cells</a></li> <li><a href="#ExcelFormFields" title="Form Fields">Form Fields</a></li> </ul> </li> <li><a href="#MicrosoftPowerPoint" title="Microsoft PowerPoint">Microsoft PowerPoint</a></li> <li><a href="#Foobar2000" title="foobar2000">foobar2000</a></li> <li><a href="#MirandaIM" title="Miranda IM">Miranda IM</a></li> <li><a href="#Poedit" title="Poedit">Poedit</a></li> <li><a href="#Kindle" title="Kindle for PC">Kindle for PC</a><ul> <li><a href="#KindleTextSelection" title="Text Selection">Text Selection</a></li> <li><a href="#KindleUserNotes" title="User Notes">User Notes</a></li> </ul> </li> <li><a href="#Azardi" title="Azardi">Azardi</a></li> <li><a href="#WinConsole" title="Windows Console">Windows Console</a></li> </ul> </li> <li><a href="#ConfiguringNVDA" title="Configuring NVDA">Configuring NVDA</a><ul> <li><a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a><ul> <li><a href="#GeneralSettings" title="General">General</a><ul> <li><a href="#OpenGeneralSettings" title="Open General settings">Open General settings</a></li> <li><a href="#GeneralSettingsLanguage" title="Language">Language</a></li> <li><a href="#GeneralSettingsSaveConfig" title="Save configuration on exit">Save configuration on exit</a></li> <li><a href="#GeneralSettingsShowExitOptions" title="Show exit options when exiting NVDA">Show exit options when exiting NVDA</a></li> <li><a href="#GeneralSettingsPlaySounds" title="Play sounds when starting or exiting NVDA">Play sounds when starting or exiting NVDA</a></li> <li><a href="#GeneralSettingsLogLevel" title="Logging level">Logging level</a></li> <li><a href="#GeneralSettingsStartAfterLogOn" title="Start NVDA after I sign in">Start NVDA after I sign in</a></li> <li><a href="#GeneralSettingsStartOnLogOnScreen" title="Use NVDA during sign-in (requires administrator privileges)">Use NVDA during sign-in (requires administrator privileges)</a></li> <li><a href="#GeneralSettingsCopySettings" title="Use currently saved settings during sign-in and on secure screens (requires administrator privileges)">Use currently saved settings during sign-in and on secure screens (requires administrator privileges)</a></li> <li><a href="#GeneralSettingsCheckForUpdates" title="Automatically check for updates to NVDA">Automatically check for updates to NVDA</a></li> <li><a href="#GeneralSettingsGatherUsageStats" title="Allow NV Access to gather NVDA usage statistics">Allow NV Access to gather NVDA usage statistics</a></li> <li><a href="#GeneralSettingsNotifyPendingUpdates" title="Notify for pending updates on startup">Notify for pending updates on startup</a></li> </ul> </li> <li><a href="#SpeechSettings" title="Speech Settings">Speech Settings</a><ul> <li><a href="#OpenSpeechSettings" title="Open Speech settings">Open Speech settings</a></li> <li><a href="#SpeechSettingsChange" title="Change synthesizer">Change synthesizer</a></li> <li><a href="#SpeechSettingsVoice" title="Voice">Voice</a></li> <li><a href="#SpeechSettingsVariant" title="Variant">Variant</a></li> <li><a href="#SpeechSettingsRate" title="Rate">Rate</a></li> <li><a href="#SpeechSettingsRateBoost" title="Rate boost">Rate boost</a></li> <li><a href="#SpeechSettingsPitch" title="Pitch">Pitch</a></li> <li><a href="#SpeechSettingsVolume" title="Volume">Volume</a></li> <li><a href="#SpeechSettingsInflection" title="Inflection">Inflection</a></li> <li><a href="#SpeechSettingsLanguageSwitching" title="Automatic Language switching">Automatic Language switching</a></li> <li><a href="#SpeechSettingsDialectSwitching" title="Automatic Dialect switching">Automatic Dialect switching</a></li> <li><a href="#SpeechSettingsSymbolLevel" title="Punctuation/Symbol Level">Punctuation/Symbol Level</a></li> <li><a href="#SpeechSettingsTrust" title="Trust voice's language when processing characters and symbols">Trust voice's language when processing characters and symbols</a></li> <li><a href="#SpeechUnicodeNormalization" title="Unicode normalization">Unicode normalization</a></li> <li><a href="#SpeechReportNormalizedForCharacterNavigation" title="Report &quot;Normalized&quot; when navigating by character">Report "Normalized" when navigating by character</a></li> <li><a href="#SpeechSettingsCLDR" title="Include Unicode Consortium data (including emoji) when processing characters and symbols">Include Unicode Consortium data (including emoji) when processing characters and symbols</a></li> <li><a href="#SpeechSettingsCapPitchChange" title="Capital pitch change percentage">Capital pitch change percentage</a></li> <li><a href="#SpeechSettingsSayCapBefore" title="Say &quot;cap&quot; before capitals">Say "cap" before capitals</a></li> <li><a href="#SpeechSettingsBeepForCaps" title="Beep for capitals">Beep for capitals</a></li> <li><a href="#SpeechSettingsUseSpelling" title="Use spelling functionality if supported">Use spelling functionality if supported</a></li> <li><a href="#delayedCharacterDescriptions" title="Delayed descriptions for characters on cursor movement">Delayed descriptions for characters on cursor movement</a></li> <li><a href="#SpeechModesDisabling" title="Modes available in the Cycle speech mode command">Modes available in the Cycle speech mode command</a></li> </ul> </li> <li><a href="#SelectSynthesizer" title="Select Synthesizer">Select Synthesizer</a><ul> <li><a href="#OpenSelectSynthesizer" title="Open Select Synthesizer dialog">Open Select Synthesizer dialog</a></li> <li><a href="#SelectSynthesizerSynthesizer" title="Synthesizer">Synthesizer</a></li> </ul> </li> <li><a href="#SynthSettingsRing" title="Synth settings ring">Synth settings ring</a></li> <li><a href="#BrailleSettings" title="Braille">Braille</a><ul> <li><a href="#BrailleSettingsChange" title="Change braille display">Change braille display</a></li> <li><a href="#BrailleSettingsOutputTable" title="Output Table">Output Table</a></li> <li><a href="#BrailleSettingsInputTable" title="Input Table">Input Table</a></li> <li><a href="#BrailleMode" title="Braille mode">Braille mode</a></li> <li><a href="#BrailleSettingsExpandToComputerBraille" title="Expand to computer braille for the word at the cursor">Expand to computer braille for the word at the cursor</a></li> <li><a href="#BrailleSettingsShowCursor" title="Show Cursor">Show Cursor</a></li> <li><a href="#BrailleSettingsBlinkCursor" title="Blink Cursor">Blink Cursor</a></li> <li><a href="#BrailleSettingsBlinkRate" title="Cursor Blink Rate (ms)">Cursor Blink Rate (ms)</a></li> <li><a href="#BrailleSettingsCursorShapeForFocus" title="Cursor Shape for Focus">Cursor Shape for Focus</a></li> <li><a href="#BrailleSettingsCursorShapeForReview" title="Cursor Shape for Review">Cursor Shape for Review</a></li> <li><a href="#BrailleSettingsShowMessages" title="Show Messages">Show Messages</a></li> <li><a href="#BrailleSettingsMessageTimeout" title="Message Timeout (sec)">Message Timeout (sec)</a></li> <li><a href="#BrailleTether" title="Tether Braille">Tether Braille</a></li> <li><a href="#BrailleSettingsReviewRoutingMovesSystemCaret" title="Move system caret when routing review cursor">Move system caret when routing review cursor</a></li> <li><a href="#BrailleSettingsReadByParagraph" title="Read by Paragraph">Read by Paragraph</a></li> <li><a href="#BrailleParagraphStartMarkers" title="Paragraph start marker">Paragraph start marker</a></li> <li><a href="#BrailleSettingsFocusContextPresentation" title="Focus context presentation">Focus context presentation</a></li> <li><a href="#BrailleSettingsShowSelection" title="Show selection">Show selection</a></li> <li><a href="#BrailleFormattingDisplay" title="Formatting display">Formatting display</a><ul> <li><a href="#BrailleFormattingDisplayTags" title="Tags">Tags</a></li> </ul> </li> <li><a href="#BrailleSpeakOnRouting" title="Speak character when routing cursor in text">Speak character when routing cursor in text</a></li> <li><a href="#BrailleSettingsWordWrap" title="Avoid splitting words when possible">Avoid splitting words when possible</a></li> <li><a href="#BrailleUnicodeNormalization" title="Unicode normalization">Unicode normalization</a></li> <li><a href="#BrailleSettingsInterruptSpeech" title="Interrupt speech while scrolling">Interrupt speech while scrolling</a></li> </ul> </li> <li><a href="#SelectBrailleDisplay" title="Select Braille Display">Select Braille Display</a><ul> <li><a href="#OpenSelectBrailleDisplay" title="Open Select Braille Display dialog">Open Select Braille Display dialog</a></li> <li><a href="#SelectBrailleDisplayDisplay" title="Braille Display">Braille Display</a></li> <li><a href="#SelectBrailleDisplayAutoDetect" title="Displays to detect automatically">Displays to detect automatically</a></li> <li><a href="#SelectBrailleDisplayPort" title="Port">Port</a></li> </ul> </li> <li><a href="#AudioSettings" title="Audio">Audio</a><ul> <li><a href="#OpenAudioSettings" title="Open Audio settings">Open Audio settings</a></li> <li><a href="#SelectSynthesizerOutputDevice" title="Output device">Output device</a></li> <li><a href="#SelectSynthesizerDuckingMode" title="Audio Ducking Mode">Audio Ducking Mode</a></li> <li><a href="#SoundVolumeFollowsVoice" title="Volume of NVDA sounds follows voice volume">Volume of NVDA sounds follows voice volume</a></li> <li><a href="#SoundVolume" title="Volume of NVDA sounds">Volume of NVDA sounds</a></li> <li><a href="#SelectSoundSplitMode" title="Sound split">Sound split</a></li> <li><a href="#CustomizeSoundSplitModes" title="Customizing Sound split modes">Customizing Sound split modes</a></li> <li><a href="#AudioAwakeTime" title="Time to keep audio device awake after speech">Time to keep audio device awake after speech</a></li> </ul> </li> <li><a href="#VisionSettings" title="Vision">Vision</a><ul> <li><a href="#VisionSettingsFocusHighlight" title="Visual Highlight">Visual Highlight</a></li> <li><a href="#VisionSettingsScreenCurtain" title="Screen Curtain">Screen Curtain</a></li> <li><a href="#VisionSettingsThirdPartyVisualAids" title="Settings for third party visual aids">Settings for third party visual aids</a></li> </ul> </li> <li><a href="#KeyboardSettings" title="Keyboard">Keyboard</a><ul> <li><a href="#OpenKeyboardSettings" title="Open Keyboard settings">Open Keyboard settings</a></li> <li><a href="#KeyboardSettingsLayout" title="Keyboard layout">Keyboard layout</a></li> <li><a href="#KeyboardSettingsModifiers" title="Select NVDA Modifier Keys">Select NVDA Modifier Keys</a></li> <li><a href="#KeyboardSettingsSpeakTypedCharacters" title="Speak Typed Characters">Speak Typed Characters</a></li> <li><a href="#KeyboardSettingsSpeakTypedWords" title="Speak Typed Words">Speak Typed Words</a></li> <li><a href="#KeyboardSettingsSpeechInteruptForCharacters" title="Speech interrupt for typed characters">Speech interrupt for typed characters</a></li> <li><a href="#KeyboardSettingsSpeechInteruptForEnter" title="Speech interrupt for Enter key">Speech interrupt for Enter key</a></li> <li><a href="#KeyboardSettingsSkimReading" title="Allow skim reading in Say All">Allow skim reading in Say All</a></li> <li><a href="#KeyboardSettingsBeepLowercase" title="Beep if Typing Lowercase Letters when Caps Lock is On">Beep if Typing Lowercase Letters when Caps Lock is On</a></li> <li><a href="#KeyboardSettingsSpeakCommandKeys" title="Speak Command Keys">Speak Command Keys</a></li> <li><a href="#KeyboardSettingsAlertForSpellingErrors" title="Play sound for spelling errors while typing">Play sound for spelling errors while typing</a></li> <li><a href="#KeyboardSettingsHandleKeys" title="Handle keys from other applications">Handle keys from other applications</a></li> <li><a href="#MultiPressTimeout" title="Multiple key press timeout">Multiple key press timeout</a></li> </ul> </li> <li><a href="#MouseSettings" title="Mouse">Mouse</a><ul> <li><a href="#OpenMouseSettings" title="Open Mouse settings">Open Mouse settings</a></li> <li><a href="#MouseSettingsShape" title="Report Mouse Shape Changes">Report Mouse Shape Changes</a></li> <li><a href="#MouseSettingsTracking" title="Enable mouse tracking">Enable mouse tracking</a></li> <li><a href="#MouseSettingsTextUnit" title="Text unit resolution">Text unit resolution</a></li> <li><a href="#MouseSettingsRole" title="Report object when mouse enters it">Report object when mouse enters it</a></li> <li><a href="#MouseSettingsAudio" title="Play audio coordinates when mouse moves">Play audio coordinates when mouse moves</a></li> <li><a href="#MouseSettingsBrightness" title="Brightness controls audio coordinates volume">Brightness controls audio coordinates volume</a></li> <li><a href="#MouseSettingsHandleMouseControl" title="Ignore mouse input from other applications">Ignore mouse input from other applications</a></li> </ul> </li> <li><a href="#TouchInteraction" title="Touch Interaction">Touch Interaction</a><ul> <li><a href="#TouchSupportEnable" title="Enable touch interaction support">Enable touch interaction support</a></li> <li><a href="#TouchTypingMode" title="Touch typing mode">Touch typing mode</a></li> </ul> </li> <li><a href="#ReviewCursorSettings" title="Review Cursor">Review Cursor</a><ul> <li><a href="#ReviewCursorFollowFocus" title="Follow System Focus">Follow System Focus</a></li> <li><a href="#ReviewCursorFollowCaret" title="Follow System Caret">Follow System Caret</a></li> <li><a href="#ReviewCursorFollowMouse" title="Follow mouse cursor">Follow mouse cursor</a></li> <li><a href="#ReviewCursorSimple" title="Simple Review mode">Simple Review mode</a></li> </ul> </li> <li><a href="#ObjectPresentationSettings" title="Object Presentation">Object Presentation</a><ul> <li><a href="#OpenObjectPresentationSettings" title="Open Object Presentation settings">Open Object Presentation settings</a></li> <li><a href="#ObjectPresentationReportToolTips" title="Report tooltips">Report tooltips</a></li> <li><a href="#ObjectPresentationReportNotifications" title="Report notifications">Report notifications</a></li> <li><a href="#ObjectPresentationShortcutKeys" title="Report Object Shortcut Keys">Report Object Shortcut Keys</a></li> <li><a href="#ObjectPresentationPositionInfo" title="Report object position information">Report object position information</a></li> <li><a href="#ObjectPresentationGuessPositionInfo" title="Guess Object Position Information when unavailable">Guess Object Position Information when unavailable</a></li> <li><a href="#ObjectPresentationReportDescriptions" title="Report Object descriptions">Report Object descriptions</a></li> <li><a href="#ObjectPresentationProgressBarOutput" title="Progress bar output">Progress bar output</a></li> <li><a href="#ObjectPresentationReportBackgroundProgressBars" title="Report background progress bars">Report background progress bars</a></li> <li><a href="#ObjectPresentationReportDynamicContent" title="Report dynamic content changes">Report dynamic content changes</a></li> <li><a href="#ObjectPresentationSuggestionSounds" title="Play a sound when auto-suggestions appear">Play a sound when auto-suggestions appear</a></li> </ul> </li> <li><a href="#InputCompositionSettings" title="Input Composition">Input Composition</a><ul> <li><a href="#InputCompositionReportAllCandidates" title="Automatically report all available candidates">Automatically report all available candidates</a></li> <li><a href="#InputCompositionAnnounceSelectedCandidate" title="Announce Selected Candidate">Announce Selected Candidate</a></li> <li><a href="#InputCompositionCandidateIncludesShortCharacterDescription" title="Always include short character descriptions for candidates">Always include short character descriptions for candidates</a></li> <li><a href="#InputCompositionReadingStringChanges" title="Report changes to the reading string">Report changes to the reading string</a></li> <li><a href="#InputCompositionCompositionStringChanges" title="Report changes to the composition string">Report changes to the composition string</a></li> </ul> </li> <li><a href="#BrowseModeSettings" title="Browse Mode">Browse Mode</a><ul> <li><a href="#OpenBrowseModeSettings" title="Open Browse Mode settings">Open Browse Mode settings</a></li> <li><a href="#BrowseModeSettingsMaxLength" title="Maximum Number of Characters on One Line">Maximum Number of Characters on One Line</a></li> <li><a href="#BrowseModeSettingsPageLines" title="Maximum Lines Per Page">Maximum Lines Per Page</a></li> <li><a href="#BrowseModeSettingsScreenLayout" title="Use screen layout">Use screen layout</a></li> <li><a href="#BrowseModeSettingsEnableOnPageLoad" title="Enable browse mode on page load">Enable browse mode on page load</a></li> <li><a href="#BrowseModeSettingsAutoSayAll" title="Automatic Say All on page load">Automatic Say All on page load</a></li> <li><a href="#BrowseModeSettingsIncludeLayoutTables" title="Include layout tables">Include layout tables</a></li> <li><a href="#BrowseModeLinksAndHeadings" title="Configuring reporting of fields such as links and headings">Configuring reporting of fields such as links and headings</a></li> <li><a href="#BrowseModeSettingsAutoPassThroughOnFocusChange" title="Automatic focus mode for focus changes">Automatic focus mode for focus changes</a></li> <li><a href="#BrowseModeSettingsAutoPassThroughOnCaretMove" title="Automatic focus mode for caret movement">Automatic focus mode for caret movement</a></li> <li><a href="#BrowseModeSettingsPassThroughAudioIndication" title="Audio indication of Focus and Browse modes">Audio indication of Focus and Browse modes</a></li> <li><a href="#BrowseModeSettingsTrapNonCommandGestures" title="Trap non-command gestures from reaching the document">Trap non-command gestures from reaching the document</a></li> <li><a href="#BrowseModeSettingsAutoFocusFocusableElements" title="Automatically set system focus to focusable elements">Automatically set system focus to focusable elements</a></li> </ul> </li> <li><a href="#DocumentFormattingSettings" title="Document Formatting">Document Formatting</a><ul> <li><a href="#OpenDocumentFormattingSettings" title="Open Document Formatting settings">Open Document Formatting settings</a></li> <li><a href="#DocumentFormattingFontAttributes" title="Font attributes">Font attributes</a></li> <li><a href="#DocumentFormattingDetectFormatAfterCursor" title="Report formatting changes after the cursor">Report formatting changes after the cursor</a></li> <li><a href="#DocumentFormattingSettingsLineIndentation" title="Line indentation reporting">Line indentation reporting</a></li> </ul> </li> <li><a href="#DocumentNavigation" title="Document Navigation">Document Navigation</a><ul> <li><a href="#ParagraphStyle" title="Paragraph Style">Paragraph Style</a></li> </ul> </li> <li><a href="#AddonStoreSettings" title="Add-on Store Settings">Add-on Store Settings</a><ul> <li><a href="#AutomaticAddonUpdates" title="Update Notifications">Update Notifications</a></li> </ul> </li> <li><a href="#Win10OcrSettings" title="Windows OCR Settings">Windows OCR Settings</a><ul> <li><a href="#Win10OcrSettingsRecognitionLanguage" title="Recognition language">Recognition language</a></li> <li><a href="#Win10OcrSettingsAutoRefresh" title="Periodically refresh recognized content">Periodically refresh recognized content</a></li> </ul> </li> <li><a href="#AdvancedSettings" title="Advanced Settings">Advanced Settings</a><ul> <li><a href="#AdvancedSettingsMakingChanges" title="Making changes to advanced settings">Making changes to advanced settings</a></li> <li><a href="#AdvancedSettingsRestoringDefaults" title="Restoring the default settings">Restoring the default settings</a></li> <li><a href="#AdvancedSettingsEnableScratchpad" title="Enable loading custom code from Developer Scratchpad Directory">Enable loading custom code from Developer Scratchpad Directory</a></li> <li><a href="#AdvancedSettingsOpenScratchpadDir" title="Open Developer Scratchpad Directory">Open Developer Scratchpad Directory</a></li> <li><a href="#AdvancedSettingsSelectiveUIAEventRegistration" title="Registration for UI Automation events and property changes">Registration for UI Automation events and property changes</a></li> <li><a href="#MSWordUIA" title="Use UI automation to access Microsoft Word document controls">Use UI automation to access Microsoft Word document controls</a></li> <li><a href="#UseUiaForExcel" title="Use UI automation to access Microsoft Excel spreadsheet controls when available">Use UI automation to access Microsoft Excel spreadsheet controls when available</a></li> <li><a href="#UIAEnhancedEventProcessing" title="Use enhanced event processing">Use enhanced event processing</a></li> <li><a href="#AdvancedSettingsConsoleUIA" title="Windows Console support">Windows Console support</a></li> <li><a href="#ChromiumUIA" title="Use UIA with Microsoft Edge and other Chromium based browsers when available">Use UIA with Microsoft Edge and other Chromium based browsers when available</a></li> <li><a href="#Annotations" title="Annotations">Annotations</a></li> <li><a href="#BrailleLiveRegions" title="Report live regions">Report live regions</a></li> <li><a href="#AdvancedSettingsWinConsoleSpeakPasswords" title="Speak passwords in all enhanced terminals">Speak passwords in all enhanced terminals</a></li> <li><a href="#AdvancedSettingsKeyboardSupportInLegacy" title="Use enhanced typed character support in legacy Windows Console when available">Use enhanced typed character support in legacy Windows Console when available</a></li> <li><a href="#DiffAlgo" title="Diff algorithm">Diff algorithm</a></li> <li><a href="#WtStrategy" title="Speak new text in Windows Terminal via">Speak new text in Windows Terminal via</a></li> <li><a href="#CancelExpiredFocusSpeech" title="Attempt to cancel speech for expired focus events">Attempt to cancel speech for expired focus events</a></li> <li><a href="#AdvancedSettingsCaretMoveTimeout" title="Caret move timeout (in MS)">Caret move timeout (in MS)</a></li> <li><a href="#ReportTransparentColors" title="Report transparency for colors">Report transparency for colors</a></li> <li><a href="#WASAPI" title="Use WASAPI for audio output">Use WASAPI for audio output</a></li> <li><a href="#AdvancedSettingsDebugLoggingCategories" title="Debug logging categories">Debug logging categories</a></li> <li><a href="#PlayErrorSound" title="Play a sound for logged errors">Play a sound for logged errors</a></li> <li><a href="#TextParagraphRegexEdit" title="Regular expression for text paragraph quick navigation commands">Regular expression for text paragraph quick navigation commands</a></li> </ul> </li> </ul> </li> <li><a href="#MiscSettings" title="miscellaneous Settings">miscellaneous Settings</a><ul> <li><a href="#SpeechDictionaries" title="Speech dictionaries">Speech dictionaries</a></li> <li><a href="#SymbolPronunciation" title="Punctuation/symbol pronunciation">Punctuation/symbol pronunciation</a></li> <li><a href="#InputGestures" title="Input Gestures">Input Gestures</a></li> </ul> </li> <li><a href="#SavingAndReloading" title="Saving and Reloading the configuration">Saving and Reloading the configuration</a></li> <li><a href="#ConfigurationProfiles" title="Configuration Profiles">Configuration Profiles</a><ul> <li><a href="#ProfilesBasicManagement" title="Basic Management">Basic Management</a></li> <li><a href="#ProfilesCreating" title="Creating a Profile">Creating a Profile</a></li> <li><a href="#ConfigProfileManual" title="Manual Activation">Manual Activation</a></li> <li><a href="#ConfigProfileTriggers" title="Triggers">Triggers</a></li> <li><a href="#ConfigProfileEditing" title="Editing a Profile">Editing a Profile</a></li> <li><a href="#ConfigProfileDisablingTriggers" title="Temporarily Disabling Triggers">Temporarily Disabling Triggers</a></li> <li><a href="#ConfigProfileGestures" title="Activating a profile using input gestures">Activating a profile using input gestures</a></li> </ul> </li> <li><a href="#LocationOfConfigurationFiles" title="Location of Configuration files">Location of Configuration files</a></li> </ul> </li> <li><a href="#AddonsManager" title="Add-ons and the Add-on Store">Add-ons and the Add-on Store</a><ul> <li><a href="#AddonStoreBrowsing" title="Browsing add-ons">Browsing add-ons</a><ul> <li><a href="#AddonStoreFilterStatus" title="Add-on list views">Add-on list views</a></li> <li><a href="#AddonStoreFilterEnabled" title="Filtering for enabled or disabled add-ons">Filtering for enabled or disabled add-ons</a></li> <li><a href="#AddonStoreFilterIncompatible" title="Include incompatible add-ons">Include incompatible add-ons</a></li> <li><a href="#AddonStoreFilterChannel" title="Filter add-ons by channel">Filter add-ons by channel</a></li> <li><a href="#AddonStoreFilterSearch" title="Searching for add-ons">Searching for add-ons</a></li> </ul> </li> <li><a href="#AddonStoreActions" title="Add-on actions">Add-on actions</a><ul> <li><a href="#AddonStoreInstalling" title="Installing add-ons">Installing add-ons</a></li> <li><a href="#AddonStoreRemoving" title="Removing Add-ons">Removing Add-ons</a></li> <li><a href="#AddonStoreDisablingEnabling" title="Disabling and Enabling Add-ons">Disabling and Enabling Add-ons</a></li> <li><a href="#AddonStoreReviews" title="Reviewing add-ons and reading reviews">Reviewing add-ons and reading reviews</a></li> </ul> </li> <li><a href="#incompatibleAddonsManager" title="Incompatible Add-ons">Incompatible Add-ons</a></li> </ul> </li> <li><a href="#ExtraTools" title="Extra Tools">Extra Tools</a><ul> <li><a href="#LogViewer" title="Log Viewer">Log Viewer</a></li> <li><a href="#SpeechViewer" title="Speech Viewer">Speech Viewer</a></li> <li><a href="#BrailleViewer" title="Braille Viewer">Braille Viewer</a></li> <li><a href="#PythonConsole" title="Python Console">Python Console</a></li> <li><a href="#AddonStoreMenuItem" title="Add-on Store">Add-on Store</a></li> <li><a href="#CreatePortableCopy" title="Create portable copy">Create portable copy</a></li> <li><a href="#RunCOMRegistrationFixingTool" title="Run COM registration fixing tool...">Run COM registration fixing tool...</a></li> <li><a href="#ReloadPlugins" title="Reload plugins">Reload plugins</a></li> </ul> </li> <li><a href="#SupportedSpeechSynths" title="Supported Speech Synthesizers">Supported Speech Synthesizers</a><ul> <li><a href="#eSpeakNG" title="eSpeak NG">eSpeak NG</a></li> <li><a href="#SAPI4" title="Microsoft Speech API version 4 (SAPI 4)">Microsoft Speech API version 4 (SAPI 4)</a></li> <li><a href="#SAPI5" title="Microsoft Speech API version 5 (SAPI 5)">Microsoft Speech API version 5 (SAPI 5)</a></li> <li><a href="#MicrosoftSpeechPlatform" title="Microsoft Speech Platform">Microsoft Speech Platform</a></li> <li><a href="#OneCore" title="Windows OneCore Voices">Windows OneCore Voices</a></li> </ul> </li> <li><a href="#SupportedBrailleDisplays" title="Supported Braille Displays">Supported Braille Displays</a><ul> <li><a href="#AutomaticDetection" title="Displays supporting automatic detection in the background">Displays supporting automatic detection in the background</a></li> <li><a href="#FreedomScientificFocus" title="Freedom Scientific Focus/PAC Mate Series">Freedom Scientific Focus/PAC Mate Series</a></li> <li><a href="#OptelecALVA" title="Optelec ALVA 6 series/protocol converter">Optelec ALVA 6 series/protocol converter</a></li> <li><a href="#HandyTech" title="Handy Tech Displays">Handy Tech Displays</a></li> <li><a href="#MDVLilli" title="MDV Lilli">MDV Lilli</a></li> <li><a href="#Baum" title="Baum/Humanware/APH/Orbit Braille Displays">Baum/Humanware/APH/Orbit Braille Displays</a></li> <li><a href="#HedoProfiLine" title="hedo ProfiLine USB">hedo ProfiLine USB</a></li> <li><a href="#HedoMobilLine" title="hedo MobilLine USB">hedo MobilLine USB</a></li> <li><a href="#HumanWareBrailliant" title="HumanWare Brailliant BI/B Series / BrailleNote Touch">HumanWare Brailliant BI/B Series / BrailleNote Touch</a><ul> <li><a href="#HumanWareBrailliantKeyAssignmentForAllModels" title="Key assignments for All models">Key assignments for All models</a></li> <li><a href="#HumanWareBrailliantKeyAssignmentForBI32BI40AndB80" title="Key assignments for Brailliant BI 32, BI 40 and B 80">Key assignments for Brailliant BI 32, BI 40 and B 80</a></li> <li><a href="#HumanWareBrailliantKeyAssignmentForBI14" title="Key assignments for Brailliant BI 14">Key assignments for Brailliant BI 14</a></li> </ul> </li> <li><a href="#Hims" title="HIMS Braille Sense/Braille EDGE/Smart Beetle/Sync Braille Series">HIMS Braille Sense/Braille EDGE/Smart Beetle/Sync Braille Series</a></li> <li><a href="#Seika" title="Seika Braille Displays">Seika Braille Displays</a><ul> <li><a href="#SeikaBrailleDisplays" title="Seika Version 3, 4, and 5 (40 cells), Seika80 (80 cells)">Seika Version 3, 4, and 5 (40 cells), Seika80 (80 cells)</a></li> <li><a href="#SeikaNotetaker" title="MiniSeika (16, 24 cells), V6, and V6Pro (40 cells)">MiniSeika (16, 24 cells), V6, and V6Pro (40 cells)</a></li> </ul> </li> <li><a href="#Papenmeier" title="Papenmeier BRAILLEX Newer Models">Papenmeier BRAILLEX Newer Models</a></li> <li><a href="#PapenmeierOld" title="Papenmeier Braille BRAILLEX Older Models">Papenmeier Braille BRAILLEX Older Models</a></li> <li><a href="#HumanWareBrailleNote" title="HumanWare BrailleNote">HumanWare BrailleNote</a></li> <li><a href="#EcoBraille" title="EcoBraille">EcoBraille</a></li> <li><a href="#SuperBraille" title="SuperBraille">SuperBraille</a></li> <li><a href="#Eurobraille" title="Eurobraille displays">Eurobraille displays</a><ul> <li><a href="#EurobrailleBraille" title="Braille keyboard functions">Braille keyboard functions</a></li> <li><a href="#Eurobraillebbook" title="b.book keyboard commands">b.book keyboard commands</a></li> <li><a href="#Eurobraillebnote" title="b.note keyboard commands">b.note keyboard commands</a></li> <li><a href="#Eurobrailleesys" title="Esys keyboard commands">Esys keyboard commands</a></li> <li><a href="#EurobrailleEsytime" title="Esytime keyboard commands">Esytime keyboard commands</a></li> </ul> </li> <li><a href="#NattiqTechnologies" title="Nattiq nBraille Displays">Nattiq nBraille Displays</a></li> <li><a href="#BRLTTY" title="BRLTTY">BRLTTY</a></li> <li><a href="#Albatross" title="Tivomatic Caiku Albatross 46/80">Tivomatic Caiku Albatross 46/80</a></li> <li><a href="#HIDBraille" title="Standard HID Braille displays">Standard HID Braille displays</a></li> </ul> </li> <li><a href="#AdvancedTopics" title="Advanced Topics">Advanced Topics</a><ul> <li><a href="#SecureMode" title="Secure Mode">Secure Mode</a></li> <li><a href="#SecureScreens" title="Secure Screens">Secure Screens</a></li> <li><a href="#CommandLineOptions" title="Command Line Options">Command Line Options</a></li> <li><a href="#SystemWideParameters" title="System Wide Parameters">System Wide Parameters</a></li> </ul> </li> <li><a href="#FurtherInformation" title="Further Information">Further Information</a></li> </ul> </li> </ul> </div> <!-- KC:title: NVDA 2024.4.1 Commands Quick Reference --> <h2 id="Introduction">Introduction</h2> <p>Welcome to NVDA!</p> <p>NonVisual Desktop Access (NVDA) is a free and open source screen reader for the Microsoft Windows operating system. Providing feedback via synthetic speech and Braille, it enables blind or vision impaired people to access computers running Windows for no more cost than a sighted person. NVDA is developed by <a href="https://www.nvaccess.org/" rel="noopener" target="_blank" title="NV Access">NV Access</a>, with contributions from the community.</p> <h3 id="GeneralFeatures">General Features</h3> <p>NVDA allows blind and vision impaired people to access and interact with the Windows operating system and many third party applications.</p> <p>A short video demonstration, <a href="https://www.youtube.com/watch?v=tCFyyqy9mqo" rel="noopener" target="_blank" title="&quot;What is NVDA?&quot;">"What is NVDA?"</a> is available from the NV Access YouTube channel.</p> <p>Major highlights include:</p> <ul> <li>Support for popular applications including web browsers, email clients, internet chat programs and office suites</li> <li>Built-in speech synthesizer supporting over 80 languages</li> <li>Reporting of textual formatting where available such as font name and size, style and spelling errors</li> <li>Automatic announcement of text under the mouse and optional audible indication of the mouse position</li> <li>Support for many refreshable braille displays, including the ability to detect many of them automatically as well as braille input on braille displays with a braille keyboard</li> <li>Ability to run entirely from a USB flash drive or other portable media without the need for installation</li> <li>Easy to use talking installer</li> <li>Translated into 54 languages</li> <li>Support for modern Windows Operating Systems including both 32 and 64 bit variants</li> <li>Ability to run during Windows sign-in and <a href="#SecureScreens" title="other secure screens">other secure screens</a>.</li> <li>Announcing controls and text while using touch gestures</li> <li>Support for common accessibility interfaces such as Microsoft Active Accessibility, Java Access Bridge, IAccessible2 and UI Automation</li> <li>Support for Windows Command Prompt and console applications</li> <li>The ability to highlight the system focus</li> </ul> <h3 id="SystemRequirements">System Requirements</h3> <h4 id="MinimumSystemRequirements">Minimum System Requirements</h4> <ul> <li>Operating Systems: all 32-bit and 64-bit editions of Windows 8.1, Windows 10, Windows 11, and all Server Operating Systems starting from Windows Server 2012 R2.<ul> <li>both AMD64 and ARM64 variants of Windows are supported.</li> <li>Note that 32-bit operating systems are no longer under active support.</li> <li>Note that Windows 8.1 and Windows Server versions older than 2022 are no longer under active support.</li> </ul> </li> <li>at least 500 MB of storage space.</li> </ul> <h4 id="RecommendedSystemRequirements">Recommended System Requirements</h4> <ul> <li>Operating Systems: 64-bit editions of Windows 10, Windows 11, and Windows Server 2022.<ul> <li>both AMD64 and ARM64 variants of Windows are supported.</li> </ul> </li> <li>at least 500 MB of storage space.</li> <li>at least 4 GB of RAM.</li> </ul> <h3 id="Internationalization">Internationalization</h3> <p>It is important that people anywhere in the world, no matter what language they speak, get equal access to technology. Besides English, NVDA has been translated into 54 languages including: Afrikaans, Albanian, Amharic, Arabic, Aragonese, Bulgarian, Burmese, Catalan, Chinese (simplified and traditional), Croatian, Czech, Danish, Dutch, Farsi, Finnish, French, Galician, Georgian, German (Germany and Switzerland), Greek, Hebrew, Hindi, Hungarian, Icelandic, Irish, Italian, Japanese, Kannada, Korean, Kyrgyz, Lithuanian, Macedonian, Mongolian, Nepali, Norwegian, Polish, Portuguese (Brazil and Portugal), Punjabi, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish (Colombia and Spain), Swedish, Tamil, Thai, Turkish, Ukrainian and Vietnamese.</p> <h3 id="SpeechSynthesizerSupport">Speech Synthesizer Support</h3> <p>Apart from providing its messages and interface in several languages, NVDA can also enable the user to read content in any language, as long as they have a speech synthesizer that can speak that language.</p> <p>NVDA is bundled with <a href="https://github.com/espeak-ng/espeak-ng" rel="noopener" target="_blank" title="eSpeak NG">eSpeak NG</a>, a free, open-source, multi-lingual speech synthesizer.</p> <p>Information about other speech synthesizers that NVDA supports can be found in the <a href="#SupportedSpeechSynths" title="Supported Speech Synthesizers">Supported Speech Synthesizers</a> section.</p> <h3 id="BrailleSupport">Braille support</h3> <p>For users that own a refreshable braille display, NVDA can output its information in braille. NVDA uses the open source braille translator <a href="https://liblouis.io/" rel="noopener" target="_blank" title="LibLouis">LibLouis</a> to generate braille sequences from text. Both uncontracted and contracted braille input via a braille keyboard is also supported. Furthermore, NVDA will detect many braille displays automatically by default. Please see the <a href="#SupportedBrailleDisplays" title="Supported Braille Displays">Supported Braille Displays</a> section for information about the supported braille displays.</p> <p>NVDA supports braille codes for many languages, including contracted, uncontracted and computer braille codes.</p> <h3 id="LicenseAndCopyright">License and Copyright</h3> <p>NVDA is copyright 2006-2024 NVDA contributors.</p> <p>NVDA is available under the GNU General Public License version 2, with two special exceptions. The exceptions are outlined in the license document under the sections "Non-GPL Components in Plugins and Drivers" and "Microsoft Distributable Code". NVDA also includes and uses components which are made available under different free and open source licenses. You are free to share or change this software in any way you like as long as it is accompanied by the license and you make all source code available to anyone who wants it. This applies to both original and modified copies of this software, plus any derivative works.</p> <p>For further details, you can <a href="https://www.gnu.org/licenses/old-licenses/gpl-2.0.html" rel="noopener" target="_blank" title="view the full license.">view the full license.</a> For details regarding exceptions, access the license document from the NVDA menu under the "help" section.</p> <h2 id="NVDAQuickStartGuide">NVDA Quick Start Guide</h2> <p>This quick start guide contains three main sections: downloading, initial setup, and running NVDA. These are followed by information on adjusting preferences, using add-ons, participating in the community and getting help. The information in this guide is condensed from other parts of the NVDA User Guide. Please refer to the full User Guide for more detailed information on each topic.</p> <h3 id="GettingAndSettingUpNVDA">Downloading NVDA</h3> <p>NVDA is completely free for anyone to use. There is no license key to worry about or expensive subscription to pay. NVDA is updated, on average, four times per year. The latest version of NVDA is always available from the "Download" page of the <a href="https://www.nvaccess.org" rel="noopener" target="_blank" title="NV Access website">NV Access website</a>.</p> <p>NVDA works with all recent versions of Microsoft Windows. Check the <a href="#SystemRequirements" title="System Requirements">System Requirements</a> for full details.</p> <h4 id="StepsForDownloadingNVDA">Steps for Downloading NVDA</h4> <p>These steps assume some familiarity with navigating a web page.</p> <ul> <li>Open your web browser (Press the <code>Windows</code> key, type the word "internet" without quotes, and press <code>enter</code>)</li> <li>Load the NV Access download page (Press <code>alt+d</code>, type the following address and press <code>enter</code>): https://www.nvaccess.org/download</li> <li>Activate the "download" button</li> <li>The browser may or may not prompt for an action after downloading, and then start the download</li> <li>Depending on the browser, the file may run automatically after it downloads</li> <li>If the file needs to be manually launched, press <code>alt+n</code> to move to the notification area, then <code>alt+r</code> to run the file (or the steps for your browser)</li> </ul> <h3 id="SettingUpNVDA">Setting up NVDA</h3> <p>Running the file you have just downloaded will start a temporary copy of NVDA. You will then be asked if you want to install NVDA, create a portable copy or just continue using the temporary copy.</p> <p>NVDA does not need access to the Internet to run or install once the launcher is downloaded. If available, an internet connection does enable NVDA to check for updates periodically.</p> <h4 id="StepsForRunningTheDownloadLauncher">Steps for running the downloaded launcher</h4> <p>The setup file is named "nvda_2022.1.exe" or similar. The year and version changes between updates to reflect the current release.</p> <ol> <li>Run the downloaded file. Music plays while a temporary copy of NVDA loads. Once loaded, NVDA will speak throughout the rest of the process.</li> <li>The NVDA Launcher window appears with the license agreement. Press <code>downArrow</code> to read the license agreement if desired.</li> <li>Press <code>tab</code> to move to the "I agree" checkbox, then press the <code>spacebar</code> to check it.</li> <li>Press <code>tab</code> to move through the options, then press <code>enter</code> on the desired option.</li> </ol> <p>The options are:</p> <ul> <li>"Install NVDA on this computer": This is the main option most users want for easy use of NVDA.</li> <li>"Create portable copy": This allows NVDA to be setup in any folder without installing. This is useful on computers without admin rights, or on a memory stick to carry with you. When selected, NVDA walks through the steps to create a portable copy. The main thing NVDA needs to know is the folder to setup the portable copy in.</li> <li>"Continue running": This keeps the temporary copy of NVDA running. This is useful for testing features in a new version before installing it. When selected, the launcher window closes and the temporary copy of NVDA continues running until it is exited or the PC is shut down. Note that changes to settings are not saved.</li> <li>"Cancel": This closes NVDA without performing any action.</li> </ul> <p>If you plan to always use NVDA on this computer, you will want to choose to install NVDA. Installing NVDA will allow for additional functionality such as automatic starting after sign-in, the ability to read the Windows sign-in and <a href="#SecureScreens" title="secure screens">secure screens</a>. These cannot be done with portable and temporary copies. For full details of the limitations when running a portable or temporary copy of NVDA, please see <a href="#PortableAndTemporaryCopyRestrictions" title="Portable and temporary copy restrictions">Portable and temporary copy restrictions</a>.</p> <p>Installing also offers to create Start Menu and desktop shortcuts, and allow NVDA to be started with <code>control+alt+n</code>.</p> <h4 id="StepsForInstallingNVDAFromTheLauncher">Steps for installing NVDA from the launcher</h4> <p>These steps walk through the most common setup options. For more details on the options available, please see <a href="#InstallingNVDA" title="Installation options">Installation options</a>.</p> <ol> <li>From the launcher, ensure the checkbox to agree to the license is checked.</li> <li><code>Tab</code> to, and activate the "Install NVDA on this computer" button.</li> <li>Next, are options to use NVDA during Windows sign-in and to create a desktop shortcut. These are checked by default. If desired, press <code>tab</code> and <code>spaceBar</code> to change any of these options, or leave them at the default.</li> <li>Press <code>enter</code> to continue.</li> <li>A Windows "User Account Control (UAC)" dialog appears asking "Do you want to allow this app to make changes to your PC?".</li> <li>Press <code>alt+y</code> to accept the UAC prompt.</li> <li>A progress bar fills up as NVDA installs. During this process NVDA sounds an increasingly higher pitched beep. This process is often fast and may not be noticed.</li> <li>A dialog box appears confirm that the install of NVDA has been successful. The message advises to "Press OK to start the installed copy". Press <code>enter</code> to start the installed copy.</li> <li>The "Welcome to NVDA" dialog appears, and NVDA reads a welcome message. The focus is on the "Keyboard Layout" drop-down. By default, "Desktop" keyboard layout uses the number pad for some function. If desired, press <code>downArrow</code> to choose "Laptop" keyboard layout to reassign number pad functions to other keys.</li> <li>Press <code>tab</code> to move to "Use <code>capsLock</code> as an NVDA modifier key". <code>Insert</code> is set as the NVDA modifier key by default. Press <code>spaceBar</code> to select <code>capsLock</code> as an alternate modifier key. Note that the keyboard layout is set separately from the NVDA modifier key. The NVDA key and keyboard layout can be changed later from the Keyboard Settings.</li> <li>Use <code>tab</code> and <code>spaceBar</code> to adjust the other options on this screen. These set whether NVDA starts automatically.</li> <li>Press <code>enter</code> to close the dialog box with NVDA now running.</li> </ol> <h3 id="RunningNVDA">Running NVDA</h3> <p>The full NVDA user guide has all the NVDA commands, split up into different sections for reference. The tables of commands are also available in the "Commands Quick Reference". The "Basic Training for NVDA" NVDA training module has each command in more depth with step-by-step activities. "Basic Training for NVDA" is available from the <a href="http://www.nvaccess.org/shop" rel="noopener" target="_blank" title="NV Access Shop">NV Access Shop</a>.</p> <p>Here are some basic commands which are used frequently. All commands are configurable, so these are the default keystrokes for these functions.</p> <h4 id="NVDAModifierKey">The NVDA Modifier Key</h4> <p>The default NVDA modifier key is either the <code>numpadZero</code>, (with <code>numLock</code> off), or the <code>insert</code> key, near the <code>delete</code>, <code>home</code> and <code>end</code> keys. The NVDA modifier key can also be set to the <code>capsLock</code> key.</p> <h4 id="InputHelp">Input Help</h4> <p>To learn and practice the location of keys, press <code>NVDA+1</code> to turn Input help on. While in input help mode, performing any input gesture (such as pressing a key or performing a touch gesture) will report the action and describe what it does (if anything). The actual commands will not execute while in input help mode.</p> <h4 id="StartingAndStoppingNVDA">Starting and stopping NVDA</h4> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Start NVDA</td> <td><code>control+alt+n</code></td> <td><code>control+alt+n</code></td> <td>Starts or restarts NVDA</td> </tr> <tr> <td>Exit NVDA</td> <td><code>NVDA+q</code>, then <code>enter</code></td> <td><code>NVDA+q</code>, then <code>enter</code></td> <td>Exits NVDA</td> </tr> <tr> <td>Pause or restart speech</td> <td><code>shift</code></td> <td><code>shift</code></td> <td>Instantly pauses speech. Pressing it again will continue speaking where it left off</td> </tr> <tr> <td>Stop speech</td> <td><code>control</code></td> <td><code>control</code></td> <td>Instantly stops speaking</td> </tr> </tbody> </table> <h4 id="ReadingText">Reading text</h4> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Say all</td> <td><code>NVDA+downArrow</code></td> <td><code>NVDA+a</code></td> <td>Starts reading from the current position, moving it along as it goes</td> </tr> <tr> <td>Read current line</td> <td><code>NVDA+upArrow</code></td> <td><code>NVDA+l</code></td> <td>Reads the line. Pressing twice spells the line. Pressing three times spells the line using character descriptions (Alpha, Bravo, Charlie, etc)</td> </tr> <tr> <td>Read selection</td> <td><code>NVDA+shift+upArrow</code></td> <td><code>NVDA+shift+s</code></td> <td>Reads any selected text. Pressing twice will spell the information. Pressing three times will spell it using character description</td> </tr> <tr> <td>Read clipboard text</td> <td><code>NVDA+c</code></td> <td><code>NVDA+c</code></td> <td>Reads any text on the clipboard. Pressing twice will spell the information. Pressing three times will spell it using character description</td> </tr> </tbody> </table> <h4 id="ReportingLocation">Reporting location and other information</h4> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Window title</td> <td><code>NVDA+t</code></td> <td><code>NVDA+t</code></td> <td>Reports the title of the currently active window. Pressing twice will spell the information. Pressing three times will copy it to the clipboard</td> </tr> <tr> <td>Report focus</td> <td><code>NVDA+tab</code></td> <td><code>NVDA+tab</code></td> <td>Reports the current control which has focus. Pressing twice will spell the information. Pressing three times will spell it using character description</td> </tr> <tr> <td>Read window</td> <td><code>NVDA+b</code></td> <td><code>NVDA+b</code></td> <td>Reads the entire current window (useful for dialogs)</td> </tr> <tr> <td>Read status bar</td> <td><code>NVDA+end</code></td> <td><code>NVDA+shift+end</code></td> <td>Reports the Status Bar if NVDA finds one. Pressing twice will spell the information. Pressing three times will copy it to the clipboard</td> </tr> <tr> <td>Read time</td> <td><code>NVDA+f12</code></td> <td><code>NVDA+f12</code></td> <td>Pressing once reports the current time, pressing twice reports the date. The time and date are reported in the format specified in Windows settings for the system tray clock.</td> </tr> <tr> <td>Report text formatting</td> <td><code>NVDA+f</code></td> <td><code>NVDA+f</code></td> <td>Reports text formatting. Pressing twice shows the information in a window</td> </tr> <tr> <td>Report link destination</td> <td><code>NVDA+k</code></td> <td><code>NVDA+k</code></td> <td>Pressing once speaks the destination URL of the link at the current caret or focus position. Pressing twice shows it in a window for more careful review</td> </tr> </tbody> </table> <h4 id="ToggleWhichInformationNVDAReads">Toggle which information NVDA reads</h4> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Speak typed characters</td> <td><code>NVDA+2</code></td> <td><code>NVDA+2</code></td> <td>When enabled, NVDA will announce all characters you type on the keyboard.</td> </tr> <tr> <td>Speak typed words</td> <td><code>NVDA+3</code></td> <td><code>NVDA+3</code></td> <td>When enabled, NVDA will announce word you type on the keyboard.</td> </tr> <tr> <td>Speak command keys</td> <td><code>NVDA+4</code></td> <td><code>NVDA+4</code></td> <td>When enabled, NVDA will announce all non-character keys you type on the keyboard. This includes key combinations such as control plus another letter.</td> </tr> <tr> <td>Enable mouse tracking</td> <td><code>NVDA+m</code></td> <td><code>NVDA+m</code></td> <td>When enabled, NVDA will announce the text currently under the mouse pointer, as you move it around the screen. This allows you to find things on the screen, by physically moving the mouse, rather than trying to find them through object navigation.</td> </tr> </tbody> </table> <h4 id="TheSynthSettingsRing">The synth settings ring</h4> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Move to next synth setting</td> <td><code>NVDA+control+rightArrow</code></td> <td><code>NVDA+shift+control+rightArrow</code></td> <td>Moves to the next available speech setting after the current, wrapping around to the first setting again after the last</td> </tr> <tr> <td>Move to previous synth setting</td> <td><code>NVDA+control+leftArrow</code></td> <td><code>NVDA+shift+control+leftArrow</code></td> <td>Moves to the next available speech setting before the current, wrapping around to the last setting after the first</td> </tr> <tr> <td>Increment current synth setting</td> <td><code>NVDA+control+upArrow</code></td> <td><code>NVDA+shift+control+upArrow</code></td> <td>increases the current speech setting you are on. E.g. increases the rate, chooses the next voice, increases the volume</td> </tr> <tr> <td>Increment the current synth setting in larger steps</td> <td><code>NVDA+control+pageUp</code></td> <td><code>NVDA+shift+control+pageUp</code></td> <td>Increases the value of the current speech setting you're on in larger steps. e.g. when you're on a voice setting, it will jump forward every 20 voices; when you're on slider settings (rate, pitch, etc) it will jump forward the value up to 20%</td> </tr> <tr> <td>Decrement current synth setting</td> <td><code>NVDA+control+downArrow</code></td> <td><code>NVDA+shift+control+downArrow</code></td> <td>decreases the current speech setting you are on. E.g. decreases the rate, chooses the previous voice, decreases the volume</td> </tr> <tr> <td>Decrement the current synth setting in larger steps</td> <td><code>NVDA+control+pageDown</code></td> <td><code>NVDA+shift+control+pageDown</code></td> <td>Decreases the value of the current speech setting you're on in larger steps. e.g. when you're on a voice setting, it will jump backward every 20 voices; when you're on a slider setting, it will jump backward the value up to 20%.</td> </tr> </tbody> </table> <p>It is also possible to set the first or last value of the current synth setting by assign custom gestures in <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>, under the speech category. This means, for example, when you're on a rate setting, it will set the rate to 0 or 100. When you're on a voice setting, it will set the first or last voice.</p> <h4 id="WebNavigation">Web navigation</h4> <p>The full list of Single Letter Navigation keys is in the <a href="#BrowseMode" title="Browse Mode">Browse Mode</a> section of the user guide.</p> <table> <thead> <tr> <th>Command</th> <th>Keystroke</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Heading</td> <td><code>h</code></td> <td>Move to the next heading</td> </tr> <tr> <td>Heading level 1, 2, or 3</td> <td><code>1</code>, <code>2</code>, <code>3</code></td> <td>Move to the next heading at the specified level</td> </tr> <tr> <td>Form field</td> <td><code>f</code></td> <td>Move to the next form field (edit box, button, etc)</td> </tr> <tr> <td>Link</td> <td><code>k</code></td> <td>Move to the next link</td> </tr> <tr> <td>Landmark</td> <td><code>d</code></td> <td>Move to the next landmark</td> </tr> <tr> <td>List</td> <td><code>l</code></td> <td>Move to the next list</td> </tr> <tr> <td>Table</td> <td><code>t</code></td> <td>Move to the next table</td> </tr> <tr> <td>Move backwards</td> <td><code>shift+letter</code></td> <td>Press <code>shift</code> and any of the above letters to move to the previous element of that type</td> </tr> <tr> <td>Elements list</td> <td><code>NVDA+f7</code></td> <td>Lists various types of elements, such as links and headings</td> </tr> </tbody> </table> <h3 id="Preferences">Preferences</h3> <p>Most NVDA functions can be enabled or changed via the NVDA settings. Settings, and other options, are available via NVDA's menu. To open NVDA's menu, press <code>NVDA+n</code>. To open NVDA's general settings dialog directly, press <code>NVDA+control+g</code>. Many settings screens have keystrokes to open them directly, such as <code>NVDA+control+s</code> for synthesizer, or <code>NVDA+control+v</code> for other voice options.</p> <h3 id="Addons">Add-ons</h3> <p>Add-ons are programs which provide new or changed functionality for NVDA. Add-ons are developed by the NVDA community, or external companies and are unaffiliated with NV Access. As with any software, it is important to trust the developer of an add-on before using it. Please refer to <a href="#AddonStoreInstalling" title="Installing Add-ons">Installing Add-ons</a> for ways to verify add-ons prior to installation.</p> <p>The first time the Add-on Store is opened, NVDA displays a warning about add-ons. Add-ons are not vetted by NV Access and may have unrestricted functionality and access to information. Press <code>spacebar</code> if you have read the warning and do not need to see it next time. Press <code>tab</code> to reach the "OK" button, then <code>enter</code> to accept the warning and proceed to the Add-on Store. The "<a href="#AddonsManager" title="Add-ons and the Add-on Store">Add-ons and the Add-on Store</a>" section of the User Guide contains information about every feature of the Add-on Store.</p> <p>The Add-on Store is available from the Tools menu. Press <code>NVDA+n</code> to open the NVDA menu, then <code>t</code> for tools, then <code>a</code> for Add-on Store. When the Add-on Store opens, it shows "Available add-ons" if no add-ons are installed. When add-ons are installed, the Add-on Store opens to the "Installed add-ons" tab.</p> <h4 id="AvailableAddons">Available add-ons</h4> <p>When the window first opens, add-ons may take a few seconds to load. NVDA will read the name of the first add-on once the list of add-ons finishes loading. Available add-ons are listed alphabetically in a multi-column list. To browse the list and find out about a specific add-on:</p> <ol> <li>Use the arrow keys or press the first letter of an add-on name to move around the list.</li> <li>Press <code>tab</code> once to move to a description of the currently selected add-on.</li> <li>Use the <a href="#ReadingText" title="reading keys">reading keys</a> or arrow keys to read the full description.</li> <li>Press <code>tab</code> to the "Actions" button, which can be used to install the add-on, among other actions.</li> <li>Press <code>tab</code> to "Other Details", which lists details such as the publisher, version and homepage.</li> <li>To return to the list of add-ons, press <code>alt+a</code>, or <code>shift+tab</code> until reaching the list.</li> </ol> <h4 id="SearchingForAddons">Searching for add-ons</h4> <p>As well as browsing all available add-ons, it is possible to filter the add-ons shown. To search, press <code>alt+s</code> to jump to the "Search" field and type the text to search for. Searching checks for matches in the add-on ID, display name, publisher, author and description fields. The list updates while typing the search terms. Once done, press <code>tab</code> to go to the filtered list of add-ons and browse the results.</p> <h4 id="InstallingAddons">Installing add-ons</h4> <p>To install an add-on:</p> <ol> <li>With the focus on an add-on you would like to install, press <code>enter</code>.</li> <li>The actions menu opens with a list of actions; the first action is "Install".</li> <li>To install the add-on, press <code>i</code> or <code>downArrow</code> to "Install" and press <code>enter</code>.</li> <li>The focus returns to the add-on in the list and NVDA will read the details about the add-on.</li> <li>The "Status" information reported by NVDA changes from "Available" to "Downloading".</li> <li>Once the add-on has finished downloading, it will change to "Downloaded. Pending install".</li> <li>Repeat with any other add-ons you would like to install at the same time.</li> <li>Once finished, press <code>tab</code> until the focus is on the "Close" button, then press <code>enter</code>.</li> <li>The downloaded add-ons will start the installation process once the Add-on Store is closed. During the installation process, add-ons may display dialogs that you will need to respond to.</li> <li>When the add-ons have been installed, a dialog appears advising that changes were made, and you must restart NVDA for the add-on installation to complete.</li> <li>Press <code>enter</code> to restart NVDA.</li> </ol> <h4 id="ManagingInstalledAddons">Managing installed add-ons</h4> <p>Press <code>control+tab</code> to move between the tabs of the Add-on Store. The tabs include: "Installed add-ons", "Updatable add-ons", "Available add-ons" and "Installed incompatible add-ons". Each of the tabs are set out similar to each other, as a list of add-ons, a panel for more details on the selected add-on, and a button to perform actions for the selected add-on. The actions menu of installed add-ons includes "Disable" and "Remove" rather than "Install". Disabling an add-on stops NVDA from loading it, but leaves it installed. To re-enable a disabled add-on, activate "Enable" from the actions menu. After enabling, disabling, or removing add-ons, you will be prompted to restart NVDA when closing the Add-on Store. These changes will only take effect once NVDA is restarted. Note that in the Add-on Store window <code>escape</code> works the same as the Close button.</p> <h4 id="UpdatingAddons">Updating add-ons</h4> <p>When an update to an add-on you have installed is available, it will be listed in the "Updatable add-ons" tab. Press <code>control+tab</code> to get to this tab from anywhere in the Add-on Store. The status of the add-on will be listed as "Update available". The list will display the currently installed version and the available version. Press <code>enter</code> on the add-on to open the actions list; choose "Update".</p> <p>By default, after NVDA startup, you will be notified if any add-on updates are available. To learn more about and configure this behaviour, refer to <a href="#AutomaticAddonUpdates" title="&quot;Update Notifications&quot;">"Update Notifications"</a>.</p> <h3 id="Community">Community</h3> <p>NVDA has a vibrant user community. There is a main <a href="https://nvda.groups.io/g/nvda" rel="noopener" target="_blank" title="English language email list">English language email list</a> and a page full of <a href="https://github.com/nvaccess/nvda/wiki/Connect" rel="noopener" target="_blank" title="local language groups">local language groups</a>. NV Access, makers of NVDA, are active on <a href="https://twitter.com/nvaccess" rel="noopener" target="_blank" title="Twitter">Twitter</a> and <a href="https://www.facebook.com/NVAccess" rel="noopener" target="_blank" title="Facebook">Facebook</a>. NV Access also have a regular <a href="https://www.nvaccess.org/category/in-process/" rel="noopener" target="_blank" title="In-Process blog">In-Process blog</a>.</p> <p>There is also an <a href="https://certification.nvaccess.org/" rel="noopener" target="_blank" title="NVDA Certified Expert">NVDA Certified Expert</a> program. This is an online exam you can complete to demonstrate your skills in NVDA. <a href="https://certification.nvaccess.org/" rel="noopener" target="_blank" title="NVDA Certified Experts">NVDA Certified Experts</a> can list their contact and relevant business details.</p> <h3 id="GettingHelp">Getting help</h3> <p>To get help for NVDA, press <code>NVDA+n</code> to open the menu, then <code>h</code> for help. From this submenu you can access the User Guide, a quick reference of commands, history of new features and more. These first three options open in the default web browser. There is also more comprehensive Training Material available in the <a href="https://www.nvaccess.org/shop" rel="noopener" target="_blank" title="NV Access Shop">NV Access Shop</a>.</p> <p>We recommend starting with the "Basic Training for NVDA module". This module covers concepts from getting started up to browsing the web and using object navigation. It is available in:</p> <ul> <li><a href="https://www.nvaccess.org/product/basic-training-for-nvda-ebook/" rel="noopener" target="_blank" title="Electronic text">Electronic text</a>, which includes Word DOCX, Web page HTML, eBook ePub and Kindle KFX formats.</li> <li><a href="https://www.nvaccess.org/product/basic-training-for-nvda-downloadable-audio/" rel="noopener" target="_blank" title="Human-read, MP3 audio">Human-read, MP3 audio</a></li> <li><a href="https://www.nvaccess.org/product/basic-training-for-nvda-braille-hard-copy/" rel="noopener" target="_blank" title="Hard-copy UEB Braille">Hard-copy UEB Braille</a> with delivery included anywhere in the world.</li> </ul> <p>Other modules, and the discounted <a href="https://www.nvaccess.org/product/nvda-productivity-bundle/" rel="noopener" target="_blank" title="NVDA Productivity Bundle">NVDA Productivity Bundle</a>, are available in the <a href="https://www.nvaccess.org/shop/" rel="noopener" target="_blank" title="NV Access Shop">NV Access Shop</a>.</p> <p>NV Access also sells <a href="https://www.nvaccess.org/product/nvda-telephone-support/" rel="noopener" target="_blank" title="telephone support">telephone support</a>, either in blocks, or as part of the <a href="https://www.nvaccess.org/product/nvda-productivity-bundle/" rel="noopener" target="_blank" title="NVDA Productivity Bundle">NVDA Productivity Bundle</a>. Telephone support includes local numbers in Australia and the USA.</p> <p>The <a href="https://github.com/nvaccess/nvda/wiki/Connect" rel="noopener" target="_blank" title="email user groups">email user groups</a> are a great source of community help, as are <a href="https://certification.nvaccess.org/" rel="noopener" target="_blank" title="certified NVDA experts">certified NVDA experts</a>.</p> <p>You can make bug reports or feature requests via <a href="https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/readme.md" rel="noopener" target="_blank" title="GitHub">GitHub</a>. The <a href="https://github.com/nvaccess/nvda/blob/master/.github/CONTRIBUTING.md" rel="noopener" target="_blank" title="contribution guidelines">contribution guidelines</a> contain valuable information for contributing to the community.</p> <h2 id="MoreSetupOptions">More Setup Options</h2> <h3 id="InstallingNVDA">Installation Options</h3> <p>If installing NVDA directly from the downloaded NVDA launcher, press the Install NVDA button. If you have already closed this dialog or are wanting to install from a portable copy, please choose the Install NVDA menu item found under Tools in the NVDA menu.</p> <p>The installation dialog that appears will confirm whether you wish to install NVDA and will also tell you whether this installation will be updating a previous install. Pressing the Continue button will start installing NVDA. There are also a few options in this dialog which are explained below. Once the installation has completed, a message will appear telling you that it was successful. Pressing OK at this point will restart the newly installed copy of NVDA.</p> <h4 id="InstallWithIncompatibleAddons">Incompatible add-ons warning</h4> <p>If you have add-ons already installed there may also be a warning that incompatible add-ons will be disabled. Before you're able to press the Continue button you will have to use the checkbox to confirm that you understand that these add-ons will be disabled. There will also be a button present to review the add-ons that will be disabled. Refer to the <a href="#incompatibleAddonsManager" title="incompatible add-ons dialog section">incompatible add-ons dialog section</a> for more help on this button. After installation, you are able to re-enable incompatible add-ons at your own risk from within the <a href="#AddonsManager" title="Add-on Store">Add-on Store</a>.</p> <h4 id="StartAtWindowsLogon">Use NVDA during sign-in</h4> <p>This option allows you to choose whether or not NVDA should automatically start while at the Windows sign-in screen, before you have entered a password. This also includes User Account Control and <a href="#SecureScreens" title="other secure screens">other secure screens</a>. This option is enabled by default for fresh installations.</p> <h4 id="CreateDesktopShortcut">Create Desktop Shortcut (ctrl+alt+n)</h4> <p>This option allows you to choose whether or not NVDA should create a shortcut on the desktop to start NVDA. If created, this shortcut will also be assigned a shortcut key of <code>control+alt+n</code>, allowing you to start NVDA at any time with this keystroke.</p> <h4 id="CopyPortableConfigurationToCurrentUserAccount">Copy Portable Configuration to Current User Account</h4> <p>This option allows you to choose whether or not NVDA should copy the user configuration from the currently running NVDA into the configuration for the currently logged on user, for the installed copy of NVDA. This will not copy the configuration for any other users of this system nor to the system configuration for use during Windows sign-in and <a href="#SecureScreens" title="other secure screens">other secure screens</a>. This option is only available when installing from a portable copy, not when installing directly from the downloaded Launcher package.</p> <h3 id="CreatingAPortableCopy">Creating a Portable Copy</h3> <p>If creating a portable copy directly from the NVDA download package, press the Create Portable Copy button. If you have already closed this dialog or you are running an installed copy of NVDA, choose the Create Portable copy menu item found under Tools in the NVDA menu.</p> <p>The dialog that appears allows you to choose where the portable copy should be created. This can be a directory on your hard drive or a location on a USB thumb drive or other portable media. By default, a new directory is created for the portable copy. You can also choose to use an existing directory, this will overwrite files in the directory. If the existing directory is a portable copy of NVDA, that copy will be updated.</p> <p>There is also an option to choose whether NVDA should copy the logged on user's current NVDA configuration for use with the newly created portable copy. This also includes add-ons. This option is only available when creating a portable copy from an installed copy, not when creating from the download package.</p> <p>Pressing Continue will create the portable copy. Once creation is complete, a message will appear telling you it was successful. Press OK to dismiss this dialog.</p> <h3 id="PortableAndTemporaryCopyRestrictions">Portable and Temporary Copy Restrictions</h3> <p>If you want to take NVDA with you on a USB thumb drive or other writable media, then you should choose to create a portable copy. The installed copy is also able to create a portable copy of itself at any time. The portable copy also has the ability to install itself on any computer at a later time. However, if you wish to copy NVDA onto read-only media such as a CD, you should just copy the download package. Running the portable version directly from read-only media is not supported at this time.</p> <p>The <a href="#StepsForRunningTheDownloadLauncher" title="NVDA installer">NVDA installer</a> can be used as a temporary copy of NVDA. Temporary copies prevent saving NVDA settings. This includes disabling usage of the <a href="#AddonsManager" title="Add-on Store">Add-on Store</a>.</p> <p>Portable and temporary copies of NVDA have the following restrictions:</p> <ul> <li>The inability to automatically start during and/or after log-on.</li> <li>The inability to interact with applications running with administrative privileges, unless of course NVDA itself has been run also with these privileges (not recommended).</li> <li>The inability to read User Account Control (UAC) screens when trying to start an application with administrative privileges.</li> <li>The inability to support input from a touchscreen.</li> <li>The inability to provide features such as browse mode and speaking of typed characters in Windows Store apps.</li> <li>Audio ducking is not supported.</li> </ul> <h2 id="GettingStartedWithNVDA">Using NVDA</h2> <h3 id="LaunchingNVDA">Launching NVDA</h3> <p>If you have installed NVDA with the installer, then starting NVDA is as simple as either pressing control+alt+n, or choosing NVDA from the NVDA menu under Programs on the Start Menu. Additionally you can type NVDA into the Run dialog and press Enter. If NVDA is already running, it will be restarted. You can also pass some <a href="#CommandLineOptions" title="command line options">command line options</a> which allows you to quit (-q), disable add-ons (--disable-addons), etc.</p> <p>For installed copies, NVDA stores the configuration in the roaming application data folder of the current user by default (e.g. "<code>C:\Users\&lt;user&gt;\AppData\Roaming</code>"). It is possible to change this in a way that NVDA loads its configuration from the local application data folder instead. Consult the section about <a href="#SystemWideParameters" title="system wide parameters">system wide parameters</a> for more details.</p> <p>To start the portable version, go to the directory you unpacked NVDA to, and press enter or double click on nvda.exe. If NVDA was already running, it will automatically stop before starting the portable version.</p> <p>As NVDA starts, you will first hear an ascending set of tones (telling you that NVDA is loading). Depending on how fast your computer is, or if you are running NVDA off a USB key or other slow media, it may take a little while to start. If it is taking an extra-long time to start, NVDA should say "Loading NVDA. Please wait..."</p> <p>If you don't hear any of this, or you hear the Windows error sound, or a descending set of tones, then this means that NVDA has an error, and you will need to possibly report a bug to the developers. Please check out the NVDA website for how to do this.</p> <h4 id="WelcomeDialog">Welcome Dialog</h4> <p>When NVDA starts for the first time, you will be greeted by a dialog box which provides you with some basic information about the NVDA modifier key and the NVDA menu. (Please see further sections about these topics.) The dialog box also contains a combo box and three checkboxes. The combo box lets you select the keyboard layout. The first checkbox lets you control if NVDA should use the Caps Lock as an NVDA modifier key. The second specifies whether NVDA should start automatically after you log on to Windows and is only available for installed copies of NVDA. The third lets you control if this Welcome dialog should appear each time NVDA starts.</p> <h4 id="UsageStatsDialog">Data usage statistics dialog</h4> <p>When starting NVDA for the first time, a dialog will appear which will ask you if you want to accept sending data to NV Access while using NVDA, in order to help improve NVDA in the future. You can read more info about the data gathered by NV Access in the general settings section, <a href="#GeneralSettingsGatherUsageStats" title="Allow NV Access to gather NVDA usage statistics">Allow NV Access to gather NVDA usage statistics</a>. Note: pressing on "yes" or "no" will save this setting and the dialog will never appear again unless you reinstall NVDA. However, you can enable or disable the data gathering process manually in NVDA's general settings panel. For changing this setting manually, you can check or uncheck the checkbox called <a href="#GeneralSettingsGatherUsageStats" title="Allow the NVDA project to gather NVDA usage statistics">Allow the NVDA project to gather NVDA usage statistics</a>.</p> <h3 id="AboutNVDAKeyboardCommands">About NVDA keyboard commands</h3> <h4 id="TheNVDAModifierKey">The NVDA Modifier Key</h4> <p>Most NVDA-specific keyboard commands consist of pressing a particular key called the NVDA modifier key in conjunction with one or more other keys. Notable exceptions to this are the text review commands for the desktop keyboard layout which just use the numpad keys by themselves, but there are some other exceptions as well.</p> <p>NVDA can be configured so that the <code>insert</code>, <code>numpadInsert</code>, and/or <code>capsLock</code> key can be used as the <code>NVDA</code> modifier key. By default, both the <code>insert</code> and <code>numpadInsert</code> keys are set as NVDA modifier keys.</p> <p>If you wish to cause one of the NVDA modifier keys to behave as it usually would if NVDA were not running (e.g. you wish to turn Caps Lock on when you have set Caps Lock to be an NVDA modifier key), you can press the key twice in quick succession.</p> <h4 id="KeyboardLayouts">Keyboard Layouts</h4> <p>NVDA currently comes with two sets of key commands (known as keyboard layouts): the desktop layout and the laptop layout. By default, NVDA is set to use the Desktop layout, though you can switch to the Laptop layout in the Keyboard category of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog, found under Preferences in the NVDA menu.</p> <p>The Desktop layout makes heavy use of the numpad (with Num Lock off). Although most laptops do not have a physical numpad, some laptops can emulate one by holding down the FN key and pressing letters and numbers on the right-hand side of the keyboard (7, 8, 9, u, i, o, j, k, l, etc.). If your laptop cannot do this or does not allow you to turn Num Lock off, you may want to switch to the Laptop layout instead.</p> <h3 id="NVDATouchGestures">NVDA Touch Gestures</h3> <p>If you are running NVDA on a device with a touchscreen, you can also control NVDA directly via touch commands. While NVDA is running, unless touch interaction support is disabled, all touch input will go directly to NVDA. Therefore, actions that can be performed normally without NVDA will not work.</p> <!-- KC:beginInclude --> <p>To toggle touch interaction support, press NVDA+control+alt+t.</p> <!-- KC:endInclude --> <p>You can also enable or disable <a href="#TouchSupportEnable" title="touch interaction support">touch interaction support</a> from the Touch Interaction category of the NVDA settings.</p> <h4 id="ExploringTheScreen">Exploring the Screen</h4> <p>The most basic action you can perform with the touch screen is to announce the control or text at any point on the screen. To do this, place one finger anywhere on the screen. You can also keep your finger on the screen and move it around to read other controls and text that your finger moves over.</p> <h4 id="TouchGestures">Touch Gestures</h4> <p>When NVDA commands are described later in this user guide, they may list a touch gesture which can be used to activate that command with the touchscreen. Following are some instructions on how to perform the various touch gestures.</p> <h5 id="Taps">Taps</h5> <p>Tap the screen quickly with one or more fingers.</p> <p>Tapping once with one finger is simply known as a tap. Tapping with 2 fingers at the same time is a 2-finger tap and so on.</p> <p>If the same tap is performed one or more times again in quick succession, NVDA will instead treat this as a multi-tap gesture. Tapping twice will result in a double-tap. Tapping 3 times will result in a triple-tap and so on. Of course, these multi-tap gestures also recognize how many fingers were used, so it's possible to have gestures like a 2-finger triple-tap, a 4-finger tap, etc.</p> <h5 id="Flicks">Flicks</h5> <p>Quickly swipe your finger across the screen.</p> <p>There are 4 possible flick gestures depending on the direction: flick left, flick right, flick up and flick down.</p> <p>Just like taps, more than one finger can be used to perform the gesture. Therefore, gestures such as 2-finger flick up and 4-finger flick left are all possible.</p> <h4 id="TouchModes">Touch Modes</h4> <p>As there are many more NVDA commands than possible touch gestures, NVDA has several touch modes you can switch between which make certain subsets of commands available. The two modes are text mode and object mode. Certain NVDA commands listed in this document may have a touch mode listed in brackets after the touch gesture. For example, flick up (text mode) means that the command will be performed if you flick up, but only while in text mode. If the command does not have a mode listed, it will work in any mode.</p> <!-- KC:beginInclude --> <p>To toggle touch modes, perform a 3-finger tap.</p> <!-- KC:endInclude --> <h4 id="TouchKeyboard">Touch keyboard</h4> <p>The touch keyboard is used to enter text and commands from a touchscreen. When focused on an edit field, you can bring up the touch keyboard by double-tapping the touch keyboard icon on the bottom of the screen. For tablets such as Microsoft Surface Pro, the touch keyboard is always available when the keyboard is undocked. To dismiss the touch keyboard, double-tap the touch keyboard icon or move away from the edit field.</p> <p>While the touch keyboard is active, to locate keys on the touch keyboard, move your finger to where the touch keyboard is located (typically at the bottom of the screen), then move around the keyboard with one finger. When you find the key you wish to press, double-tap the key or lift your finger, depending on options chosen from the <a href="#TouchInteraction" title="Touch Interaction Settings category">Touch Interaction Settings category</a> of the NVDA Settings.</p> <h3 id="InputHelpMode">Input Help Mode</h3> <p>Many NVDA commands are mentioned throughout the rest of this user guide, but an easy way to explore all the different commands is to turn on input help.</p> <p>To turn on input help, press NVDA+1. To turn it off, press NVDA+1 again. While in input help, performing any input gesture (such as pressing a key or performing a touch gesture) will report the action and describe what it does (if anything). The actual commands will not execute while in input help mode.</p> <h3 id="TheNVDAMenu">The NVDA menu</h3> <p>The NVDA menu allows you to control NVDA's settings, access help, save/revert your configuration, Modify speech dictionaries, access additional tools and exit NVDA.</p> <p>To get to the NVDA menu from anywhere in Windows while NVDA is running, you may do any of the following:</p> <ul> <li>press <code>NVDA+n</code> on the keyboard.</li> <li>Perform a 2-finger double-tap on the touch screen.</li> <li>Access the system tray by pressing <code>Windows+b</code>, <code>downArrow</code> to the NVDA icon, and press <code>enter</code>.</li> <li>Alternatively, access the system tray by pressing <code>Windows+b</code>, <code>downArrow</code> to the NVDA icon, and open the context menu by pressing the <code>applications</code> key located next to the right control key on most keyboards. On a keyboard without an <code>applications</code> key, press <code>shift+f10</code> instead.</li> <li>Right-click on the NVDA icon located in the Windows system tray</li> </ul> <p>When the menu comes up, You can use the arrow keys to navigate the menu, and the <code>enter</code> key to activate an item.</p> <h3 id="BasicNVDACommands">Basic NVDA commands</h3> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Touch</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Starts or restarts NVDA</td> <td>Control+alt+n</td> <td>Control+alt+n</td> <td>none</td> <td>Starts or restarts NVDA from the Desktop, if this Windows shortcut is enabled during NVDA's installation process. This is a Windows specific shortcut and therefore it cannot be reassigned in the input gestures dialog.</td> </tr> <tr> <td>Stop speech</td> <td>Control</td> <td>control</td> <td>2-finger tap</td> <td>Instantly stops speaking</td> </tr> <tr> <td>Pause Speech</td> <td>shift</td> <td>shift</td> <td>none</td> <td>Instantly pauses speech. Pressing it again will continue speaking where it left off (if pausing is supported by the current synthesizer)</td> </tr> <tr> <td>NVDA Menu</td> <td>NVDA+n</td> <td>NVDA+n</td> <td>2-finger double-tap</td> <td>Pops up the NVDA menu to allow you to access preferences, tools, help, etc.</td> </tr> <tr> <td>Toggle Input Help Mode</td> <td>NVDA+1</td> <td>NVDA+1</td> <td>none</td> <td>Pressing any key in this mode will report the key, and the description of any NVDA command associated with it</td> </tr> <tr> <td>Quit NVDA</td> <td>NVDA+q</td> <td>NVDA+q</td> <td>none</td> <td>Exits NVDA</td> </tr> <tr> <td>Pass next key through</td> <td>NVDA+f2</td> <td>NVDA+f2</td> <td>none</td> <td>Tells NVDA to pass the next key press straight through to the active application - even if it is normally treated as an NVDA key command</td> </tr> <tr> <td>Toggle application sleep mode on and off</td> <td>NVDA+shift+s</td> <td>NVDA+shift+z</td> <td>none</td> <td>sleep mode disables all NVDA commands and speech/braille output for the current application. This is most useful in applications that provide their own speech or screen reading features. Press this command again to disable sleep mode - note that NVDA will only retain the Sleep Mode setting until it is restarted.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="ReportingSystemInformation">Reporting System Information</h3> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Report date/time</td> <td>NVDA+f12</td> <td>Pressing once reports the current time, pressing twice reports the date</td> </tr> <tr> <td>Report battery status</td> <td>NVDA+shift+b</td> <td>Reports the battery status i.e. whether AC power is in use or the current charge percentage.</td> </tr> <tr> <td>Report clipboard text</td> <td>NVDA+c</td> <td>Reports the Text on the clipboard if there is any.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="SpeechModes">Speech modes</h3> <p>The speech mode governs how screen content, notifications, responses to commands, and other output is spoken during operation of NVDA. The default mode is "talk", which speaks in situations that are expected when using a screen reader. However, under certain circumstances, or when running particular programs, you may find one of the other speech modes valuable.</p> <p>The four available speech modes are:</p> <ul> <li>Talk (Default): NVDA will speak normally in reaction to screen changes, notifications, and actions such as moving the focus, or issuing commands.</li> <li>On-demand: NVDA will only speak when you use commands with a reporting function (e.g. report the title of the window); but it will not speak in reaction to actions such as moving the focus or the cursor.</li> <li>Off: NVDA will not speak anything, however unlike sleep mode, it will silently react to commands.</li> <li>Beeps: NVDA will replace normal speech with short beeps.</li> </ul> <p>The Beeps mode may be useful when some very verbose output is scrolling in a terminal window, but you don't care what it is, only that it is continuing to scroll; or in other circumstances when the fact that there is output is more relevant than the output itself.</p> <p>The On-demand mode may be valuable when you don't need constant feedback about what is happening on screen or on the computer, but you periodically need to check particular things using review commands, etc. Examples include while recording audio, when using screen magnification, during a meeting or a call, or as an alternative to beeps mode.</p> <p>A gesture allows cycling through the various speech modes:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Cycle Speech Mode</td> <td><code>NVDA+s</code></td> <td>Cycles between speech modes.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>If you only need to switch between a limited subset of speech modes, see <a href="#SpeechModesDisabling" title="Modes available in the Cycle speech mode command">Modes available in the Cycle speech mode command</a> for a way to disable unwanted modes.</p> <h2 id="NavigatingWithNVDA">Navigating with NVDA</h2> <p>NVDA allows you to explore and navigate the system in several ways, including both normal interaction and review.</p> <h3 id="Objects">Objects</h3> <p>Each Application and the operating system itself consist of many objects. An object is a single item such as a piece of text, button, checkbox, slider, list or editable text field.</p> <h3 id="SystemFocus">Navigating with the System Focus</h3> <p>The system focus, also known simply as the focus, is the <a href="#Objects" title="object">object</a> which receives keys typed on the keyboard. For example, if you are typing into an editable text field, the editable text field has the focus.</p> <p>The most common way of navigating around Windows with NVDA is to simply move the system focus using standard Windows keyboard commands, such as pressing tab and shift+tab to move forward and back between controls, pressing alt to get to the menu bar and then using the arrows to navigate menus, and using alt+tab to move between running applications. As you do this, NVDA will report information about the object with focus, such as its name, type, value, state, description, keyboard shortcut and positional information. When <a href="#VisionFocusHighlight" title="Visual Highlight">Visual Highlight</a> is enabled, the location of the current system focus is also exposed visually.</p> <p>There are some key commands that are useful when moving with the System focus:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Report current focus</td> <td>NVDA+tab</td> <td>NVDA+tab</td> <td>announces the current object or control that has the System focus. Pressing twice will spell the information</td> </tr> <tr> <td>Report title</td> <td>NVDA+t</td> <td>NVDA+t</td> <td>Reports the title of the currently active window. Pressing twice will spell the information. Pressing three times will copy it to the clipboard</td> </tr> <tr> <td>Read active window</td> <td>NVDA+b</td> <td>NVDA+b</td> <td>reads all the controls in the currently active window (useful for dialogs)</td> </tr> <tr> <td>Report Status Bar</td> <td>NVDA+end</td> <td>NVDA+shift+end</td> <td>Reports the Status Bar if NVDA finds one. Pressing twice will spell the information. Pressing three times will copy it to the clipboard</td> </tr> <tr> <td>Report Shortcut Key</td> <td><code>shift+numpad2</code></td> <td><code>NVDA+control+shift+.</code></td> <td>Reports the shortcut (accelerator) key of the currently focused object</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="SystemCaret">Navigating with the System Caret</h3> <p>When an <a href="#Objects" title="object">object</a> that allows navigation and/or editing of text is <a href="#SystemFocus" title="focused">focused</a>, you can move through the text using the system caret, also known as the edit cursor.</p> <p>When the focus is on an object that has the system caret, you can use the arrow keys, page up, page down, home, end, etc. to move through the text. You can also change the text if the control supports editing. NVDA will announce as you move by character, word and line, and will also announce as you select and unselect text.</p> <p>NVDA provides the following key commands in relation to the system caret:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Say all</td> <td>NVDA+downArrow</td> <td>NVDA+a</td> <td>Starts reading from the current position of the system caret, moving it along as it goes</td> </tr> <tr> <td>Read current line</td> <td>NVDA+upArrow</td> <td>NVDA+l</td> <td>Reads the line where the system caret is currently situated. Pressing twice spells the line. Pressing three times spells the line using character descriptions.</td> </tr> <tr> <td>Read current text selection</td> <td>NVDA+Shift+upArrow</td> <td>NVDA+shift+s</td> <td>Reads any currently selected text</td> </tr> <tr> <td>Report text formatting</td> <td>NVDA+f</td> <td>NVDA+f</td> <td>Reports the formatting of the text where the caret is currently situated. Pressing twice shows the information in browse mode</td> </tr> <tr> <td>Report link destination</td> <td><code>NVDA+k</code></td> <td><code>NVDA+k</code></td> <td>Pressing once speaks the destination URL of the link at the current caret or focus position. Pressing twice shows it in a window for more careful review</td> </tr> <tr> <td>Report caret location</td> <td>NVDA+numpadDelete</td> <td>NVDA+delete</td> <td>Reports information about the location of the text or object at the position of system caret. For example, this might include the percentage through the document, the distance from the edge of the page or the exact screen position. Pressing twice may provide further detail.</td> </tr> <tr> <td>Next sentence</td> <td>alt+downArrow</td> <td>alt+downArrow</td> <td>Moves the caret to the next sentence and announces it. (only supported in Microsoft Word and Outlook)</td> </tr> <tr> <td>Previous sentence</td> <td>alt+upArrow</td> <td>alt+upArrow</td> <td>Moves the caret to the previous sentence and announces it. (only supported in Microsoft Word and Outlook)</td> </tr> </tbody> </table> <p>When within a table, the following key commands are also available:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Move to previous column</td> <td>control+alt+leftArrow</td> <td>Moves the system caret to the previous column (staying in the same row)</td> </tr> <tr> <td>Move to next column</td> <td>control+alt+rightArrow</td> <td>Moves the system caret to the next column (staying in the same row)</td> </tr> <tr> <td>Move to previous row</td> <td>control+alt+upArrow</td> <td>Moves the system caret to the previous row (staying in the same column)</td> </tr> <tr> <td>Move to next row</td> <td>control+alt+downArrow</td> <td>Moves the system caret to the next row (staying in the same column)</td> </tr> <tr> <td>Move to first column</td> <td>control+alt+home</td> <td>Moves the system caret to the first column (staying in the same row)</td> </tr> <tr> <td>Move to last column</td> <td>control+alt+end</td> <td>Moves the system caret to the last column (staying in the same row)</td> </tr> <tr> <td>Move to first row</td> <td>control+alt+pageUp</td> <td>Moves the system caret to the first row (staying in the same column)</td> </tr> <tr> <td>Move to last row</td> <td>control+alt+pageDown</td> <td>Moves the system caret to the last row (staying in the same column)</td> </tr> <tr> <td>Say all in column</td> <td><code>NVDA+control+alt+downArrow</code></td> <td>Reads the column vertically from the current cell downwards to the last cell in the column.</td> </tr> <tr> <td>Say all in row</td> <td><code>NVDA+control+alt+rightArrow</code></td> <td>Reads the row horizontally from the current cell rightwards to the last cell in the row.</td> </tr> <tr> <td>Read entire column</td> <td><code>NVDA+control+alt+upArrow</code></td> <td>Reads the current column vertically from top to bottom without moving the system caret.</td> </tr> <tr> <td>Read entire row</td> <td><code>NVDA+control+alt+leftArrow</code></td> <td>Reads the current row horizontally from left to right without moving the system caret.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="ObjectNavigation">Object Navigation</h3> <p>Most of the time, you will work with applications using commands which move the <a href="#SystemFocus" title="focus">focus</a> and the <a href="#SystemCaret" title="caret">caret</a>. However, sometimes, you may wish to explore the current application or the Operating System without moving the focus or caret. You may also wish to work with <a href="#Objects" title="objects">objects</a> that cannot be accessed normally using the keyboard. In these cases, you can use object navigation.</p> <p>Object navigation allows you to move between and obtain information about individual <a href="#Objects" title="objects">objects</a>. When you move to an object, NVDA will report it similarly to the way it reports the system focus. For a way to review all text as it appears on the screen, you can instead use <a href="#ScreenReview" title="screen review">screen review</a>.</p> <p>Rather than having to move back and forth between every single object on the system, the objects are organized hierarchically. This means that some objects contain other objects and you must move inside them to access the objects they contain. For example, a list contains list items, so you must move inside the list in order to access its items. If you have moved to a list item, moving next and previous will take you to other list items in the same list. Moving to a list item's containing object will take you back to the list. You can then move past the list if you wish to access other objects. Similarly, a toolbar contains controls, so you must move inside the toolbar to access the controls in the toolbar.</p> <p>If you yet prefer to move back and forth between every single object on the system, you can use commands to move to the previous/next object in a flattened view. For example, if you move to the next object in this flattened view and the current object contains other objects, NVDA will automatically move to the first object that it contains. Alternatively, if the current object doesn't contain any objects, NVDA will move to the next object at the current level of the hierarchy. If there is no such next object, NVDA will try to find the next object in the hierarchy based on containing objects until there are no more objects to move to. The same rules apply to moving backwards in the hierarchy.</p> <p>The object currently being reviewed is called the navigator object. Once you navigate to an object, you can review its content using the <a href="#ReviewingText" title="text review commands">text review commands</a> while in <a href="#ObjectReview" title="Object review mode">Object review mode</a>. When <a href="#VisionFocusHighlight" title="Visual Highlight">Visual Highlight</a> is enabled, the location of the current navigator object is also exposed visually. By default, the navigator object moves along with the System focus, though this behaviour can be toggled on and off.</p> <p>Note: Braille following Object Navigation can be configured via <a href="#BrailleTether" title="Braille Tether">Braille Tether</a>.</p> <p>To navigate by object, use the following commands:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Touch</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Report current object</td> <td>NVDA+numpad5</td> <td>NVDA+shift+o</td> <td>none</td> <td>Reports the current navigator object. Pressing twice spells the information, and pressing 3 times copies this object's name and value to the clipboard.</td> </tr> <tr> <td>Move to containing object</td> <td>NVDA+numpad8</td> <td>NVDA+shift+upArrow</td> <td>flick up (object mode)</td> <td>Moves to the object containing the current navigator object</td> </tr> <tr> <td>Move to previous object</td> <td>NVDA+numpad4</td> <td>NVDA+shift+leftArrow</td> <td>none</td> <td>Moves to the object before the current navigator object</td> </tr> <tr> <td>Move to previous object in flattened view</td> <td>NVDA+numpad9</td> <td>NVDA+shift+[</td> <td>flick left (object mode)</td> <td>Moves to the previous object in a flattened view of the object navigation hierarchy</td> </tr> <tr> <td>Move to next object</td> <td>NVDA+numpad6</td> <td>NVDA+shift+rightArrow</td> <td>none</td> <td>Moves to the object after the current navigator object</td> </tr> <tr> <td>Move to next object in flattened view</td> <td>NVDA+numpad3</td> <td>NVDA+shift+]</td> <td>flick right (object mode)</td> <td>Moves to the next object in a flattened view of the object navigation hierarchy</td> </tr> <tr> <td>Move to first contained object</td> <td>NVDA+numpad2</td> <td>NVDA+shift+downArrow</td> <td>flick down (object mode)</td> <td>Moves to the first object contained by the current navigator object</td> </tr> <tr> <td>Move to focus object</td> <td>NVDA+numpadMinus</td> <td>NVDA+backspace</td> <td>none</td> <td>Moves to the object that currently has the system focus, and also places the review cursor at the position of the System caret, if it is showing</td> </tr> <tr> <td>Activate current navigator object</td> <td>NVDA+numpadEnter</td> <td>NVDA+enter</td> <td>double-tap</td> <td>Activates the current navigator object (similar to clicking with the mouse or pressing space when it has the system focus)</td> </tr> <tr> <td>Move System focus or caret to current review position</td> <td>NVDA+shift+numpadMinus</td> <td>NVDA+shift+backspace</td> <td>none</td> <td>pressed once Moves the System focus to the current navigator object, pressed twice moves the system caret to the position of the review cursor</td> </tr> <tr> <td>Report review cursor location</td> <td>NVDA+shift+numpadDelete</td> <td>NVDA+shift+delete</td> <td>none</td> <td>Reports information about the location of the text or object at the review cursor. For example, this might include the percentage through the document, the distance from the edge of the page or the exact screen position. Pressing twice may provide further detail.</td> </tr> <tr> <td>Move review cursor to status bar</td> <td>none</td> <td>none</td> <td>none</td> <td>Reports the Status Bar if NVDA finds one. It also moves the navigator object to this location.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>Note: numpad keys require the Num Lock to be turned off to work properly.</p> <h3 id="ReviewingText">Reviewing Text</h3> <p>NVDA allows you to read the contents of the <a href="#ScreenReview" title="screen">screen</a>, current <a href="#DocumentReview" title="document">document</a> or current <a href="#ObjectReview" title="object">object</a> by character, word or line. This is mostly useful in places (including Windows command consoles) where there is no <a href="#SystemCaret" title="system caret">system caret</a>. For example, you might use it to review the text of a long information message in a dialog.</p> <p>When moving the review cursor, the System caret does not follow along, so you can review text without losing your editing position. However, by default, when the System caret moves, the review cursor follows along. This can be toggled on and off.</p> <p>Note: Braille following the review cursor can be configured via <a href="#BrailleTether" title="Braille Tether">Braille Tether</a>.</p> <p>The following commands are available for reviewing text:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Touch</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Move to top line in review</td> <td>shift+numpad7</td> <td>NVDA+control+home</td> <td>none</td> <td>Moves the review cursor to the top line of the text</td> </tr> <tr> <td>Move to previous line in review</td> <td>numpad7</td> <td>NVDA+upArrow</td> <td>flick up (text mode)</td> <td>Moves the review cursor to the previous line of text</td> </tr> <tr> <td>Report current line in review</td> <td>numpad8</td> <td>NVDA+shift+.</td> <td>none</td> <td>Announces the current line of text where the review cursor is positioned. Pressing twice spells the line. Pressing three times spells the line using character descriptions.</td> </tr> <tr> <td>Move to next line in review</td> <td>numpad9</td> <td>NVDA+downArrow</td> <td>flick down (text mode)</td> <td>Move the review cursor to the next line of text</td> </tr> <tr> <td>Move to bottom line in review</td> <td>shift+numpad9</td> <td>NVDA+control+end</td> <td>none</td> <td>Moves the review cursor to the bottom line of text</td> </tr> <tr> <td>Move to previous word in review</td> <td>numpad4</td> <td>NVDA+control+leftArrow</td> <td>2-finger flick left (text mode)</td> <td>Moves the review cursor to the previous word in the text</td> </tr> <tr> <td>Report current word in review</td> <td>numpad5</td> <td>NVDA+control+.</td> <td>none</td> <td>Announces the current word in the text where the review cursor is positioned. Pressing twice spells the word. Pressing three times spells the word using character descriptions.</td> </tr> <tr> <td>Move to next word in review</td> <td>numpad6</td> <td>NVDA+control+rightArrow</td> <td>2-finger flick right (text mode)</td> <td>Move the review cursor to the next word in the text</td> </tr> <tr> <td>Move to start of line in review</td> <td>shift+numpad1</td> <td>NVDA+home</td> <td>none</td> <td>Moves the review cursor to the start of the current line in the text</td> </tr> <tr> <td>Move to previous character in review</td> <td>numpad1</td> <td>NVDA+leftArrow</td> <td>flick left (text mode)</td> <td>Moves the review cursor to the previous character on the current line in the text</td> </tr> <tr> <td>Report current character in review</td> <td>numpad2</td> <td>NVDA+.</td> <td>none</td> <td>Announces the current character on the line of text where the review cursor is positioned. Pressing twice reports a description or example of that character. Pressing three times reports the numeric value of the character in decimal and hexadecimal.</td> </tr> <tr> <td>Move to next character in review</td> <td>numpad3</td> <td>NVDA+rightArrow</td> <td>flick right (text mode)</td> <td>Move the review cursor to the next character on the current line of text</td> </tr> <tr> <td>Move to end of line in review</td> <td>shift+numpad3</td> <td>NVDA+end</td> <td>none</td> <td>Moves the review cursor to the end of the current line of text</td> </tr> <tr> <td>Move to previous page in review</td> <td><code>NVDA+pageUp</code></td> <td><code>NVDA+shift+pageUp</code></td> <td>none</td> <td>Moves the review cursor to the previous page of text if supported by the application</td> </tr> <tr> <td>Move to next page in review</td> <td><code>NVDA+pageDown</code></td> <td><code>NVDA+shift+pageDown</code></td> <td>none</td> <td>Moves the review cursor to the next page of text if supported by the application</td> </tr> <tr> <td>Say all with review</td> <td>numpadPlus</td> <td>NVDA+shift+a</td> <td>3-finger flick down (text mode)</td> <td>Reads from the current position of the review cursor, moving it as it goes</td> </tr> <tr> <td>Select then Copy from review cursor</td> <td>NVDA+f9</td> <td>NVDA+f9</td> <td>none</td> <td>Starts the select then copy process from the current position of the review cursor. The actual action is not performed until you tell NVDA where the end of the text range is</td> </tr> <tr> <td>Select then Copy to review cursor</td> <td>NVDA+f10</td> <td>NVDA+f10</td> <td>none</td> <td>On the first press, text is selected from the position previously set as start marker up to and including the review cursor's current position. If the system caret can reach the text, it will be moved to the selected text. After pressing this key stroke a second time, the text will be copied to the Windows clipboard</td> </tr> <tr> <td>Move to marked start for copy in review</td> <td>NVDA+shift+f9</td> <td>NVDA+shift+f9</td> <td>none</td> <td>Moves the review cursor to the position previously set start marker for copy</td> </tr> <tr> <td>Report text formatting</td> <td>NVDA+shift+f</td> <td>NVDA+shift+f</td> <td>none</td> <td>Reports the formatting of the text where the review cursor is currently situated. Pressing twice shows the information in browse mode</td> </tr> <tr> <td>Report current symbol replacement</td> <td>None</td> <td>None</td> <td>none</td> <td>Speaks the symbol where the review cursor is positioned. Pressed twice, shows the symbol and the text used to speak it in browse mode.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>Note: numpad keys require the Num Lock to be turned off to work properly.</p> <p>A good way to remember the basic text review commands when using the Desktop layout is to think of them as being in a grid of three by three, with top to bottom being line, word and character and left to right being previous, current and next. The layout is illustrated as follows:</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Previous line</td> <td>Current line</td> <td>Next line</td> </tr> <tr> <td>Previous word</td> <td>Current word</td> <td>Next word</td> </tr> <tr> <td>Previous character</td> <td>Current character</td> <td>Next character</td> </tr> </tbody> </table> <h3 id="ReviewModes">Review Modes</h3> <p>NVDA's <a href="#ReviewingText" title="text review commands">text review commands</a> can review content within the current navigator object, current document or screen, depending on the review mode selected.</p> <p>The following commands switch between review modes:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Touch</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Switch to next review mode</td> <td>NVDA+numpad7</td> <td>NVDA+pageUp</td> <td>2-finger flick up</td> <td>switches to the next available review mode</td> </tr> <tr> <td>Switch to previous review mode</td> <td>NVDA+numpad1</td> <td>NVDA+pageDown</td> <td>2-finger flick down</td> <td>switches to the previous available review mode</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h4 id="ObjectReview">Object Review</h4> <p>While in object review mode, you are able to only review the content of the current <a href="#ObjectNavigation" title="navigator object">navigator object</a>. For objects such as editable text fields or other basic text controls, this will generally be the text content. For other objects, this may be the name and/or value.</p> <h4 id="DocumentReview">Document Review</h4> <p>When the <a href="#ObjectNavigation" title="navigator object">navigator object</a> is within a browse mode document (e.g. web page) or other complex document (e.g. a Lotus Symphony document), it is possible to switch to the document review mode. The document review mode allows you to review the text of the entire document.</p> <p>When switching from object review to document review, the review cursor is placed in the document at the position of the navigator object. When moving around the document with review commands, the navigator object is automatically updated to the object found at the current review cursor position.</p> <p>Note that NVDA will switch to document review from object review automatically when moving around browse mode documents.</p> <h4 id="ScreenReview">Screen Review</h4> <p>The screen review mode allows you to review the text of the screen as it appears visually within the current application. This is similar to the screen review or mouse cursor functionality in many other Windows screen readers.</p> <p>When switching to screen review mode, the review cursor is placed at the screen position of the current <a href="#ObjectNavigation" title="navigator object">navigator object</a>. When moving around the screen with review commands, the navigator object is automatically updated to the object found at the screen position of the review cursor.</p> <p>Note that in some newer applications, NVDA may not see some or all text displayed on the screen due to the use of newer screen drawing technologies which are impossible to support at this time.</p> <h3 id="NavigatingWithTheMouse">Navigating with the Mouse</h3> <p>When you move the mouse, NVDA by default reports the text that is directly under the mouse pointer as the pointer moves over it. Where supported, NVDA will read the surrounding paragraph of text, though some controls may only read by line.</p> <p>NVDA can be configured to also announce the type of <a href="#Objects" title="object">object</a> under the mouse as it moves (e.g. list, button, etc.). This may be useful for totally blind users, as sometimes, the text isn't enough.</p> <p>NVDA provides a way for users to understand where the mouse is located relative to the dimensions of the screen by playing the current mouse coordinates as audio beeps. The higher the mouse is on the screen, the higher the pitch of the beeps. The further left or right the mouse is located on the screen, the further left or right the sound will be played (assuming the user has stereo speakers or headphones).</p> <p>These extra mouse features are not turned on by default in NVDA. If you wish to take advantage of them, you can configure them from the <a href="#MouseSettings" title="Mouse settings">Mouse settings</a> category of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog, found in the NVDA Preferences menu.</p> <p>Although a physical mouse or trackpad should be used to navigate with the mouse, NVDA provides some commands related to the mouse:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Touch</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Left mouse button click</td> <td>numpadDivide</td> <td>NVDA+[</td> <td>none</td> <td>Clicks the left mouse button once. The common double click can be performed by pressing this key twice in quick succession</td> </tr> <tr> <td>Left mouse button lock</td> <td>shift+numpadDivide</td> <td>NVDA+control+[</td> <td>none</td> <td>Locks the left mouse button down. Press again to release it. To drag the mouse, press this key to lock the left button down and then move the mouse either physically or use one of the other mouse routing commands</td> </tr> <tr> <td>Right mouse click</td> <td>numpadMultiply</td> <td>NVDA+]</td> <td>tap and hold</td> <td>Clicks the right mouse button once, mostly used to open context menu at the location of the mouse.</td> </tr> <tr> <td>Right mouse button lock</td> <td>shift+numpadMultiply</td> <td>NVDA+control+]</td> <td>none</td> <td>Locks the right mouse button down. Press again to release it. To drag the mouse, press this key to lock the right button down and then move the mouse either physically or use one of the other mouse routing commands</td> </tr> <tr> <td>Scroll up at the mouse position</td> <td>none</td> <td>none</td> <td>none</td> <td>Scrolls the mouse wheel up at the current mouse position</td> </tr> <tr> <td>Scroll down at the mouse position</td> <td>none</td> <td>none</td> <td>none</td> <td>Scrolls the mouse wheel down at the current mouse position</td> </tr> <tr> <td>Scroll left at the mouse position</td> <td>none</td> <td>none</td> <td>none</td> <td>Scrolls the mouse wheel left at the current mouse position</td> </tr> <tr> <td>Scroll right at the mouse position</td> <td>none</td> <td>none</td> <td>none</td> <td>Scrolls the mouse wheel right at the current mouse position</td> </tr> <tr> <td>Move mouse to current navigator object</td> <td>NVDA+numpadDivide</td> <td>NVDA+shift+m</td> <td>none</td> <td>Moves the mouse to the location of the current navigator object and review cursor</td> </tr> <tr> <td>Navigate to the object under the mouse</td> <td>NVDA+numpadMultiply</td> <td>NVDA+shift+n</td> <td>none</td> <td>Set the navigator object to the object located at the position of the mouse</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h2 id="BrowseMode">Browse Mode</h2> <p>Complex read-only documents such as web pages are browsed in NVDA using browse mode. This includes documents in the following applications:</p> <ul> <li>Mozilla Firefox</li> <li>Microsoft Internet Explorer</li> <li>Mozilla Thunderbird</li> <li>HTML messages in Microsoft Outlook</li> <li>Google Chrome</li> <li>Microsoft Edge</li> <li>Adobe Reader</li> <li>Foxit Reader</li> <li>Supported books in Amazon Kindle for PC</li> </ul> <p>Browse mode is also optionally available for Microsoft Word documents.</p> <p>In browse mode, the content of the document is made available in a flat representation that can be navigated with the cursor keys as if it were a normal text document. All of NVDA's <a href="#SystemCaret" title="system caret">system caret</a> key commands will work in this mode; e.g. say all, report formatting, table navigation commands, etc. When <a href="#VisionFocusHighlight" title="Visual Highlight">Visual Highlight</a> is enabled, the location of the virtual browse mode caret is also exposed visually. Information such as whether text is a link, heading, etc. is reported along with the text as you move.</p> <p>Sometimes, you will need to interact directly with controls in these documents. For example, you will need to do this for editable text fields and lists so that you can type characters and use the cursor keys to work with the control. You do this by switching to focus mode, where almost all keys are passed to the control. When in Browse mode, by default, NVDA will automatically switch to focus mode if you tab to or click on a particular control that requires it. Conversely, tabbing to or clicking on a control that does not require focus mode will switch back to browse mode. You can also press enter or space to switch to focus mode on controls that require it. Pressing escape will switch back to browse mode. In addition, you can manually force focus mode, after which it will remain in effect until you choose to disable it.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Toggle browse/focus modes</td> <td>NVDA+space</td> <td>Toggles between focus mode and browse mode</td> </tr> <tr> <td>Exit focus mode</td> <td>escape</td> <td>Switches back to browse mode if focus mode was previously switched to automatically</td> </tr> <tr> <td>Refresh browse mode document</td> <td>NVDA+f5</td> <td>Reloads the current document content (useful if certain content seems to be missing from the document. Not available in Microsoft Word and Outlook.)</td> </tr> <tr> <td>Find</td> <td>NVDA+control+f</td> <td>Pops up a dialog in which you can type some text to find in the current document. See <a href="#SearchingForText" title="searching for text">searching for text</a> for more information.</td> </tr> <tr> <td>Find next</td> <td>NVDA+f3</td> <td>Finds the next occurrence of the text in the document that you previously searched for</td> </tr> <tr> <td>Find previous</td> <td>NVDA+shift+f3</td> <td>Finds the previous occurrence of the text in the document you previously searched for</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="SingleLetterNavigation">Single Letter Navigation</h3> <p>While in browse mode, for quicker navigation, NVDA also provides single character keys to jump to certain fields in the document. Note that not all of these commands are supported in every type of document.</p> <!-- KC:beginInclude --> <p>The following keys by themselves jump to the next available element, while adding the shift key causes them to jump to the previous element:</p> <ul> <li>h: heading</li> <li>l: list</li> <li>i: list item</li> <li>t: table</li> <li>k: link</li> <li>n: nonLinked text</li> <li>f: form field</li> <li>u: unvisited link</li> <li>v: visited link</li> <li>e: edit field</li> <li>b: button</li> <li>x: checkbox</li> <li>c: combo box</li> <li>r: radio button</li> <li>q: block quote</li> <li>s: separator</li> <li>m: frame</li> <li>g: graphic</li> <li>d: landmark</li> <li>o: embedded object (audio and video player, application, dialog, etc.)</li> <li>1 to 6: headings at levels 1 to 6 respectively</li> <li>a: annotation (comment, editor revision, etc.)</li> <li><code>p</code>: text paragraph</li> <li>w: spelling error</li> </ul> <p>To move to the beginning or end of containing elements such as lists and tables:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Move to start of container</td> <td>shift+comma</td> <td>Moves to the start of the container (list, table, etc.) where the caret is positioned</td> </tr> <tr> <td>Move past end of container</td> <td>comma</td> <td>Moves past the end of the container (list, table, etc.) where the caret is positioned</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>Some web applications such as Gmail, Twitter and Facebook use single letters as shortcut keys. If you want to use these while still being able to use your cursor keys to read in browse mode, you can temporarily disable NVDA's single letter navigation keys.</p> <!-- KC:beginInclude --> <p>To toggle single letter navigation on and off for the current document, press NVDA+shift+space.</p> <!-- KC:endInclude --> <h4 id="TextNavigationCommand">Text paragraph navigation command</h4> <p>You can jump to the next or previous text paragraph by pressing <code>p</code> or <code>shift+p</code>. Text paragraphs are defined by a group of text that appears to be written in complete sentences. This can be useful to find the beginning of readable content on various webpages, such as:</p> <ul> <li>News websites</li> <li>Forums</li> <li>Blog posts</li> </ul> <p>These commands can also be helpful for skipping certain kinds of clutter, such as:</p> <ul> <li>Ads</li> <li>Menus</li> <li>Headers</li> </ul> <p>Please note, however, that while NVDA tries its best to identify text paragraphs, the algorithm is not perfect and at times can make mistakes. Additionally, this command is different from paragraph navigation commands <code>control+downArrow/upArrow</code>. Text paragraph navigation only jumps between text paragraphs, while paragraph navigation commands take the cursor to the previous/next paragraphs regardless of whether they contain text or not.</p> <h4 id="OtherNavigationCommands">Other navigation commands</h4> <p>In addition to the quick navigation commands listed above, NVDA has commands that have no default keys assigned. To use these commands, you first need to assign gestures to them using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>. Here is a list of available commands:</p> <ul> <li>Article</li> <li>Figure</li> <li>Grouping</li> <li>Tab</li> <li>Menu item</li> <li>Toggle button</li> <li>Progress bar</li> <li>Math formula</li> <li>Vertically aligned paragraph</li> <li>Same style text</li> <li>Different style text</li> </ul> <p>Keep in mind that there are two commands for each type of element, for moving forward in the document and backward in the document, and you must assign gestures to both commands in order to be able to quickly navigate in both directions. For example, if you want to use the <code>y</code> / <code>shift+y</code> keys to quickly navigate through tabs, you would do the following:</p> <ol> <li>Open input gestures dialog from browse mode.</li> <li>Find "moves to the next tab" item in the Browse mode section.</li> <li>Assign <code>y</code> key for found gesture.</li> <li>Find "moves to the previous tab" item.</li> <li>Assign <code>shift+y</code> for found gesture.</li> </ol> <h3 id="ElementsList">The Elements List</h3> <p>The elements list provides access to a list of various types of elements in the document as appropriate for the application. For example, in web browsers, the elements list can list links, headings, form fields, buttons or landmarks. Radio buttons allow you to switch between the different types of elements. An edit field is also provided in the dialog which allows you to filter the list to help you search for a particular item on the page. Once you have chosen an item, you can use the provided buttons in the dialog to move to or activate that item.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Browse mode elements list</td> <td>NVDA+f7</td> <td>Lists various types of elements in the current document</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="SearchingForText">Searching for text</h3> <p>This dialog allows you to search for terms in the current document. In the "Type the text you wish to find" field, the text to be found can be entered. The "Case sensitive" checkbox makes the search consider uppercase and lowercase letters differently. For example, with "Case sensitive" selected you can find "NV Access" but not "nv access". Use the following keys for performing searches:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Find text</td> <td>NVDA+control+f</td> <td>Opens the search dialog</td> </tr> <tr> <td>Find next</td> <td>NVDA+f3</td> <td>searches the next occurrence of the current search term</td> </tr> <tr> <td>Find previous</td> <td>NVDA+shift+f3</td> <td>searches the previous occurrence of the current search term</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="ImbeddedObjects">Embedded Objects</h3> <p>Pages can include rich content using technologies such as Oracle Java and HTML5, as well as applications and dialogs. Where these are encountered in browse mode, NVDA will report "embedded object", "application" or "dialog", respectively. You can quickly move to them using the o and shift+o embedded object single letter navigation keys. To interact with these objects, you can press enter on them. If it is accessible, you can then tab around it and interact with it like any other application. A key command is provided to return to the original page containing the embedded object:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Move to containing browse mode document</td> <td>NVDA+control+space</td> <td>Moves the focus out of the current embedded object and into the document that contains it</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="NativeSelectionMode">Native Selection Mode</h3> <p>By default when selecting text with the <code>shift+arrow</code> keys in Browse Mode, a selection is only made within NVDA's Browse Mode representation of the document, and not within the application itself. This means that the selection is not visible on screen, and copying text with <code>control+c</code> will only copy NVDA's plain text representation of the content. i.e. formatting of tables, or whether something is a link will not be copied. However, NVDA has a Native Selection Mode which can be turned on in particular Browse Mode documents (so far only Mozilla Firefox) which causes the document's native selection to follow NVDA's Browse Mode selection.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Toggle Native Selection Mode on and off</td> <td><code>NVDA+shift+f10</code></td> <td>Toggles native selection mode on and off</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>When Native Selection Mode is turned on, copying the selection with <code>control+c</code> will also use the application's own copy functionality, meaning that rich content will be copied to the clipboard, rather than plain text. This means that pasting this content into a program such as Microsoft Word or Excel, formatting such as tables, or whether something is a link will be included. Please note however that in native selection mode, some accessible labels or other information that NVDA generates in Browse Mode will not be included. Also, although the application will try its best to match the native selection to NVDA's Browse Mode selection, it may not always be completely accurate. However, for scenarios where you wish to copy an entire table or paragraph of rich content, this feature should prove useful.</p> <h2 id="ReadingMath">Reading Mathematical Content</h2> <p>NVDA can read and navigate mathematical content on the web and in other applications, providing access in both speech and braille. However, in order for NVDA to read and interact with mathematical content, you will first need to install a Math component for NvDA. There are several NVDA add-ons available in the NVDA Add-on Store that provide support for math, including the <a href="https://nsoiffer.github.io/MathCAT/" rel="noopener" target="_blank" title="MathCAT NVDA add-on">MathCAT NVDA add-on</a> and <a href="https://github.com/tsengwoody/Access8Math" rel="noopener" target="_blank" title="Access8Math">Access8Math</a>. Please refer to the <a href="#AddonsManager" title="Add-on Store section">Add-on Store section</a> to learn how to browse and install available add-ons in NVDA. NVDA also can make use of the older <a href="https://info.wiris.com/mathplayer-info" rel="noopener" target="_blank" title="MathPlayer">MathPlayer</a> software from Wiris if found on your system, though this software is no longer maintained.</p> <h3 id="SupportedMathContent">Supported math content</h3> <p>With an appropriate math component installed, NVDA supports the following types of mathematical content:</p> <ul> <li>MathML in Mozilla Firefox, Microsoft Internet Explorer and Google Chrome.</li> <li>Microsoft Word 365 Modern Math Equations via UI automation: NVDA is able to read and interact with math equations in Microsoft Word 365/2016 build 14326 and higher. Note however that any previously created MathType equations must be first converted to Office Math. This can be done by selecting each and choosing "Equation Options", then "Convert to Office Math" in the context menu. Ensure your version of MathType is the latest version before doing this. Microsoft Word provides linear symbol-based navigation through the equations itself and supports inputting math using several syntaxes, including LateX. For further details, please see <a href="https://support.microsoft.com/en-us/office/linear-format-equations-using-unicodemath-and-latex-in-word-2e00618d-b1fd-49d8-8cb4-8d17f25754f8" rel="noopener" target="_blank" title="Linear format equations using UnicodeMath and LaTeX in Word">Linear format equations using UnicodeMath and LaTeX in Word</a></li> <li>Microsoft Powerpoint, and older versions of Microsoft Word: NVDA can read and navigate MathType equations in both Microsoft Powerpoint and Microsoft word. MathType needs to be installed in order for this to work. The trial version is sufficient. It can be downloaded from the <a href="https://www.wiris.com/en/mathtype/" rel="noopener" target="_blank" title="MathType presentation page">MathType presentation page</a>.</li> <li>Adobe Reader: Note that this is not an official standard yet, so there is currently no publicly available software that can produce this content.</li> <li>Kindle Reader for PC: NVDA can read and navigate Math in Kindle for PC for books with accessible math.</li> </ul> <p>When reading a document, NVDA will speak any supported mathematical content where it occurs. If you are using a braille display, it will also be displayed in braille.</p> <h3 id="InteractiveNavigation">Interactive Navigation</h3> <p>If you are working primarily with speech, in most cases, you will probably wish to examine the expression in smaller segments, rather than hearing the entire expression at once.</p> <p>If you are in browse mode, you can do this by moving the cursor to the mathematical content and pressing enter.</p> <p>If you are not in browse mode:</p> <ol> <li>move the review cursor to the mathematical content. By default, the review cursor follows the system caret, so you can usually use the system caret to move to the desired content.</li> <li>Then, activate the following command:</li> </ol> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Interact with math content</td> <td>NVDA+alt+m</td> <td>Begins interaction with math content.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>At this point, NVDA will enter Math mode, where you can use commands such as the arrow keys to explore the expression. For example, you can move through the expression with the left and right arrow keys and zoom into a portion of the expression such as a fraction using the down arrow key.</p> <p>When you wish to return to the document, simply press the escape key.</p> <p>For more information on available commands and preferences for reading and navigating within math content, please refer to the documentation for your particular math component you have installed.</p> <ul> <li><a href="https://nsoiffer.github.io/MathCAT/users.html" rel="noopener" target="_blank" title="MathCAT documentation">MathCAT documentation</a></li> <li><a href="https://github.com/tsengwoody/Access8Math" rel="noopener" target="_blank" title="Access8Math documentation">Access8Math documentation</a></li> <li><a href="https://docs.wiris.com/mathplayer/en/mathplayer-user-manual.html" rel="noopener" target="_blank" title="MathPlayer documentation">MathPlayer documentation</a></li> </ul> <p>Sometimes mathematical content might be displayed as a button or other type of element which, when activated, can display a dialog or more information related to the formula. To activate the button or the element containing the formula, press ctrl+enter.</p> <h3 id="InstallingMathPlayer">Installing MathPlayer</h3> <p>Although it is generally recommended to use one of the newer NVDA add-ons to support math in NVDA, in certain limited scenarios MathPlayer may still be a more suitable choice. E.g. MathPlayer may support a particular language or Braille code that is unsupported in newer add-ons. MathPlayer is available for free from the Wiris website. <a href="https://downloads.wiris.com/mathplayer/MathPlayerSetup.exe" rel="noopener" target="_blank" title="Download MathPlayer">Download MathPlayer</a>. After installing MathPlayer, you will need to restart NVDA. Please note that information about MathPlayer may state that it is only for older browsers such as Internet Explorer 8. This is only referring to using MathPlayer to display mathematical content visually, and can be ignored by those using it to read or navigate math with NVDA.</p> <h2 id="Braille">Braille</h2> <p>If you own a braille display, NVDA can display information in braille. If your braille display has a Perkins-style keyboard, you can also enter contracted or uncontracted braille. Braille can also be displayed on screen using the <a href="#BrailleViewer" title="Braille Viewer">Braille Viewer</a> instead of, or at the same time as, using a physical braille display.</p> <p>Please see the <a href="#SupportedBrailleDisplays" title="Supported Braille Displays">Supported Braille Displays</a> section for information about the supported braille displays. This section also contains information about what displays support NVDA's automatic background braille display detection functionality. You can configure braille using the <a href="#BrailleSettings" title="Braille category">Braille category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog.</p> <h3 id="BrailleAbbreviations">Control Type, State and Landmark abbreviations</h3> <p>In order to fit as much information as possible on a braille display, the following abbreviations have been defined to indicate control type and state as well as landmarks.</p> <table> <thead> <tr> <th>Abbreviation</th> <th>Control type</th> </tr> </thead> <tbody> <tr> <td>app</td> <td>application</td> </tr> <tr> <td>art</td> <td>article</td> </tr> <tr> <td>bqt</td> <td>block quote</td> </tr> <tr> <td>btn</td> <td>button</td> </tr> <tr> <td>drbtn</td> <td>drop down button</td> </tr> <tr> <td>spnbtn</td> <td>spin button</td> </tr> <tr> <td>splbtn</td> <td>split button</td> </tr> <tr> <td>tgbtn</td> <td>toggle button</td> </tr> <tr> <td>cap</td> <td>caption</td> </tr> <tr> <td>cbo</td> <td>combo box</td> </tr> <tr> <td>chk</td> <td>checkbox</td> </tr> <tr> <td>dlg</td> <td>dialog</td> </tr> <tr> <td>doc</td> <td>document</td> </tr> <tr> <td>edt</td> <td>editable text field</td> </tr> <tr> <td>pwdedt</td> <td>password edit</td> </tr> <tr> <td>embedded</td> <td>embedded object</td> </tr> <tr> <td>enote</td> <td>end note</td> </tr> <tr> <td>fig</td> <td>figure</td> </tr> <tr> <td>fnote</td> <td>foot note</td> </tr> <tr> <td>gra</td> <td>graphic</td> </tr> <tr> <td>grp</td> <td>grouping</td> </tr> <tr> <td>hN</td> <td>heading at level n, e.g. h1, h2.</td> </tr> <tr> <td>hlp</td> <td>help balloon</td> </tr> <tr> <td>lmk</td> <td>landmark</td> </tr> <tr> <td>lnk</td> <td>link</td> </tr> <tr> <td>vlnk</td> <td>visited link</td> </tr> <tr> <td>lst</td> <td>list</td> </tr> <tr> <td>mnu</td> <td>menu</td> </tr> <tr> <td>mnubar</td> <td>menu bar</td> </tr> <tr> <td>mnubtn</td> <td>menu button</td> </tr> <tr> <td>mnuitem</td> <td>menu item</td> </tr> <tr> <td>pnl</td> <td>panel</td> </tr> <tr> <td>prgbar</td> <td>progress bar</td> </tr> <tr> <td>bsyind</td> <td>busy indicator</td> </tr> <tr> <td>rbtn</td> <td>radio button</td> </tr> <tr> <td>scrlbar</td> <td>scroll bar</td> </tr> <tr> <td>sect</td> <td>section</td> </tr> <tr> <td>stbar</td> <td>status bar</td> </tr> <tr> <td>tabctl</td> <td>tab control</td> </tr> <tr> <td>tbl</td> <td>table</td> </tr> <tr> <td>cN</td> <td>table column number n, e.g. c1, c2.</td> </tr> <tr> <td>rN</td> <td>table row number n, e.g. r1, r2.</td> </tr> <tr> <td>term</td> <td>terminal</td> </tr> <tr> <td>tlbar</td> <td>tool bar</td> </tr> <tr> <td>tltip</td> <td>tool tip</td> </tr> <tr> <td>tv</td> <td>tree view</td> </tr> <tr> <td>tvbtn</td> <td>tree view button</td> </tr> <tr> <td>tvitem</td> <td>tree view item</td> </tr> <tr> <td>lv N</td> <td>a tree view item has a hierarchical level N</td> </tr> <tr> <td>wnd</td> <td>window</td> </tr> <tr> <td>⠤⠤⠤⠤⠤</td> <td>separator</td> </tr> <tr> <td>mrkd</td> <td>marked content</td> </tr> </tbody> </table> <p>The following state indicators are also defined:</p> <table> <thead> <tr> <th>Abbreviation</th> <th>Control state</th> </tr> </thead> <tbody> <tr> <td>...</td> <td>displayed when an object supports autocompletion</td> </tr> <tr> <td>⢎⣿⡱</td> <td>displayed when an object (e.g. a toggle button) is pressed</td> </tr> <tr> <td>⢎⣀⡱</td> <td>displayed when an object (e.g. a toggle button) is not pressed</td> </tr> <tr> <td>⣏⣿⣹</td> <td>displayed when an object (e.g. a checkbox) is checked</td> </tr> <tr> <td>⣏⣸⣹</td> <td>displayed when an object (e.g. a checkbox) is half checked</td> </tr> <tr> <td>⣏⣀⣹</td> <td>displayed when an object (e.g. a checkbox) is not checked</td> </tr> <tr> <td>-</td> <td>displayed when an object (e.g. a tree view item) is collapsible</td> </tr> <tr> <td>+</td> <td>displayed when an object (e.g. a tree view item) is Expandable</td> </tr> <tr> <td>***</td> <td>displayed when a protected control or document is encountered</td> </tr> <tr> <td>clk</td> <td>displayed when an object is clickable</td> </tr> <tr> <td>cmnt</td> <td>displayed when there is a comment for a spreadsheet cell or piece of text in a document</td> </tr> <tr> <td>frml</td> <td>displayed when there is a formula on a spreadsheet cell</td> </tr> <tr> <td>invalid</td> <td>displayed when an invalid entry has been made</td> </tr> <tr> <td>ldesc</td> <td>displayed when an object (usually a graphic) has a long description</td> </tr> <tr> <td>mln</td> <td>displayed when an edit field allows typing multiple lines of text such as comment fields on websites</td> </tr> <tr> <td>req</td> <td>displayed when a required form field is encountered</td> </tr> <tr> <td>ro</td> <td>displayed when an object (e.g. an editable text field) is read-only</td> </tr> <tr> <td>sel</td> <td>displayed when an object is selected</td> </tr> <tr> <td>nsel</td> <td>displayed when an object is not selected</td> </tr> <tr> <td>sorted asc</td> <td>displayed when an object is sorted ascending</td> </tr> <tr> <td>sorted desc</td> <td>displayed when an object is sorted descending</td> </tr> <tr> <td>submnu</td> <td>displayed when an object has a popup (usually a sub-menu)</td> </tr> </tbody> </table> <p>Finally, the following abbreviations for landmarks are defined:</p> <table> <thead> <tr> <th>Abbreviation</th> <th>Landmark</th> </tr> </thead> <tbody> <tr> <td>bnnr</td> <td>banner</td> </tr> <tr> <td>cinf</td> <td>content info</td> </tr> <tr> <td>cmpl</td> <td>complementary</td> </tr> <tr> <td>form</td> <td>form</td> </tr> <tr> <td>main</td> <td>main</td> </tr> <tr> <td>navi</td> <td>navigation</td> </tr> <tr> <td>srch</td> <td>search</td> </tr> <tr> <td>rgn</td> <td>region</td> </tr> </tbody> </table> <h3 id="BrailleInput">Braille Input</h3> <p>NVDA supports entry of both uncontracted and contracted braille via a braille keyboard. You can select the translation table used to translate braille into text using the <a href="#BrailleSettingsInputTable" title="Input table">Input table</a> setting in the Braille category of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog.</p> <p>When uncontracted braille is being used, text is inserted as soon as it is entered. When using contracted braille, text is inserted when you press space or enter at the end of a word. Note that translation can only reflect the braille word you are typing and cannot consider existing text. For example, if you are using a braille code that begins numbers with a number sign and you press backspace to move to the end of a number, you will need to type the number sign again to enter additional numbers.</p> <!-- KC:beginInclude --> <p>Pressing dot 7 erases the last entered braille cell or character. Dot 8 translates any braille input and presses the enter key. Pressing dot 7 + dot 8 translates any braille input, but without adding a space or pressing enter.</p> <!-- KC:endInclude --> <h4 id="BrailleKeyboardShortcuts">Inputting keyboard shortcuts</h4> <p>NVDA supports inputting keyboard shortcuts and emulating keypresses using the braille display. This emulation comes in two forms: assigning a Braille input directly to some key press and using the virtual modifier keys.</p> <p>Commonly-used keys, such as the arrow keys or pressing Alt to reach menus, can be mapped directly to Braille inputs. The driver for each Braille display comes pre-equipped with some of these assignments. You can change these assignments or add new emulated keys from the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <p>While this approach is useful for commonly-pressed or unique keys (such as Tab), you may not want to assign a unique set of keys to each keyboard shortcut. To allow emulating keypresses where modifier keys are held down, NVDA provides commands to toggle the control, alt, shift, windows, and NVDA keys, along with commands for some combinations of those keys. To use these toggles, first press the command (or sequence of commands) for the modifier keys you want pressed. Then input the character that's part of the keyboard shortcut you want to input. For example, to produce control+f, use the "Toggle control key" command and then type an f, and to input control+alt+t, use either the "Toggle control key" and "Toggle alt key" commands, in either order, or the "Toggle control and alt keys" command, followed by typing a t.</p> <p>If you accidentally toggle modifier keys, running the toggle command again will remove the modifier.</p> <p>When typing in contracted Braille, using the modifier toggle keys will cause your input to be translated just as if you had pressed dots 7+8. In addition, the emulated keypress cannot reflect Braille typed before the modifier key was pressed. This means that, to type alt+2 with a Braille code that uses a number sign, you must first toggle Alt and then type a number sign.</p> <h2 id="Vision">Vision</h2> <p>While NVDA is primarily aimed at blind or vision impaired people who primarily use speech and/or braille to operate a computer, it also provides built-in facilities to change the contents of the screen. Within NVDA, such a visual aid is called a vision enhancement provider.</p> <p>NVDA offers several built-in vision enhancement providers which are described below. Additional vision enhancement providers can be provided in <a href="#AddonsManager" title="NVDA add-ons">NVDA add-ons</a>.</p> <p>NVDA's vision settings can be changed in the <a href="#VisionSettings" title="vision category">vision category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog.</p> <h3 id="VisionFocusHighlight">Visual Highlight</h3> <p>Visual Highlight can help to identify the <a href="#SystemFocus" title="system focus">system focus</a>, <a href="#ObjectNavigation" title="navigator object">navigator object</a> and <a href="#BrowseMode" title="browse mode">browse mode</a> positions. These positions are highlighted with a coloured rectangle outline.</p> <ul> <li>Solid blue highlights a combined navigator object and system focus location (e.g. because <a href="#ReviewCursorFollowFocus" title="the navigator object follows the system focus">the navigator object follows the system focus</a>).</li> <li>Dashed blue highlights just the system focus object.</li> <li>Solid pink highlights just the navigator object.</li> <li>Solid yellow highlights the virtual caret used in browse mode (where there is no physical caret such as in web browsers).</li> </ul> <p>When Visual Highlight is enabled in the <a href="#VisionSettings" title="vision category">vision category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog, you can <a href="#VisionSettingsFocusHighlight" title="change whether or not to highlight the focus, navigator object or browse mode caret">change whether or not to highlight the focus, navigator object or browse mode caret</a>.</p> <h3 id="VisionScreenCurtain">Screen Curtain</h3> <p>As a blind or vision impaired user, it is often not possible or necessary to see the contents of the screen. Furthermore, it might be hard to ensure that there isn't someone looking over your shoulder. For this situation, NVDA contains a feature called "Screen Curtain" which can be enabled to make the screen black.</p> <p>You can enable the Screen Curtain in the <a href="#VisionSettings" title="vision category">vision category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Toggles the state of the screen curtain</td> <td><code>NVDA+control+escape</code></td> <td>Enable to make the screen black or disable to show the contents of the screen. Pressed once, screen curtain is enabled until you restart NVDA. Pressed twice, screen curtain is enabled until you disable it.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>When the Screen Curtain is active some tasks directly based on what appears on the screen such as performing <a href="#Win10Ocr" title="OCR">OCR</a> or taking a screenshot cannot be achieved.</p> <p>Due to a change in the Windows Magnification API, Screen Curtain had to be updated to support the newest versions of Windows. Use NVDA 2021.2 to activate Screen Curtain with Windows 10 21H2 (10.0.19044) or later. For security purposes, when using a new version of Windows, get visual confirmation that the Screen Curtain makes the screen entirely black.</p> <p>Please note that while Windows Magnifier is running and inverted screen colors are being used, the screen curtain cannot be enabled.</p> <h2 id="ContentRecognition">Content Recognition</h2> <p>When authors don't provide sufficient information for a screen reader user to determine the content of something, various tools can be used to attempt to recognize the content from an image. NVDA supports the optical character recognition (OCR) functionality built into Windows 10 and later to recognize text from images. Additional content recognizers can be provided in NVDA add-ons.</p> <p>When you use a content recognition command, NVDA recognizes content from the current <a href="#ObjectNavigation" title="navigator object">navigator object</a>. By default, the navigator object follows the system focus or browse mode cursor, so you can usually just move the focus or browse mode cursor where desired. For example, if you move the browse mode cursor to a graphic, recognition will recognize content from the graphic by default. However, you may wish to use object navigation directly to, for example, recognize the content of an entire application window.</p> <p>Once recognition is complete, the result will be presented in a document similar to browse mode, allowing you to read the information with cursor keys, etc. Pressing enter or space will activate (normally click) the text at the cursor if possible. Pressing escape dismisses the recognition result.</p> <h3 id="Win10Ocr">Windows OCR</h3> <p>Windows 10 and later includes OCR for many languages. NVDA can use this to recognize text from images or inaccessible applications.</p> <p>You can set the language to use for text recognition in the <a href="#Win10OcrSettings" title="Windows OCR category">Windows OCR category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog. Additional languages can be installed by opening the Start menu, choosing Settings, selecting Time &amp; Language -&gt; Region &amp; Language and then choosing Add a language.</p> <p>When you want to monitor constantly changing content, such as when watching a video with subtitles, you can optionally enable automatic refresh of the recognized content. This can also be done in the <a href="#Win10OcrSettings" title="Windows OCR category">Windows OCR category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog.</p> <p>Windows OCR may be partially or fully incompatible with <a href="#Vision" title="NVDA vision enhancements">NVDA vision enhancements</a> or other external visual aids. You will need to disable these aids before proceeding to a recognition.</p> <!-- KC:beginInclude --> <p>To recognize the text in the current navigator object using Windows OCR, press NVDA+r.</p> <!-- KC:endInclude --> <h2 id="ApplicationSpecificFeatures">Application Specific Features</h2> <p>NVDA provides its own extra features for some applications to make certain tasks easier or to provide access to functionality which is not otherwise accessible to screen reader users.</p> <h3 id="MicrosoftWord">Microsoft Word</h3> <h4 id="WordAutomaticColumnAndRowHeaderReading">Automatic Column and Row Header Reading</h4> <p>NVDA is able to automatically announce appropriate row and column headers when navigating around tables in Microsoft Word. This requires that the Report Table row / column headers option in NVDA's Document Formatting settings, found in the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog, be turned on.</p> <p>If you use <a href="#MSWordUIA" title="UIA to access Word documents">UIA to access Word documents</a>, which is default in recent versions of Word and Windows, the cells of the first row will automatically be considered as column headers; similarly, the cells of the first column will automatically be considered as row headers.</p> <p>On the contrary, if you do not use <a href="#MSWordUIA" title="UIA to access Word documents">UIA to access Word documents</a>, you will have to indicate to NVDA which row or column contains the headers in any given table. After moving to the first cell in the column or row containing the headers, use one of the following commands:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Set column headers</td> <td>NVDA+shift+c</td> <td>Pressing this once tells NVDA this is the first header cell in the row that contains column headers, which should be automatically announced when moving between columns below this row. Pressing twice will clear the setting.</td> </tr> <tr> <td>Set row headers</td> <td>NVDA+shift+r</td> <td>Pressing this once tells NVDA this is the first header cell in the column that contains row headers, which should be automatically announced when moving between rows after this column. Pressing twice will clear the setting.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>These settings will be stored in the document as bookmarks compatible with other screen readers such as JAWS. This means that users of other screen readers who open this document at a later date will automatically have the row and column headers already set.</p> <h4 id="BrowseModeInMicrosoftWord">Browse Mode in Microsoft Word</h4> <p>Similar to the web, Browse mode can be used in Microsoft Word to allow you to use features such as Quick navigation and the Elements List.</p> <!-- KC:beginInclude --> <p>To toggle Browse mode on and off in Microsoft Word, press NVDA+space.</p> <!-- KC:endInclude --> <p>For further information about Browse mode and Quick Navigation, see the <a href="#BrowseMode" title="Browse Mode section">Browse Mode section</a>.</p> <h5 id="WordElementsList">The Elements List</h5> <!-- KC:beginInclude --> <p>While in Browse mode in Microsoft Word, you can access the Elements List by pressing NVDA+f7.</p> <!-- KC:endInclude --> <p>The Elements List can list headings, links, annotations (which includes comments and track changes) and errors (currently limited to spelling errors).</p> <h4 id="WordReportingComments">Reporting Comments</h4> <!-- KC:beginInclude --> <p>To report any comments at the current caret position, press <code>NVDA+alt+c</code>. Pressing twice shows the information in a browsable message.</p> <!-- KC:endInclude --> <p>All comments for the document, along with other tracked changes, can also be listed in the NVDA Elements List when selecting Annotations as the type.</p> <h3 id="MicrosoftExcel">Microsoft Excel</h3> <h4 id="ExcelAutomaticColumnAndRowHeaderReading">Automatic Column and Row Header Reading</h4> <p>NVDA is able to automatically announce appropriate row and column headers when navigating around Excel worksheets. This firstly requires that the Report Table row / column headers option in NVDA's Document Formatting settings, found in the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog, be turned on. Secondly, NVDA needs to know which row or column contains the headers. After moving to the first cell in the column or row containing the headers, use one of the following commands:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Set column headers</td> <td>NVDA+shift+c</td> <td>Pressing this once tells NVDA this is the first header cell in the row that contains column headers, which should be automatically announced when moving between columns below this row. Pressing twice will clear the setting.</td> </tr> <tr> <td>Set row headers</td> <td>NVDA+shift+r</td> <td>Pressing this once tells NVDA this is the first header cell in the column that contains row headers, which should be automatically announced when moving between rows after this column. Pressing twice will clear the setting.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>These settings will be stored in the workbook as defined name ranges compatible with other screen readers such as JAWS. This means that users of other screen readers who open this workbook at a later date will automatically have the row and column headers already set.</p> <h4 id="ExcelElementsList">The Elements List</h4> <p>Similar to the web, NVDA has an Elements List for Microsoft Excel that allows you to list and access several different types of information.</p> <!-- KC:beginInclude --> <p>To access the Elements List in Excel, press NVDA+f7.</p> <!-- KC:endInclude --> <p>The various types of information available in the Elements List are:</p> <ul> <li>Charts: This lists all charts in the active worksheet. Selecting a chart and pressing enter or the Move to button focuses the chart for navigating and reading with the arrow keys.</li> <li>Comments: This lists all cells in the active worksheet containing comments. The cell address along with its comments are shown for each cell. Pressing enter or the Move To button when on a listed comment will move directly to that cell.</li> <li>Formulas: This lists all cells in the worksheet containing a formula. The cell address along with its formula are shown for each cell. Pressing enter or the Move To button on a listed formula will move directly to that cell.</li> <li>Sheets: This lists all sheets in the workbook. Pressing f2 when on a listed sheet allows you to rename the sheet. Pressing enter or the Move To button while on the listed sheet will switch to that sheet.</li> <li>Form fields: This lists all form fields in the active worksheet. For each form field, the Elements List shows the alternative text of the field along with the addresses of the cells it covers. Selecting a form field and pressing enter or the Move to button moves to that field in browse mode.</li> </ul> <h4 id="ExcelReportingComments">Reporting Notes</h4> <!-- KC:beginInclude --> <p>To report any notes for the currently focused cell, press <code>NVDA+alt+c</code>. Pressing twice shows the information in a browsable message. In Microsoft 2016, 365 and newer, the classic comments in Microsoft Excel have been renamed to "notes".</p> <!-- KC:endInclude --> <p>All notes for the worksheet can also be listed in the NVDA Elements List after pressing NVDA+f7.</p> <p>NVDA can also display a specific dialog for adding or editing a certain note. NVDA overrides the native MS Excel notes editing region due to accessibility constraints, but the key stroke for displaying the dialog is inherited from MS Excel and therefore works also without NVDA running.</p> <!-- KC:beginInclude --> <p>To add or edit a certain note, in a focused cell, press shift+f2.</p> <!-- KC:endInclude --> <p>This key stroke does not appear and cannot be changed in NVDA's input gesture dialog.</p> <p>Note: it is possible to open the note editing region in MS Excel also from the context menu of any cell of the work sheet. However, this will open the inaccessible note editing region and not the NVDA specific note editing dialog.</p> <p>In Microsoft Office 2016, 365 and newer, a new style comment dialog has been added. This dialog is accessible and provides more features such as replying to comments, etc. It can also be opened from the context menu of a certain cell. The comments added to the cells via the new style comment dialog are not related to "notes".</p> <h4 id="ExcelReadingProtectedCells">Reading Protected Cells</h4> <p>If a workbook has been protected, it may not be possible to move focus to particular cells that have been locked for editing.</p> <!-- KC:beginInclude --> <p>To allow moving to locked cells, switch to Browse Mode by pressing NVDA+space, and then use standard Excel movement commands such as the arrow keys to move around all cells on the current worksheet.</p> <!-- KC:endInclude --> <h4 id="ExcelFormFields">Form Fields</h4> <p>Excel worksheets can include form fields. You can access these using the Elements List or the f and shift+f form field single letter navigation keys. Once you move to a form field in browse mode, you can press enter or space to either activate it or switch to focus mode so you can interact with it, depending on the control. For further information about Browse mode and single letter navigation, see the <a href="#BrowseMode" title="Browse Mode section">Browse Mode section</a>.</p> <h3 id="MicrosoftPowerPoint">Microsoft PowerPoint</h3> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Toggle speaker notes reading</td> <td>control+shift+s</td> <td>When in a running slide show, this command will toggle between the speaker notes for the slide and the content for the slide. This only affects what NVDA reads, not what is displayed on screen.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="Foobar2000">foobar2000</h3> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Report remaining time</td> <td>control+shift+r</td> <td>Reports the remaining time of the currently playing track, if any.</td> </tr> <tr> <td>Report elapsed time</td> <td>control+shift+e</td> <td>Reports the elapsed time of the currently playing track, if any.</td> </tr> <tr> <td>Report track length</td> <td>control+shift+t</td> <td>Reports the length of the currently playing track, if any.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>Note: The above shortcuts work only with the default formatting string for foobar's status line.</p> <h3 id="MirandaIM">Miranda IM</h3> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Report recent message</td> <td>NVDA+control+1-4</td> <td>Reports one of the recent messages, depending on the number pressed; e.g. NVDA+control+2 reads the second most recent message.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="Poedit">Poedit</h3> <p>NVDA offers enhanced support for Poedit 3.5 or newer.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Report notes for translators</td> <td><code>control+shift+a</code></td> <td>Reports any notes for translators. If pressed twice, presents the notes in browse mode</td> </tr> <tr> <td>Report Comment</td> <td><code>control+shift+c</code></td> <td>Reports any comment in the comments window. If pressed twice, presents the comment in browse mode</td> </tr> <tr> <td>Report Old Source Text</td> <td><code>control+shift+o</code></td> <td>Reports the old source text, if any. If pressed twice, presents the text in browse mode</td> </tr> <tr> <td>Report Translation Warning</td> <td><code>control+shift+w</code></td> <td>Reports a translation warning, if any. If pressed twice, presents the warning in browse mode</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="Kindle">Kindle for PC</h3> <p>NVDA supports reading and navigating books in Amazon Kindle for PC. This functionality is only available in Kindle books designated with "Screen Reader: Supported" which you can check on the details page for the book.</p> <p>Browse mode is used to read books. It is enabled automatically when you open a book or focus the book area. The page will be turned automatically as appropriate when you move the cursor or use the say all command.</p> <!-- KC:beginInclude --> <p>You can manually turn to the next page with the pageDown key and turn to the previous page with the pageUp key.</p> <!-- KC:endInclude --> <p>Single letter navigation is supported for links and graphics, but only within the current page. Navigating by link also includes footnotes.</p> <p>NVDA provides early support for reading and interactive navigation of mathematical content for books with accessible math. Please see the <a href="#ReadingMath" title="Reading Mathematical Content">Reading Mathematical Content</a> section for further information.</p> <h4 id="KindleTextSelection">Text Selection</h4> <p>Kindle allows you to perform various functions on selected text, including obtaining a dictionary definition, adding notes and highlights, copying the text to the clipboard and searching the web. To do this, first select text as you normally would in browse mode; e.g. by using shift and the cursor keys.</p> <!-- KC:beginInclude --> <p>Once you have selected text, press the applications key or shift+f10 to show the available options for working with the selection.</p> <!-- KC:endInclude --> <p>If you do this with no text selected, options will be shown for the word at the cursor.</p> <h4 id="KindleUserNotes">User Notes</h4> <p>You can add a note regarding a word or passage of text. To do this, first select the relevant text and access the selection options as described above. Then, choose Add Note.</p> <p>When reading in browse mode, NVDA refers to these notes as comments.</p> <p>To view, edit or delete a note:</p> <ol> <li>Move the cursor to the text containing the note.</li> <li>Access the options for the selection as described above.</li> <li>Choose Edit Note.</li> </ol> <h3 id="Azardi">Azardi</h3> <!-- KC:beginInclude --> <p>When in the table view of added books:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Enter</td> <td>enter</td> <td>Opens the selected book.</td> </tr> <tr> <td>Context menu</td> <td>applications</td> <td>Opens the context menu for the selected book.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="WinConsole">Windows Console</h3> <p>NVDA provides support for the Windows command console used by Command Prompt, PowerShell, and the Windows Subsystem for Linux. The console window is of fixed size, typically much smaller than the buffer that holds the output. As new text is written, the content scroll upwards and previous text is no longer visible. On Windows versions before Windows 11 22H2, text in the console that is not visibly displayed in the window is not accessible with NVDA's text review commands. Therefore, it is necessary to scroll the console window to read earlier text. In newer versions of the console and in Windows Terminal, it is possible to review the entire text buffer freely without the need to scroll the window.</p> <!-- KC:beginInclude --> <p>The following built-in Windows Console keyboard shortcuts may be useful when <a href="#ReviewingText" title="reviewing text">reviewing text</a> with NVDA in older versions of Windows Console:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Scroll up</td> <td>control+upArrow</td> <td>Scrolls the console window up, so earlier text can be read.</td> </tr> <tr> <td>Scroll down</td> <td>control+downArrow</td> <td>Scrolls the console window down, so later text can be read.</td> </tr> <tr> <td>Scroll to start</td> <td>control+home</td> <td>Scrolls the console window to the beginning of the buffer.</td> </tr> <tr> <td>Scroll to end</td> <td>control+end</td> <td>Scrolls the console window to the end of the buffer.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h2 id="ConfiguringNVDA">Configuring NVDA</h2> <p>Most configuration can be performed using dialog boxes accessed through the Preferences sub-menu of the NVDA menu. Many of these settings can be found in the multi-page <a href="#NVDASettings" title="NVDA Settings dialog">NVDA Settings dialog</a>. In all dialog boxes, press the OK button to accept any changes you have made. To cancel any changes, press the Cancel button or the escape key. For certain dialogs, you can press the Apply button to let the settings take effect immediately without closing the dialog. Most NVDA dialogs support context help.</p> <!-- KC:beginInclude --> <p>When in a dialog, pressing <code>f1</code> opens the User Guide at the paragraph related to the focused setting or the current dialog.</p> <!-- KC:endInclude --> <p>Some settings can also be changed using shortcut keys, which are listed where relevant in the sections below.</p> <h3 id="NVDASettings">NVDA Settings</h3> <!-- KC:settingsSection: || Name | Desktop key | Laptop key | Description | --> <p>NVDA provides many configuration parameters that can be changed using the settings dialog. To make it easier to find the kind of settings you want to change, the dialog displays a list of configuration categories to choose from. When you select a category, all of the settings related to it will be shown in the dialog. To move between categories, use <code>tab</code> or <code>shift+tab</code> to reach the list of categories, and then use the up and down arrow keys to navigate the list. From anywhere in the dialog, you may also move forward one category by pressing <code>ctrl+tab</code>, or back one category by pressing <code>shift+ctrl+tab</code>.</p> <p>Once you change one or more settings, the settings can be applied using the apply button, in which case the dialog will stay open, allowing you to change more settings or choose another category. If you want to save your settings and close the NVDA Settings dialog, you can use the OK button.</p> <p>Some settings categories have dedicated shortcut keys. If pressed, the shortcut key will open the NVDA Settings dialog directly to that particular category. By default, not all categories can be accessed with keyboard commands. If you frequently access categories that do not have dedicated shortcut keys, you may wish to use the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a> to add a custom gesture such as a keyboard command or touch gesture for that category.</p> <p>The settings categories found in the NVDA Settings dialog will be outlined below.</p> <h4 id="GeneralSettings">General</h4> <!-- KC:setting --> <h5 id="OpenGeneralSettings">Open General settings</h5> <p>Key: <code>NVDA+control+g</code></p> <p>The General category of the NVDA Settings dialog sets NVDA's overall behaviour such as interface language and whether or not it should check for updates. This category contains the following options:</p> <h5 id="GeneralSettingsLanguage">Language</h5> <p>This is a combo box which allows you to select the language that NVDA's user interface and messages should be shown in. There are many languages, however the default option is "User Default, Windows". This option tells NVDA to use the language that Windows is currently set to.</p> <p>Please note that NVDA must be restarted when changing the language. When the confirmation dialog appears, select "restart now" or "restart later" if you wish to use the new language now or at a later time, respectively. If "restart later" is selected, the configuration must be saved (either manually or using the save on exit functionality).</p> <h5 id="GeneralSettingsSaveConfig">Save configuration on exit</h5> <p>This option is a checkbox that, when checked, tells NVDA to automatically save the current configuration when you exit NVDA.</p> <h5 id="GeneralSettingsShowExitOptions">Show exit options when exiting NVDA</h5> <p>This option is a checkbox that allows you to choose whether or not a dialog appears when you exit NVDA that asks what action you want to perform. When checked, a dialog will appear when you attempt to exit NVDA asking whether you want to exit, restart, restart with add-ons disabled or install pending updates (if any). When unchecked, NVDA will exit immediately.</p> <h5 id="GeneralSettingsPlaySounds">Play sounds when starting or exiting NVDA</h5> <p>This option is a checkbox that, when checked, tells NVDA to play sounds when it starts or exits.</p> <h5 id="GeneralSettingsLogLevel">Logging level</h5> <p>This is a combo box that lets you choose how much NVDA will log as it's running. Generally users should not need to touch this as not too much is logged. However, if you wish to provide information in a bug report, or enable or disable logging altogether, then it may be a useful option.</p> <p>The available logging levels are:</p> <ul> <li>Disabled: Apart from a brief startup message, NVDA will not log anything while it runs.</li> <li>Info: NVDA will log basic information such as startup messages and information useful for developers.</li> <li>Debug warning: Warning messages that are not caused by severe errors will be logged.</li> <li>Input/output: Input from keyboard and braille displays, as well as speech and braille output will be logged. If you are concerned about privacy, do not set the logging level to this option.</li> <li>Debug: In addition to info, warning, and input/output messages, additional debug messages will be logged. Just like input/output, if you are concerned about privacy, you should not set the logging level to this option.</li> </ul> <h5 id="GeneralSettingsStartAfterLogOn">Start NVDA after I sign in</h5> <p>If this option is enabled, NVDA will start automatically as soon as you sign in to Windows. This option is only available for installed copies of NVDA.</p> <h5 id="GeneralSettingsStartOnLogOnScreen">Use NVDA during sign-in (requires administrator privileges)</h5> <p>If you sign in to Windows by providing a user name and password, then enabling this option will make NVDA start automatically at the sign-in screen when Windows starts. This option is only available for installed copies of NVDA.</p> <h5 id="GeneralSettingsCopySettings">Use currently saved settings during sign-in and on secure screens (requires administrator privileges)</h5> <p>Pressing this button copies your currently saved NVDA user configuration to NVDA's system configuration directory, so that NVDA will use it during sign-in and when running on User Account Control (UAC) and other <a href="#SecureScreens" title="secure screens">secure screens</a>. To make sure that all your settings are transferred, make sure to save your configuration first with control+NVDA+c or Save configuration in the NVDA menu. This option is only available for installed copies of NVDA.</p> <h5 id="GeneralSettingsCheckForUpdates">Automatically check for updates to NVDA</h5> <p>If this is enabled, NVDA will automatically check for updated versions and inform you when an update is available. You can also manually check for updates by selecting Check for updates under Help in the NVDA menu. When manually or automatically checking for updates, it is necessary for NVDA to send some information to the update server in order to receive the correct update for your system. The following information is always sent:</p> <ul> <li>Current NVDA version</li> <li>Operating System version</li> <li>Whether the Operating System is 64 or 32 bit</li> </ul> <h5 id="GeneralSettingsGatherUsageStats">Allow NV Access to gather NVDA usage statistics</h5> <p>If this is enabled, NV Access will use the information from update checks in order to track the number of NVDA users including particular demographics such as the operating system and country of origin. Note that although your IP address will be used to calculate your country during the update check, the IP address is never kept. Apart from the mandatory information required to check for updates, the following extra information is also currently sent:</p> <ul> <li>A unique ID for the current NVDA user, this changes once a month</li> <li>NVDA interface language</li> <li>Whether this copy of NVDA is portable or installed</li> <li>Name of the current speech synthesizer in use (including the name of the add-on the driver comes from)</li> <li>Name of the current Braille display in use (including the name of the add-on the driver comes from)</li> <li>The current output Braille table (if Braille is in use)</li> </ul> <p>This information greatly aides NV Access to prioritize future development of NVDA.</p> <h5 id="GeneralSettingsNotifyPendingUpdates">Notify for pending updates on startup</h5> <p>If this is enabled, NVDA will inform you when there is a pending update on startup, offering you the possibility to install it. You can also manually install the pending update from the Exit NVDA dialog (if enabled), from the NVDA menu, or when you perform a new check from the Help menu.</p> <h4 id="SpeechSettings">Speech Settings</h4> <!-- KC:setting --> <h5 id="OpenSpeechSettings">Open Speech settings</h5> <p>Key: <code>NVDA+control+v</code></p> <p>The Speech category in the NVDA Settings dialog contains options that lets you change the speech synthesizer as well as voice characteristics for the chosen synthesizer. For a quicker alternative way of controlling speech parameters from anywhere, please see the <a href="#SynthSettingsRing" title="Synth Settings Ring">Synth Settings Ring</a> section.</p> <p>The Speech Settings category contains the following options:</p> <h5 id="SpeechSettingsChange">Change synthesizer</h5> <p>The first option in the Speech Settings category is the Change... button. This button activates the <a href="#SelectSynthesizer" title="Select Synthesizer">Select Synthesizer</a> dialog, which allows you to select the active speech synthesizer and output device. This dialog opens on top of the NVDA Settings dialog. Saving or dismissing the settings in the Select Synthesizer dialog will return you to the NVDA Settings dialog.</p> <h5 id="SpeechSettingsVoice">Voice</h5> <p>The Voice option is a combo box listing all the voices of the current synthesizer that you have installed. You can use the arrow keys to listen to all the various choices. Left and Up arrow take you up in the list, while right and down arrow move you down in the list.</p> <h5 id="SpeechSettingsVariant">Variant</h5> <p>If you are using the Espeak NG synthesizer which is packaged with NVDA, this is a combo box that allows you to select the Variant the synthesizer should speak with. ESpeak NG's Variants are rather like voices, as they provide slightly different attributes to the eSpeak NG voice. Some variants will sound like a male, some like a female, and some even like a frog. If using a third-party synthesizer, you may also be able to change this value if your chosen voice supports it.</p> <h5 id="SpeechSettingsRate">Rate</h5> <p>This option allows you to change the rate of your voice. This is a slider that goes from 0 to 100 - 0 being the slowest, 100 being the fastest.</p> <h5 id="SpeechSettingsRateBoost">Rate boost</h5> <p>Enabling this option will significantly increase the speech rate, if supported by the current synthesizer.</p> <h5 id="SpeechSettingsPitch">Pitch</h5> <p>This option allows you to change the pitch of the current voice. It is a slider which goes from 0 to 100 - 0 being the lowest pitch and 100 being the highest.</p> <h5 id="SpeechSettingsVolume">Volume</h5> <p>This option is a slider which goes from 0 to 100 - 0 being the lowest volume and 100 being the highest.</p> <h5 id="SpeechSettingsInflection">Inflection</h5> <p>This option is a slider that lets you choose how much inflection (rise and fall in pitch) the synthesizer should use to speak with.</p> <h5 id="SpeechSettingsLanguageSwitching">Automatic Language switching</h5> <p>This checkbox allows you to toggle whether NVDA should switch speech synthesizer languages automatically if the text being read specifies its language. This option is enabled by default.</p> <h5 id="SpeechSettingsDialectSwitching">Automatic Dialect switching</h5> <p>This checkbox allows you to toggle whether or not dialect changes should be made, rather than just actual language changes. For example, if reading in an English U.S. voice but a document specifies that some text is in English U.K., then the synthesizer will switch accents if this option is enabled. This option is disabled by default.</p> <!-- KC:setting --> <h5 id="SpeechSettingsSymbolLevel">Punctuation/Symbol Level</h5> <p>Key: NVDA+p</p> <p>This allows you to choose the amount of punctuation and other symbols that should be spoken as words. For example, when set to all, all symbols will be spoken as words. This option applies to all synthesizers, not just the currently active synthesizer.</p> <h5 id="SpeechSettingsTrust">Trust voice's language when processing characters and symbols</h5> <p>On by default, this option tells NVDA if the current voice's language can be trusted when processing symbols and characters. If you find that NVDA is reading punctuation in the wrong language for a particular synthesizer or voice, you may wish to turn this off to force NVDA to use its global language setting instead.</p> <h5 id="SpeechUnicodeNormalization">Unicode normalization</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Disabled), Enabled, Disabled</td> </tr> <tr> <td>Default</td> <td>Disabled</td> </tr> </tbody> </table> <p>When this option is enabled, unicode normalization is performed on the text that is spoken by NVDA. This is beneficial when speaking characters that can be represented in several forms. NVDA uses the NFKC (Normalization Form Compatibility Composition) algorithm, which provides the following benefits, among others:</p> <ol> <li> <p>The bold and italic versions of characters that are part of the unicode standard and are commonly used on social media are normalized to their most common compatible equivalent. For example, the latin letter "h" can also be presented as "𝐡" (bold), "ℎ" (itallic), etc. but will always be spoken as "h" when normalization is enabled. This aspect of normalization also aids in reading equations in the Microsoft Word equation editor.</p> </li> <li> <p>Normalization to composed characters. For example, the character "ü" (u with umlaut/diaeresis), a common character in languages like German and Turkish can be represented in two forms:</p> <ol> <li>One stand alone unicode character (ü)</li> <li>A decomposition into two characters (ü), namely the normal latin letter u and a diaeresis modifier Unicode normalization ensures that only one form will be used throughout all speech output, which is the one character variant.</li> </ol> </li> <li> <p>Decomposition of some ligatures, Including "ij" (ligature ij) to their two letter form ("ij").</p> </li> <li> <p>Stable ordering of modifiers in composite characters, for example in ancient Hebrew.</p> </li> </ol> <p>To toggle Unicode normalization from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h5 id="SpeechReportNormalizedForCharacterNavigation">Report "Normalized" when navigating by character</h5> <p>This setting is a checkbox that, when checked, tells NVDA to explicitly report that a character is normalized when spoken as an individual character such as when spelling. For example, when this option is enabled, spelling the character "ij" will pronounce it as "i j normalized".</p> <p>Note that this setting is only available when "<a href="#SpeechUnicodeNormalization" title="Unicode normalization">Unicode normalization</a>" is enabled.</p> <h5 id="SpeechSettingsCLDR">Include Unicode Consortium data (including emoji) when processing characters and symbols</h5> <p>When this checkbox is checked, NVDA will include additional symbol pronunciation dictionaries when pronouncing characters and symbols. These dictionaries contain descriptions for symbols (particularly emoji) that are provided by the <a href="https://www.unicode.org/consortium/" rel="noopener" target="_blank" title="Unicode Consortium">Unicode Consortium</a> as part of their <a href="http://cldr.unicode.org/" rel="noopener" target="_blank" title="Common Locale Data Repository">Common Locale Data Repository</a>. If you want NVDA to speak descriptions of emoji characters based on this data, you should enable this option. However, if you are using a speech synthesizer that supports speaking emoji descriptions natively, you may wish to turn this off.</p> <p>Note that manually added or edited character descriptions are saved as part of your user settings. Therefore, if you change the description of a particular emoji, your custom description will be spoken for that emoji regardless of whether this option is enabled. You can add, edit or remove symbol descriptions in NVDA's <a href="#SymbolPronunciation" title="punctuation/symbol pronunciation dialog">punctuation/symbol pronunciation dialog</a>.</p> <p>To toggle Unicode Consortium data inclusion from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h5 id="SpeechSettingsCapPitchChange">Capital pitch change percentage</h5> <p>This edit field allows you to type the amount that the pitch of the voice will change when speaking a capital letter. This value is a percentage, where a negative value lowers the pitch and a positive value raises it. For no pitch change you would use 0. Usually, NVDA raises the pitch slightly for any capital letter, but some synthesizers may not support this well. In case pitch change for capitals is not supported, consider <a href="#SpeechSettingsSayCapBefore" title="Say &quot;cap&quot; before capitals">Say "cap" before capitals</a> and/or <a href="#SpeechSettingsBeepForCaps" title=" Beep for capitals"> Beep for capitals</a> instead.</p> <h5 id="SpeechSettingsSayCapBefore">Say "cap" before capitals</h5> <p>This setting is a checkbox that, when checked, tells NVDA to say the word "cap" before any capital letter when spoken as an individual character such as when spelling.</p> <h5 id="SpeechSettingsBeepForCaps">Beep for capitals</h5> <p>If this checkbox is checked, NVDA will make a small beep each time it encounters a capitalized character by itself.</p> <h5 id="SpeechSettingsUseSpelling">Use spelling functionality if supported</h5> <p>Some words consist of only one character, but the pronunciation is different depending on whether the character is being spoken as an individual character (such as when spelling) or a word. For example, in English, "a" is both a letter and a word and is pronounced differently in each case. This option allows the synthesizer to differentiate between these two cases if the synthesizer supports this. Most synthesizers do support it.</p> <p>This option should generally be enabled. However, some Microsoft Speech API synthesizers do not implement this correctly and behave strangely when it is enabled. Synthesizers from Code Factory, both the add-on and the SAPI application, do not implement it correctly either and cause unwanted spelling of the spoken text (e.g. in NVDA menu or dialogs). If you are having problems with the pronunciation of individual characters, try disabling this option.</p> <h5 id="delayedCharacterDescriptions">Delayed descriptions for characters on cursor movement</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Enabled, Disabled</td> </tr> <tr> <td>Default</td> <td>Disabled</td> </tr> </tbody> </table> <p>When this setting is checked, NVDA will say the character description when you move by characters.</p> <p>For example, while reviewing a line by characters, when the letter "b" is read NVDA will say "Bravo" after a 1 second delay. This can be useful if it is hard to distinguish between pronunciation of symbols, or for hearing impaired users.</p> <p>The delayed character description will be cancelled if other text is spoken during that time, or if you press the <code>control</code> key.</p> <h5 id="SpeechModesDisabling">Modes available in the Cycle speech mode command</h5> <p>This checkable list allows selecting which <a href="#SpeechModes" title="speech modes">speech modes</a> are included when cycling between them using <code>NVDA+s</code>. Modes which are unchecked are excluded. By default all modes are included.</p> <p>For example if you do not need to use "beeps" and "off" mode you should uncheck these two, and keep both "talk" and "on-demand" checked. Note that it is necessary to check at least two modes.</p> <h4 id="SelectSynthesizer">Select Synthesizer</h4> <!-- KC:setting --> <h5 id="OpenSelectSynthesizer">Open Select Synthesizer dialog</h5> <p>Key: <code>NVDA+control+s</code></p> <p>The Synthesizer dialog, which can be opened by activating the Change... button in the speech category of the NVDA settings dialog, allows you to select which Synthesizer NVDA should use to speak with. Once you have selected your synthesizer of choice, you can press Ok and NVDA will load the selected Synthesizer. If there is an error loading the synthesizer, NVDA will notify you with a message, and continue using the previous synthesizer.</p> <h5 id="SelectSynthesizerSynthesizer">Synthesizer</h5> <p>This option allows you to choose the synthesizer you wish NVDA to use for speech output.</p> <p>For a list of the Synthesizers that NVDA supports, please see the <a href="#SupportedSpeechSynths" title="Supported Speech Synthesizers">Supported Speech Synthesizers</a> section.</p> <p>One special item that will always appear in this list is "No speech", which allows you to use NVDA with no speech output whatsoever. This may be useful for someone who wishes to only use NVDA with braille, or perhaps to sighted developers who only wish to use the Speech Viewer.</p> <h4 id="SynthSettingsRing">Synth settings ring</h4> <p>If you wish to quickly change speech settings without going to the Speech category of the NVDA settings dialog, there are some NVDA key commands that allow you to move through the most common speech settings from anywhere while running NVDA:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Move to next synth setting</td> <td>NVDA+control+rightArrow</td> <td>NVDA+shift+control+rightArrow</td> <td>Moves to the next available speech setting after the current, wrapping around to the first setting again after the last</td> </tr> <tr> <td>Move to previous synth setting</td> <td>NVDA+control+leftArrow</td> <td>NVDA+shift+control+leftArrow</td> <td>Moves to the next available speech setting before the current, wrapping around to the last setting after the first</td> </tr> <tr> <td>Increment current synth setting</td> <td>NVDA+control+upArrow</td> <td>NVDA+shift+control+upArrow</td> <td>increases the current speech setting you are on. E.g. increases the rate, chooses the next voice, increases the volume</td> </tr> <tr> <td>Increment the current synth setting in a larger step</td> <td><code>NVDA+control+pageUp</code></td> <td><code>NVDA+shift+control+pageUp</code></td> <td>Increases the value of the current speech setting you're on in larger steps. e.g. when you're on a voice setting, it will jump forward every 20 voices; when you're on slider settings (rate, pitch, etc) it will jump forward the value up to 20%</td> </tr> <tr> <td>Decrement current synth setting</td> <td>NVDA+control+downArrow</td> <td>NVDA+shift+control+downArrow</td> <td>decreases the current speech setting you are on. E.g. decreases the rate, chooses the previous voice, decreases the volume</td> </tr> <tr> <td>Decrement the current synth setting in a larger step</td> <td><code>NVDA+control+pageDown</code></td> <td><code>NVDA+shift+control+pageDown</code></td> <td>Decreases the value of the current speech setting you're on in larger steps. e.g. when you're on a voice setting, it will jump backward every 20 voices; when you're on a slider setting, it will jump backward the value up to 20%</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h4 id="BrailleSettings">Braille</h4> <p>The Braille category in the NVDA Settings dialog contains options that let you change several aspects of braille input and output. This category contains the following options:</p> <h5 id="BrailleSettingsChange">Change braille display</h5> <p>The Change... button in the Braille category of the NVDA Settings dialog activates the <a href="#SelectBrailleDisplay" title="Select Braille Display">Select Braille Display</a> dialog, which allows you to select the active braille display. This dialog opens on top of the NVDA Settings dialog. Saving or dismissing the settings in the Select Braille Display dialog will return you to the NVDA Settings dialog.</p> <h5 id="BrailleSettingsOutputTable">Output Table</h5> <p>The next option you will come to in this category is the braille output table combo box. In this combo box, you will find braille tables for different languages, braille standards and grades. The chosen table will be used to translate text into braille to be presented on your braille display. You can move from braille table to braille table in the list by using the arrow keys.</p> <h5 id="BrailleSettingsInputTable">Input Table</h5> <p>Complementary to the previous option, the next setting you will find is the braille input table combo box. The chosen table will be used to translate braille entered on your braille display's Perkins-style keyboard into text. You can move from braille table to braille table in the list by using the arrow keys.</p> <p>Note that this option is only useful if your braille display has a Perkins-style keyboard and this feature is supported by the braille display driver. If input is not supported on a display which does have a braille keyboard, this will be noted in the <a href="#SupportedBrailleDisplays" title="Supported Braille Displays">Supported Braille Displays</a> section.</p> <!-- KC:setting --> <h5 id="BrailleMode">Braille mode</h5> <p>Key: <code>NVDA+alt+t</code></p> <p>This option allows you to select between the available braille modes.</p> <p>Currently, two braille modes are supported, "follow cursors" and "display speech output".</p> <p>When follow cursors is selected, the braille display will follow either the system focus/caret or the navigator object/review cursor, depending on what braille is tethered to.</p> <p>When display speech output is selected, the braille display will show what NVDA speaks, or would have spoken if speech mode was set to "talk".</p> <h5 id="BrailleSettingsExpandToComputerBraille">Expand to computer braille for the word at the cursor</h5> <p>This option allows the word that is under the cursor to be displayed in non-contracted computer braille.</p> <h5 id="BrailleSettingsShowCursor">Show Cursor</h5> <p>This option allows the braille cursor to be turned on and off. It applies to the system caret and review cursor, but not to the selection indicator.</p> <h5 id="BrailleSettingsBlinkCursor">Blink Cursor</h5> <p>This option allows the braille cursor to blink. If blinking is turned off, the braille cursor will constantly be in the "up" position. The selection indicator is not affected by this option, it is always dots 7 and 8 without blinking.</p> <h5 id="BrailleSettingsBlinkRate">Cursor Blink Rate (ms)</h5> <p>This option is a numerical field that allows you to change the blink rate of the cursor in milliseconds.</p> <h5 id="BrailleSettingsCursorShapeForFocus">Cursor Shape for Focus</h5> <p>This option allows you to choose the shape (dot pattern) of the braille cursor when braille is tethered to focus. The selection indicator is not affected by this option, it is always dots 7 and 8 without blinking.</p> <h5 id="BrailleSettingsCursorShapeForReview">Cursor Shape for Review</h5> <p>This option allows you to choose the shape (dot pattern) of the braille cursor when braille is tethered to review. The selection indicator is not affected by this option, it is always dots 7 and 8 without blinking.</p> <h5 id="BrailleSettingsShowMessages">Show Messages</h5> <p>This is a combobox that allows you to select if NVDA should display braille messages and when they should disappear automatically.</p> <p>To toggle show messages from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h5 id="BrailleSettingsMessageTimeout">Message Timeout (sec)</h5> <p>This option is a numerical field that controls how long NVDA messages are displayed on the braille display. The NVDA message is immediately dismissed when pressing a routing key on the braille display, but appears again when pressing a corresponding key which triggers the message. This option is shown only if "Show Messages" is set to "Use timeout".</p> <!-- KC:setting --> <h5 id="BrailleTether">Tether Braille</h5> <p>Key: NVDA+control+t</p> <p>This option allows you to choose whether the braille display will follow the system focus / caret, the navigator object / review cursor, or both. When "automatically" is selected, NVDA will follow the system focus and caret by default. In this case, when the navigator object or the review cursor position is changed by means of explicit user interaction, NVDA will tether to review temporarily, until the focus or the caret changes. If you want it to follow the focus and caret only, you need to configure braille to be tethered to focus. In this case, braille will not follow the NVDA navigator during object navigation or the review cursor during review. If you want braille to follow object navigation and text review instead, you need to configure braille to be tethered to review. In this case, Braille will not follow system focus and system caret.</p> <h5 id="BrailleSettingsReviewRoutingMovesSystemCaret">Move system caret when routing review cursor</h5> <p>This setting determines if the system caret should also be moved with a routing button press. This option is set to Never by default, meaning that routing will never move the caret when routing the review cursor.</p> <p>When this option is set to Always, and <a href="#BrailleTether" title="braille tethering">braille tethering</a> is set to "automatically" or "to review", pressing a cursor routing key will also move the system caret or focus when supported. When the current review mode is <a href="#ScreenReview" title="Screen Review">Screen Review</a>, there is no physical caret. In this case, NVDA tries to focus the object under the text you're routing to. The same applies to <a href="#ObjectReview" title="object review">object review</a>.</p> <p>You can also set this option to only move the caret when tethered automatically. In that case, pressing a cursor routing key will only move the system caret or focus when NVDA is tethered to the review cursor automatically, whereas no movement will occur when manually tethered to the review cursor.</p> <p>This option is shown only if "<a href="#BrailleTether" title="tether braille">tether braille</a>" is set to "automatically" or "to review".</p> <p>To toggle move system caret when routing review cursor from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Never), Never, Only when tethered automatically, Always</td> </tr> <tr> <td>Default</td> <td>Never</td> </tr> </tbody> </table> <h5 id="BrailleSettingsReadByParagraph">Read by Paragraph</h5> <p>If enabled, braille will be displayed by paragraphs instead of lines. Also, the next and previous line commands will move by paragraph accordingly. This means that you do not have to scroll the display at the end of each line even where more text would fit on the display. This may allow for more fluent reading of large amounts of text. It is disabled by default.</p> <h5 id="BrailleParagraphStartMarkers">Paragraph start marker</h5> <p>If "Read by paragraph" is checked, the selected start marker will be displayed to indicate the start of a paragraph. This can be especially helpful in applications used to read large pieces of text, like structured documents or books. In such documents, knowing where paragraphs start may be useful to understand the structure of the content, or to set bookmarks or annotations based on paragraph position.</p> <p>The options include using two spaces as a subtle paragraph break, and the paragraph symbol, pilcrow (¶), as a more obvious one.</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>No paragraph start marker, Double space ( ), Pilcrow (¶)</td> </tr> <tr> <td>Default</td> <td>No paragraph start marker</td> </tr> </tbody> </table> <h5 id="BrailleSettingsFocusContextPresentation">Focus context presentation</h5> <p>This option allows you to choose what context information NVDA will show on the braille display when an object gets focus. Context information refers to the hierarchy of objects containing the focus. For example, when you focus a list item, this list item is part of a list. This list might be contained by a dialog, etc. Please consult the section about <a href="#ObjectNavigation" title="object navigation">object navigation</a> for more information about the hierarchy that applies to objects in NVDA.</p> <p>When set to fill display for context changes, NVDA will try to display as much context information as possible on the braille display, but only for the parts of the context that have changed. For the example above, this means that when changing focus to the list, NVDA will show the list item on the braille display. Furthermore, if there is enough space left on the braille display, NVDA will try to show that the list item is part of a list. If you then start moving through the list with your arrow keys, it is assumed that you are aware that you are still in the list. Thus, for the remaining list items you focus, NVDA will only show the focused list item on the display. In order for you to read the context again (i.e. that you are in a list and that the list is part of a dialog), you will have to scroll your braille display back.</p> <p>When this option is set to always fill the display, NVDA will try to show as much context information as possible on the braille display, regardless of whether you have seen the same context information before. This has the advantage that NVDA will fit as much information as possible on the display. However, the downside is that there is always a difference in the position where the focus starts on the braille display. This can make it difficult to skim a long list of items, for example, as you will need to continually move your finger to find the start of the item. This was the default behaviour for NVDA 2017.2 and before.</p> <p>When you set the focus context presentation option to only show the context information when scrolling back, NVDA never shows context information on your braille display by default. Thus, in the example above, NVDA will display that you focused a list item. However, in order for you to read the context (i.e. that you are in a list and that the list is part of a dialog), you will have to scroll your braille display back.</p> <p>To toggle focus context presentation from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h5 id="BrailleSettingsShowSelection">Show selection</h5> <p>This setting determines if selection indicator (dots 7 and 8) is shown by the braille display. The option is enabled by default so the selection indicator is shown. The selection indicator might be a distraction while reading. Disabling this option may improve readability.</p> <p>To toggle show selection from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Enabled), Enabled, Disabled</td> </tr> <tr> <td>Default</td> <td>Enabled</td> </tr> </tbody> </table> <h5 id="BrailleFormattingDisplay">Formatting display</h5> <p>This setting determines how NVDA will display text formatting in braille. This option only has an effect if NVDA is set to <a href="#DocumentFormattingFontAttributes" title="display font attributes in braille">display font attributes in braille</a>.</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Liblouis), Liblouis, Tags</td> </tr> <tr> <td>Default</td> <td>Liblouis</td> </tr> </tbody> </table> <table> <thead> <tr> <th>Option</th> <th>Behaviour</th> </tr> </thead> <tbody> <tr> <td>Liblouis</td> <td>Use native Braille formatting. Note that this option will only indicate bold, italic and underlined text, and only if the selected braille table supports indicating these attributes.</td> </tr> <tr> <td><a href="#BrailleFormattingDisplayTags" title="Tags">Tags</a></td> <td>Use tags that describe how and where text formatting changes.</td> </tr> </tbody> </table> <h6 id="BrailleFormattingDisplayTags">Tags</h6> <p>When "Formatting display" is set to "Tags", a formatting tag is displayed in braille when a change in formatting is detected. These tags start with ⣋ and end with ⣙. A formatting tag will contain one or more symbols which describe the text formatting. The following symbols are defined:</p> <table> <thead> <tr> <th>Symbol</th> <th>Meaning</th> </tr> </thead> <tbody> <tr> <td>⠃ ("b")</td> <td>Start bold</td> </tr> <tr> <td>⡃ ("b" with dot 7)</td> <td>End bold</td> </tr> <tr> <td>⠊ ("i")</td> <td>Start italic</td> </tr> <tr> <td>⡊ ("i" with dot 7)</td> <td>End italic</td> </tr> <tr> <td>⠥ ("u")</td> <td>Start underline</td> </tr> <tr> <td>⡥ ("u" with dot 7)</td> <td>End underline</td> </tr> <tr> <td>⠎ ("s")</td> <td>Start strikethrough</td> </tr> <tr> <td>⡎ ("s" with dot 7)</td> <td>End strikethrough</td> </tr> </tbody> </table> <h5 id="BrailleSpeakOnRouting">Speak character when routing cursor in text</h5> <p>If this is enabled, NVDA will automatically speak the character at the cursor when routing to it with braille cursor routing keys.</p> <p>To toggle this option from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h5 id="BrailleSettingsWordWrap">Avoid splitting words when possible</h5> <p>If this is enabled, a word which is too large to fit at the end of the braille display will not be split. Instead, there will be some blank space at the end of the display. When you scroll the display, you will be able to read the entire word. This is sometimes called "word wrap". Note that if the word is too large to fit on the display even by itself, the word must still be split.</p> <p>If this is disabled, as much of the word as possible will be displayed, but the rest will be cut off. When you scroll the display, you will then be able to read the rest of the word.</p> <p>Enabling this may allow for more fluent reading, but generally requires you to scroll the display more.</p> <h5 id="BrailleUnicodeNormalization">Unicode normalization</h5> <p>When this option is enabled, unicode normalization is performed on the text that is brailled on the braille display. This is beneficial when coming across characters in braille that are unknown in a particular braille table and which have a compatible alternative, like the bold and italic characters commonly used on social media. Other benefits of unicode normalization are explained in greater detail in the <a href="#SpeechUnicodeNormalization" title="section for the equivalent speech setting">section for the equivalent speech setting</a>.</p> <p>To toggle Unicode normalization from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Disabled), Enabled, Disabled</td> </tr> <tr> <td>Default</td> <td>Disabled</td> </tr> </tbody> </table> <h5 id="BrailleSettingsInterruptSpeech">Interrupt speech while scrolling</h5> <p>This setting determines if speech should be interrupted when the Braille display is scrolled backwards/forwards. Previous/next line commands always interrupt speech.</p> <p>On-going speech might be a distraction while reading Braille. For this reason the option is enabled by default, interrupting speech when scrolling braille.</p> <p>Disabling this option allows speech to be heard while simultaneously reading Braille.</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Enabled), Enabled, Disabled</td> </tr> <tr> <td>Default</td> <td>Enabled</td> </tr> </tbody> </table> <h4 id="SelectBrailleDisplay">Select Braille Display</h4> <!-- KC:setting --> <h5 id="OpenSelectBrailleDisplay">Open Select Braille Display dialog</h5> <p>Key: <code>NVDA+control+a</code></p> <p>The Select Braille Display dialog, which can be opened by activating the Change... button in the Braille category of the NVDA settings dialog, allows you to select which Braille display NVDA should use for braille output. Once you have selected your braille display of choice, you can press Ok and NVDA will load the selected display. If there is an error loading the display driver, NVDA will notify you with a message, and continue using the previous display, if any.</p> <h5 id="SelectBrailleDisplayDisplay">Braille Display</h5> <p>This combo box presents you with several options depending on what braille display drivers are available on your system. Move between these options with the arrow keys.</p> <p>The automatic option will allow NVDA to search for many supported braille displays in the background. When this feature is enabled and you connect a supported display using USB or bluetooth, NVDA will automatically connect with this display.</p> <p>No braille means that you are not using braille.</p> <p>Please see the <a href="#SupportedBrailleDisplays" title="Supported Braille Displays">Supported Braille Displays</a> section for more information about supported braille displays and which of these support automatic detection in the background.</p> <h5 id="SelectBrailleDisplayAutoDetect">Displays to detect automatically</h5> <p>When braille display is set to "Automatic", the check boxes in this list control allows you to enable and disable display drivers that will be involved in the automatic detection process. This allows you to exclude braille display drivers you do not use on a regular basis. For example, if you only own a display that requires the Baum driver to function, you may leave the Baum driver enabled whereas the other drivers can be disabled.</p> <p>By default, all drivers that support automatic detection are enabled. Any driver added, for example in a future version of NVDA or in an add-on, will also be enabled by default.</p> <p>You may consult the documentation for your braille display in the section <a href="#SupportedBrailleDisplays" title="Supported Braille Displays">Supported Braille Displays</a> to check whether the driver supports automatic detection of displays.</p> <h5 id="SelectBrailleDisplayPort">Port</h5> <p>This option, if available, allows you to choose what port or type of connection will be used to communicate with the braille display you have selected. It is a combo box containing the possible choices for your braille display.</p> <p>By default, NVDA employs automatic port detection, which means the connection with the braille device will be established automatically by scanning for available USB and bluetooth devices on your system. However, for some braille displays, you may be able to explicitly choose what port should be used. Common options are "Automatic" (which tells NVDA to employ the default automatic port selection procedure), "USB", "Bluetooth" and legacy serial communication ports if your braille display supports this type of communication.</p> <p>This option won't be available if your braille display only supports automatic port detection.</p> <p>You may consult the documentation for your braille display in the section <a href="#SupportedBrailleDisplays" title="Supported Braille Displays">Supported Braille Displays</a> to check for more details on the supported types of communication and available ports.</p> <p>Please note: If you connect multiple Braille Displays to your machine at the same time which use the same driver (E.g. connecting two Seika displays), it is currently impossible to tell NVDA which display to use. Therefore it is recommended to only connect one Braille Display of a given type / manufacturer to your machine at a time.</p> <h4 id="AudioSettings">Audio</h4> <!-- KC:setting --> <h5 id="OpenAudioSettings">Open Audio settings</h5> <p>Key: <code>NVDA+control+u</code></p> <p>The Audio category in the NVDA Settings dialog contains options that let you change several aspects of audio output.</p> <h5 id="SelectSynthesizerOutputDevice">Output device</h5> <p>This option allows you to choose the audio device that NVDA should instruct the selected synthesizer to speak through.</p> <!-- KC:setting --> <h5 id="SelectSynthesizerDuckingMode">Audio Ducking Mode</h5> <p>Key: <code>NVDA+shift+d</code></p> <p>This option allows you to choose if NVDA should lower the volume of other applications while NVDA is speaking, or all the time while NVDA is running.</p> <ul> <li>No Ducking: NVDA will never lower the volume of other audio.</li> <li>Duck when outputting speech and sounds: NVDA will only lower the volume of other audio when NVDA is speaking or playing sounds. This may not work for all synthesizers.</li> <li>Always duck: NVDA will keep the volume of other audio lower the whole time NVDA is running.</li> </ul> <p>This option is only available if NVDA has been installed. It is not possible to support audio ducking for portable and temporary copies of NVDA.</p> <h5 id="SoundVolumeFollowsVoice">Volume of NVDA sounds follows voice volume</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Disabled, Enabled</td> </tr> <tr> <td>Default</td> <td>Disabled</td> </tr> </tbody> </table> <p>When this option is enabled, the volume of NVDA sounds and beeps will follow the volume setting of the voice you are using. If you decrease the volume of the voice, the volume of sounds will decrease. Similarly, if you increase the volume of the voice, the volume of sounds will increase. This option is not available if you have started NVDA with <a href="#WASAPI" title="WASAPI disabled for audio output">WASAPI disabled for audio output</a> in Advanced Settings.</p> <h5 id="SoundVolume">Volume of NVDA sounds</h5> <p>This slider allows you to set the volume of NVDA sounds and beeps. This setting only takes effect when "Volume of NVDA sounds follows voice volume" is disabled. This option is not available if you have started NVDA with <a href="#WASAPI" title="WASAPI disabled for audio output">WASAPI disabled for audio output</a> in Advanced Settings.</p> <h5 id="SelectSoundSplitMode">Sound split</h5> <p>The sound split feature allows users to make use of their stereo output devices, such as headphones and speakers. Sound split makes it possible to have NVDA speech in one channel (e.g. left) and have all other applications play their sounds in the other channel (e.g. right). By default sound split is disabled. A gesture allows cycling through the various sound split modes:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Cycle Sound Split Mode</td> <td><code>NVDA+alt+s</code></td> <td>Cycles between sound split modes.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>By default this command will cycle between the following modes:</p> <ul> <li>Sound split disabled: NVDA does not apply any sound split processing.</li> <li>NVDA on the left and applications on the right: NVDA will speak in the left channel, while other applications will play sounds in the right channel.</li> <li>NVDA on the left and applications in both channels: NVDA will speak in the left channel, while other applications will play sounds in both left and right channels.</li> </ul> <p>There are more advanced sound split modes available in NVDA setting combo box. Among these modes, "NVDA in both channels and applications in both channels" forces all the sounds to be directed in both channels. This mode may differ from "Sound split disabled" mode in case other audio processing interfers with channel volumes.</p> <p>Please note, that sound split doesn't work as a mixer. For example, if an application is playing a stereo sound track while sound split is set to "NVDA on the left and applications on the right", then you will only hear the right channel of the sound track, while the left channel of the sound track will be muted.</p> <p>This option is not available if you have started NVDA with <a href="#WASAPI" title="WASAPI disabled for audio output">WASAPI disabled for audio output</a> in Advanced Settings.</p> <p>Please note, that if NVDA crashes, then it won't be able to restore application sounds volume, and those applications might still output sound only in one channel after NVDA crash. In order to mitigate this, please restart NVDA and select the mode "NVDA in both channels and applications in both channels".</p> <h5 id="CustomizeSoundSplitModes">Customizing Sound split modes</h5> <p>This checkable list allows selecting which sound split modes are included when cycling between them using <code>NVDA+alt+s</code>. Modes which are unchecked are excluded. By default only three modes are included.</p> <ul> <li>Sound split disabled.</li> <li>NVDA on the left and applications on the right.</li> <li>NVDA on the left and applications in both channels.</li> </ul> <p>Note that it is necessary to check at least one mode. This option is not available if you have started NVDA with <a href="#WASAPI" title="WASAPI disabled for audio output">WASAPI disabled for audio output</a> in Advanced Settings.</p> <h5 id="AudioAwakeTime">Time to keep audio device awake after speech</h5> <p>This edit box specifies how long NVDA keeps the audio device awake after speech ends. This allows NVDA to avoid certain speech glitches like dropped parts of words. This can happen due to audio devices (especially Bluetooth and wireless devices) entering standby mode. This might also be helpful in other use cases, such as when running NVDA inside a virtual machine (e.g. Citrix Virtual Desktop), or on certain laptops.</p> <p>Lower values may allow audio to be cut-off more often, as a device may enter standby mode too soon, causing the start of the following speech to be clipped. Setting the value too high may cause the battery of the sound output device to discharge faster, as it stays active for longer while no sound is being sent.</p> <p>You can set the time to zero in order to disable this feature.</p> <h4 id="VisionSettings">Vision</h4> <p>The Vision category in the NVDA Settings dialog allows you to enable, disable and configure <a href="#Vision" title="visual aids">visual aids</a>.</p> <p>Note that the available options in this category could be extended by <a href="#AddonsManager" title="NVDA add-ons">NVDA add-ons</a>. By default, this settings category contains the following options:</p> <h5 id="VisionSettingsFocusHighlight">Visual Highlight</h5> <p>The check boxes in the Visual Highlight grouping control the behaviour of NVDA's built-in <a href="#VisionFocusHighlight" title="Visual Highlight">Visual Highlight</a> facility.</p> <ul> <li>Enable Highlighting: Toggles Visual Highlight on and off.</li> <li>Highlight system focus: toggles whether the <a href="#SystemFocus" title="system focus">system focus</a> will be highlighted.</li> <li>Highlight navigator object: toggles whether the <a href="#ObjectNavigation" title="navigator object">navigator object</a> will be highlighted.</li> <li>Highlight browse mode cursor: Toggles whether the <a href="#BrowseMode" title="virtual browse mode cursor">virtual browse mode cursor</a> will be highlighted.</li> </ul> <p>Note that checking and unchecking the "Enable Highlighting" check box wil also change the state of the tree other check boxes accordingly. Therefore, if "Enable Highlighting" is off and you check this check box, the other tree check boxes will also be checked automatically. If you only want to highlight the focus and leave the navigator object and browse mode check boxes unchecked, the state of the "Enable Highlighting" check box will be half checked.</p> <h5 id="VisionSettingsScreenCurtain">Screen Curtain</h5> <p>You can enable the <a href="#VisionScreenCurtain" title="Screen Curtain">Screen Curtain</a> by checking the "Make screen black (immediate effect)" check box. A warning that your screen will become black after activation will be displayed. Before continuing (selecting "Yes"), ensure you have enabled speech / braille and will be able to control your computer without the use of the screen. Select "No" if you no longer wish to enable the Screen Curtain. If you are sure, you can choose the Yes button to enable the screen curtain. If you no longer want to see this warning message every time, you can change this behaviour in the dialog that displays the message. You can always restore the warning by checking the "Always show a warning when loading Screen Curtain" check box next to the "Make screen black" check box.</p> <p>By default, sounds are played when the Screen Curtain is toggled. When you want to change this behaviour, you can uncheck the "Play sound when toggling Screen Curtain" check box.</p> <h5 id="VisionSettingsThirdPartyVisualAids">Settings for third party visual aids</h5> <p>Additional vision enhancement providers can be provided in <a href="#AddonsManager" title="NVDA add-ons">NVDA add-ons</a>. When these providers have adjustable settings, they will be shown in this settings category in separate groupings. For the supported settings per provider, please refer to the documentation for that provider.</p> <h4 id="KeyboardSettings">Keyboard</h4> <!-- KC:setting --> <h5 id="OpenKeyboardSettings">Open Keyboard settings</h5> <p>Key: <code>NVDA+control+k</code></p> <p>The Keyboard category in the NVDA Settings dialog contains options that set how NVDA behaves as you use and type on your keyboard. This settings category contains the following options:</p> <h5 id="KeyboardSettingsLayout">Keyboard layout</h5> <p>This combo box lets you choose what type of keyboard layout NVDA should use. Currently the two that come with NVDA are Desktop and Laptop.</p> <h5 id="KeyboardSettingsModifiers">Select NVDA Modifier Keys</h5> <p>The checkboxes in this list control what keys can be used as <a href="#TheNVDAModifierKey" title="NVDA modifier keys">NVDA modifier keys</a>. The following keys are available to choose from:</p> <ul> <li>The Caps Lock key</li> <li>The insert key on the number pad</li> <li>The extended insert key (usually found above the arrow keys, near home and end)</li> </ul> <p>If no key is chosen as the NVDA key it may be impossible to access many NVDA commands, therefore you are required to check at least one of the modifiers.</p> <!-- KC:setting --> <h5 id="KeyboardSettingsSpeakTypedCharacters">Speak Typed Characters</h5> <p>Key: NVDA+2</p> <p>When enabled, NVDA will announce all characters you type on the keyboard.</p> <!-- KC:setting --> <h5 id="KeyboardSettingsSpeakTypedWords">Speak Typed Words</h5> <p>Key: NVDA+3</p> <p>When enabled, NVDA will announce all words you type on the keyboard.</p> <h5 id="KeyboardSettingsSpeechInteruptForCharacters">Speech interrupt for typed characters</h5> <p>If on, this option will cause speech to be interrupted each time a character is typed. This is on by default.</p> <h5 id="KeyboardSettingsSpeechInteruptForEnter">Speech interrupt for Enter key</h5> <p>If on, this option will cause speech to be interrupted each time the Enter key is pressed. This is on by default.</p> <h5 id="KeyboardSettingsSkimReading">Allow skim reading in Say All</h5> <p>If on, certain navigation commands (such as quick navigation in browse mode or moving by line or paragraph) do not stop Say All, rather Say All jumps to the new position and continues reading.</p> <h5 id="KeyboardSettingsBeepLowercase">Beep if Typing Lowercase Letters when Caps Lock is On</h5> <p>When enabled, a warning beep will be heard if a letter is typed with the shift key while Caps Lock is on. Generally, typing shifted letters with Caps Lock is unintentional and is usually due to not realizing that Caps Lock is enabled. Therefore, it can be quite helpful to be warned about this.</p> <!-- KC:setting --> <h5 id="KeyboardSettingsSpeakCommandKeys">Speak Command Keys</h5> <p>Key: NVDA+4</p> <p>When enabled, NVDA will announce all non-character keys you type on the keyboard. This includes key combinations such as control plus another letter.</p> <h5 id="KeyboardSettingsAlertForSpellingErrors">Play sound for spelling errors while typing</h5> <p>When enabled, a short buzzer sound will be played when a word you type contains a spelling error. This option is only available if reporting of spelling errors is enabled in NVDA's <a href="#DocumentFormattingSettings" title="Document Formatting Settings">Document Formatting Settings</a>, found in the NVDA Settings dialog.</p> <h5 id="KeyboardSettingsHandleKeys">Handle keys from other applications</h5> <p>This option allows the user to control if key presses generated by applications such as on-screen keyboards and speech recognition software should be processed by NVDA. This option is on by default, though certain users may wish to turn this off, such as those typing Vietnamese with the UniKey typing software as it will cause incorrect character input.</p> <h5 id="MultiPressTimeout">Multiple key press timeout</h5> <p>Some NVDA keyboard gestures perform different actions based upon how many times the same key is pressed in rapid succession. An example of this is the "Report current character of navigator object" command. This command reports the character if pressed once, a phonetic description of the character if pressed twice, and the numeric value of the character if pressed three times. This option configures the timeout after which an additional press of the same key will start a new gesture, rather than being taken as a subsequent press of the first one. For the example command, a too short timeout will cause two presses to report the current character twice, rather than the phonetic description. The default timeout is 500 ms, i.e. half a second. Increasing this timeout may be especially useful for people using sticky keys, or who have a physical disability.</p> <h4 id="MouseSettings">Mouse</h4> <!-- KC:setting --> <h5 id="OpenMouseSettings">Open Mouse settings</h5> <p>Key: <code>NVDA+control+m</code></p> <p>The Mouse category in the NVDA Settings dialog allows NVDA to track the mouse, play mouse coordinate beeps and sets other mouse usage options. This category contains the following options:</p> <h5 id="MouseSettingsShape">Report Mouse Shape Changes</h5> <p>A checkbox, that when checked means that NVDA will announce the shape of the mouse pointer each time it changes. The mouse pointer in Windows changes shape to convey certain information such as when something is editable, or when something is loading etc.</p> <!-- KC:setting --> <h5 id="MouseSettingsTracking">Enable mouse tracking</h5> <p>Key: NVDA+m</p> <p>When enabled, NVDA will announce the text currently under the mouse pointer, as you move it around the screen. This allows you to find things on the screen, by physically moving the mouse, rather than trying to find them through object navigation.</p> <h5 id="MouseSettingsTextUnit">Text unit resolution</h5> <p>If NVDA is set to announce the text under the mouse as you move it, this option allows you to choose exactly how much text will be spoken. The options are character, word, line and paragraph.</p> <p>To toggle text unit resolution from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h5 id="MouseSettingsRole">Report object when mouse enters it</h5> <p>If this checkbox is checked, NVDA will announce information about objects as the mouse moves inside them. This includes the role (type) of the object as well as states (checked/pressed), cell coordinates in tables, etc. Note that the announcement of some object details might be dependent on how other settings are set, such as in the <a href="#ObjectPresentationSettings" title="object presentation">object presentation</a> or <a href="#DocumentFormattingSettings" title="Document Formatting">Document Formatting</a> categories.</p> <h5 id="MouseSettingsAudio">Play audio coordinates when mouse moves</h5> <p>Checking this checkbox makes NVDA play beeps as the mouse moves, so that the user can work out where the mouse is in regards to the dimensions of the screen. The higher the mouse is on the screen, the higher the pitch of the beeps. The further left or right the mouse is located on the screen, the further left or right the sound will be played (assuming the user has stereo speakers or headphones).</p> <h5 id="MouseSettingsBrightness">Brightness controls audio coordinates volume</h5> <p>If the "play audio coordinates when mouse moves" checkbox is checked, then checking this checkbox means that the volume of the audio coordinates beeps is controlled by how bright the screen is under the mouse. This setting is unchecked by default.</p> <h5 id="MouseSettingsHandleMouseControl">Ignore mouse input from other applications</h5> <p>This option allows the user to ignore mouse events (including mouse movement and button presses) generated by other applications such as TeamViewer and other remote control software. This option is unchecked by default. If you check this option and you have the "Enable mouse tracking" option enabled, NVDA will not announce what is under the mouse if the mouse is moved by another application.</p> <h4 id="TouchInteraction">Touch Interaction</h4> <p>This settings category, only available on computers with touch capabilities, allows you to configure how NVDA interacts with touchscreens. This category contains the following options:</p> <h5 id="TouchSupportEnable">Enable touch interaction support</h5> <p>This checkbox enables NVDA's touch interaction support. If enabled, you can use your fingers to navigate and interact with items on screen using a touchscreen device. If disabled, touchscreen support will be disabled as though NVDA is not running. This setting can also be toggled using NVDA+control+alt+t.</p> <h5 id="TouchTypingMode">Touch typing mode</h5> <p>This checkbox allows you to specify the method you wish to use when entering text using the touch keyboard. If this checkbox is checked, when you locate a key on the touch keyboard, you can lift your finger and the selected key will be pressed. If this is unchecked, you need to double-tap on the key of the touch keyboard to press the key.</p> <h4 id="ReviewCursorSettings">Review Cursor</h4> <p>The Review Cursor category in the NVDA Settings dialog is used to configure NVDA's review cursor behaviour. This category contains the following options:</p> <!-- KC:setting --> <h5 id="ReviewCursorFollowFocus">Follow System Focus</h5> <p>Key: NVDA+7</p> <p>When enabled, The review cursor will always be placed in the same object as the current system focus whenever the focus changes.</p> <!-- KC:setting --> <h5 id="ReviewCursorFollowCaret">Follow System Caret</h5> <p>Key: NVDA+6</p> <p>When enabled, the review cursor will automatically be moved to the position of the System caret each time it moves.</p> <h5 id="ReviewCursorFollowMouse">Follow mouse cursor</h5> <p>When enabled, the review cursor will follow the mouse as it moves.</p> <h5 id="ReviewCursorSimple">Simple Review mode</h5> <p>When enabled, NVDA will filter the hierarchy of objects that can be navigated to exclude objects that aren't of interest to the user; e.g. invisible objects and objects used only for layout purposes.</p> <p>To toggle simple review mode from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h4 id="ObjectPresentationSettings">Object Presentation</h4> <!-- KC:setting --> <h5 id="OpenObjectPresentationSettings">Open Object Presentation settings</h5> <p>Key: <code>NVDA+control+o</code></p> <p>The Object Presentation category in the NVDA Settings dialog is used to set how much information NVDA will present about controls such as description, position information and so on. These options don't typically apply to browse mode. These options typically apply to focus reporting and NVDA object navigation, but not reading text content e.g. browse mode.</p> <h5 id="ObjectPresentationReportToolTips">Report tooltips</h5> <p>A checkbox that when checked tells NVDA to report tooltips as they appear. Many Windows and controls show a small message (or tooltip) when you move the mouse pointer over them, or sometimes when you move the focus to them.</p> <h5 id="ObjectPresentationReportNotifications">Report notifications</h5> <p>This checkbox, when checked, tells NVDA to report help balloons and toast notifications as they appear.</p> <ul> <li>Help Balloons are like tooltips, but are usually larger in size, and are associated with system events such as a network cable being unplugged, or perhaps to alert you about Windows security issues.</li> <li>Toast notifications have been introduced in Windows 10 and appear in the notification centre in the system tray, informing about several events (i.e. if an update has been downloaded, a new e-mail arrived in your inbox, etc.).</li> </ul> <h5 id="ObjectPresentationShortcutKeys">Report Object Shortcut Keys</h5> <p>When this checkbox is checked, NVDA will include the shortcut key that is associated with a certain object or control when it is reported. For example the File menu on a menu bar may have a shortcut key of alt+f.</p> <h5 id="ObjectPresentationPositionInfo">Report object position information</h5> <p>This option lets you choose whether you wish to have an object's position (e.g. 1 of 4) reported when moving to the object with the focus or object navigation.</p> <h5 id="ObjectPresentationGuessPositionInfo">Guess Object Position Information when unavailable</h5> <p>If reporting of object position information is turned on, this option allows NVDA to guess object position information when it is otherwise unavailable for a particular control.</p> <p>When on, NVDA will report position information for more controls such as menus and toolbars, however this information may be slightly inaccurate.</p> <h5 id="ObjectPresentationReportDescriptions">Report Object descriptions</h5> <p>Uncheck this checkbox if you don't wish to have the description reported along with objects (i.e. search suggestions, reporting of whole dialog window right after the dialog opens, etc.).</p> <!-- KC:setting --> <h5 id="ObjectPresentationProgressBarOutput">Progress bar output</h5> <p>Key: NVDA+u</p> <p>This option controls how NVDA reports progress bar updates to you.</p> <p>It has the following options:</p> <ul> <li>Off: Progress bars will not be reported as they change.</li> <li>Speak: This option tells NVDA to speak the progress bar in percentages. Each time the progress bar changes, NVDA will speak the new value.</li> <li>Beep: This tells NVDA to beep each time the progress bar changes. The higher the beep, the closer the progress bar is to completion.</li> <li>Beep and speak: This option tells NVDA to both beep and speak when a progress bar updates.</li> </ul> <h5 id="ObjectPresentationReportBackgroundProgressBars">Report background progress bars</h5> <p>This is an option that, when checked, tells NVDA to keep reporting a progress bar, even if it is not physically in the foreground. If you minimize or switch away from a window that contains a progress bar, NVDA will keep track of it, allowing you to do other things while NVDA tracks the progress bar.</p> <!-- KC:setting --> <h5 id="ObjectPresentationReportDynamicContent">Report dynamic content changes</h5> <p>Key: NVDA+5</p> <p>Toggles the announcement of new content in particular objects such as terminals and the history control in chat programs.</p> <h5 id="ObjectPresentationSuggestionSounds">Play a sound when auto-suggestions appear</h5> <p>Toggles announcement of appearance of auto-suggestions, and if enabled, NVDA will play a sound to indicate this. Auto-suggestions are lists of suggested entries based on text entered into certain edit fields and documents. For example, when you enter text into the search box in Start menu in Windows Vista and later, Windows displays a list of suggestions based on what you typed. For some edit fields such as search fields in various Windows 10 apps, NVDA can notify you that a list of suggestions has appeared when you type text. The auto-suggestions list will close once you move away from the edit field, and for some fields, NVDA can notify you of this when this happens.</p> <h4 id="InputCompositionSettings">Input Composition</h4> <p>The Input Composition category allows you to control how NVDA reports the input of Asian characters, such as with IME or Text Service input methods. Note that due to the fact that input methods vary greatly by available features and by how they convey information, it will most likely be necessary to configure these options differently for each input method to get the most efficient typing experience.</p> <h5 id="InputCompositionReportAllCandidates">Automatically report all available candidates</h5> <p>This option, which is on by default, allows you to choose whether or not all visible candidates should be reported automatically when a candidate list appears or its page is changed. Having this option on for pictographic input methods such as Chinese New ChangJie or Boshiami is useful, as you can automatically hear all symbols and their numbers and you can choose one right away. However, for phonetic input methods such as Chinese New Phonetic, it may be more useful to turn this option off, as all the symbols will sound the same and you will have to use the arrow keys to navigate the list items individually to gain more information from the character descriptions for each candidate.</p> <h5 id="InputCompositionAnnounceSelectedCandidate">Announce Selected Candidate</h5> <p>This option, which is on by default, allows you to choose whether NVDA should announce the selected candidate when a candidate list appears or when the selection is changed. For input methods where the selection can be changed with the arrow keys (such as Chinese New Phonetic) this is necessary, but for some input methods it may be more efficient typing with this option turned off. Note that even with this option off, the review cursor will still be placed on the selected candidate allowing you to use object navigation / review to manually read this or other candidates.</p> <h5 id="InputCompositionCandidateIncludesShortCharacterDescription">Always include short character descriptions for candidates</h5> <p>This option, which is on by default, allows you to choose whether or not NVDA should provide a short description for each character in a candidate, either when it's selected or when it's automatically read when the candidate list appears. Note that for locales such as Chinese, the announcement of extra character descriptions for the selected candidate is not affected by this option. This option may be useful for Korean and Japanese input methods.</p> <h5 id="InputCompositionReadingStringChanges">Report changes to the reading string</h5> <p>Some input methods such as Chinese New Phonetic and New ChangJie have a reading string (sometimes known as a precomposition string). You can choose whether or not NVDA should announce new characters being typed into this reading string with this option. This option is on by default. Note some older input methods such as Chinese ChangJie may not use the reading string to hold precomposition characters, but instead use the composition string directly. Please see the next option for configuring reporting of the composition string.</p> <h5 id="InputCompositionCompositionStringChanges">Report changes to the composition string</h5> <p>After reading or precomposition data has been combined into a valid pictographic symbol, most input methods place this symbol into a composition string for temporary storage along with other combined symbols before they are finally inserted into the document. This option allows you to choose whether or not NVDA should report new symbols as they appear in the composition string. This option is on by default.</p> <h4 id="BrowseModeSettings">Browse Mode</h4> <!-- KC:setting --> <h5 id="OpenBrowseModeSettings">Open Browse Mode settings</h5> <p>Key: <code>NVDA+control+b</code></p> <p>The Browse Mode category in the NVDA Settings dialog is used to configure NVDA's behaviour when you read and navigate complex documents such as web pages. This category contains the following options:</p> <h5 id="BrowseModeSettingsMaxLength">Maximum Number of Characters on One Line</h5> <p>This field sets the maximum length of a line in browse mode (in characters).</p> <h5 id="BrowseModeSettingsPageLines">Maximum Lines Per Page</h5> <p>This field sets the amount of lines you will move by when pressing page up or page down while in browse mode.</p> <!-- KC:setting --> <h5 id="BrowseModeSettingsScreenLayout">Use screen layout</h5> <p>Key: NVDA+v</p> <p>This option allows you to specify whether browse mode should place clickable content (links, buttons and fields) on its own line, or if it should keep it in the flow of text as it is visually shown. Note that this option doesn't apply to Microsoft Office apps such as Outlook and Word, which always use screen layout. When screen layout is enabled, page elements will stay as they are visually shown. For example, a visual line of multiple links will be presented in speech and braille as multiple links on the same line. If it is disabled, then page elements will be placed on their own lines. This may be easier to understand during line by line page navigation and make items easier to interact with for some users.</p> <h5 id="BrowseModeSettingsEnableOnPageLoad">Enable browse mode on page load</h5> <p>This checkbox toggles whether browse mode should be automatically enabled when loading a page. When this option is disabled, browse mode can still be manually activated on pages or in documents where browse mode is supported. See the <a href="#BrowseMode" title="Browse Mode section">Browse Mode section</a> for a list of applications supported by browse mode. Note that this option does not apply to situations where browse mode is always optional, e.g. in Microsoft Word. This option is enabled by default.</p> <h5 id="BrowseModeSettingsAutoSayAll">Automatic Say All on page load</h5> <p>This checkbox toggles the automatic reading of a page after it loads in browse mode. This option is enabled by default.</p> <h5 id="BrowseModeSettingsIncludeLayoutTables">Include layout tables</h5> <p>This option affects how NVDA handles tables used purely for layout purposes. When on, NVDA will treat these as normal tables, reporting them based on <a href="#DocumentFormattingSettings" title="Document Formatting Settings">Document Formatting Settings</a> and locating them with quick navigation commands. When off, they will not be reported nor found with quick navigation. However, the content of the tables will still be included as normal text. This option is turned off by default.</p> <p>To toggle inclusion of layout tables from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h5 id="BrowseModeLinksAndHeadings">Configuring reporting of fields such as links and headings</h5> <p>Please see the options in the <a href="#DocumentFormattingSettings" title="Document Formatting category">Document Formatting category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog to configure the fields that are reported when navigating, such as links, headings and tables.</p> <h5 id="BrowseModeSettingsAutoPassThroughOnFocusChange">Automatic focus mode for focus changes</h5> <p>This option allows focus mode to be invoked if focus changes. For example, when on a web page, if you press tab and you land on a form, if this option is checked, focus mode will automatically be invoked.</p> <h5 id="BrowseModeSettingsAutoPassThroughOnCaretMove">Automatic focus mode for caret movement</h5> <p>This option, when checked, allows NVDA to enter and leave focus mode when using arrow keys. For example, if arrowing down a web page and you land on an edit box, NVDA will automatically bring you into focus mode. If you arrow out of the edit box, NVDA will put you back in browse mode.</p> <h5 id="BrowseModeSettingsPassThroughAudioIndication">Audio indication of Focus and Browse modes</h5> <p>If this option is enabled, NVDA will play special sounds when it switches between browse mode and focus mode, rather than speaking the change.</p> <h5 id="BrowseModeSettingsTrapNonCommandGestures">Trap non-command gestures from reaching the document</h5> <p>Enabled by default, this option allows you to choose if gestures (such as key presses) that do not result in an NVDA command and are not considered to be a command key in general, should be trapped from going through to the document you are currently focused on. As an example, if enabled and the letter j was pressed, it would be trapped from reaching the document, even though it is not a quick navigation command nor is it likely to be a command in the application itself. In this case NVDA will tell Windows to play a default sound whenever a key which gets trapped is pressed.</p> <!-- KC:setting --> <h5 id="BrowseModeSettingsAutoFocusFocusableElements">Automatically set system focus to focusable elements</h5> <p>Key: NVDA+8</p> <p>Disabled by default, this option allows you to choose if the system focus should automatically be set to elements that can take the system focus (links, form fields, etc.) when navigating content with the browse mode caret. Leaving this option disabled will not automatically focus focusable elements when they are selected with the browse mode caret. This might result in faster browsing experience and better responsiveness in browse mode. The focus will yet be updated to the particular element when interacting with it (e.g. pressing a button, checking a check box). Enabling this option may improve support for some websites at the cost of performance and stability.</p> <h4 id="DocumentFormattingSettings">Document Formatting</h4> <!-- KC:setting --> <h5 id="OpenDocumentFormattingSettings">Open Document Formatting settings</h5> <p>Key: <code>NVDA+control+d</code></p> <p>Most of the options in this category are for configuring what type of formatting you wish to have reported as you move the cursor around documents. For example, if you check the report font name checkbox, each time you arrow onto text with a different font, the name of the font will be announced.</p> <p>The document formatting options are organized into groups. You can configure reporting of:</p> <ul> <li>Font<ul> <li>Font name</li> <li>Font size</li> <li>Font attributes <a href="#DocumentFormattingFontAttributes" title="(Off, Speech, Braille, Speech and braille)">(Off, Speech, Braille, Speech and braille)</a></li> <li>Superscripts and subscripts</li> <li>Emphasis</li> <li>Highlighted (Marked) text</li> <li>Style</li> <li>Colours</li> </ul> </li> <li>Document information<ul> <li>Comments</li> <li>Bookmarks</li> <li>Editor revisions</li> <li>Spelling errors</li> </ul> </li> <li>Pages and spacing<ul> <li>Page numbers</li> <li>Line numbers</li> <li>Line indentation reporting <a href="#DocumentFormattingSettingsLineIndentation" title="(Off, Speech, Tones, Both Speech and Tones)">(Off, Speech, Tones, Both Speech and Tones)</a></li> <li>Ignore blank lines for line indentation reporting</li> <li>Paragraph indentation (e.g. hanging indent, first line indent)</li> <li>Line spacing (single, double, etc.)</li> <li>Alignment</li> </ul> </li> <li>Table information<ul> <li>Tables</li> <li>Row/column headers (Off, Rows, Columns, Rows and columns)</li> <li>Cell coordinates</li> <li>Cell borders (Off, Styles, Both Colours and Styles)</li> </ul> </li> <li>Elements<ul> <li>Headings</li> <li>Links</li> <li>Graphics</li> <li>Lists</li> <li>Block quotes</li> <li>Groupings</li> <li>Landmarks</li> <li>Articles</li> <li>Frames</li> <li>Figures and captions</li> <li>Clickable</li> </ul> </li> </ul> <p>To toggle these settings from anywhere, please assign custom gestures using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h5 id="DocumentFormattingFontAttributes">Font attributes</h5> <p>This option allows you to select how certain font attributes, such as bold, italics, underline and strikethrough are reported. The font attributes combo box has four options:</p> <ul> <li>Off: NVDA will not report these font attributes.</li> <li>Speech: NVDA will announce when these font attributes change.</li> <li>Braille: NVDA will display these attributes in braille. Exactly how they are displayed can be configured in <a href="#BrailleFormattingDisplay" title="NVDA's braille settings">NVDA's braille settings</a>.</li> <li>Speech and braille: NVDA will report font attributes using both of the above methods.</li> </ul> <h5 id="DocumentFormattingDetectFormatAfterCursor">Report formatting changes after the cursor</h5> <p>If enabled, this setting tells NVDA to try and detect all the formatting changes on a line as it reports it, even if doing this may slow down NVDA's performance.</p> <p>By default, NVDA will detect the formatting at the position of the System caret / Review Cursor, and in some instances may detect formatting on the rest of the line, only if it is not going to cause a performance decrease.</p> <p>Enable this option while proof reading documents in applications such as WordPad, where formatting is important.</p> <h5 id="DocumentFormattingSettingsLineIndentation">Line indentation reporting</h5> <p>This option allows you to configure how indentation at the beginning of lines is reported. The Report line indentation with combo box has four options.</p> <ul> <li>Off: NVDA will not treat indentation specially.</li> <li>Speech: If speech is selected, when the amount of indentation changes, NVDA will say something like "twelve space" or "four tab."</li> <li>Tones: If Tones is selected, when the amount of indentation changes, tones indicate the amount of change in indent. The tone will increase in pitch every space, and for a tab, it will increase in pitch the equivalent of 4 spaces.</li> <li>Both Speech and Tones: This option reads indentation using both of the above methods.</li> </ul> <p>If you tick the "Ignore blank lines for line indentation reporting" checkbox, then indentation changes won't be reported for blank lines. This may be useful when reading a document where blank lines are used to separate indented bloks of text, such as in programming source code.</p> <h4 id="DocumentNavigation">Document Navigation</h4> <p>This category allows you to adjust various aspects of document navigation.</p> <h5 id="ParagraphStyle">Paragraph Style</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Handled by application), Handled by application, Single line break, Multi line break</td> </tr> <tr> <td>Default</td> <td>Handled by application</td> </tr> </tbody> </table> <p>This combo box allows you to select the paragraph style to be used when navigating by paragraphs with <code>control+upArrow</code> and <code>control+downArrow</code>. The available paragraph styles are:</p> <ul> <li>Handled by application: NVDA will let the application determine the previous or next paragraph, and NVDA will read the new paragraph when navigating. This style works best when the application supports paragraph navigation natively, and is the default.</li> <li>Single line break: NVDA will attempt to determine the previous or next paragraph using a single line break as the paragraph indicator. This style works best when reading documents in an application which does not natively support paragraph navigation, and paragraphs in the document are marked by a single press of the <code>enter</code> key.</li> <li>Multi line break: NVDA will attempt to determine the previous or next paragraph using at least one blank line (two presses of the <code>enter</code> key) as the paragraph indicator. This style works best when working with documents which use block paragraphs. Note that this paragraph style cannot be used in Microsoft Word or Microsoft Outlook, unless you are using UIA to access Microsoft Word controls.</li> </ul> <p>You may toggle through the available paragraph styles from anywhere by assigning a key in the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h4 id="AddonStoreSettings">Add-on Store Settings</h4> <p>This category allows you to adjust the behaviour of the Add-on Store.</p> <h5 id="AutomaticAddonUpdates">Update Notifications</h5> <p>When this option is set to "Notify", the Add-on Store will notify you after NVDA startup if any add-on updates are available. This check is performed every 24 hours. Notifications will only occur for add-ons with updates available within the same channel. For example, for installed beta add-ons, you will only be notified of updates within the beta channel.</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Notify (Default), Disabled</td> </tr> <tr> <td>Default</td> <td>Notify</td> </tr> </tbody> </table> <table> <thead> <tr> <th>Option</th> <th>Behaviour</th> </tr> </thead> <tbody> <tr> <td>Notify</td> <td>Notify when updates are available to add-ons within the same channel</td> </tr> <tr> <td>Disabled</td> <td>Do not automatically check for updates to add-ons</td> </tr> </tbody> </table> <h4 id="Win10OcrSettings">Windows OCR Settings</h4> <p>The settings in this category allow you to configure <a href="#Win10Ocr" title="Windows OCR">Windows OCR</a>. This category contains the following options:</p> <h5 id="Win10OcrSettingsRecognitionLanguage">Recognition language</h5> <p>This combo box allows you to choose the language to be used for text recognition. To cycle through available languages from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h5 id="Win10OcrSettingsAutoRefresh">Periodically refresh recognized content</h5> <p>When this checkbox is enabled, NVDA will automatically refresh the recognized content when a recognition result has focus. This can be very useful when you want to monitor constantly changing content, such as when watching a video with subtitles. The refresh takes place every one and a half seconds. This option is disabled by default.</p> <h4 id="AdvancedSettings">Advanced Settings</h4> <p>Warning! The settings in this category are for advanced users and may cause NVDA to not function correctly if configured in the wrong way. Only make changes to these settings if you are sure you know what you are doing or if you have been specifically instructed to by an NVDA developer.</p> <h5 id="AdvancedSettingsMakingChanges">Making changes to advanced settings</h5> <p>In order to make changes to the advanced settings, the controls must be enabled by confirming, with the checkbox, that you understand the risks of modifying these settings</p> <h5 id="AdvancedSettingsRestoringDefaults">Restoring the default settings</h5> <p>The button restores the default values for the settings, even if the confirmation checkbox is not ticked. After changing settings you may wish to revert to the default values. This may also be the case if you are unsure if the settings have been changed.</p> <h5 id="AdvancedSettingsEnableScratchpad">Enable loading custom code from Developer Scratchpad Directory</h5> <p>When developing add-ons for NVDA, it is useful to be able to test code as you are writing it. This option when enabled, allows NVDA to load custom appModules, globalPlugins, brailleDisplayDrivers, synthDrivers and vision enhancement providers, from a special developer scratchpad directory in your NVDA user configuration directory. As their equivalents in add-ons, these modules are loaded when starting NVDA or, in the case of appModules and globalPlugins, when <a href="#ReloadPlugins" title="reloading plugins">reloading plugins</a>. This option is off by default, ensuring that no untested code is ever run in NVDA with out the user's explicit knowledge. If you wish to distribute custom code to others, you should package it as an NVDA add-on.</p> <h5 id="AdvancedSettingsOpenScratchpadDir">Open Developer Scratchpad Directory</h5> <p>This button opens the directory where you can place custom code while developing it. This button is only enabled if NVDA is configured to enable loading custom code from the Developer Scratchpad Directory.</p> <h5 id="AdvancedSettingsSelectiveUIAEventRegistration">Registration for UI Automation events and property changes</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Automatic, Selective, Global</td> </tr> <tr> <td>Default</td> <td>Automatic</td> </tr> </tbody> </table> <p>This option changes how NVDA registers for events fired by the Microsoft UI Automation accessibility API. The registration for UI Automation events and property changes combo box has three options:</p> <ul> <li>Automatic: "selective" on Windows 11 Sun Valley 2 (version 22H2) and later, "global" otherwise.</li> <li>Selective: NVDA will limit event registration to the system focus for most events. If you suffer from performance issues in one or more applications, We recommend you to try this functionality to see whether performance improves. However, on older versions of Windows, NVDA may have trouble tracking focus in some controls (such as the task manager and emoji panel).</li> <li>Global: NVDA registers for many UIA events that are processed and discarded within NVDA itself. While focus tracking is more reliable in more situations, performance is significantly degraded, especially in applications like Microsoft Visual Studio.</li> </ul> <h5 id="MSWordUIA">Use UI automation to access Microsoft Word document controls</h5> <p>Configures whether or not NVDA should use the UI Automation accessibility API to access Microsoft Word documents, rather than the older Microsoft Word object model. This applies to documents in Microsoft word itself, plus messages in Microsoft Outlook. This setting contains the following values:</p> <ul> <li>Default (where suitable)</li> <li>Only where necessary: where the Microsoft Word object model is not available at all</li> <li>Where suitable: Microsoft Word version 16.0.15000 or higher, or where the Microsoft Word object model is unavailable</li> <li>Always: where ever UI automation is available in Microsoft word (no matter how complete).</li> </ul> <h5 id="UseUiaForExcel">Use UI automation to access Microsoft Excel spreadsheet controls when available</h5> <p>When this option is enabled, NVDA will try to use the Microsoft UI Automation accessibility API in order to fetch information from Microsoft Excel Spreadsheet controls. This is an experimental feature, and some features of Microsoft Excel may not be available in this mode. For instance, NVDA's Elements List for listing formulas and comments, and Browse mode quick navigation to jump to form fields on a spreadsheet features are not available. However, for basic spreadsheet navigating / editing, this option may provide a vast performance improvement. We still do not recommend that the majority of users turn this on by default, though we do welcome users of Microsoft Excel build 16.0.13522.10000 or higher to test this feature and provide feedback. Microsoft Excel's UI automation implementation is ever changing, and versions of Microsoft Office older than 16.0.13522.10000 may not expose enough information for this option to be of any use.</p> <h5 id="UIAEnhancedEventProcessing">Use enhanced event processing</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Enabled), Disabled, Enabled</td> </tr> <tr> <td>Default</td> <td>Enabled</td> </tr> </tbody> </table> <p>When this option is enabled, NVDA should remain responsive when being flooded with many UI Automation events, e.g. large amounts of text in a terminal. After changing this option, you will need to restart NVDA for the change to take effect.</p> <h5 id="AdvancedSettingsConsoleUIA">Windows Console support</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Automatic, UIA when available, Legacy</td> </tr> <tr> <td>Default</td> <td>Automatic</td> </tr> </tbody> </table> <p>This option selects how NVDA interacts with the Windows Console used by command prompt, PowerShell, and the Windows Subsystem for Linux. It does not affect the modern Windows Terminal. In Windows 10 version 1709, Microsoft <a href="https://devblogs.microsoft.com/commandline/whats-new-in-windows-console-in-windows-10-fall-creators-update/" rel="noopener" target="_blank" title="added support for its UI Automation API to the console">added support for its UI Automation API to the console</a>, bringing vastly improved performance and stability for screen readers that support it. In situations where UI Automation is unavailable or known to result in an inferior user experience, NVDA's legacy console support is available as a fallback. The Windows Console support combo box has three options:</p> <ul> <li>Automatic: Uses UI Automation in the version of Windows Console included with Windows 11 version 22H2 and later. This option is recommended and set by default.</li> <li>UIA when available: Uses UI Automation in consoles if available, even for versions with incomplete or buggy implementations. While this limited functionality may be useful (and even sufficient for your usage), use of this option is entirely at your own risk and no support for it will be provided.</li> <li>Legacy: UI Automation in the Windows Console will be completely disabled. The legacy fallback will always be used even in situations where UI Automation would provide a superior user experience. Therefore, selecting this option is not recommended unless you know what you are doing.</li> </ul> <h5 id="ChromiumUIA">Use UIA with Microsoft Edge and other Chromium based browsers when available</h5> <p>Allows specifying when UIA will be used when it is available in Chromium based browsers such as Microsoft Edge. UIA support for Chromium based browsers is early in development and may not provide the same level of access as IA2. The combo box has the following options:</p> <ul> <li>Default (Only when necessary): The NVDA default, currently this is "Only when necessary". This default may change in the future as the technology matures.</li> <li>Only when necessary: When NVDA is unable to inject into the browser process in order to use IA2 and UIA is available, then NVDA will fall back to using UIA.</li> <li>Yes: If the browser makes UIA available, NVDA will use it.</li> <li>No: Don't use UIA, even if NVDA is unable to inject in process. This may be useful for developers debugging issues with IA2 and want to ensure that NVDA does not fall back to UIA.</li> </ul> <h5 id="Annotations">Annotations</h5> <p>This group of options is used to enable features which add experimental support for ARIA annotations. Some of these features may be incomplete.</p> <!-- KC:beginInclude --> <p>To "Report summary of any annotation details at the system caret", press NVDA+d.</p> <!-- KC:endInclude --> <p>The following options exist:</p> <ul> <li>"Report 'has details' for structured annotations": enables reporting if the text or control has further details.</li> <li>"Report aria-description always": When the source of <code>accDescription</code> is aria-description, the description is reported. This is useful for annotations on the web. Note:<ul> <li>There are many sources for <code>accDescription</code> several have mixed or unreliable semantics. Historically AT has not been able to differentiate sources of <code>accDescription</code> typically it wasn't spoken due to the mixed semantics.</li> <li>This option is in very early development, it relies on browser features not yet widely available.</li> <li>Expected to work with Chromium 92.0.4479.0+</li> </ul> </li> </ul> <h5 id="BrailleLiveRegions">Report live regions</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Enabled), Disabled, Enabled</td> </tr> <tr> <td>Default</td> <td>Enabled</td> </tr> </tbody> </table> <p>This option selects whether NVDA reports changes in some dynamic web content in Braille. Disabling this option is equivalent to NVDA's behaviour in versions 2023.1 and earlier, which only reported these content changes in speech.</p> <h5 id="AdvancedSettingsWinConsoleSpeakPasswords">Speak passwords in all enhanced terminals</h5> <p>This setting controls whether characters are spoken by <a href="#KeyboardSettingsSpeakTypedCharacters" title="speak typed characters">speak typed characters</a> or <a href="#KeyboardSettingsSpeakTypedWords" title="speak typed words">speak typed words</a> in situations where the screen does not update (such as password entry) in some terminal programs, such as the Windows Console with UI automation support enabled and Mintty. For security purposes, this setting should be left disabled. However, you may wish to enable it if you experience performance issues or instability with typed character and/or word reporting in consoles, or work in trusted environments and prefer password announcement.</p> <h5 id="AdvancedSettingsKeyboardSupportInLegacy">Use enhanced typed character support in legacy Windows Console when available</h5> <p>This option enables an alternative method for detecting typed characters in legacy Windows consoles. While it improves performance and prevents some console output from being spelled out, it may be incompatible with some terminal programs. This feature is available and enabled by default on Windows 10 versions 1607 and later when UI Automation is unavailable or disabled. Warning: with this option enabled, typed characters that do not appear onscreen, such as passwords, will not be suppressed. In untrusted environments, you may temporarily disable <a href="#KeyboardSettingsSpeakTypedCharacters" title="speak typed characters">speak typed characters</a> and <a href="#KeyboardSettingsSpeakTypedWords" title="speak typed words">speak typed words</a> when entering passwords.</p> <h5 id="DiffAlgo">Diff algorithm</h5> <p>This setting controls how NVDA determines the new text to speak in terminals. The diff algorithm combo box has three options:</p> <ul> <li>Automatic: This option causes NVDA to prefer Diff Match Patch in most situations, but fall back to Difflib in problematic applications, such as older versions of the Windows Console and Mintty.</li> <li>Diff Match Patch: This option causes NVDA to calculate changes to terminal text by character, even in situations where it is not recommended. It may improve performance when large volumes of text are written to the console and allow more accurate reporting of changes made in the middle of lines. However, in some applications, reading of new text may be choppy or inconsistent.</li> <li>Difflib: this option causes NVDA to calculate changes to terminal text by line, even in situations where it is not recommended. It is identical to NVDA's behaviour in versions 2020.4 and earlier. This setting may stabilize reading of incoming text in some applications. However, in terminals, when inserting or deleting a character in the middle of a line, the text after the caret will be read out.</li> </ul> <h5 id="WtStrategy">Speak new text in Windows Terminal via</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Diffing), Diffing, UIA notifications</td> </tr> <tr> <td>Default</td> <td>Diffing</td> </tr> </tbody> </table> <p>This option selects how NVDA determines what text is "new" (and thus what to speak when "report dynamic content changes" is enabled) in Windows Terminal and the WPF Windows Terminal control used in Visual Studio 2022. It does not affect the Windows Console (<code>conhost.exe</code>). The Speak new text in Windows Terminal combo box has three options:</p> <ul> <li>Default: This option is currently equivalent to "diffing", but it is anticipated to change once support for UIA notifications is further developed.</li> <li>Diffing: This option uses the selected diff algorithm to calculate changes each time the terminal renders new text. This is identical to NVDA's behaviour in versions 2022.4 and earlier.</li> <li>UIA notifications: This option defers the responsibility of determining what text to speak to Windows Terminal itself, meanning that NVDA no longer has to determine what text currently on-screen is "new". This should markedly improve performance and stability of Windows Terminal, but this feature is not yet complete. In particular, typed characters that are not displayed on-screen, such as passwords, are reported when this option is selected. Additionally, contiguous spans of output of over 1,000 characters may not be reported accurately.</li> </ul> <h5 id="CancelExpiredFocusSpeech">Attempt to cancel speech for expired focus events</h5> <p>This option enables behaviour which attempts to cancel speech for expired focus events. In particular moving quickly through messages in Gmail with Chrome can cause NVDA to speak outdated information. This functionality is enabled by default as of NVDA 2021.1.</p> <h5 id="AdvancedSettingsCaretMoveTimeout">Caret move timeout (in MS)</h5> <p>This option allows you to configure the number of milliseconds NVDA will wait for the caret (insertion point) to move in editable text controls. If you find that NVDA seems to be incorrectly tracking the caret E.g. it seems to be always one character behind or is repeating lines, then you may wish to try increasing this value.</p> <h5 id="ReportTransparentColors">Report transparency for colors</h5> <p>This option enables reporting when colors are transparent, useful for addon/appModule developers gathering information to improve user experience with a 3rd party application. Some GDI applications will highlight text with a background color, NVDA (via display model) attempts to report this color. In some situations, the text background may be entirely transparent, with the text layered on some other GUI element. With several historically popular GUI APIs, the text may be rendered with a transparent background, but visually the background color is accurate.</p> <h5 id="WASAPI">Use WASAPI for audio output</h5> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td>Options</td> <td>Default (Enabled), Disabled, Enabled</td> </tr> <tr> <td>Default</td> <td>Enabled</td> </tr> </tbody> </table> <p>This option enables audio output via the Windows Audio Session API (WASAPI). WASAPI is a more modern audio framework which may improve the responsiveness, performance and stability of NVDA audio output, including both speech and sounds. After changing this option, you will need to restart NVDA for the change to take effect. Disabling WASAPI will disable the following options:</p> <ul> <li><a href="#SoundVolumeFollowsVoice" title="Volume of NVDA sounds follows voice volume">Volume of NVDA sounds follows voice volume</a></li> <li><a href="#SoundVolume" title="Volume of NVDA sounds">Volume of NVDA sounds</a></li> </ul> <h5 id="AdvancedSettingsDebugLoggingCategories">Debug logging categories</h5> <p>The checkboxes in this list allow you to enable specific categories of debug messages in NVDA's log. Logging these messages can result in decreased performance and large log files. Only turn one of these on if specifically instructed to by an NVDA developer e.g. when debugging why a braille display driver is not functioning correctly.</p> <h5 id="PlayErrorSound">Play a sound for logged errors</h5> <p>This option allows you to specify if NVDA will play an error sound in case an error is logged. Choosing Only in test versions (default) makes NVDA play error sounds only if the current NVDA version is a test version (alpha, beta or run from source). Choosing Yes allows to enable error sounds whatever your current NVDA version is.</p> <h5 id="TextParagraphRegexEdit">Regular expression for text paragraph quick navigation commands</h5> <p>This field allows users to customize regular expression for detecting text paragraphs in browse mode. The <a href="#TextNavigationCommand" title="text paragraph navigation command">text paragraph navigation command</a> searches for paragraphs matched by this regular expression.</p> <h3 id="MiscSettings">miscellaneous Settings</h3> <p>Besides the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog, The Preferences sub-menu of the NVDA Menu contains several other items which are outlined below.</p> <h4 id="SpeechDictionaries">Speech dictionaries</h4> <p>The speech dictionaries menu (found in the Preferences menu) contains dialogs that allow you to manage the way NVDA pronounces particular words or phrases. There are currently three different types of speech dictionaries. They are:</p> <ul> <li>Default: rules in this dictionary affect all speech in NVDA.</li> <li>Voice: rules in this dictionary affect speech for the synthesizer voice currently being used.</li> <li>Temporary: rules in this dictionary affect all speech in NVDA, but only for the current session. These rules are temporary and will be lost if NVDA is restarted.</li> </ul> <p>You need to assign custom gestures using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a> if you wish to open any of these dictionary dialogs from anywhere.</p> <p>All dictionary dialogs contain a list of rules which will be used for processing the speech. The dialog also contains Add, Edit, Remove and Remove all buttons.</p> <p>To add a new rule to the dictionary, press the Add button, and fill in the fields in the dialog box that appears and then press Ok. You will then see your new rule in the list of rules. However, to make sure your rule is actually saved, make sure to press Ok to exit the dictionary dialog completely once you have finished adding/editing rules.</p> <p>The rules for NVDA's speech dictionaries allow you to change one string of characters into another. For example, you could create a rule which causes NVDA to say the word "frog" instead of "bird" whenever the word "bird" is encountered. In the Add rule dialog, the easiest way to do this is to type the word bird in the Pattern field, and the word frog in the Replacement field. You may also want to type a description of the rule in the Comment field (something like: changes bird to frog).</p> <p>NVDA's speech dictionaries however are much more powerful than simple word replacement. The Add rule dialog also contains a checkbox to say whether or not you want the rule to be case sensitive (meaning that NVDA should care whether the characters are uppercase or lowercase. NVDA ignores case by default).</p> <p>Finally, a set of radio buttons allows you to tell NVDA whether your pattern should match anywhere, should only match if it is a complete word or should be treated as a "Regular expression". Setting the pattern to match as a whole word means that the replacement will only be made if the pattern does not occur as part of a larger word. This condition is met if the characters immediately before and after the word are anything other than a letter, a number, or an underscore, or if there are no characters at all. Thus, using the earlier example of replacing the word "bird" with "frog", if you were to make this a whole word replacement, it would not match "birds" or "bluebird".</p> <p>A regular expression is a pattern containing special symbols that allow you to match on more than one character at a time, or match on just numbers, or just letters, as a few examples. Regular expressions are not covered in this user guide. For an introductory tutorial, please refer to <a href="https://docs.python.org/3.11/howto/regex.html" rel="noopener" target="_blank" title="Python's Regular Expression Guide">Python's Regular Expression Guide</a>.</p> <h4 id="SymbolPronunciation">Punctuation/symbol pronunciation</h4> <p>This dialog allows you to change the way punctuation and other symbols are pronounced, as well as the symbol level at which they are spoken.</p> <p>The language for which symbol pronunciation is being edited will be shown in the dialog's title. Note that this dialog respects the "Trust voice's language for processing symbols and characters" option found in the <a href="#SpeechSettings" title="Speech category">Speech category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog; i.e. it uses the voice language rather than the NVDA global language setting when this option is enabled.</p> <p>To change a symbol, first select it in the Symbols list. You can filter the symbols by entering the symbol or a part of the symbol's replacement into the Filter by edit box.</p> <ul> <li>The Replacement field allows you to change the text that should be spoken in place of this symbol.</li> <li>Using the Level field, you can adjust the lowest symbol level at which this symbol should be spoken (none, some, most or all). You can also set the level to character; in this case the symbol will not be spoken regardless of the symbol level in use, with the following two exceptions:<ul> <li>When navigating character by character.</li> <li>When NVDA is spelling any text containing that symbol.</li> </ul> </li> <li>The Send actual symbol to synthesizer field specifies when the symbol itself (in contrast to its replacement) should be sent to the synthesizer. This is useful if the symbol causes the synthesizer to pause or change the inflection of the voice. For example, a comma causes the synthesizer to pause. There are three options:<ul> <li>never: Never send the actual symbol to the synthesizer.</li> <li>always: Always send the actual symbol to the synthesizer.</li> <li>only below symbols' level: Send the actual symbol only if the configured speech symbol level is lower than the level set for this symbol. For example, you might use this so that a symbol will have its replacement spoken at higher levels without pausing, while still being indicated with a pause at lower levels.</li> </ul> </li> </ul> <p>You can add new symbols by pressing the Add button. In the dialog that appears, enter the symbol and press the OK button. Then, change the fields for the new symbol as you would for other symbols.</p> <p>You can remove a symbol you previously added by pressing the Remove button.</p> <p>When you are finished, press the OK button to save your changes or the Cancel button to discard them.</p> <p>In the case of complex symbols, the Replacement field may have to include some group references of the matched text. For instance, for a pattern matching a whole date, \1, \2, and \3 would need to appear in the field, to be replaced by the corresponding parts of the date. Normal backslashes in the Replacement field should thus be doubled, e.g. "a\b" should be typed in order to get the "a\b" replacement.</p> <h4 id="InputGestures">Input Gestures</h4> <p>In this dialog, you can customize the input gestures (keys on the keyboard, buttons on a braille display, etc.) for NVDA commands.</p> <p>Only commands that are applicable immediately before the dialog is opened are shown. For example, if you want to customize commands related to browse mode, you should open the Input Gestures dialog while you are in browse mode.</p> <p>The tree in this dialog lists all of the applicable NVDA commands grouped by category. You can filter them by entering one or more words from the command's name into the Filter by edit box in any order. Any gestures associated with a command are listed beneath the command.</p> <p>To add an input gesture to a command, select the command and press the Add button. Then, perform the input gesture you wish to associate; e.g. press a key on the keyboard or a button on a braille display. Often, a gesture can be interpreted in more than one way. For example, if you pressed a key on the keyboard, you may wish it to be specific to the current keyboard layout (e.g. desktop or laptop) or you may wish it to apply for all layouts. In this case, a menu will appear allowing you to select the desired option.</p> <p>To remove a gesture from a command, select the gesture and press the Remove button.</p> <p>The Emulated system keyboard keys category contains NVDA commands that emulate keys on the system keyboard. These emulated system keyboard keys can be used to control a system keyboard right from your braille display. To add an emulated input gesture, select the Emulated system keyboard keys category and press the Add button. Then, press the key on the keyboard you wish to emulate. After that, the key will be available from the Emulated system keyboard keys category and you will be able to assign an input gesture to it as described above.</p> <p>Note:</p> <ul> <li>Emulated keys must have gestures assigned in order to persist when saving / closing the dialog.</li> <li>An input gesture with modifier keys may not be able to be mapped to an emulated gesture without modifier keys. For instance, setting the emulated input <code>a</code> and configuring an input gesture of <code>ctrl+m</code>, may result in the application receiving <code>ctrl+a</code>.</li> </ul> <p>When you are finished making changes, press the OK button to save them or the Cancel button to discard them.</p> <h3 id="SavingAndReloading">Saving and Reloading the configuration</h3> <p>By default NVDA will automatically save your settings on exit. Note, however, that this option can be changed under the general options in the preferences menu. To save the settings manually at any time, choose the Save configuration item in the NVDA menu.</p> <p>If you ever make a mistake with your settings and need to revert back to the saved settings, choose the "revert to saved configuration" item in the NVDA menu. You can also reset your settings to their original factory defaults by choosing Reset Configuration To Factory Defaults, which is also found in the NVDA menu.</p> <p>The following NVDA key commands are also useful:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Desktop key</th> <th>Laptop key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Save configuration</td> <td>NVDA+control+c</td> <td>NVDA+control+c</td> <td>Saves your current configuration so that it is not lost when you exit NVDA</td> </tr> <tr> <td>Revert configuration</td> <td>NVDA+control+r</td> <td>NVDA+control+r</td> <td>Pressing once resets your configuration to when you last saved it. Pressing three times will reset it back to factory defaults.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="ConfigurationProfiles">Configuration Profiles</h3> <p>Sometimes, you may wish to have different settings for different situations. For example, you may wish to have reporting of indentation enabled while you are editing or reporting of font attributes enabled while you are proofreading. NVDA allows you to do this using configuration profiles.</p> <p>A configuration profile contains only those settings which are changed while the profile is being edited. Most settings can be changed in configuration profiles except for those in the General category of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog, which apply to the entirety of NVDA.</p> <p>Configuration profiles can be manually activated either from a dialog or using custom added gestures. They can also be activated automatically due to triggers such as switching to a particular application.</p> <h4 id="ProfilesBasicManagement">Basic Management</h4> <p>You manage configuration profiles by selecting "Configuration profiles" in the NVDA menu. You can also do this using a key command:</p> <!-- KC:beginInclude --> <ul> <li>NVDA+control+p: Show the Configuration Profiles dialog.</li> </ul> <!-- KC:endInclude --> <p>The first control in this dialog is the profile list from which you can select one of the available profiles. When you open the dialog, the profile you are currently editing is selected. Additional information is also shown for active profiles, indicating whether they are manually activated, triggered and/or being edited.</p> <p>To rename or delete a profile, press the Rename or Delete buttons, respectively.</p> <p>Press the Close button to close the dialog.</p> <h4 id="ProfilesCreating">Creating a Profile</h4> <p>To create a profile, press the New button.</p> <p>In the New Profile dialog, you can enter a name for the profile. You can also select how this profile should be used. If you only want to use this profile manually, select Manual activation, which is the default. Otherwise, select a trigger which should automatically activate this profile. For convenience, if you haven't entered a name for the profile, selecting a trigger will fill in the name accordingly. See <a href="#ConfigProfileTriggers" title="below">below</a> for more information about triggers.</p> <p>Pressing OK will create the profile and close the Configuration Profiles dialog so you can edit it.</p> <h4 id="ConfigProfileManual">Manual Activation</h4> <p>You can manually activate a profile by selecting a profile and pressing the Manual activate button. Once activated, other profiles can still be activated due to triggers, but any settings in the manually activated profile will override them. For example, if a profile is triggered for the current application and reporting of links is enabled in that profile but disabled it in the manually activated profile, links will not be reported. However, if you have changed the voice in the triggered profile but have never changed it in the manually activated profile, the voice from the triggered profile will be used. Any settings you change will be saved in the manually activated profile. To deactivate a manually activated profile, select it in the Configuration Profiles dialog and press the Manual deactivate button.</p> <h4 id="ConfigProfileTriggers">Triggers</h4> <p>Pressing the Triggers button in the Configuration Profiles dialog allows you to change the profiles which should be automatically activated for various triggers.</p> <p>The Triggers list shows the available triggers, which are as follows:</p> <ul> <li>Current application: Triggered when you switch to the current application.</li> <li>Say all: Triggered while reading with the say all command.</li> </ul> <p>To change the profile which should be automatically activated for a trigger, select the trigger and then select the desired profile from the Profile list. You can select "(normal configuration)" if you don't want a profile to be used.</p> <p>Press the Close button to return to the Configuration Profiles dialog.</p> <h4 id="ConfigProfileEditing">Editing a Profile</h4> <p>If you have manually activated a profile, any settings you change will be saved to that profile. Otherwise, any settings you change will be saved to the most recently triggered profile. For example, if you have associated a profile with the Notepad application and you switch to Notepad, any changed settings will be saved to that profile. Finally, if there is neither a manually activated nor a triggered profile, any settings you change will be saved to your normal configuration.</p> <p>To edit the profile associated with say all, you must <a href="#ConfigProfileManual" title="manually activate">manually activate</a> that profile.</p> <h4 id="ConfigProfileDisablingTriggers">Temporarily Disabling Triggers</h4> <p>Sometimes, it is useful to temporarily disable all triggers. For example, you might wish to edit a manually activated profile or your normal configuration without triggered profiles interfering. You can do this by checking the Temporarily disable all triggers checkbox in the Configuration Profiles dialog.</p> <p>To toggle disabling triggers from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h4 id="ConfigProfileGestures">Activating a profile using input gestures</h4> <p>For every profile you add, you are able to assign one or more input gestures to activate it. By default, configuration profiles do not have input gestures assigned. You can add gestures to activate a profile using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>. Every profile has its own entry under the configuration profiles category. When you rename a profile, any gesture you added previously will still be available. Removing a profile will automatically delete the gestures associated with it.</p> <h3 id="LocationOfConfigurationFiles">Location of Configuration files</h3> <p>Portable versions of NVDA store all settings and add-ons in a directory called userConfig, found in the NVDA directory.</p> <p>Installed versions of NVDA store all settings and add-ons in a special NVDA directory located in your Windows user profile. This means that each user on the system can have their own NVDA settings. To open your settings directory from anywhere you can use <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a> to add a custom gesture. In addition for an installed version of NVDA, on the start menu you can go to programs -&gt; NVDA -&gt; explore user configuration directory.</p> <p>Settings for NVDA when running during sign-in or on UAC screens are stored in the systemConfig directory in NVDA's installation directory. Usually, this configuration should not be touched. To change NVDA's configuration during sign-in or on UAC screens, configure NVDA as you wish while signed into Windows, save the configuration, and then press the "use currently saved settings during sign-in and on secure screens" button in the General category of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog.</p> <h2 id="AddonsManager">Add-ons and the Add-on Store</h2> <p>Add-ons are software packages which provide new or altered functionality for NVDA. They are developed by the NVDA community, and external organisations such as commercial vendors. Add-ons may do any of the following:</p> <ul> <li>Add or enhance support for certain applications.</li> <li>Provide support for extra Braille displays or speech synthesizers.</li> <li>Add or change features in NVDA.</li> </ul> <p>NVDA's Add-on Store allows you to browse and manage add-on packages. All add-ons that are available in the Add-on Store can be downloaded for free. However, some of them may require users to pay for a license or additional software before they can be used. Commercial speech synthesizers are an example of this type of add-on. If you install an add-on with paid components and change your mind about using it, the add-on can be easily removed.</p> <p>The Add-on Store is accessed from the Tools submenu of the NVDA menu. To access the Add-on Store from anywhere, assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h3 id="AddonStoreBrowsing">Browsing add-ons</h3> <p>When opened, the Add-on Store displays a list of add-ons. If you have not installed an add-on before, the Add-on Store will open to a list of add-ons available to install. If you have installed add-ons, the list will display currently installed add-ons.</p> <p>Selecting an add-on, by moving to it with the up and down arrow keys, will display the details for the add-on. Add-ons have associated actions that you can access through an <a href="#AddonStoreActions" title="actions menu">actions menu</a>, such as install, help, disable, and remove. Available actions will change based on whether the add-on is installed or not, and whether it is enabled or disabled.</p> <h4 id="AddonStoreFilterStatus">Add-on list views</h4> <p>There are different views for installed, updatable, available and incompatible add-ons. To change the view of add-ons, change the active tab of the add-ons list using <code>ctrl+tab</code>. You can also <code>tab</code> to the list of views, and move through them with the <code>leftArrow</code> and <code>rightArrow</code> keys.</p> <h4 id="AddonStoreFilterEnabled">Filtering for enabled or disabled add-ons</h4> <p>Normally, an installed add-on is "enabled", meaning that it is running and available within NVDA. However, some of your installed add-ons may be set to the "disabled" state. This means that they will not be used, and their functions won't be available during your current NVDA session. You may have disabled an add-on because it conflicted with another add-on, or with a certain application. NVDA may also disable certain add-ons, if they are found to be incompatible during an NVDA upgrade; though you will be warned if this is going to happen. Add-ons can also be disabled if you simply don't need them for a prolonged period, but don't want to uninstall them because you expect to want them again in the future.</p> <p>The lists of installed and incompatible add-ons can be filtered by their enabled or disabled state. The default shows both enabled and disabled add-ons.</p> <h4 id="AddonStoreFilterIncompatible">Include incompatible add-ons</h4> <p>Available and updatable add-ons can be filtered to include <a href="#incompatibleAddonsManager" title="incompatible add-ons">incompatible add-ons</a> that are available to install.</p> <h4 id="AddonStoreFilterChannel">Filter add-ons by channel</h4> <p>Add-ons can be distributed through up to four channels:</p> <ul> <li>Stable: The developer has released this as a tested add-on with a released version of NVDA.</li> <li>Beta: This add-on may need further testing, but is released for user feedback. Suggested for early adopters.</li> <li>Dev: This channel is suggested to be used by add-on developers to test unreleased API changes. NVDA alpha testers may need to use a "Dev" version of their add-ons.</li> <li>External: Add-ons installed from external sources, outside of the Add-on Store.</li> </ul> <p>To list add-ons only for specific channels, change the "Channel" filter selection.</p> <h4 id="AddonStoreFilterSearch">Searching for add-ons</h4> <p>To search add-ons, use the "Search" text box. You can reach it by pressing <code>shift+tab</code> from the list of add-ons. Type a keyword or two for the kind of add-on you're looking for, then <code>tab</code> to the list of add-ons. Add-ons will be listed if the search text can be found in the add-on ID, display name, publisher, author or description.</p> <h3 id="AddonStoreActions">Add-on actions</h3> <p>Add-ons have associated actions, such as install, help, disable, and remove. For an add-on in the add-on list, these actions can be accessed through a menu opened by pressing the <code>applications</code> key, <code>enter</code>, right clicking or double clicking the add-on. This menu can also be accessed through an Actions button in the selected add-on's details.</p> <h4 id="AddonStoreInstalling">Installing add-ons</h4> <p>Just because an add-on is available in the NVDA Add-on Store, does not mean that it has been approved or vetted by NV Access or anyone else. It is very important to only install add-ons from sources you trust. The functionality of add-ons is unrestricted inside NVDA. This could include accessing your personal data or even the entire system.</p> <p>You can install and update add-ons by <a href="#AddonStoreBrowsing" title="browsing Available add-ons">browsing Available add-ons</a>. Select an add-on from the "Available add-ons" or "Updatable add-ons" tab. Then use the update, install, or replace action to start the installation.</p> <p>You can also install multiple add-ons at once. This can be done by selecting multiple add-ons in the available add-ons tab, then activating the context menu on the selection and choosing the "Install selected add-ons" action.</p> <p>To install an add-on you have obtained outside of the Add-on Store, press the "Install from external source" button. This will allow you to browse for an add-on package (<code>.nvda-addon</code> file) somewhere on your computer or on a network. Once you open the add-on package, the installation process will begin.</p> <p>If NVDA is installed and running on your system, you can also open an add-on file directly from the browser or file system to begin the installation process.</p> <p>When an add-on is being installed from an external source, NVDA will ask you to confirm the installation. Once the add-on is installed, NVDA must be restarted for the add-on to start running, although you may postpone restarting NVDA if you have other add-ons to install or update.</p> <p>By default, after NVDA startup, you will be notified if any add-on updates are available. To learn more about and configure this behaviour, refer to <a href="#AutomaticAddonUpdates" title="&quot;Update Notifications&quot;">"Update Notifications"</a>.</p> <h4 id="AddonStoreRemoving">Removing Add-ons</h4> <p>To remove an add-on, select the add-on from the list and use the Remove action. NVDA will ask you to confirm removal. As with installing, NVDA must be restarted for the add-on to be fully removed. Until you do, a status of "Pending removal" will be shown for that add-on in the list. As with installing, you can also remove multiple add-ons at once.</p> <h4 id="AddonStoreDisablingEnabling">Disabling and Enabling Add-ons</h4> <p>To disable an add-on, use the "disable" action. To enable a previously disabled add-on, use the "enable" action. You can disable an add-on if the add-on status indicates it is "enabled", or enable it if the add-on is "disabled". For each use of the enable/disable action, add-on status changes to indicate what will happen when NVDA restarts. If the add-on was previously "disabled", the status will show "enabled after restart". If the add-on was previously "enabled", the status will show "disabled after restart". Just like when you install or remove add-ons, you need to restart NVDA in order for changes to take effect. You can also enable or disable multiple add-ons at once by selecting multiple add-ons in the available add-ons tab, then activating the context menu on the selection and choosing the appropriate action.</p> <h4 id="AddonStoreReviews">Reviewing add-ons and reading reviews</h4> <p>You may want to read reviews by other users who have experienced an add-on, for example before you install it, or as you are learning to use it. Also, it is helpful to other users to provide feedback about add-ons you have tried. To read reviews for an add-on, select it, and use the "Community reviews" action. This links to a GitHub Discussion webpage, where you will be able to read and write reviews for the add-on. Please be aware that this doesn't replace direct communication with add-on developers. Instead, the purpose of this feature is to share feedback to help users decide if an add-on may be useful for them.</p> <h3 id="incompatibleAddonsManager">Incompatible Add-ons</h3> <p>Some older add-ons may no longer be compatible with the version of NVDA that you have. If you are using an older version of NVDA, some newer add-ons may not be compatible either. Attempting to install an incompatible add-on will result in an error explaining why the add-on is considered incompatible.</p> <p>For older add-ons, you can override the incompatibility at your own risk. Incompatible add-ons may not work with your version of NVDA, and can cause unstable or unexpected behaviour including crashing. You can override compatibility when enabling or installing an add-on. If the incompatible add-on causes issues later, you can disable or remove it.</p> <p>If you are having trouble running NVDA, and you have recently updated or installed an add-on, especially if it is an incompatible add-on, you may want to try running NVDA temporarily with all add-ons disabled. To restart NVDA with all add-ons disabled, choose the appropriate option when quitting NVDA. Alternatively, use the <a href="#CommandLineOptions" title="command line option">command line option</a> <code>--disable-addons</code>.</p> <p>You can browse available incompatible add-ons using the <a href="#AddonStoreFilterStatus" title="available and updatable add-ons tabs">available and updatable add-ons tabs</a>. You can browse installed incompatible add-ons using the <a href="#AddonStoreFilterStatus" title="incompatible add-ons tab">incompatible add-ons tab</a>.</p> <h2 id="ExtraTools">Extra Tools</h2> <h3 id="LogViewer">Log Viewer</h3> <p>The log viewer, found under Tools in the NVDA menu, allows you to view the logging output that has occurred since the latest session of NVDA was started.</p> <p>Apart from reading the content, you can also Save a copy of the log file, or refresh the viewer so that it loads new log output generated after the Log viewer was opened. These actions are available under the Log menu in the log viewer.</p> <p>The file which is displayed when you open the log viewer is saved on your computer at the file location <code>%temp%\nvda.log</code>. A new log file is created each time NVDA is started. When this happens, the previous NVDA session's log file is moved to <code>%temp%\nvda-old.log</code>.</p> <p>You can also copy a fragment of the current log file to the clipboard without opening the log viewer.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Open log viewer</td> <td><code>NVDA+f1</code></td> <td>Opens the log viewer and displays developer information about the current navigator object.</td> </tr> <tr> <td>Copy a fragment of the log to the clipboard</td> <td><code>NVDA+control+shift+f1</code></td> <td>When this command is pressed once, it sets a starting point for the log content that should be captured. When pressed a second time, it copies the log content since the start point to your clipboard.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="SpeechViewer">Speech Viewer</h3> <p>For sighted software developers or people demoing NVDA to sighted audiences, a floating window is available that allows you to view all the text that NVDA is currently speaking.</p> <p>To enable the speech viewer, check the "Speech Viewer" menu item under Tools in the NVDA menu. Uncheck the menu item to disable it.</p> <p>The speech viewer window contains a check box labelled "Show speech viewer on startup". If this is checked, the speech viewer will open when NVDA is started. The speech viewer window will always attempt to re-open with the same dimensions and location as when it was closed.</p> <p>While the speech viewer is enabled, it constantly updates to show you the most current text being spoken. However, if you hover your mouse over or focus inside the viewer, NVDA will temporarily stop updating the text, so that you are able to easily select or copy the existing content.</p> <p>To toggle the speech viewer from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h3 id="BrailleViewer">Braille Viewer</h3> <p>For sighted software developers or people demoing NVDA to sighted audiences, a floating window is available that allows you to view braille output, and the text equivalent for each braille character. The braille viewer can be used at the same time as a physical braille display, it will match the number of cells on the physical device. While the braille viewer is enabled, it constantly updates to show you the braille that would be displayed on a physical braille display.</p> <p>To enable the braille viewer, check the "Braille Viewer" menu item under Tools in the NVDA menu. Uncheck the menu item to disable it.</p> <p>Physical braille displays typically have buttons to scroll forwards or backwards, to enable scrolling with the braille viewer tool use the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a> to assign keyboard shortcuts which "Scrolls the braille display back" and "Scrolls the braille display forward"</p> <p>The braille viewer window contains a check box labelled "Show braille viewer on startup". If this is checked, the braille viewer will open when NVDA is started. The braille viewer window will always attempt to re-open with the same dimensions and location as when it was closed.</p> <p>The braille viewer window contains a check box labeled "Hover for cell routing", the default is unchecked. If checked, hovering the mouse over a braille cell will enable trigger the "route to braille cell" command for that cell. This is often used to move the caret or trigger the action for a control. This can be useful for testing NVDA is able to correctly reverse map a from braille cell. To prevent unintentionally routing to cells, the command is delayed. The mouse must hover until the cell turns green. The cell will start as a light yellow colour, transition to orange, then suddenly become green.</p> <p>To toggle the braille viewer from anywhere, please assign a custom gesture using the <a href="#InputGestures" title="Input Gestures dialog">Input Gestures dialog</a>.</p> <h3 id="PythonConsole">Python Console</h3> <p>The NVDA Python console, found under Tools in the NVDA menu, is a development tool which is useful for debugging, general inspection of NVDA internals or inspection of the accessibility hierarchy of an application. For more information, please see the <a href="https://www.nvaccess.org/files/nvda/documentation/developerGuide.html" rel="noopener" target="_blank" title="NVDA Developer Guide">NVDA Developer Guide</a>.</p> <h3 id="AddonStoreMenuItem">Add-on Store</h3> <p>This will open the <a href="#AddonsManager" title="NVDA Add-on Store">NVDA Add-on Store</a>. For more information, read the in-depth section: <a href="#AddonsManager" title="Add-ons and the Add-on Store">Add-ons and the Add-on Store</a>.</p> <h3 id="CreatePortableCopy">Create portable copy</h3> <p>This will open a dialog which allows you to create a portable copy of NVDA out of the currently running version.</p> <p>Follow the directions in <a href="#CreatingAPortableCopy" title="Creating a portable copy">Creating a portable copy</a> for more information.</p> <h3 id="RunCOMRegistrationFixingTool">Run COM registration fixing tool...</h3> <p>Installing and uninstalling programs on a computer can, in certain cases, cause COM DLL files to get unregistered. As COM Interfaces such as IAccessible depend on correct COM DLL registrations, issues can appear in case the correct registration is missing.</p> <p>This can happen i.e. after installing and uninstalling Adobe Reader, Math Player and other programs.</p> <p>The missing registration can cause issues in browsers, desktop apps, task bar and other interfaces.</p> <p>Specifically, following issues can be solved by running this tool:</p> <ul> <li>NVDA reports "unknown" when navigating in browsers such as Firefox, Thunderbird etc.</li> <li>NVDA fails to switch between focus mode and browse mode</li> <li>NVDA is very slow when navigating in browsers while using browse mode</li> <li>And possibly other issues.</li> </ul> <h3 id="ReloadPlugins">Reload plugins</h3> <p>This item, once activated, reloads app modules and global plugins without restarting NVDA, which can be useful for developers. App modules manage how NVDA interacts with specific applications. Global plugins manage how NVDA interacts with all applications.</p> <p>The following NVDA key commands may also be useful:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Reload plugins</td> <td><code>NVDA+control+f3</code></td> <td>Reloads NVDA's global plugins and app modules.</td> </tr> <tr> <td>Report loaded app module and executable</td> <td><code>NVDA+control+f1</code></td> <td>Report the name of the app module, if any, and the name of the executable associated with the application which has the keyboard focus.</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h2 id="SupportedSpeechSynths">Supported Speech Synthesizers</h2> <p>This section contains information about the speech synthesizers supported by NVDA. For an even more extensive list of free and commercial synthesizers that you can purchase and download for use with NVDA, please see the <a href="https://github.com/nvaccess/nvda/wiki/ExtraVoices" rel="noopener" target="_blank" title="extra voices page">extra voices page</a>.</p> <h3 id="eSpeakNG">eSpeak NG</h3> <p>The <a href="https://github.com/espeak-ng/espeak-ng" rel="noopener" target="_blank" title="eSpeak NG">eSpeak NG</a> synthesizer is built directly into NVDA and does not require any other special drivers or components to be installed. On Windows 8.1 NVDA uses eSpeak NG by default (<a href="#OneCore" title="Windows OneCore">Windows OneCore</a> is used in Windows 10 and later by default). As this synthesizer is built into NVDA, this is a great choice for when running NVDA off a USB thumb drive on other systems.</p> <p>Each voice that comes with eSpeak NG speaks a different language. There are over 43 different languages supported by eSpeak NG.</p> <p>There are also many variants which can be chosen to alter the sound of the voice.</p> <h3 id="SAPI4">Microsoft Speech API version 4 (SAPI 4)</h3> <p>SAPI 4 is an older Microsoft standard for software speech synthesizers. NVDA still supports this for users who already have SAPI 4 synthesizers installed. However, Microsoft no longer support this and needed components are no longer available from Microsoft.</p> <p>When using this synthesizer with NVDA, the available voices (accessed from the <a href="#SpeechSettings" title="Speech category">Speech category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog or by the <a href="#SynthSettingsRing" title="Synth Settings Ring">Synth Settings Ring</a>) will contain all the voices from all the installed SAPI 4 engines found on your system.</p> <h3 id="SAPI5">Microsoft Speech API version 5 (SAPI 5)</h3> <p>SAPI 5 is a Microsoft standard for software speech synthesizers. Many speech synthesizers that comply with this standard may be purchased or downloaded for free from various companies and websites, though your system will probably already come with at least one SAPI 5 voice preinstalled. When using this synthesizer with NVDA, the available voices (accessed from the <a href="#SpeechSettings" title="Speech category">Speech category</a> of the <a href="#NVDASettings" title="NVDA Settings">NVDA Settings</a> dialog or by the <a href="#SynthSettingsRing" title="Synth Settings Ring">Synth Settings Ring</a>) will contain all the voices from all the installed SAPI 5 engines found on your system.</p> <h3 id="MicrosoftSpeechPlatform">Microsoft Speech Platform</h3> <p>The Microsoft Speech Platform provides voices for many languages which are normally used in the development of server-based speech applications. These voices can also be used with NVDA.</p> <p>To use these voices, you will need to install two components:</p> <ul> <li><a href="https://www.microsoft.com/download/en/details.aspx?id=27225" rel="noopener" target="_blank" title="Microsoft Speech Platform - Runtime (Version 11), x86">Microsoft Speech Platform - Runtime (Version 11), x86</a></li> <li><a href="https://www.microsoft.com/download/en/details.aspx?id=27224" rel="noopener" target="_blank" title="Microsoft Speech Platform - Runtime Languages (Version 11)">Microsoft Speech Platform - Runtime Languages (Version 11)</a><ul> <li>This page includes many files for both speech recognition and text-to-speech. Choose the files containing the TTS data for the desired languages/voices. For example, the file MSSpeech_TTS_en-US_ZiraPro.msi is a U.S. English voice.</li> </ul> </li> </ul> <h3 id="OneCore">Windows OneCore Voices</h3> <p>Windows 10 and later includes voices known as "OneCore" or "mobile" voices. Voices are provided for many languages, and they are more responsive than the Microsoft voices available using Microsoft Speech API version 5. On Windows 10 and later, NVDA uses Windows OneCore voices by default (<a href="#eSpeakNG" title="eSpeak NG">eSpeak NG</a> is used in other releases).</p> <p>To add new Windows OneCore voices, go to "Speech Settings", within Windows system settings. Use the "Add voices" option and search for the desired language. Many languages include multiple variants. "United Kingdom" and "Australia" are two of the English variants. "France", "Canada" and "Switzerland" are French variants available. Search for the broader language (such as English or French), then locate the variant in the list. Select any languages desired and use the "add" button to add them. Once added, restart NVDA.</p> <p>Please see <a href="https://support.microsoft.com/en-us/windows/appendix-a-supported-languages-and-voices-4486e345-7730-53da-fcfe-55cc64300f01" rel="noopener" target="_blank" title="Supported languages and voices">Supported languages and voices</a> for a list of available voices.</p> <h2 id="SupportedBrailleDisplays">Supported Braille Displays</h2> <p>This section contains information about the Braille displays supported by NVDA.</p> <h3 id="AutomaticDetection">Displays supporting automatic detection in the background</h3> <p>NVDA has the ability to detect many braille displays in the background automatically, either via USB or bluetooth. This behaviour is achieved by selecting the Automatic option as the preferred braille display from NVDA's <a href="#BrailleSettings" title="Braille Settings dialog">Braille Settings dialog</a>. This option is selected by default.</p> <p>The following displays support this automatic detection functionality.</p> <ul> <li>Handy Tech displays</li> <li>Baum/Humanware/APH/Orbit braille displays</li> <li>HumanWare Brailliant BI/B series</li> <li>HumanWare BrailleNote</li> <li>SuperBraille</li> <li>Optelec ALVA 6 series</li> <li>HIMS Braille Sense/Braille EDGE/Smart Beetle/Sync Braille Series</li> <li>Eurobraille Esys/Esytime/Iris displays</li> <li>Nattiq nBraille displays</li> <li>Seika Notetaker: MiniSeika (16, 24 cells), V6, and V6Pro (40 cells)</li> <li>Tivomatic Caiku Albatross 46/80 displays</li> <li>Any Display that supports the Standard HID Braille protocol</li> </ul> <h3 id="FreedomScientificFocus">Freedom Scientific Focus/PAC Mate Series</h3> <p>All Focus and PAC Mate displays from <a href="https://www.freedomscientific.com/" rel="noopener" target="_blank" title="Freedom Scientific">Freedom Scientific</a> are supported when connected via USB or bluetooth. You will need the Freedom Scientific braille display drivers installed on your system. If you do not have them already, you can obtain them from the <a href="https://support.freedomscientific.com/Downloads/Focus/FocusBlueBrailleDisplayDriver" rel="noopener" target="_blank" title="Focus Blue Braille Display Driver page">Focus Blue Braille Display Driver page</a>. Although this page only mentions the Focus Blue display, the drivers support all Freedom Scientific Focus and Pacmate displays.</p> <p>By default, NVDA can automatically detect and connect to these displays either via USB or bluetooth. However, when configuring the display, you can explicitly select "USB" or "Bluetooth" ports to restrict the connection type to be used. This might be useful if you want to connect the focus display to NVDA using bluetooth, but still be able to charge it using USB power from your computer. NVDA's automatic braille display detection will also recognize the display on USB or Bluetooth.</p> <p>Following are the key assignments for this display with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>topRouting1 (first cell on display)</td> </tr> <tr> <td>Scroll braille display forward</td> <td>topRouting20/40/80 (last cell on display)</td> </tr> <tr> <td>Scroll braille display back</td> <td>leftAdvanceBar</td> </tr> <tr> <td>Scroll braille display forward</td> <td>rightAdvanceBar</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>leftGDFButton+rightGDFButton</td> </tr> <tr> <td>Toggle left wiz wheel action</td> <td>leftWizWheelPress</td> </tr> <tr> <td>Move back using left wiz wheel action</td> <td>leftWizWheelUp</td> </tr> <tr> <td>Move forward using left wiz wheel action</td> <td>leftWizWheelDown</td> </tr> <tr> <td>Toggle right wiz wheel action</td> <td>rightWizWheelPress</td> </tr> <tr> <td>Move back using right wiz wheel action</td> <td>rightWizWheelUp</td> </tr> <tr> <td>Move forward using right wiz wheel action</td> <td>rightWizWheelDown</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>shift+tab key</td> <td>brailleSpaceBar+dot1+dot2</td> </tr> <tr> <td>tab key</td> <td>brailleSpaceBar+dot4+dot5</td> </tr> <tr> <td>upArrow key</td> <td>brailleSpaceBar+dot1</td> </tr> <tr> <td>downArrow key</td> <td>brailleSpaceBar+dot4</td> </tr> <tr> <td>control+leftArrow key</td> <td>brailleSpaceBar+dot2</td> </tr> <tr> <td>control+rightArrow key</td> <td>brailleSpaceBar+dot5</td> </tr> <tr> <td>leftArrow</td> <td>brailleSpaceBar+dot3</td> </tr> <tr> <td>rightArrow key</td> <td>brailleSpaceBar+dot6</td> </tr> <tr> <td>home key</td> <td>brailleSpaceBar+dot1+dot3</td> </tr> <tr> <td>end key</td> <td>brailleSpaceBar+dot4+dot6</td> </tr> <tr> <td>control+home key</td> <td>brailleSpaceBar+dot1+dot2+dot3</td> </tr> <tr> <td>control+end key</td> <td>brailleSpaceBar+dot4+dot5+dot6</td> </tr> <tr> <td>alt key</td> <td>brailleSpaceBar+dot1+dot3+dot4</td> </tr> <tr> <td>alt+tab key</td> <td>brailleSpaceBar+dot2+dot3+dot4+dot5</td> </tr> <tr> <td>alt+shift+tab key</td> <td>brailleSpaceBar+dot1+dot2+dot5+dot6</td> </tr> <tr> <td>windows+tab key</td> <td>brailleSpaceBar+dot2+dot3+dot4</td> </tr> <tr> <td>escape key</td> <td>brailleSpaceBar+dot1+dot5</td> </tr> <tr> <td>windows key</td> <td>brailleSpaceBar+dot2+dot4+dot5+dot6</td> </tr> <tr> <td>space key</td> <td>brailleSpaceBar</td> </tr> <tr> <td>Toggle control key</td> <td>brailleSpaceBar+dot3+dot8</td> </tr> <tr> <td>Toggle alt key</td> <td>brailleSpaceBar+dot6+dot8</td> </tr> <tr> <td>Toggle windows key</td> <td>brailleSpaceBar+dot4+dot8</td> </tr> <tr> <td>Toggle NVDA key</td> <td>brailleSpaceBar+dot5+dot8</td> </tr> <tr> <td>Toggle shift key</td> <td>brailleSpaceBar+dot7+dot8</td> </tr> <tr> <td>Toggle control and shift keys</td> <td>brailleSpaceBar+dot3+dot7+dot8</td> </tr> <tr> <td>Toggle alt and shift keys</td> <td>brailleSpaceBar+dot6+dot7+dot8</td> </tr> <tr> <td>Toggle windows and shift keys</td> <td>brailleSpaceBar+dot4+dot7+dot8</td> </tr> <tr> <td>Toggle NVDA and shift keys</td> <td>brailleSpaceBar+dot5+dot7+dot8</td> </tr> <tr> <td>Toggle control and alt keys</td> <td>brailleSpaceBar+dot3+dot6+dot8</td> </tr> <tr> <td>Toggle control, alt, and shift keys</td> <td>brailleSpaceBar+dot3+dot6+dot7+dot8</td> </tr> <tr> <td>windows+d key (minimize all applications)</td> <td>brailleSpaceBar+dot1+dot2+dot3+dot4+dot5+dot6</td> </tr> <tr> <td>Report Current Line</td> <td>brailleSpaceBar+dot1+dot4</td> </tr> <tr> <td>NVDA menu</td> <td>brailleSpaceBar+dot1+dot3+dot4+dot5</td> </tr> </tbody> </table> <p>For newer Focus models that contain rocker bar keys (focus 40, focus 80 and focus blue):</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Move braille display to previous line</td> <td>leftRockerBarUp, rightRockerBarUp</td> </tr> <tr> <td>Move braille display to next line</td> <td>leftRockerBarDown, rightRockerBarDown</td> </tr> </tbody> </table> <p>For Focus 80 only:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>leftBumperBarUp, rightBumperBarUp</td> </tr> <tr> <td>Scroll braille display forward</td> <td>leftBumperBarDown, rightBumperBarDown</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="OptelecALVA">Optelec ALVA 6 series/protocol converter</h3> <p>Both the ALVA BC640 and BC680 displays from <a href="https://www.optelec.com/" rel="noopener" target="_blank" title="Optelec">Optelec</a> are supported when connected via USB or bluetooth. Alternatively, you can connect an older Optelec display, such as a Braille Voyager, using a protocol converter supplied by Optelec. You do not need any specific drivers to be installed to use these displays. Just plug in the display and configure NVDA to use it.</p> <p>Note: NVDA might be unable to use an ALVA BC6 display over Bluetooth when it is paired using the ALVA Bluetooth utility. When you have paired your device using this utility and NVDA is unable to detect your device, we recommend you to pair your ALVA display the regular way using the Windows Bluetooth settings.</p> <p>Note: while some of these displays do have a braille keyboard, they handle translation from braille to text themselves by default. This means that NVDA's braille input system is not in use in the default situation (i.e. the input braille table setting has no effect). For ALVA displays with recent firmware, it is possible to disable this HID keyboard simulation using an input gesture.</p> <p>Following are key assignments for this display with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>t1, etouch1</td> </tr> <tr> <td>Move braille display to previous line</td> <td>t2</td> </tr> <tr> <td>Move to current focus</td> <td>t3</td> </tr> <tr> <td>Move braille display to next line</td> <td>t4</td> </tr> <tr> <td>Scroll braille display forward</td> <td>t5, etouch3</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>Report text formatting under braille cell</td> <td>secondary routing</td> </tr> <tr> <td>Toggle HID keyboard simulation</td> <td>t1+spEnter</td> </tr> <tr> <td>Move to top line in review</td> <td>t1+t2</td> </tr> <tr> <td>Move to bottom line in review</td> <td>t4+t5</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>t1+t3</td> </tr> <tr> <td>Report title</td> <td>etouch2</td> </tr> <tr> <td>Report status bar</td> <td>etouch4</td> </tr> <tr> <td>shift+tab key</td> <td>sp1</td> </tr> <tr> <td>alt key</td> <td>sp2, alt</td> </tr> <tr> <td>escape key</td> <td>sp3</td> </tr> <tr> <td>tab key</td> <td>sp4</td> </tr> <tr> <td>upArrow key</td> <td>spUp</td> </tr> <tr> <td>downArrow key</td> <td>spDown</td> </tr> <tr> <td>leftArrow key</td> <td>spLeft</td> </tr> <tr> <td>rightArrow key</td> <td>spRight</td> </tr> <tr> <td>enter key</td> <td>spEnter, enter</td> </tr> <tr> <td>Report date/time</td> <td>sp2+sp3</td> </tr> <tr> <td>NVDA Menu</td> <td>sp1+sp3</td> </tr> <tr> <td>windows+d key (minimize all applications)</td> <td>sp1+sp4</td> </tr> <tr> <td>windows+b key (focus system tray)</td> <td>sp3+sp4</td> </tr> <tr> <td>windows key</td> <td>sp1+sp2, windows</td> </tr> <tr> <td>alt+tab key</td> <td>sp2+sp4</td> </tr> <tr> <td>control+home key</td> <td>t3+spUp</td> </tr> <tr> <td>control+end key</td> <td>t3+spDown</td> </tr> <tr> <td>home key</td> <td>t3+spLeft</td> </tr> <tr> <td>end key</td> <td>t3+spRight</td> </tr> <tr> <td>control key</td> <td>control</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="HandyTech">Handy Tech Displays</h3> <p>NVDA supports most displays from <a href="https://www.handytech.de/" rel="noopener" target="_blank" title="Handy Tech">Handy Tech</a> when connected via USB, serial port or bluetooth. For older USB displays, you will need to install the USB drivers from Handy Tech on your system.</p> <p>The following displays are not supported out of the box, but can be used via <a href="https://handytech.de/en/service/downloads-and-manuals/handy-tech-software/braille-display-drivers" rel="noopener" target="_blank" title="Handy Tech's universal driver">Handy Tech's universal driver</a> and NVDA add-on:</p> <ul> <li>Braillino</li> <li>Bookworm</li> <li>Modular displays with firmware version 1.13 or lower. Please note that the firmware of this displays can be updated.</li> </ul> <p>Following are the key assignments for Handy Tech displays with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>left, up, b3</td> </tr> <tr> <td>Scroll braille display forward</td> <td>right, down, b6</td> </tr> <tr> <td>Move braille display to previous line</td> <td>b4</td> </tr> <tr> <td>Move braille display to next line</td> <td>b5</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>shift+tab key</td> <td>esc, left triple action key up+down</td> </tr> <tr> <td>alt key</td> <td>b2+b4+b5</td> </tr> <tr> <td>escape key</td> <td>b4+b6</td> </tr> <tr> <td>tab key</td> <td>enter, right triple action key up+down</td> </tr> <tr> <td>enter key</td> <td>esc+enter, left+right triple action key up+down, joystickAction</td> </tr> <tr> <td>upArrow key</td> <td>joystickUp</td> </tr> <tr> <td>downArrow key</td> <td>joystickDown</td> </tr> <tr> <td>leftArrow key</td> <td>joystickLeft</td> </tr> <tr> <td>rightArrow key</td> <td>joystickRight</td> </tr> <tr> <td>NVDA Menu</td> <td>b2+b4+b5+b6</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>b2</td> </tr> <tr> <td>Toggle the braille cursor</td> <td>b1</td> </tr> <tr> <td>Toggle focus context presentation</td> <td>b7</td> </tr> <tr> <td>Toggle braille input</td> <td>space+b1+b3+b4 (space+capital B)</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="MDVLilli">MDV Lilli</h3> <p>The Lilli braille display available from <a href="https://www.mdvbologna.it/" rel="noopener" target="_blank" title="MDV">MDV</a> is supported. You do not need any specific drivers to be installed to use this display. Just plug in the display and configure NVDA to use it.</p> <p>This display does not support NVDA's automatic background braille display detection functionality.</p> <p>Following are the key assignments for this display with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display backward</td> <td>LF</td> </tr> <tr> <td>Scroll braille display forward</td> <td>RG</td> </tr> <tr> <td>Move braille display to previous line</td> <td>UP</td> </tr> <tr> <td>Move braille display to next line</td> <td>DN</td> </tr> <tr> <td>Route to braille cell</td> <td>route</td> </tr> <tr> <td>shift+tab key</td> <td>SLF</td> </tr> <tr> <td>tab key</td> <td>SRG</td> </tr> <tr> <td>alt+tab key</td> <td>SDN</td> </tr> <tr> <td>alt+shift+tab key</td> <td>SUP</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="Baum">Baum/Humanware/APH/Orbit Braille Displays</h3> <p>Several <a href="https://www.visiobraille.de/index.php?article_id=1&amp;clang=2" rel="noopener" target="_blank" title="Baum">Baum</a>, <a href="https://www.humanware.com/" rel="noopener" target="_blank" title="HumanWare">HumanWare</a>, <a href="https://www.aph.org/" rel="noopener" target="_blank" title="APH">APH</a> and <a href="https://www.orbitresearch.com/" rel="noopener" target="_blank" title="Orbit">Orbit</a> displays are supported when connected via USB, bluetooth or serial. These include:</p> <ul> <li>Baum: SuperVario, PocketVario, VarioUltra, Pronto!, SuperVario2, Vario 340</li> <li>HumanWare: Brailliant, BrailleConnect, Brailliant2</li> <li>APH: Refreshabraille</li> <li>Orbit: Orbit Reader 20</li> </ul> <p>Some other displays manufactured by Baum may also work, though this has not been tested.</p> <p>If connecting via USB to displays which do not use HID, you must first install the USB drivers provided by the manufacturer. The VarioUltra and Pronto! use HID. The Refreshabraille and Orbit Reader 20 can use HID if configured appropriately.</p> <p>The USB serial mode of the Orbit Reader 20 is currently only supported in Windows 10 and later. USB HID should generally be used instead.</p> <p>Following are the key assignments for these displays with NVDA. Please see your display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td><code>d2</code></td> </tr> <tr> <td>Scroll braille display forward</td> <td><code>d5</code></td> </tr> <tr> <td>Move braille display to previous line</td> <td><code>d1</code></td> </tr> <tr> <td>Move braille display to next line</td> <td><code>d3</code></td> </tr> <tr> <td>Route to braille cell</td> <td><code>routing</code></td> </tr> <tr> <td><code>shift+tab</code> key</td> <td><code>space+dot1+dot3</code></td> </tr> <tr> <td><code>tab</code> key</td> <td><code>space+dot4+dot6</code></td> </tr> <tr> <td><code>alt</code> key</td> <td><code>space+dot1+dot3+dot4</code> (<code>space+m</code>)</td> </tr> <tr> <td><code>escape</code> key</td> <td><code>space+dot1+dot5</code> (<code>space+e</code>)</td> </tr> <tr> <td><code>windows</code> key</td> <td><code>space+dot3+dot4</code></td> </tr> <tr> <td><code>alt+tab</code> key</td> <td><code>space+dot2+dot3+dot4+dot5</code> (<code>space+t</code>)</td> </tr> <tr> <td>NVDA Menu</td> <td><code>space+dot1+dot3+dot4+dot5</code> (<code>space+n</code>)</td> </tr> <tr> <td><code>windows+d</code> key (minimize all applications)</td> <td><code>space+dot1+dot4+dot5</code> (<code>space+d</code>)</td> </tr> <tr> <td>Say all</td> <td><code>space+dot1+dot2+dot3+dot4+dot5+dot6</code></td> </tr> </tbody> </table> <p>For displays which have a joystick:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>upArrow key</td> <td>up</td> </tr> <tr> <td>downArrow key</td> <td>down</td> </tr> <tr> <td>leftArrow key</td> <td>left</td> </tr> <tr> <td>rightArrow key</td> <td>right</td> </tr> <tr> <td>enter key</td> <td>select</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="HedoProfiLine">hedo ProfiLine USB</h3> <p>The hedo ProfiLine USB from <a href="https://www.hedo.de/" rel="noopener" target="_blank" title="hedo Reha-Technik">hedo Reha-Technik</a> is supported. You must first install the USB drivers provided by the manufacturer.</p> <p>This display does not yet support NVDA's automatic background braille display detection functionality.</p> <p>Following are the key assignments for this display with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>K1</td> </tr> <tr> <td>Scroll braille display forward</td> <td>K3</td> </tr> <tr> <td>Move braille display to previous line</td> <td>B2</td> </tr> <tr> <td>Move braille display to next line</td> <td>B5</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>K2</td> </tr> <tr> <td>Say all</td> <td>B6</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="HedoMobilLine">hedo MobilLine USB</h3> <p>The hedo MobilLine USB from <a href="https://www.hedo.de/" rel="noopener" target="_blank" title="hedo Reha-Technik">hedo Reha-Technik</a> is supported. You must first install the USB drivers provided by the manufacturer.</p> <p>This display does not yet support NVDA's automatic background braille display detection functionality.</p> <p>Following are the key assignments for this display with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>K1</td> </tr> <tr> <td>Scroll braille display forward</td> <td>K3</td> </tr> <tr> <td>Move braille display to previous line</td> <td>B2</td> </tr> <tr> <td>Move braille display to next line</td> <td>B5</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>K2</td> </tr> <tr> <td>Say all</td> <td>B6</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="HumanWareBrailliant">HumanWare Brailliant BI/B Series / BrailleNote Touch</h3> <p>The Brailliant BI and B series of displays from <a href="https://www.humanware.com/" rel="noopener" target="_blank" title="HumanWare">HumanWare</a>, including the BI 14, BI 32, BI 20X, BI 40, BI 40X and B 80, are supported when connected via USB or bluetooth. If connecting via USB with the protocol set to HumanWare, you must first install the USB drivers provided by the manufacturer. USB drivers are not required if the protocol is set to OpenBraille.</p> <p>The following extra devices are also supported (and do not require any special drivers to be installed):</p> <ul> <li>APH Mantis Q40</li> <li>APH Chameleon 20</li> <li>Humanware BrailleOne</li> <li>NLS eReader<ul> <li>Note that the Zoomax is currently not supported without external drivers</li> </ul> </li> </ul> <p>Following are the key assignments for the Brailliant BI/B and BrailleNote touch displays with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <h4 id="HumanWareBrailliantKeyAssignmentForAllModels">Key assignments for All models</h4> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>left</td> </tr> <tr> <td>Scroll braille display forward</td> <td>right</td> </tr> <tr> <td>Move braille display to previous line</td> <td>up</td> </tr> <tr> <td>Move braille display to next line</td> <td>down</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>up+down</td> </tr> <tr> <td>upArrow key</td> <td>space+dot1</td> </tr> <tr> <td>downArrow key</td> <td>space+dot4</td> </tr> <tr> <td>leftArrow key</td> <td>space+dot3</td> </tr> <tr> <td>rightArrow key</td> <td>space+dot6</td> </tr> <tr> <td>shift+tab key</td> <td>space+dot1+dot3</td> </tr> <tr> <td>tab key</td> <td>space+dot4+dot6</td> </tr> <tr> <td>alt key</td> <td>space+dot1+dot3+dot4 (space+m)</td> </tr> <tr> <td>escape key</td> <td>space+dot1+dot5 (space+e)</td> </tr> <tr> <td>enter key</td> <td>dot8</td> </tr> <tr> <td>windows key</td> <td>space+dot3+dot4</td> </tr> <tr> <td>alt+tab key</td> <td>space+dot2+dot3+dot4+dot5 (space+t)</td> </tr> <tr> <td>NVDA Menu</td> <td>space+dot1+dot3+dot4+dot5 (space+n)</td> </tr> <tr> <td>windows+d key (minimize all applications)</td> <td>space+dot1+dot4+dot5 (space+d)</td> </tr> <tr> <td>Say all</td> <td>space+dot1+dot2+dot3+dot4+dot5+dot6</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h4 id="HumanWareBrailliantKeyAssignmentForBI32BI40AndB80">Key assignments for Brailliant BI 32, BI 40 and B 80</h4> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>NVDA Menu</td> <td>c1+c3+c4+c5 (command n)</td> </tr> <tr> <td>windows+d key (minimize all applications)</td> <td>c1+c4+c5 (command d)</td> </tr> <tr> <td>Say all</td> <td>c1+c2+c3+c4+c5+c6</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h4 id="HumanWareBrailliantKeyAssignmentForBI14">Key assignments for Brailliant BI 14</h4> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>up arrow key</td> <td>joystick up</td> </tr> <tr> <td>down arrow key</td> <td>joystick down</td> </tr> <tr> <td>left arrow key</td> <td>joystick left</td> </tr> <tr> <td>right arrow key</td> <td>joystick right</td> </tr> <tr> <td>enter key</td> <td>joystick action</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="Hims">HIMS Braille Sense/Braille EDGE/Smart Beetle/Sync Braille Series</h3> <p>NVDA supports Braille Sense, Braille EDGE, Smart Beetle and Sync Braille displays from <a href="https://www.hims-inc.com/" rel="noopener" target="_blank" title="Hims">Hims</a> when connected via USB or bluetooth. If connecting via USB, you will need to install the <a href="http://www.himsintl.com/upload/HIMS_USB_Driver_v25.zip" rel="noopener" target="_blank" title="USB drivers from HIMS">USB drivers from HIMS</a> on your system.</p> <p>Following are the key assignments for these displays with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>Scroll braille display back</td> <td>leftSideScrollUp, rightSideScrollUp, leftSideScroll</td> </tr> <tr> <td>Scroll braille display forward</td> <td>leftSideScrollDown, rightSideScrollDown, rightSideScroll</td> </tr> <tr> <td>Move braille display to previous line</td> <td>leftSideScrollUp+rightSideScrollUp</td> </tr> <tr> <td>Move braille display to next line</td> <td>leftSideScrollDown+rightSideScrollDown</td> </tr> <tr> <td>Move to previous line in review</td> <td>rightSideUpArrow</td> </tr> <tr> <td>Move to next line in review</td> <td>rightSideDownArrow</td> </tr> <tr> <td>Move to previous character in review</td> <td>rightSideLeftArrow</td> </tr> <tr> <td>Move to next character in review</td> <td>rightSideRightArrow</td> </tr> <tr> <td>Move to current focus</td> <td>leftSideScrollUp+leftSideScrollDown, rightSideScrollUp+rightSideScrollDown, leftSideScroll+rightSideScroll</td> </tr> <tr> <td>control key</td> <td>smartbeetle:f1, brailleedge:f3</td> </tr> <tr> <td>windows key</td> <td>f7, smartbeetle:f2</td> </tr> <tr> <td>alt key</td> <td>dot1+dot3+dot4+space, f2, smartbeetle:f3, brailleedge:f4</td> </tr> <tr> <td>shift key</td> <td>f5</td> </tr> <tr> <td>insert key</td> <td>dot2+dot4+space, f6</td> </tr> <tr> <td>applications key</td> <td>dot1+dot2+dot3+dot4+space, f8</td> </tr> <tr> <td>Caps Lock key</td> <td>dot1+dot3+dot6+space</td> </tr> <tr> <td>tab key</td> <td>dot4+dot5+space, f3, brailleedge:f2</td> </tr> <tr> <td>shift+alt+tab key</td> <td>f2+f3+f1</td> </tr> <tr> <td>alt+tab key</td> <td>f2+f3</td> </tr> <tr> <td>shift+tab key</td> <td>dot1+dot2+space</td> </tr> <tr> <td>end key</td> <td>dot4+dot6+space</td> </tr> <tr> <td>control+end key</td> <td>dot4+dot5+dot6+space</td> </tr> <tr> <td>home key</td> <td>dot1+dot3+space, smartbeetle:f4</td> </tr> <tr> <td>control+home key</td> <td>dot1+dot2+dot3+space</td> </tr> <tr> <td>alt+f4 key</td> <td>dot1+dot3+dot5+dot6+space</td> </tr> <tr> <td>leftArrow key</td> <td>dot3+space, leftSideLeftArrow</td> </tr> <tr> <td>control+shift+leftArrow key</td> <td>dot2+dot8+space+f1</td> </tr> <tr> <td>control+leftArrow key</td> <td>dot2+space</td> </tr> <tr> <td>shift+alt+leftArrow key</td> <td>dot2+dot7+f1</td> </tr> <tr> <td><code>alt+leftArrow</code></td> <td><code>dot2+dot7+space</code></td> </tr> <tr> <td>rightArrow key</td> <td>dot6+space, leftSideRightArrow</td> </tr> <tr> <td>control+shift+rightArrow key</td> <td>dot5+dot8+space+f1</td> </tr> <tr> <td>control+rightArrow key</td> <td>dot5+space</td> </tr> <tr> <td>shift+alt+rightArrow key</td> <td>dot5+dot7+f1</td> </tr> <tr> <td><code>alt+rightArrow</code></td> <td><code>dot5+dot7+space</code></td> </tr> <tr> <td>pageUp key</td> <td>dot1+dot2+dot6+space</td> </tr> <tr> <td>control+pageUp key</td> <td>dot1+dot2+dot6+dot8+space</td> </tr> <tr> <td>upArrow key</td> <td>dot1+space, leftSideUpArrow</td> </tr> <tr> <td>control+shift+upArrow key</td> <td>dot2+dot3+dot8+space+f1</td> </tr> <tr> <td>control+upArrow key</td> <td>dot2+dot3+space</td> </tr> <tr> <td>shift+alt+upArrow key</td> <td>dot2+dot3+dot7+f1</td> </tr> <tr> <td><code>alt+upArrow</code></td> <td><code>dot2+dot3+dot7+space</code></td> </tr> <tr> <td>shift+upArrow key</td> <td>leftSideScrollDown+space</td> </tr> <tr> <td>pageDown key</td> <td>dot3+dot4+dot5+space</td> </tr> <tr> <td>control+pageDown key</td> <td>dot3+dot4+dot5+dot8+space</td> </tr> <tr> <td>downArrow key</td> <td>dot4+space, leftSideDownArrow</td> </tr> <tr> <td>control+shift+downArrow key</td> <td>dot5+dot6+dot8+space+f1</td> </tr> <tr> <td>control+downArrow key</td> <td>dot5+dot6+space</td> </tr> <tr> <td>shift+alt+downArrow key</td> <td>dot5+dot6+dot7+f1</td> </tr> <tr> <td><code>alt+downArrow</code></td> <td><code>dot5+dot6+dot7+space</code></td> </tr> <tr> <td>shift+downArrow key</td> <td>space+rightSideScrollDown</td> </tr> <tr> <td>escape key</td> <td>dot1+dot5+space, f4, brailleedge:f1</td> </tr> <tr> <td>delete key</td> <td>dot1+dot3+dot5+space, dot1+dot4+dot5+space</td> </tr> <tr> <td>f1 key</td> <td>dot1+dot2+dot5+space</td> </tr> <tr> <td>f3 key</td> <td>dot1+dot4+dot8+space</td> </tr> <tr> <td>f4 key</td> <td>dot7+f3</td> </tr> <tr> <td>windows+b key</td> <td>dot1+dot2+f1</td> </tr> <tr> <td>windows+d key</td> <td>dot1+dot4+dot5+f1</td> </tr> <tr> <td>control+insert key</td> <td>smartbeetle:f1+rightSideScroll</td> </tr> <tr> <td>alt+insert key</td> <td>smartbeetle:f3+rightSideScroll</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="Seika">Seika Braille Displays</h3> <p>The following Seika Braille displays from Nippon Telesoft are supported in two groups with different functionality:</p> <ul> <li><a href="#SeikaBrailleDisplays" title="Seika Version 3, 4, and 5 (40 cells), Seika80 (80 cells)">Seika Version 3, 4, and 5 (40 cells), Seika80 (80 cells)</a></li> <li><a href="#SeikaNotetaker" title="MiniSeika (16, 24 cells), V6, and V6Pro (40 cells)">MiniSeika (16, 24 cells), V6, and V6Pro (40 cells)</a></li> </ul> <p>You can find more information about the displays on their <a href="https://en.seika-braille.com/down/index.html" rel="noopener" target="_blank" title="Demo and Driver Download page">Demo and Driver Download page</a>.</p> <h4 id="SeikaBrailleDisplays">Seika Version 3, 4, and 5 (40 cells), Seika80 (80 cells)</h4> <ul> <li>These displays do not yet support NVDA's automatic background braille display detection functionality.</li> <li>Select "Seika Braille Displays" to manually configure</li> <li>A device drivers must be installed before using Seika v3/4/5/80. The drivers are <a href="https://en.seika-braille.com/down/index.html" rel="noopener" target="_blank" title="provided by the manufacturer">provided by the manufacturer</a>.</li> </ul> <p>The Seika Braille Display key assignments follow. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>left</td> </tr> <tr> <td>Scroll braille display forward</td> <td>right</td> </tr> <tr> <td>Move braille display to previous line</td> <td>b3</td> </tr> <tr> <td>Move braille display to next line</td> <td>b4</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>b5</td> </tr> <tr> <td>Say all</td> <td>b6</td> </tr> <tr> <td>tab</td> <td>b1</td> </tr> <tr> <td>shift+tab</td> <td>b2</td> </tr> <tr> <td>alt+tab</td> <td>b1+b2</td> </tr> <tr> <td>NVDA Menu</td> <td>left+right</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h4 id="SeikaNotetaker">MiniSeika (16, 24 cells), V6, and V6Pro (40 cells)</h4> <ul> <li>NVDA's automatic background braille display detection functionality is supported via USB and Bluetooth.</li> <li>Select "Seika Notetaker" or "auto" to configure.</li> <li>No extra drivers are required when using a Seika Notetaker braille display.</li> </ul> <p>The Seika Notetaker key assignments follow. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>left</td> </tr> <tr> <td>Scroll braille display forward</td> <td>right</td> </tr> <tr> <td>Say all</td> <td>space+Backspace</td> </tr> <tr> <td>NVDA Menu</td> <td>Left+Right</td> </tr> <tr> <td>Move braille display to previous line</td> <td>LJ up</td> </tr> <tr> <td>Move braille display to next line</td> <td>LJ down</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>LJ center</td> </tr> <tr> <td>tab</td> <td>LJ right</td> </tr> <tr> <td>shift+tab</td> <td>LJ left</td> </tr> <tr> <td>upArrow key</td> <td>RJ up</td> </tr> <tr> <td>downArrow key</td> <td>RJ down</td> </tr> <tr> <td>leftArrow key</td> <td>RJ left</td> </tr> <tr> <td>rightArrow key</td> <td>RJ right</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>shift+upArrow key</td> <td>Space+RJ up, Backspace+RJ up</td> </tr> <tr> <td>shift+downArrow key</td> <td>Space+RJ down, Backspace+RJ down</td> </tr> <tr> <td>shift+leftArrow key</td> <td>Space+RJ left, Backspace+RJ left</td> </tr> <tr> <td>shift+rightArrow key</td> <td>Space+RJ right, Backspace+RJ right</td> </tr> <tr> <td>enter key</td> <td>RJ center, dot8</td> </tr> <tr> <td>escape key</td> <td>Space+RJ center</td> </tr> <tr> <td>windows key</td> <td>Backspace+RJ center</td> </tr> <tr> <td>space key</td> <td>Space, Backspace</td> </tr> <tr> <td>backspace key</td> <td>dot7</td> </tr> <tr> <td>pageup key</td> <td>space+LJ right</td> </tr> <tr> <td>pagedown key</td> <td>space+LJ left</td> </tr> <tr> <td>home key</td> <td>space+LJ up</td> </tr> <tr> <td>end key</td> <td>space+LJ down</td> </tr> <tr> <td>control+home key</td> <td>backspace+LJ up</td> </tr> <tr> <td>control+end key</td> <td>backspace+LJ down</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="Papenmeier">Papenmeier BRAILLEX Newer Models</h3> <p>The following Braille displays are supported:</p> <ul> <li>BRAILLEX EL 40c, EL 80c, EL 20c, EL 60c (USB)</li> <li>BRAILLEX EL 40s, EL 80s, EL 2d80s, EL 70s, EL 66s (USB)</li> <li>BRAILLEX Trio (USB and bluetooth)</li> <li>BRAILLEX Live 20, BRAILLEX Live and BRAILLEX Live Plus (USB and bluetooth)</li> </ul> <p>These displays do not support NVDA's automatic background braille display detection functionality. There is an option in the display's USB driver which can cause an issue with loading the display. Please try the following:</p> <ol> <li>Please make sure that you have installed the <a href="https://www.papenmeier-rehatechnik.de/en/service/downloadcenter/software/articles/software-braille-devices.html" rel="noopener" target="_blank" title="latest driver">latest driver</a>.</li> <li>Open the Windows Device Manager.</li> <li>Scroll down the list to "USB Controllers" or "USB Devices".</li> <li>Select "Papenmeier Braillex USB Device".</li> <li>Open the properties and switch to the "Advanced" tab. Sometimes the "Advanced" tab doesn't appear. If this is the case, disconnect the braille display from the computer, exit NVDA, wait a moment and reconnect the braille display. Repeat this 4 to 5 times if necessary. If the "Advanced" tab is still not displayed, please restart the computer.</li> <li>Disable the "Load VCP" option.</li> </ol> <p>Most devices have an Easy Access Bar (EAB) that allows intuitive and fast operation. The EAB can be moved in four directions where generally each direction has two switches. The C and Live series are the only exceptions to this rule.</p> <p>The c-series and some other displays have two routing rows whereby the upper row is used to report formatting information. Holding one of the upper routing keys and pressing the EAB on c-series devices emulates the second switch state. The live series displays have one routing row only and the EAB has one step per direction. The second step may be emulated by pressing one of the routing keys and pressing the EAB in the corresponding direction. Pressing and holding the up, down, right and left keys (or EAB) causes the corresponding action to be repeated.</p> <p>Generally, the following keys are available on these braille displays:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>l1</td> <td>Left front key</td> </tr> <tr> <td>l2</td> <td>Left rear key</td> </tr> <tr> <td>r1</td> <td>Right front key</td> </tr> <tr> <td>r2</td> <td>Right rear key</td> </tr> <tr> <td>up</td> <td>1 Step up</td> </tr> <tr> <td>up2</td> <td>2 Steps up</td> </tr> <tr> <td>left</td> <td>1 Step left</td> </tr> <tr> <td>left2</td> <td>2 Steps left</td> </tr> <tr> <td>right</td> <td>1 Step right</td> </tr> <tr> <td>right2</td> <td>2 Steps right</td> </tr> <tr> <td>dn</td> <td>1 Step down</td> </tr> <tr> <td>dn2</td> <td>2 Steps down</td> </tr> </tbody> </table> <p>Following are the Papenmeier command assignments for NVDA:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>left</td> </tr> <tr> <td>Scroll braille display forward</td> <td>right</td> </tr> <tr> <td>Move braille display to previous line</td> <td>up</td> </tr> <tr> <td>Move braille display to next line</td> <td>dn</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>Report current character in review</td> <td>l1</td> </tr> <tr> <td>Activate current navigator object</td> <td>l2</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>r2</td> </tr> <tr> <td>Report title</td> <td>l1+up</td> </tr> <tr> <td>Report Status Bar</td> <td>l2+down</td> </tr> <tr> <td>Move to containing object</td> <td>up2</td> </tr> <tr> <td>Move to first contained object</td> <td>dn2</td> </tr> <tr> <td>Move to previous object</td> <td>left2</td> </tr> <tr> <td>Move to next object</td> <td>right2</td> </tr> <tr> <td>Report text formatting under braille cell</td> <td>upper routing row</td> </tr> </tbody> </table> <!-- KC:endInclude --> <p>The Trio model has four additional keys which are in front of the braille keyboard. These are (ordered from left to right):</p> <ul> <li>left thumb key (lt)</li> <li>space</li> <li>space</li> <li>right thumb key (rt)</li> </ul> <p>Currently, the right thumb key is not in use. The inner keys are both mapped to space.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>escape key</td> <td>space with dot 7</td> </tr> <tr> <td>upArrow key</td> <td>space with dot 2</td> </tr> <tr> <td>leftArrow key</td> <td>space with dot 1</td> </tr> <tr> <td>rightArrow key</td> <td>space with dot 4</td> </tr> <tr> <td>downArrow</td> <td>space with dot 5</td> </tr> <tr> <td>control key</td> <td>lt+dot2</td> </tr> <tr> <td>alt key</td> <td>lt+dot3</td> </tr> <tr> <td>control+escape key</td> <td>space with dot 1 2 3 4 5 6</td> </tr> <tr> <td>tab key</td> <td>space with dot 3 7</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="PapenmeierOld">Papenmeier Braille BRAILLEX Older Models</h3> <p>The following Braille displays are supported:</p> <ul> <li>BRAILLEX EL 80, EL 2D-80, EL 40 P</li> <li>BRAILLEX Tiny, 2D Screen</li> </ul> <p>Note that these displays can only be connected via a serial port. Due to this, these displays do not support NVDA's automatic background braille display detection functionality. You should select the port to which the display is connected after you have chosen this driver in the <a href="#SelectBrailleDisplay" title="Select Braille Display">Select Braille Display</a> dialog.</p> <p>Some of these devices have an Easy Access Bar (EAB) that allows intuitive and fast operation. The EAB can be moved in four directions where generally each direction has two switches. Pressing and holding the up, down, right and left keys (or EAB) causes the corresponding action to be repeated. Older devices do not have an EAB; front keys are used instead.</p> <p>Generally, the following keys are available on braille displays:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>l1</td> <td>Left front key</td> </tr> <tr> <td>l2</td> <td>Left rear key</td> </tr> <tr> <td>r1</td> <td>Right front key</td> </tr> <tr> <td>r2</td> <td>Right rear key</td> </tr> <tr> <td>up</td> <td>1 Step up</td> </tr> <tr> <td>up2</td> <td>2 Steps up</td> </tr> <tr> <td>left</td> <td>1 Step left</td> </tr> <tr> <td>left2</td> <td>2 Steps left</td> </tr> <tr> <td>right</td> <td>1 Step right</td> </tr> <tr> <td>right2</td> <td>2 Steps right</td> </tr> <tr> <td>dn</td> <td>1 Step down</td> </tr> <tr> <td>dn2</td> <td>2 Steps down</td> </tr> </tbody> </table> <p>Following are the Papenmeier command assignments for NVDA:</p> <!-- KC:beginInclude --> <p>Devices with EAB:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>left</td> </tr> <tr> <td>Scroll braille display forward</td> <td>right</td> </tr> <tr> <td>Move braille display to previous line</td> <td>up</td> </tr> <tr> <td>Move braille display to next line</td> <td>dn</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>Report current character in review</td> <td>l1</td> </tr> <tr> <td>Activate current navigator object</td> <td>l2</td> </tr> <tr> <td>Report title</td> <td>l1up</td> </tr> <tr> <td>Report Status Bar</td> <td>l2down</td> </tr> <tr> <td>Move to containing object</td> <td>up2</td> </tr> <tr> <td>Move to first contained object</td> <td>dn2</td> </tr> <tr> <td>Move to next object</td> <td>right2</td> </tr> <tr> <td>Move to previous object</td> <td>left2</td> </tr> <tr> <td>Report text formatting under braille cell</td> <td>upper routing strip</td> </tr> </tbody> </table> <p>BRAILLEX Tiny:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Report current character in review</td> <td>l1</td> </tr> <tr> <td>Activate current navigator object</td> <td>l2</td> </tr> <tr> <td>Scroll braille display back</td> <td>left</td> </tr> <tr> <td>Scroll braille display forward</td> <td>right</td> </tr> <tr> <td>Move braille display to previous line</td> <td>up</td> </tr> <tr> <td>Move braille display to next line</td> <td>dn</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>r2</td> </tr> <tr> <td>Move to containing object</td> <td>r1+up</td> </tr> <tr> <td>Move to first contained object</td> <td>r1+dn</td> </tr> <tr> <td>Move to previous object</td> <td>r1+left</td> </tr> <tr> <td>Move to next object</td> <td>r1+right</td> </tr> <tr> <td>Report text formatting under braille cell</td> <td>upper routing strip</td> </tr> <tr> <td>Report title</td> <td>l1+up</td> </tr> <tr> <td>Report status bar</td> <td>l2+down</td> </tr> </tbody> </table> <p>BRAILLEX 2D Screen:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Report current character in review</td> <td>l1</td> </tr> <tr> <td>Activate current navigator object</td> <td>l2</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>r2</td> </tr> <tr> <td>Report text formatting under braille cell</td> <td>upper routing strip</td> </tr> <tr> <td>Move braille display to previous line</td> <td>up</td> </tr> <tr> <td>Scroll braille display back</td> <td>left</td> </tr> <tr> <td>Scroll braille display forward</td> <td>right</td> </tr> <tr> <td>Move braille display to next line</td> <td>dn</td> </tr> <tr> <td>Move to next object</td> <td>left2</td> </tr> <tr> <td>Move to containing object</td> <td>up2</td> </tr> <tr> <td>Move to first contained object</td> <td>dn2</td> </tr> <tr> <td>Move to previous object</td> <td>right2</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="HumanWareBrailleNote">HumanWare BrailleNote</h3> <p>NVDA supports the BrailleNote notetakers from <a href="https://www.humanware.com" rel="noopener" target="_blank" title="Humanware">Humanware</a> when acting as a display terminal for a screen reader. The following models are supported:</p> <ul> <li>BrailleNote Classic (serial connection only)</li> <li>BrailleNote PK (Serial and bluetooth connections)</li> <li>BrailleNote MPower (Serial and bluetooth connections)</li> <li>BrailleNote Apex (USB and Bluetooth connections)</li> </ul> <p>For BrailleNote Touch, please refer to the <a href="#HumanWareBrailliant" title="Brailliant BI Series / BrailleNote Touch">Brailliant BI Series / BrailleNote Touch</a> section.</p> <p>Except for BrailleNote PK, both braille (BT) and QWERTY (QT) keyboards are supported. For BrailleNote QT, PC keyboard emulation isn't supported. You can also enter braille dots using the QT keyboard. Please check the braille terminal section of the BrailleNote manual guide for details.</p> <p>If your device supports more than one type of connection, when connecting your BrailleNote to NVDA, you must set the braille terminal port in braille terminal options. Please check the BrailleNote manual for details. In NVDA, you may also need to set the port in the <a href="#SelectBrailleDisplay" title="Select Braille Display">Select Braille Display</a> dialog. If you are connecting via USB or bluetooth, you can set the port to "Automatic", "USB" or "Bluetooth", depending on the available choices. If connecting using a legacy serial port (or a USB to serial converter) or if none of the previous options appear, you must explicitly choose the communication port to be used from the list of hardware ports.</p> <p>Before connecting your BrailleNote Apex using its USB client interface, you must install the drivers provided by HumanWare.</p> <p>On the BrailleNote Apex BT, you can use the scroll wheel located between dots 1 and 4 for various NVDA commands. The wheel consists of four directional dots, a centre click button, and a wheel that spins clockwise or counterclockwise.</p> <p>Following are the BrailleNote command assignments for NVDA. Please check your BrailleNote's documentation to find where these keys are located.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>back</td> </tr> <tr> <td>Scroll braille display forward</td> <td>advance</td> </tr> <tr> <td>Move braille display to previous line</td> <td>previous</td> </tr> <tr> <td>Move braille display to next line</td> <td>next</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> <tr> <td>NVDA menu</td> <td>space+dot1+dot3+dot4+dot5 (space+n)</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>previous+next</td> </tr> <tr> <td>Up arrow key</td> <td>space+dot1</td> </tr> <tr> <td>Down arrow key</td> <td>space+dot4</td> </tr> <tr> <td>Left Arrow key</td> <td>space+dot3</td> </tr> <tr> <td>Right arrow key</td> <td>space+dot6</td> </tr> <tr> <td>Page up key</td> <td>space+dot1+dot3</td> </tr> <tr> <td>Page down key</td> <td>space+dot4+dot6</td> </tr> <tr> <td>Home key</td> <td>space+dot1+dot2</td> </tr> <tr> <td>End key</td> <td>space+dot4+dot5</td> </tr> <tr> <td>Control+home keys</td> <td>space+dot1+dot2+dot3</td> </tr> <tr> <td>Control+end keys</td> <td>space+dot4+dot5+dot6</td> </tr> <tr> <td>Space key</td> <td>space</td> </tr> <tr> <td>Enter</td> <td>space+dot8</td> </tr> <tr> <td>Backspace</td> <td>space+dot7</td> </tr> <tr> <td>Tab key</td> <td>space+dot2+dot3+dot4+dot5 (space+t)</td> </tr> <tr> <td>Shift+tab keys</td> <td>space+dot1+dot2+dot5+dot6</td> </tr> <tr> <td>Windows key</td> <td>space+dot2+dot4+dot5+dot6 (space+w)</td> </tr> <tr> <td>Alt key</td> <td>space+dot1+dot3+dot4 (space+m)</td> </tr> <tr> <td>Toggle input help</td> <td>space+dot2+dot3+dot6 (space+lower h)</td> </tr> </tbody> </table> <p>Following are commands assigned to BrailleNote QT when it is not in braille input mode.</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>NVDA menu</td> <td>read+n</td> </tr> <tr> <td>Up arrow key</td> <td>upArrow</td> </tr> <tr> <td>Down arrow key</td> <td>downArrow</td> </tr> <tr> <td>Left Arrow key</td> <td>leftArrow</td> </tr> <tr> <td>Right arrow key</td> <td>rightArrow</td> </tr> <tr> <td>Page up key</td> <td>function+upArrow</td> </tr> <tr> <td>Page down key</td> <td>function+downArrow</td> </tr> <tr> <td>Home key</td> <td>function+leftArrow</td> </tr> <tr> <td>End key</td> <td>function+rightArrow</td> </tr> <tr> <td>Control+home keys</td> <td>read+t</td> </tr> <tr> <td>Control+end keys</td> <td>read+b</td> </tr> <tr> <td>Enter key</td> <td>enter</td> </tr> <tr> <td>Backspace key</td> <td>backspace</td> </tr> <tr> <td>Tab key</td> <td>tab</td> </tr> <tr> <td>Shift+tab keys</td> <td>shift+tab</td> </tr> <tr> <td>Windows key</td> <td>read+w</td> </tr> <tr> <td>Alt key</td> <td>read+m</td> </tr> <tr> <td>Toggle input help</td> <td>read+1</td> </tr> </tbody> </table> <p>Following are commands assigned to the scroll wheel:</p> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Up arrow key</td> <td>upArrow</td> </tr> <tr> <td>Down arrow key</td> <td>downArrow</td> </tr> <tr> <td>Left Arrow key</td> <td>leftArrow</td> </tr> <tr> <td>Right arrow key</td> <td>rightArrow</td> </tr> <tr> <td>Enter key</td> <td>centre button</td> </tr> <tr> <td>Tab key</td> <td>scroll wheel clockwise</td> </tr> <tr> <td>Shift+tab keys</td> <td>scroll wheel counterclockwise</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="EcoBraille">EcoBraille</h3> <p>NVDA supports EcoBraille displays from <a href="https://www.once.es/" rel="noopener" target="_blank" title="ONCE">ONCE</a>. The following models are supported:</p> <ul> <li>EcoBraille 20</li> <li>EcoBraille 40</li> <li>EcoBraille 80</li> <li>EcoBraille Plus</li> </ul> <p>In NVDA, you can set the serial port to which the display is connected in the <a href="#SelectBrailleDisplay" title="Select Braille Display">Select Braille Display</a> dialog. These displays do not support NVDA's automatic background braille display detection functionality.</p> <p>Following are the key assignments for EcoBraille displays. Please see the <a href="ftp://ftp.once.es/pub/utt/bibliotecnia/Lineas_Braille/ECO/" title="EcoBraille documentation">EcoBraille documentation</a> for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>T2</td> </tr> <tr> <td>Scroll braille display forward</td> <td>T4</td> </tr> <tr> <td>Move braille display to previous line</td> <td>T1</td> </tr> <tr> <td>Move braille display to next line</td> <td>T5</td> </tr> <tr> <td>Route to braille cell</td> <td>Routing</td> </tr> <tr> <td>Activate current navigator object</td> <td>T3</td> </tr> <tr> <td>Switch to next review mode</td> <td>F1</td> </tr> <tr> <td>Move to containing object</td> <td>F2</td> </tr> <tr> <td>Switch to previous review mode</td> <td>F3</td> </tr> <tr> <td>Move to previous object</td> <td>F4</td> </tr> <tr> <td>Report current object</td> <td>F5</td> </tr> <tr> <td>Move to next object</td> <td>F6</td> </tr> <tr> <td>Move to focus object</td> <td>F7</td> </tr> <tr> <td>Move to first contained object</td> <td>F8</td> </tr> <tr> <td>Move System focus or caret to current review position</td> <td>F9</td> </tr> <tr> <td>Report review cursor location</td> <td>F0</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>A</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="SuperBraille">SuperBraille</h3> <p>The SuperBraille device, mostly available in Taiwan, can be connected to by either USB or serial. As the SuperBraille does not have any physical typing keys or scrolling buttons, all input must be performed via a standard computer keyboard. Due to this, and to maintain compatibility with other screen readers in Taiwan, two key bindings for scrolling the braille display have been provided:</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>numpadMinus</td> </tr> <tr> <td>Scroll braille display forward</td> <td>numpadPlus</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="Eurobraille">Eurobraille displays</h3> <p>The b.book, b.note, Esys, Esytime and Iris displays from Eurobraille are supported by NVDA. These devices have a braille keyboard with 10 keys. Please refer to the display's documentation for descriptions of these keys. Of the two keys placed like a space bar, the left key is corresponding to the backspace key and the right key to the space key.</p> <p>These devices are connected via USB and have one stand-alone USB keyboard. It is possible to enable/disable this keyboard by toggling "HID Keyboard simulation" using an input gesture. The braille keyboard functions described directly below is when "HID Keyboard simulation" is disabled.</p> <h4 id="EurobrailleBraille">Braille keyboard functions</h4> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Erase the last entered braille cell or character</td> <td><code>backspace</code></td> </tr> <tr> <td>Translate any braille input and press the enter key</td> <td><code>backspace+space</code></td> </tr> <tr> <td>Toggle <code>NVDA</code> key</td> <td><code>dot3+dot5+space</code></td> </tr> <tr> <td><code>insert</code> key</td> <td><code>dot1+dot3+dot5+space</code>, <code>dot3+dot4+dot5+space</code></td> </tr> <tr> <td><code>delete</code> key</td> <td><code>dot3+dot6+space</code></td> </tr> <tr> <td><code>home</code> key</td> <td><code>dot1+dot2+dot3+space</code></td> </tr> <tr> <td><code>end</code> key</td> <td><code>dot4+dot5+dot6+space</code></td> </tr> <tr> <td><code>leftArrow</code> key</td> <td><code>dot2+space</code></td> </tr> <tr> <td><code>rightArrow</code> key</td> <td><code>dot5+space</code></td> </tr> <tr> <td><code>upArrow</code> key</td> <td><code>dot1+space</code></td> </tr> <tr> <td><code>downArrow</code> key</td> <td><code>dot6+space</code></td> </tr> <tr> <td><code>pageUp</code> key</td> <td><code>dot1+dot3+space</code></td> </tr> <tr> <td><code>pageDown</code> key</td> <td><code>dot4+dot6+space</code></td> </tr> <tr> <td><code>numpad1</code> key</td> <td><code>dot1+dot6+backspace</code></td> </tr> <tr> <td><code>numpad2</code> key</td> <td><code>dot1+dot2+dot6+backspace</code></td> </tr> <tr> <td><code>numpad3</code> key</td> <td><code>dot1+dot4+dot6+backspace</code></td> </tr> <tr> <td><code>numpad4</code> key</td> <td><code>dot1+dot4+dot5+dot6+backspace</code></td> </tr> <tr> <td><code>numpad5</code> key</td> <td><code>dot1+dot5+dot6+backspace</code></td> </tr> <tr> <td><code>numpad6</code> key</td> <td><code>dot1+dot2+dot4+dot6+backspace</code></td> </tr> <tr> <td><code>numpad7</code> key</td> <td><code>dot1+dot2+dot4+dot5+dot6+backspace</code></td> </tr> <tr> <td><code>numpad8</code> key</td> <td><code>dot1+dot2+dot5+dot6+backspace</code></td> </tr> <tr> <td><code>numpad9</code> key</td> <td><code>dot2+dot4+dot6+backspace</code></td> </tr> <tr> <td><code>numpadInsert</code> key</td> <td><code>dot3+dot4+dot5+dot6+backspace</code></td> </tr> <tr> <td><code>numpadDecimal</code> key</td> <td><code>dot2+backspace</code></td> </tr> <tr> <td><code>numpadDivide</code> key</td> <td><code>dot3+dot4+backspace</code></td> </tr> <tr> <td><code>numpadMultiply</code> key</td> <td><code>dot3+dot5+backspace</code></td> </tr> <tr> <td><code>numpadMinus</code> key</td> <td><code>dot3+dot6+backspace</code></td> </tr> <tr> <td><code>numpadPlus</code> key</td> <td><code>dot2+dot3+dot5+backspace</code></td> </tr> <tr> <td><code>numpadEnter</code> key</td> <td><code>dot3+dot4+dot5+backspace</code></td> </tr> <tr> <td><code>escape</code> key</td> <td><code>dot1+dot2+dot4+dot5+space</code>, <code>l2</code></td> </tr> <tr> <td><code>tab</code> key</td> <td><code>dot2+dot5+dot6+space</code>, <code>l3</code></td> </tr> <tr> <td><code>shift+tab</code> keys</td> <td><code>dot2+dot3+dot5+space</code></td> </tr> <tr> <td><code>printScreen</code> key</td> <td><code>dot1+dot3+dot4+dot6+space</code></td> </tr> <tr> <td><code>pause</code> key</td> <td><code>dot1+dot4+space</code></td> </tr> <tr> <td><code>applications</code> key</td> <td><code>dot5+dot6+backspace</code></td> </tr> <tr> <td><code>f1</code> key</td> <td><code>dot1+backspace</code></td> </tr> <tr> <td><code>f2</code> key</td> <td><code>dot1+dot2+backspace</code></td> </tr> <tr> <td><code>f3</code> key</td> <td><code>dot1+dot4+backspace</code></td> </tr> <tr> <td><code>f4</code> key</td> <td><code>dot1+dot4+dot5+backspace</code></td> </tr> <tr> <td><code>f5</code> key</td> <td><code>dot1+dot5+backspace</code></td> </tr> <tr> <td><code>f6</code> key</td> <td><code>dot1+dot2+dot4+backspace</code></td> </tr> <tr> <td><code>f7</code> key</td> <td><code>dot1+dot2+dot4+dot5+backspace</code></td> </tr> <tr> <td><code>f8</code> key</td> <td><code>dot1+dot2+dot5+backspace</code></td> </tr> <tr> <td><code>f9</code> key</td> <td><code>dot2+dot4+backspace</code></td> </tr> <tr> <td><code>f10</code> key</td> <td><code>dot2+dot4+dot5+backspace</code></td> </tr> <tr> <td><code>f11</code> key</td> <td><code>dot1+dot3+backspace</code></td> </tr> <tr> <td><code>f12</code> key</td> <td><code>dot1+dot2+dot3+backspace</code></td> </tr> <tr> <td><code>windows</code> key</td> <td><code>dot1+dot2+dot4+dot5+dot6+space</code></td> </tr> <tr> <td>Toggle <code>windows</code> key</td> <td><code>dot1+dot2+dot3+dot4+backspace</code>, <code>dot2+dot4+dot5+dot6+space</code></td> </tr> <tr> <td><code>capsLock</code> key</td> <td><code>dot7+backspace</code>, <code>dot8+backspace</code></td> </tr> <tr> <td><code>numLock</code> key</td> <td><code>dot3+backspace</code>, <code>dot6+backspace</code></td> </tr> <tr> <td><code>shift</code> key</td> <td><code>dot7+space</code></td> </tr> <tr> <td>Toggle <code>shift</code> key</td> <td><code>dot1+dot7+space</code>, <code>dot4+dot7+space</code></td> </tr> <tr> <td><code>control</code> key</td> <td><code>dot7+dot8+space</code></td> </tr> <tr> <td>Toggle <code>control</code> key</td> <td><code>dot1+dot7+dot8+space</code>, <code>dot4+dot7+dot8+space</code></td> </tr> <tr> <td><code>alt</code> key</td> <td><code>dot8+space</code></td> </tr> <tr> <td>Toggle <code>alt</code> key</td> <td><code>dot1+dot8+space</code>, <code>dot4+dot8+space</code></td> </tr> <tr> <td>Toggle HID Keyboard simulation</td> <td><code>switch1Left+joystick1Down</code>, <code>switch1Right+joystick1Down</code></td> </tr> </tbody> </table> <!-- KC:endInclude --> <h4 id="Eurobraillebbook">b.book keyboard commands</h4> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td><code>backward</code></td> </tr> <tr> <td>Scroll braille display forward</td> <td><code>forward</code></td> </tr> <tr> <td>Move to current focus</td> <td><code>backward+forward</code></td> </tr> <tr> <td>Route to braille cell</td> <td><code>routing</code></td> </tr> <tr> <td><code>leftArrow</code> key</td> <td><code>joystick2Left</code></td> </tr> <tr> <td><code>rightArrow</code> key</td> <td><code>joystick2Right</code></td> </tr> <tr> <td><code>upArrow</code> key</td> <td><code>joystick2Up</code></td> </tr> <tr> <td><code>downArrow</code> key</td> <td><code>joystick2Down</code></td> </tr> <tr> <td><code>enter</code> key</td> <td><code>joystick2Center</code></td> </tr> <tr> <td><code>escape</code> key</td> <td><code>c1</code></td> </tr> <tr> <td><code>tab</code> key</td> <td><code>c2</code></td> </tr> <tr> <td>Toggle <code>shift</code> key</td> <td><code>c3</code></td> </tr> <tr> <td>Toggle <code>control</code> key</td> <td><code>c4</code></td> </tr> <tr> <td>Toggle <code>alt</code> key</td> <td><code>c5</code></td> </tr> <tr> <td>Toggle <code>NVDA</code> key</td> <td><code>c6</code></td> </tr> <tr> <td><code>control+Home</code> key</td> <td><code>c1+c2+c3</code></td> </tr> <tr> <td><code>control+End</code> key</td> <td><code>c4+c5+c6</code></td> </tr> </tbody> </table> <!-- KC:endInclude --> <h4 id="Eurobraillebnote">b.note keyboard commands</h4> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td><code>leftKeypadLeft</code></td> </tr> <tr> <td>Scroll braille display forward</td> <td><code>leftKeypadRight</code></td> </tr> <tr> <td>Route to braille cell</td> <td><code>routing</code></td> </tr> <tr> <td>Report text formatting under braille cell</td> <td><code>doubleRouting</code></td> </tr> <tr> <td>Move to next line in review</td> <td><code>leftKeypadDown</code></td> </tr> <tr> <td>Switch to previous review mode</td> <td><code>leftKeypadLeft+leftKeypadUp</code></td> </tr> <tr> <td>Switch to next review mode</td> <td><code>leftKeypadRight+leftKeypadDown</code></td> </tr> <tr> <td><code>leftArrow</code> key</td> <td><code>rightKeypadLeft</code></td> </tr> <tr> <td><code>rightArrow</code> key</td> <td><code>rightKeypadRight</code></td> </tr> <tr> <td><code>upArrow</code> key</td> <td><code>rightKeypadUp</code></td> </tr> <tr> <td><code>downArrow</code> key</td> <td><code>rightKeypadDown</code></td> </tr> <tr> <td><code>control+home</code> key</td> <td><code>rightKeypadLeft+rightKeypadUp</code></td> </tr> <tr> <td><code>control+end</code> key</td> <td><code>rightKeypadLeft+rightKeypadUp</code></td> </tr> </tbody> </table> <!-- KC:endInclude --> <h4 id="Eurobrailleesys">Esys keyboard commands</h4> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td><code>switch1Left</code></td> </tr> <tr> <td>Scroll braille display forward</td> <td><code>switch1Right</code></td> </tr> <tr> <td>Move to current focus</td> <td><code>switch1Center</code></td> </tr> <tr> <td>Route to braille cell</td> <td><code>routing</code></td> </tr> <tr> <td>Report text formatting under braille cell</td> <td><code>doubleRouting</code></td> </tr> <tr> <td>Move to previous line in review</td> <td><code>joystick1Up</code></td> </tr> <tr> <td>Move to next line in review</td> <td><code>joystick1Down</code></td> </tr> <tr> <td>Move to previous character in review</td> <td><code>joystick1Left</code></td> </tr> <tr> <td>Move to next character in review</td> <td><code>joystick1Right</code></td> </tr> <tr> <td><code>leftArrow</code> key</td> <td><code>joystick2Left</code></td> </tr> <tr> <td><code>rightArrow</code> key</td> <td><code>joystick2Right</code></td> </tr> <tr> <td><code>upArrow</code> key</td> <td><code>joystick2Up</code></td> </tr> <tr> <td><code>downArrow</code> key</td> <td><code>joystick2Down</code></td> </tr> <tr> <td><code>enter</code> key</td> <td><code>joystick2Center</code></td> </tr> </tbody> </table> <!-- KC:endInclude --> <h4 id="EurobrailleEsytime">Esytime keyboard commands</h4> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td><code>l1</code></td> </tr> <tr> <td>Scroll braille display forward</td> <td><code>l8</code></td> </tr> <tr> <td>Move to current focus</td> <td><code>l1+l8</code></td> </tr> <tr> <td>Route to braille cell</td> <td><code>routing</code></td> </tr> <tr> <td>Report text formatting under braille cell</td> <td><code>doubleRouting</code></td> </tr> <tr> <td>Move to previous line in review</td> <td><code>joystick1Up</code></td> </tr> <tr> <td>Move to next line in review</td> <td><code>joystick1Down</code></td> </tr> <tr> <td>Move to previous character in review</td> <td><code>joystick1Left</code></td> </tr> <tr> <td>Move to next character in review</td> <td><code>joystick1Right</code></td> </tr> <tr> <td><code>leftArrow</code> key</td> <td><code>joystick2Left</code></td> </tr> <tr> <td><code>rightArrow</code> key</td> <td><code>joystick2Right</code></td> </tr> <tr> <td><code>upArrow</code> key</td> <td><code>joystick2Up</code></td> </tr> <tr> <td><code>downArrow</code> key</td> <td><code>joystick2Down</code></td> </tr> <tr> <td><code>enter</code> key</td> <td><code>joystick2Center</code></td> </tr> <tr> <td><code>escape</code> key</td> <td><code>l2</code></td> </tr> <tr> <td><code>tab</code> key</td> <td><code>l3</code></td> </tr> <tr> <td>Toggle <code>shift</code> key</td> <td><code>l4</code></td> </tr> <tr> <td>Toggle <code>control</code> key</td> <td><code>l5</code></td> </tr> <tr> <td>Toggle <code>alt</code> key</td> <td><code>l6</code></td> </tr> <tr> <td>Toggle <code>NVDA</code> key</td> <td><code>l7</code></td> </tr> <tr> <td><code>control+home</code> key</td> <td><code>l1+l2+l3</code>, <code>l2+l3+l4</code></td> </tr> <tr> <td><code>control+end</code> key</td> <td><code>l6+l7+l8</code>, <code>l5+l6+l7</code></td> </tr> <tr> <td>Toggle HID Keyboard simulation</td> <td><code>l1+joystick1Down</code>, <code>l8+joystick1Down</code></td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="NattiqTechnologies">Nattiq nBraille Displays</h3> <p>NVDA supports displays from <a href="https://www.nattiq.com/" rel="noopener" target="_blank" title="Nattiq Technologies">Nattiq Technologies</a> when connected via USB. Windows 10 and later detects the Braille Displays once connected, you may need to install USB drivers if using older versions of Windows (below Win10). You can get them from the manufacturer's website.</p> <p>Following are the key assignments for Nattiq Technologies displays with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>up</td> </tr> <tr> <td>Scroll braille display forward</td> <td>down</td> </tr> <tr> <td>Move braille display to previous line</td> <td>left</td> </tr> <tr> <td>Move braille display to next line</td> <td>right</td> </tr> <tr> <td>Route to braille cell</td> <td>routing</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="BRLTTY">BRLTTY</h3> <p><a href="https://www.brltty.app/" rel="noopener" target="_blank" title="BRLTTY">BRLTTY</a> is a separate program which can be used to support many more braille displays. In order to use this, you need to install <a href="https://www.brltty.app/download.html" rel="noopener" target="_blank" title="BRLTTY for Windows">BRLTTY for Windows</a>. You should download and install the latest installer package, which will be named, for example, brltty-win-4.2-2.exe. When configuring the display and port to use, be sure to pay close attention to the instructions, especially if you are using a USB display and already have the manufacturer's drivers installed.</p> <p>For displays which have a braille keyboard, BRLTTY currently handles braille input itself. Therefore, NVDA's braille input table setting is not relevant.</p> <p>BRLTTY is not involved in NVDA's automatic background braille display detection functionality.</p> <p>Following are the BRLTTY command assignments for NVDA. Please see the <a href="https://brltty.app/doc/KeyBindings/" rel="noopener" target="_blank" title="BRLTTY key binding lists">BRLTTY key binding lists</a> for information about how BRLTTY commands are mapped to controls on braille displays.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>BRLTTY command</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td><code>fwinlt</code> (go left one window)</td> </tr> <tr> <td>Scroll braille display forward</td> <td><code>fwinrt</code> (go right one window)</td> </tr> <tr> <td>Move braille display to previous line</td> <td><code>lnup</code> (go up one line)</td> </tr> <tr> <td>Move braille display to next line</td> <td><code>lndn</code> (go down one line)</td> </tr> <tr> <td>Route to braille cell</td> <td><code>route</code> (bring cursor to character)</td> </tr> <tr> <td>Toggle input help</td> <td><code>learn</code> (enter/leave command learn mode)</td> </tr> <tr> <td>Open the NVDA menu</td> <td><code>prefmenu</code> (enter/leave preferences menu)</td> </tr> <tr> <td>Revert configuration</td> <td><code>prefload</code> (restore preferences from disk)</td> </tr> <tr> <td>Save configuration</td> <td><code>prefsave</code> (save preferences to disk)</td> </tr> <tr> <td>Report time</td> <td><code>time</code> (show current date and time)</td> </tr> <tr> <td>Speak the line where the review cursor is located</td> <td><code>say_line</code> (speak current line)</td> </tr> <tr> <td>Say all using review cursor</td> <td><code>say_below</code> (speak from current line through bottom of screen)</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="Albatross">Tivomatic Caiku Albatross 46/80</h3> <p>The Caiku Albatross devices, which were manufactured by Tivomatic and available in Finland, can be connected to by either USB or serial. You do not need any specific drivers to be installed to use these displays. Just plug in the display and configure NVDA to use it.</p> <p>Note: Baud rate 19200 is strongly recommended. If required, switch Baud rate setting value to 19200 from the braille device's menu. Although the driver supports 9600 baud rate, it has no way to control what baud rate the display uses. Because 19200 is the display default baud rate, the driver tries it at first. If baud rates are not the same, the driver may behave unexpectedly.</p> <p>Following are key assignments for these displays with NVDA. Please see the display's documentation for descriptions of where these keys can be found.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Move to top line in review</td> <td><code>home1</code>, <code>home2</code></td> </tr> <tr> <td>Move to bottom line in review</td> <td><code>end1</code>, <code>end2</code></td> </tr> <tr> <td>Sets the navigator object to the current focus</td> <td><code>eCursor1</code>, <code>eCursor2</code></td> </tr> <tr> <td>Move to current focus</td> <td><code>cursor1</code>, <code>cursor2</code></td> </tr> <tr> <td>Moves the mouse pointer to the current navigator object</td> <td><code>home1+home2</code></td> </tr> <tr> <td>Sets the navigator object to the current object under the mouse pointer and speaks it</td> <td><code>end1+end2</code></td> </tr> <tr> <td>Moves focus to current navigator object</td> <td><code>eCursor1+eCursor2</code></td> </tr> <tr> <td>Toggle braille tethered to</td> <td><code>cursor1+cursor2</code></td> </tr> <tr> <td>Move braille display to previous line</td> <td><code>up1</code>, <code>up2</code>, <code>up3</code></td> </tr> <tr> <td>Move braille display to next line</td> <td><code>down1</code>, <code>down2</code>, <code>down3</code></td> </tr> <tr> <td>Scroll braille display back</td> <td><code>left</code>, <code>lWheelLeft</code>, <code>rWheelLeft</code></td> </tr> <tr> <td>Scroll braille display forward</td> <td><code>right</code>, <code>lWheelRight</code>, <code>rWheelRight</code></td> </tr> <tr> <td>Route to braille cell</td> <td><code>routing</code></td> </tr> <tr> <td>Report text formatting under braille cell</td> <td><code>secondary routing</code></td> </tr> <tr> <td>Toggle the way context information is presented in braille</td> <td><code>attribute1+attribute3</code></td> </tr> <tr> <td>Cycles between speech modes</td> <td><code>attribute2+attribute4</code></td> </tr> <tr> <td>Switches to the previous review mode (e.g. object, document or screen)</td> <td><code>f1</code></td> </tr> <tr> <td>Switches to the next review mode (e.g. object, document or screen)</td> <td><code>f2</code></td> </tr> <tr> <td>Moves the navigator object to the object containing it</td> <td><code>f3</code></td> </tr> <tr> <td>Moves the navigator object to the first object inside it</td> <td><code>f4</code></td> </tr> <tr> <td>Moves the navigator object to the previous object</td> <td><code>f5</code></td> </tr> <tr> <td>Moves the navigator object to the next object</td> <td><code>f6</code></td> </tr> <tr> <td>Reports the current navigator object</td> <td><code>f7</code></td> </tr> <tr> <td>Reports information about the location of the text or object at the review cursor</td> <td><code>f8</code></td> </tr> <tr> <td>Shows braille settings</td> <td><code>f1+home1</code>, <code>f9+home2</code></td> </tr> <tr> <td>Reads status bar and moves navigator object into it</td> <td><code>f1+end1</code>, <code>f9+end2</code></td> </tr> <tr> <td>Cycle the braille cursor shape</td> <td><code>f1+eCursor1</code>, <code>f9+eCursor2</code></td> </tr> <tr> <td>Toggle the braille cursor</td> <td><code>f1+cursor1</code>, <code>f9+cursor2</code></td> </tr> <tr> <td>Cycle the braille show messages mode</td> <td><code>f1+f2</code>, <code>f9+f10</code></td> </tr> <tr> <td>Cycle the braille show selection state</td> <td><code>f1+f5</code>, <code>f9+f14</code></td> </tr> <tr> <td>Cycle the "braille move system caret when routing review cursor" states</td> <td><code>f1+f3</code>, <code>f9+f11</code></td> </tr> <tr> <td>Performs the default action on the current navigator object</td> <td><code>f7+f8</code></td> </tr> <tr> <td>Reports date/time</td> <td><code>f9</code></td> </tr> <tr> <td>Reports battery status and time remaining if AC is not plugged in</td> <td><code>f10</code></td> </tr> <tr> <td>Reports title</td> <td><code>f11</code></td> </tr> <tr> <td>Reports status bar</td> <td><code>f12</code></td> </tr> <tr> <td>Reports the current line under the application cursor</td> <td><code>f13</code></td> </tr> <tr> <td>Say all</td> <td><code>f14</code></td> </tr> <tr> <td>Reports current character under review cursor</td> <td><code>f15</code></td> </tr> <tr> <td>Reports the line of the current navigator object where the review cursor is situated</td> <td><code>f16</code></td> </tr> <tr> <td>Speaks the word of the current navigator object where the review cursor is situated</td> <td><code>f15+f16</code></td> </tr> <tr> <td>Moves the review cursor to the previous line of the current navigator object and speaks it</td> <td><code>lWheelUp</code>, <code>rWheelUp</code></td> </tr> <tr> <td>Moves the review cursor to the next line of the current navigator object and speaks it</td> <td><code>lWheelDown</code>, <code>rWheelDown</code></td> </tr> <tr> <td><code>Windows+d</code> key (minimize all applications)</td> <td><code>attribute1</code></td> </tr> <tr> <td><code>Windows+e</code> key (this computer)</td> <td><code>attribute2</code></td> </tr> <tr> <td><code>Windows+b</code> key (focus system tray)</td> <td><code>attribute3</code></td> </tr> <tr> <td><code>Windows+i</code> key (Windows settings)</td> <td><code>attribute4</code></td> </tr> </tbody> </table> <!-- KC:endInclude --> <h3 id="HIDBraille">Standard HID Braille displays</h3> <p>This is an experimental driver for the new Standard HID Braille Specification, agreed upon in 2018 by Microsoft, Google, Apple and several assistive technology companies including NV Access. The hope is that all future Braille Display models created by any manufacturer, will use this standard protocol which will remove the need for manufacturer-specific Braille drivers.</p> <p>NVDA's automatic braille display detection will also recognize any display that supports this protocol.</p> <p>Following are the current key assignments for these displays.</p> <!-- KC:beginInclude --> <table> <thead> <tr> <th>Name</th> <th>Key</th> </tr> </thead> <tbody> <tr> <td>Scroll braille display back</td> <td>pan left or rocker up</td> </tr> <tr> <td>Scroll braille display forward</td> <td>pan right or rocker down</td> </tr> <tr> <td>Route to braille cell</td> <td>routing set 1</td> </tr> <tr> <td>Toggle braille tethered to</td> <td>up+down</td> </tr> <tr> <td>upArrow key</td> <td>joystick up, dpad up or space+dot1</td> </tr> <tr> <td>downArrow key</td> <td>joystick down, dpad down or space+dot4</td> </tr> <tr> <td>leftArrow key</td> <td>space+dot3, joystick left or dpad left</td> </tr> <tr> <td>rightArrow key</td> <td>space+dot6, joystick right or dpad right</td> </tr> <tr> <td>shift+tab key</td> <td>space+dot1+dot3</td> </tr> <tr> <td>tab key</td> <td>space+dot4+dot6</td> </tr> <tr> <td>alt key</td> <td>space+dot1+dot3+dot4 (space+m)</td> </tr> <tr> <td>escape key</td> <td>space+dot1+dot5 (space+e)</td> </tr> <tr> <td>enter key</td> <td>dot8, joystick center or dpad center</td> </tr> <tr> <td>windows key</td> <td>space+dot3+dot4</td> </tr> <tr> <td>alt+tab key</td> <td>space+dot2+dot3+dot4+dot5 (space+t)</td> </tr> <tr> <td>NVDA Menu</td> <td>space+dot1+dot3+dot4+dot5 (space+n)</td> </tr> <tr> <td>windows+d key (minimize all applications)</td> <td>space+dot1+dot4+dot5 (space+d)</td> </tr> <tr> <td>Say all</td> <td>space+dot1+dot2+dot3+dot4+dot5+dot6</td> </tr> </tbody> </table> <!-- KC:endInclude --> <h2 id="AdvancedTopics">Advanced Topics</h2> <h3 id="SecureMode">Secure Mode</h3> <p>System administrators may wish to configure NVDA to restrict unauthorized system access. NVDA allows the installation of custom add-ons, which can execute arbitrary code, including when NVDA is elevated to administrator privileges. NVDA also allows users to execute arbitrary code through the NVDA Python Console. NVDA secure mode prevents users from modifying their NVDA configuration, and otherwise limits unauthorized system access.</p> <p>NVDA runs in secure mode when executed on <a href="#SecureScreens" title="secure screens">secure screens</a>, unless the <code>serviceDebug</code> <a href="#SystemWideParameters" title="system wide parameter">system wide parameter</a> is enabled. To force NVDA to always start in secure mode, set the <code>forceSecureMode</code> <a href="#SystemWideParameters" title="system wide parameter">system wide parameter</a>. NVDA can also be started in secure mode with the <code>-s</code> <a href="#CommandLineOptions" title="command line option">command line option</a>.</p> <p>Secure mode disables:</p> <ul> <li>Saving configuration and other settings to disk</li> <li>Saving the gesture map to disk</li> <li><a href="#ConfigurationProfiles" title="Configuration Profile">Configuration Profile</a> features such as creation, deletion, renaming profiles etc.</li> <li>Loading custom configuration folders using <a href="#CommandLineOptions" title="the -c command line option">the <code>-c</code> command line option</a></li> <li>Updating NVDA and creating portable copies</li> <li>The <a href="#AddonsManager" title="Add-on Store">Add-on Store</a></li> <li>The <a href="#PythonConsole" title="NVDA Python console">NVDA Python console</a></li> <li>The <a href="#LogViewer" title="Log Viewer">Log Viewer</a> and logging</li> <li>The <a href="#BrailleViewer" title="Braille Viewer">Braille Viewer</a> and <a href="#SpeechViewer" title="Speech Viewer">Speech Viewer</a></li> <li>Opening external documents from the NVDA menu, such as the user guide or contributors file.</li> </ul> <p>Installed copies of NVDA store their configuration including add-ons in <code>%APPDATA%\nvda</code>. To prevent NVDA users from modifying their configuration or add-ons directly, user access to this folder must also be restricted.</p> <p>Secure mode is ineffective for portable copies of NVDA. This limitation also applies to the temporary copy of NVDA which runs when launching the installer. In secure environments, a user being able to run a portable executable is the same security risk regardless of secure mode. It is expected that system administrators restrict unauthorized software from running on their systems, including portable copies of NVDA.</p> <p>NVDA users often rely on configuring their NVDA profile to suit their needs. This may include installing and configuring custom add-ons, which should be vetted independently to NVDA. Secure mode freezes changes to NVDA configuration, so please ensure that NVDA is configured appropriately before forcing secure mode.</p> <h3 id="SecureScreens">Secure Screens</h3> <p>NVDA runs in <a href="#SecureMode" title="secure mode">secure mode</a> when executed on secure screens unless the <code>serviceDebug</code> <a href="#SystemWideParameters" title="system wide parameter">system wide parameter</a> is enabled.</p> <p>When running from a secure screen, NVDA uses a system profile for preferences. NVDA user preferences can be copied <a href="#GeneralSettingsCopySettings" title="for use in secure screens">for use in secure screens</a>.</p> <p>Secure screens include:</p> <ul> <li>The Windows sign-in screen</li> <li>The User Access Control dialog, active when performing an action as an administrator<ul> <li>This includes installing programs</li> </ul> </li> </ul> <h3 id="CommandLineOptions">Command Line Options</h3> <p>NVDA can accept one or more additional options when it starts which alter its behaviour. You can pass as many options as you need. These options can be passed when starting from a shortcut (in the shortcut properties), from the Run dialog (Start Menu -&gt; Run or Windows+r) or from a Windows command console. Options should be separated from the name of NVDA's executable file and from other options by spaces. For example, a useful option is <code>--disable-addons</code>, which tells NVDA to suspend all running add-ons. This allows you to determine whether a problem is caused by an add-on and to recover from serious problems caused by add-ons.</p> <p>As an example, you can exit the currently running copy of NVDA by entering the following in the Run dialog:</p> <pre><code>nvda -q </code></pre> <p>Some of the command line options have a short and a long version, while some of them have only a long version. For those which have a short version, you can combine them like this:</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td><code>nvda -mc CONFIGPATH</code></td> <td>This will start NVDA with startup sounds and message disabled, and the specified configuration</td> </tr> <tr> <td><code>nvda -mc CONFIGPATH --disable-addons</code></td> <td>Same as above, but with add-ons disabled</td> </tr> </tbody> </table> <p>Some of the command line options accept additional parameters; e.g. how detailed the logging should be or the path to the user configuration directory. Those parameters should be placed after the option, separated from the option by a space when using the short version or an equals sign (<code>=</code>) when using the long version; e.g.:</p> <table> <thead> <tr> <th class="hideHeaderRow">.</th> <th>.</th> </tr> </thead> <tbody> <tr> <td><code>nvda -l 10</code></td> <td>Tells NVDA to start with log level set to debug</td> </tr> <tr> <td><code>nvda --log-file=c:\nvda.log</code></td> <td>Tells NVDA to write its log to <code>c:\nvda.log</code></td> </tr> <tr> <td><code>nvda --log-level=20 -f c:\nvda.log</code></td> <td>Tells NVDA to start with log level set to info and to write its log to <code>c:\nvda.log</code></td> </tr> </tbody> </table> <p>Following are the command line options for NVDA:</p> <table> <thead> <tr> <th>Short</th> <th>Long</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><code>-h</code></td> <td><code>--help</code></td> <td>show command line help and exit</td> </tr> <tr> <td><code>-q</code></td> <td><code>--quit</code></td> <td>Quit already running copy of NVDA</td> </tr> <tr> <td><code>-k</code></td> <td><code>--check-running</code></td> <td>Report whether NVDA is running via the exit code; 0 if running, 1 if not running</td> </tr> <tr> <td><code>-f LOGFILENAME</code></td> <td><code>--log-file=LOGFILENAME</code></td> <td>The file where log messages should be written to. Logging is always disabled if secure mode is enabled.</td> </tr> <tr> <td><code>-l LOGLEVEL</code></td> <td><code>--log-level=LOGLEVEL</code></td> <td>The lowest level of message logged (debug 10, input/output 12, debug warning 15, info 20, disabled 100). Logging is always disabled if secure mode is enabled.</td> </tr> <tr> <td><code>-c CONFIGPATH</code></td> <td><code>--config-path=CONFIGPATH</code></td> <td>The path where all settings for NVDA are stored. The default value is forced if secure mode is enabled.</td> </tr> <tr> <td>None</td> <td><code>--lang=LANGUAGE</code></td> <td>Override the configured NVDA language. Set to "Windows" for current user default, "en" for English, etc.</td> </tr> <tr> <td><code>-m</code></td> <td><code>--minimal</code></td> <td>No sounds, no interface, no start message, etc.</td> </tr> <tr> <td><code>-s</code></td> <td><code>--secure</code></td> <td>Starts NVDA in <a href="#SecureMode" title="Secure Mode">Secure Mode</a></td> </tr> <tr> <td>None</td> <td><code>--disable-addons</code></td> <td>Add-ons will have no effect</td> </tr> <tr> <td>None</td> <td><code>--debug-logging</code></td> <td>Enable debug level logging just for this run. This setting will override any other log level ( <code>--loglevel</code>, <code>-l</code>) argument given, including no logging option.</td> </tr> <tr> <td>None</td> <td><code>--no-logging</code></td> <td>Disable logging altogether while using NVDA. This setting can be overridden if a log level (<code>--loglevel</code>, <code>-l</code>) is specified from command line or if debug logging is turned on.</td> </tr> <tr> <td>None</td> <td><code>--no-sr-flag</code></td> <td>Don't change the global system screen reader flag</td> </tr> <tr> <td>None</td> <td><code>--install</code></td> <td>Installs NVDA (starting the newly installed copy)</td> </tr> <tr> <td>None</td> <td><code>--install-silent</code></td> <td>Silently installs NVDA (does not start the newly installed copy)</td> </tr> <tr> <td>None</td> <td><code>--enable-start-on-logon=True|False</code></td> <td>When installing, enable NVDA's <a href="#StartAtWindowsLogon" title="Use NVDA during Windows sign-in">Use NVDA during Windows sign-in</a></td> </tr> <tr> <td>None</td> <td><code>--copy-portable-config</code></td> <td>When installing, copy the portable configuration from the provided path (<code>--config-path</code>, <code>-c</code>) to the current user account</td> </tr> <tr> <td>None</td> <td><code>--create-portable</code></td> <td>Creates a portable copy of NVDA (and starts the new copy). Requires <code>--portable-path</code> to be specified</td> </tr> <tr> <td>None</td> <td><code>--create-portable-silent</code></td> <td>Creates a portable copy of NVDA (without starting the new copy). Requires <code>--portable-path</code> to be specified. This option suppresses warnings when writing to non-empty directories and may overwrite files without warning.</td> </tr> <tr> <td>None</td> <td><code>--portable-path=PORTABLEPATH</code></td> <td>The path where a portable copy will be created</td> </tr> </tbody> </table> <h3 id="SystemWideParameters">System Wide Parameters</h3> <p>NVDA allows some values to be set in the system registry which alter the system wide behaviour of NVDA. These values are stored in the registry under one of the following keys:</p> <ul> <li>32-bit system: <code>HKEY_LOCAL_MACHINE\SOFTWARE\nvda</code></li> <li>64-bit system: <code>HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\nvda</code></li> </ul> <p>The following values can be set under this registry key:</p> <table> <thead> <tr> <th>Name</th> <th>Type</th> <th>Possible values</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td><code>configInLocalAppData</code></td> <td>DWORD</td> <td>0 (default) to disable, 1 to enable</td> <td>If enabled, stores the NVDA user configuration in the local application data instead of the roaming application data</td> </tr> <tr> <td><code>serviceDebug</code></td> <td>DWORD</td> <td>0 (default) to disable, 1 to enable</td> <td>If enabled, disables <a href="#SecureMode" title="Secure Mode">Secure Mode</a> on <a href="#SecureScreens" title="secure screens">secure screens</a>. Due to several major security implications, the use of this option is strongly discouraged</td> </tr> <tr> <td><code>forceSecureMode</code></td> <td>DWORD</td> <td>0 (default) to disable, 1 to enable</td> <td>If enabled, forces <a href="#SecureMode" title="Secure Mode">Secure Mode</a> to be enabled when running NVDA.</td> </tr> </tbody> </table> <h2 id="FurtherInformation">Further Information</h2> <p>If you require further information or assistance regarding NVDA, please visit the <a href="https://www.nvaccess.org" rel="noopener" target="_blank" title="NVDA web site">NVDA web site</a>. Here, you can find additional documentation, as well as technical support and community resources. This site also provides information and resources concerning NVDA development.</p> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10