Re: Orca Laptop keybindings.
- From: Willie Walker <William Walker Sun COM>
- To: Orca screen reader developers <orca-list gnome org>
- Subject: Re: Orca Laptop keybindings.
- Date: Wed, 29 Mar 2006 08:31:14 -0500
For laptop use, I was thinking of adding another/an alternative
modifier
key, due to the position of insert on many laptop keyboards not
being in
a useful position. I would then assign keys U I O for line
navigation, J
K L for word, and N M < for character. I would then employ a control
modifier to perform other commands that are performed with insert + 1,
3, 7, 9 etc on the number pad. In a few Windows products like JAWS, as
well as Speakup, the capslock key is used as such a modifier. The only
problem with this is the fact that capslock gets turned on and off as
you use it to perform other commands, so like JAWS and speakup, it
would
be nice to be able to keep it turned off when being used as a
modifier,
and double-tap it to turn on or off like JAWS, or use shift+ Capslock
like speakup.
Gotcha. The Capslock key is definitely a struggle because it locks/
unlocks when you press it. It was our first choice, but the locking
behavior is the main reason why we chose another key.
This discussion, however, leads me to believe that we have some new
requirements for Orca:
1) The key(s) to set/unset the Orca modifier needs to be
customizable. The main reason for this is to provide a more
convenient modifier for different keyboard layouts.
2) One should be able to override the global Orca keybindings as well
as the keybindings per script. The main reason for this is to
provide different layouts for desktop and laptop keyboards, if
necessary. Another reason is to allow users to set up their own
layouts if necessary.
This isn't easily done with the current Orca code, but I think it
would be a relatively straightforward thing to do if we don't over-
engineer it ;-). My initial thoughts would be:
o Move the hardcoded "Insert" references in orca.py to settings.py,
adding a "orcaModifierKeys"/ORCA_MODIFIER_KEYS list that specifies a
list of key strings to be used as the Orca modifier.
o Move the keybindings setup in orca.py:init() to settings.py -
perhaps a method called setupGlobalKeybindings.
o Move the keybindings setup in default.py:__init__ to a method
called default.py:setupKeybindings. One could then override/extend
this method in custom scripts per user.
o Since laptop and desktop keyboards are so common, one might
consider a new setting "laptopMode"/LAPTOP_MODE or something like
that. This could be used in default.py:setupKeybindings method to
determine which keys to use.
The limitations of this approach include:
o Not being able to specify a combination of keys to be the
ORCA_MODIFIER.
o Dealing with locking modifiers, such as the Capslock key.
Luke, is this something you'd be willing to further refine and
implement? I'd be happy to evaluate and incorporate a patch.
Thanks!
Will
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]