Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

request for sticky keys option #230

nvaccessAuto opened this Issue Jan 1, 2010 · 5 comments


None yet
2 participants

Reported by Templemang on 2008-11-21 02:55
Provide option to allow key combinations to be pressed sequentially so that a user who can only use one finger can enter commands such as NVDA+q by pressing these keys one at a time. As some key commands use more than one modifier, e.g. NVDA+SHIFT+... the sequence should be considered complete when the first non-modifier key is pressed.

Comment 2 by zahari_bgr on 2011-08-09 15:28
I also think that this is an important option. It's already implemented in other screen readers, and users witch depend on it can not migrate to NVDA, even if they want to.

I suggest a new option in keyboard settings dialog, a combobox that sets timeout for theNVDA key:

  1. Instant - when the NVDA key is released, it doesn't affect next key press (current state).
  2. Timeout for 1 sec - short time after the NVDA key is actually released it stays virtually pressed.
  3. Timeout for 2 sec - a little longer...
  4. Timeout for 5 sec
  5. Timeout for 10 sec.
  6. Timeout for 30 sec.
  7. Forever - The NVDA key is locked, until the first non-modifier key (or the NVDA key itself) is pressed.

I think this is much more flexable and doesn't duplicate Windows functions.

Comment 3 by peter on 2012-03-20 18:26
This is a simple global plugin to emulate sticky NVDA key.

  1. Download the file at
    and save it to globalPlugins directory as lockcapslock.py (i used .txt extension because we have python module on our webserver)
  2. reload plugins or restart NVDA
  3. press and release ctrl+alt+space to lock the NVDA key
  4. Press the same combination to unlock the NVDA key,
    It is also possible to unlock by pressing the same NVDA key as was emulated by the plugin. Plugin emulates the first active (enabled in keyboard configuration) variant of NVDA key and the variants are tested in the following order: capslock, extended insert, numpad insert.
    It is possible to combine this with windows sticky keys and it also works for those who uses reviewing in console windows.

Comment 4 by fatma.mehanna on 2012-05-19 16:56
hi peter,
many thanks for this plugin.
really there are many who started to use it.
but one modification need to be done if you please.
can you write some lines that enable the users to set the insert key locked for a certain period of time?
many thanks again.

Comment 5 by jteh on 2012-06-05 06:22
Branch: http://bzr.nvaccess.org/nvda/stickyNVDAKey/

This implementation ties the sticky NVDA key to the Windows sticky keys functionality. If Windows sticky keys is enabled, the NVDA key will also be sticky. If modifier locking is enabled, the NVDA key will lock if pressed twice and unlock if pressed thrice.
Milestone changed from None to 2012.3

Comment 6 by jteh on 2012-06-05 09:17
Merged in f5d74a5.
State: closed

@nvaccessAuto nvaccessAuto added this to the 2012.3 milestone Nov 10, 2015

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