> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/nvaccess/nvda/llms.txt
> Use this file to discover all available pages before exploring further.

# Keyboard Settings

> Configure NVDA's keyboard behavior, layouts, modifier keys, and input handling

## Overview

NVDA's keyboard settings control how keyboard input is handled, which keys act as NVDA modifier keys, what feedback you receive when typing, and how NVDA responds to various keyboard events.

**Access Keyboard Settings:** Press `NVDA+control+k` or navigate to Preferences > Settings > Keyboard in the NVDA menu.

## Keyboard Layout

<ParamField path="Keyboard layout" type="dropdown" default="Desktop">
  NVDA offers two keyboard layouts optimized for different hardware configurations.

  <Tabs>
    <Tab title="Desktop Layout">
      **Recommended for:** Desktop computers with full keyboards including a numeric keypad

      **Characteristics:**

      * Makes extensive use of the numeric keypad
      * Numlock must be OFF for NVDA commands
      * More commands available
      * Easier access to review commands

      **Modifier key defaults:** NumpadInsert and Insert

      **Example commands:**

      * `Numpad8`: Read current line
      * `Numpad7/9`: Previous/next word
      * `Numpad1/3`: Previous/next character
    </Tab>

    <Tab title="Laptop Layout">
      **Recommended for:** Laptops without a dedicated numeric keypad

      **Characteristics:**

      * Designed for compact keyboards
      * Uses letter keys with modifiers
      * More complex key combinations
      * Doesn't require numeric keypad

      **Modifier key defaults:** CapsLock and Insert

      **Example commands:**

      * `NVDA+l`: Read current line
      * `NVDA+j/semicolon`: Previous/next word
      * `NVDA+m/period`: Previous/next character
    </Tab>
  </Tabs>

  <Note>
    You can switch layouts at any time. The change takes effect immediately without restarting NVDA.
  </Note>
</ParamField>

## NVDA Modifier Keys

The NVDA modifier key is used in combination with other keys to execute NVDA-specific commands.

<ParamField path="NVDA modifier keys" type="multiselect" default="Insert, NumpadInsert">
  Select which keys can act as NVDA modifiers.

  **Available options:**

  * **Insert** - Standard Insert key (above arrow keys)
  * **NumpadInsert** - Insert on numeric keypad (Numpad0 with Numlock off)
  * **CapsLock** - Caps Lock key

  **Default configuration:**

  * **Desktop layout:** Insert + NumpadInsert
  * **Laptop layout:** CapsLock + Insert

  <Tip>
    You can enable multiple modifier keys for flexibility. For example, use Insert when at a desk and CapsLock when using a laptop.
  </Tip>
</ParamField>

### Using Modifier Keys Normally

When a key is set as an NVDA modifier, you can still use it for its original purpose:

**Press the key twice quickly** to pass it through to the system.

**Examples:**

* **CapsLock as modifier:** Press CapsLock twice quickly to toggle caps lock
* **Insert as modifier:** Press Insert twice quickly to use insert mode in applications

<Note>
  This double-press feature ensures you don't lose access to these keys' normal functions.
</Note>

## Typing Echo

Typing echo controls what feedback NVDA provides as you type.

### Character Echo

<ParamField path="Speak typed characters" type="option" default="Only in edit controls">
  Controls when NVDA announces individual characters as you type them.

  **Options:**

  **Off** - Don't speak characters

  * Quietest option
  * Minimal feedback
  * Best for: Experienced users who don't need character confirmation

  **Only in edit controls** (Default) - Speak in text fields only

  * Speaks when typing in edit boxes, documents, text areas
  * Silent for command keys and navigation
  * Best for: Most users, general typing

  **Always** - Speak in all contexts

  * Maximum feedback
  * Announces characters everywhere
  * Best for: Learning keyboard layout, password entry (with speak passwords enabled)
</ParamField>

<ParamField path="Speech interrupt for characters" type="boolean" default="true">
  When enabled, speaking a new character interrupts speech for the previous character.

  **Benefit:** Faster, more responsive typing experience

  **When disabled:** Characters may queue up, causing delays
</ParamField>

### Word Echo

<ParamField path="Speak typed words" type="option" default="Off">
  Controls when NVDA announces complete words after you type them.

  **Options:**

  **Off** (Default) - Don't speak words

  * Quieter
  * Only character feedback

  **Only in edit controls** - Speak in text fields only

  * Confirms words in documents and edit boxes
  * Silent for other contexts

  **Always** - Speak in all contexts

  * Maximum confirmation
  * Helpful for ensuring accuracy

  <Tip>
    Word echo is triggered by pressing:

    * Space
    * Enter
    * Most punctuation marks
  </Tip>
</ParamField>

### Command Key Announcement

<ParamField path="Speak command keys" type="boolean" default="false">
  When enabled, NVDA announces modifier and command keys as you press them.

  **Announces:**

  * Ctrl, Alt, Shift, Windows keys
  * Function keys (F1-F12)
  * Other command keys

  **Does NOT announce:** Letter, number, and symbol keys

  **Use cases:**

  * Learning keyboard shortcuts
  * Ensuring correct modifier keys are pressed
  * Training and demonstrations
</ParamField>

### Capital Letters

<ParamField path="Beep for lowercase with Capslock" type="boolean" default="true">
  When enabled, NVDA beeps if you type a lowercase letter while Caps Lock is on.

  **Purpose:** Alert you that Caps Lock is unexpectedly active

  **Example:** Typing a password with Caps Lock accidentally on
</ParamField>

## Typing Behavior

### Speech Interruption

<ParamField path="Speech interrupt for Enter" type="boolean" default="true">
  When enabled, pressing Enter stops current speech.

  **Benefit:** Submit forms or execute commands without waiting for speech to finish
</ParamField>

### Say All Features

<ParamField path="Allow skim reading in Say All" type="boolean" default="false">
  When enabled, you can use navigation commands during Say All (continuous reading) without stopping speech.

  **Allows:**

  * Move to next/previous heading while reading continues
  * Jump to specific elements
  * Navigate through document structure

  **Without this:** Any navigation command stops Say All
</ParamField>

### Spelling Errors

<ParamField path="Alert for spelling errors" type="boolean" default="true">
  When enabled, NVDA plays a sound when you type a word that has a spelling error.

  **Requirements:**

  * Application must support spelling checking
  * Spelling must be enabled in the application

  **Affected applications:**

  * Microsoft Word
  * Microsoft Outlook
  * Windows Mail
  * Other applications with spell checking
</ParamField>

## Key Processing

### Injected Keys

<ParamField path="Handle injected keys" type="boolean" default="true">
  Controls whether NVDA processes keys injected by other software.

  **Injected keys come from:**

  * On-screen keyboards
  * Macro programs
  * Remote control software
  * Accessibility tools

  **When enabled:** NVDA treats injected keys like physical keyboard input

  **When disabled:** May improve performance or avoid conflicts with certain software
</ParamField>

<Note>
  Some security features in Windows may prevent processing of injected keys on secure screens.
</Note>

### Multi-Press Timeout

<ParamField path="Multi-press timeout" type="integer" default="500">
  **Range:** 100-20000 milliseconds

  The maximum time between key presses for NVDA to recognize them as a multi-press gesture.

  **Affects commands like:**

  * Double-pressing NVDA modifier keys to pass them through
  * Triple-tapping keys for extended functions
  * Rapid key sequences

  **Adjustment guide:**

  * **Shorter (100-300ms):** For fast typists, prevents accidental multi-presses
  * **Default (500ms):** Good for most users
  * **Longer (1000-2000ms):** For users who press keys more slowly
</ParamField>

## Input Gestures

The Input Gestures dialog allows you to customize keyboard shortcuts for NVDA commands.

### Accessing Input Gestures

**Open Input Gestures:**

* NVDA menu > Preferences > Input Gestures
* Or navigate to Input Gestures in NVDA Settings

<Note>
  Input gesture changes are saved immediately and take effect without restarting NVDA.
</Note>

### Customizing Gestures

<Steps>
  <Step title="Open Input Gestures dialog">
    From NVDA menu: Preferences > Input Gestures
  </Step>

  <Step title="Find the command">
    Commands are organized by category:

    * Braille
    * Browse mode
    * Configuration profiles
    * Document formatting
    * Focus
    * And many more...

    Expand categories with arrow keys or by typing the first letter.
  </Step>

  <Step title="Add a new gesture">
    1. Select the command
    2. Click **Add**
    3. Press the key combination you want to assign
    4. Click **OK**
  </Step>

  <Step title="Or modify existing gesture">
    1. Select the command showing current gesture
    2. Click **Remove** to delete it
    3. Click **Add** to create a new one
    4. Or click **Reset to factory defaults** to restore the original
  </Step>

  <Step title="Save changes">
    Click **OK** to save all gesture changes.
  </Step>
</Steps>

<Warning>
  Be careful not to assign a gesture that conflicts with:

  * System shortcuts (Windows, Alt+F4, etc.)
  * Application shortcuts you use frequently
  * Other NVDA commands

  NVDA will warn you if there's a conflict.
</Warning>

### Input Help Mode

Input Help mode helps you learn NVDA commands:

**Toggle Input Help:** Press `NVDA+1`

**When active:**

* Press any key to hear its name and description
* Commands are NOT executed
* Perfect for exploring the keyboard
* Shows what each key does

**Use cases:**

* Learning NVDA commands
* Finding forgotten shortcuts
* Training new users
* Exploring add-on commands

<Tip>
  Press `NVDA+1` again to exit Input Help mode and resume normal operation.
</Tip>

## Special Key Behaviors

### Pass Next Key Through

**Command:** `NVDA+f2`

**Purpose:** Sends the next key press directly to the application, bypassing NVDA command processing.

**Use case:** When an application uses a key that NVDA also uses, and you need the application's function.

**Example:**

```
1. Press NVDA+f2
2. NVDA says "Pass next key through"
3. Press the key you want to send to the application
4. The key is sent to the application, not processed by NVDA
```

### Sleep Mode

**Command:** `NVDA+shift+s` (Desktop) or `NVDA+shift+z` (Laptop)

**Purpose:** Temporarily disables NVDA commands for the current application.

**When active:**

* All NVDA commands are ignored
* NVDA is silent
* Application receives all keyboard input normally

**Use cases:**

* Applications with built-in screen reader support
* Games or software with extensive keyboard controls
* Applications that conflict with NVDA commands

**Exit sleep mode:** Press the sleep mode command again

<Note>
  Sleep mode is per-application. Switching to another app will restore normal NVDA functionality.
</Note>

## Common Keyboard Shortcuts

### Essential Navigation

| Command      | Desktop        | Laptop         | Description                       |
| ------------ | -------------- | -------------- | --------------------------------- |
| NVDA Menu    | NVDA+n         | NVDA+n         | Open NVDA menu                    |
| Settings     | NVDA+control+g | NVDA+control+g | Open NVDA Settings                |
| Stop speech  | Control        | Control        | Stop speaking immediately         |
| Pause speech | Shift          | Shift          | Pause/resume speaking             |
| Say all      | NVDA+downArrow | NVDA+a         | Read from current position to end |
| Input help   | NVDA+1         | NVDA+1         | Toggle input help mode            |
| Report focus | NVDA+tab       | NVDA+tab       | Announce current focus            |
| Report title | NVDA+t         | NVDA+t         | Announce window title             |
| Read window  | NVDA+b         | NVDA+b         | Read current window               |

### Review Cursor

| Command            | Desktop | Laptop      | Description               |
| ------------------ | ------- | ----------- | ------------------------- |
| Previous line      | Numpad7 | NVDA+u      | Review previous line      |
| Current line       | Numpad8 | NVDA+i      | Review current line       |
| Next line          | Numpad9 | NVDA+o      | Review next line          |
| Previous word      | Numpad4 | NVDA+j      | Review previous word      |
| Current word       | Numpad5 | NVDA+k      | Review current word       |
| Next word          | Numpad6 | NVDA+l      | Review next word          |
| Previous character | Numpad1 | NVDA+m      | Review previous character |
| Current character  | Numpad2 | NVDA+comma  | Review current character  |
| Next character     | Numpad3 | NVDA+period | Review next character     |

<Tip>
  You can customize any of these shortcuts using the Input Gestures dialog.
</Tip>

## Troubleshooting Keyboard Issues

<AccordionGroup>
  <Accordion title="NVDA commands not working" icon="keyboard">
    **Check:**

    1. Input Help mode is OFF (toggle with NVDA+1)
    2. Sleep mode is OFF (toggle with NVDA+shift+s)
    3. NumLock is OFF (for desktop layout with numeric keypad commands)
    4. Application hasn't captured focus
    5. NVDA is actually running (look for system tray icon)

    **Try:** Restart NVDA with add-ons disabled (NVDA+control+q, choose restart with add-ons disabled)
  </Accordion>

  <Accordion title="Keys being announced too much" icon="volume-high">
    **Reduce feedback:**

    1. Disable "Speak command keys"
    2. Set "Speak typed characters" to Off or "Only in edit controls"
    3. Set "Speak typed words" to Off
    4. Check if an add-on is providing extra announcements
  </Accordion>

  <Accordion title="Not enough typing feedback" icon="volume-off">
    **Increase feedback:**

    1. Enable "Speak typed characters" (set to Always)
    2. Enable "Speak typed words"
    3. Enable "Speak command keys" for learning
    4. Check that speech isn't being interrupted too aggressively
  </Accordion>

  <Accordion title="Wrong keyboard layout active" icon="layout">
    **Symptoms:**

    * Commands don't work as expected
    * Numeric keypad commands don't function
    * Key combinations seem wrong

    **Solution:**

    1. Open Keyboard Settings (NVDA+control+k)
    2. Check "Keyboard layout" setting
    3. Switch to the appropriate layout for your hardware
    4. Verify NumLock state (should be OFF for desktop layout numpad commands)
  </Accordion>

  <Accordion title="Modifier key conflicts" icon="exclamation-triangle">
    **Problem:** NVDA modifier interferes with normal key function

    **Solutions:**

    1. Use a different modifier key (e.g., switch from CapsLock to Insert)
    2. Remember to double-press modifier to pass it through
    3. Increase multi-press timeout if double-pressing too slowly
    4. Disable problematic modifier and use alternative
  </Accordion>

  <Accordion title="Custom gestures not working" icon="hand-pointer">
    **Check:**

    1. Gesture was actually saved (reopen Input Gestures to verify)
    2. No conflict with other commands (NVDA should have warned)
    3. Application isn't capturing that key combination
    4. Your keyboard physically supports that key combination
    5. Try using Pass Next Key Through (NVDA+f2) to see if app receives it
  </Accordion>
</AccordionGroup>

## Related Topics

* [NVDA Settings](/configuration/settings) - General configuration
* [Braille Settings](/configuration/braille-settings) - Braille input and display
* [Configuration Profiles](/configuration/profiles) - Different keyboard settings per context
* [Touch Gestures](/user-guide/touch-interaction) - Touch screen interaction
