[BRLTTY] Keyboard command bindings

Mario Lang mlang at delysid.org
Tue Dec 9 19:33:56 EST 2008


Hi.

BRLTTY can now bind keyboard keys to commands.  A key table file (.ktb)
is a map of key names to brltty command names.  As an example, here
is the map I am currently using:

/etc/brltty/sun-type6.ktb:
---<snip>---
bind	FUNCTION_Help		HELP
bind	FUNCTION_Paste		PASTE

bind	FUNCTION_VolumeDown	SAY_SOFTER
bind	FUNCTION_VolumeUp	SAY_LOUDER
bind	FUNCTION_Mute		AUTOSPEAK

# keypad navigation
bind	KEYPAD_Eight_ArrowUp	LNUP
bind	KEYPAD_Two_ArrowDown	LNDN
bind	KEYPAD_Five		HOME
bind	KEYPAD_Seven_Home	TOP_LEFT
bind	KEYPAD_One_End		BOT_LEFT
bind	KEYPAD_Minus		BACK
---<snip>---

The -k and -K options have been added for specifying the desired key-table
and the properties for a keyboard to choose (if you have several keyboards
connected to your system).

As the careful reader will have noticed, we are lacking key combination
support (modifier keys) for now, so the format of .ktb files will still
change a little in the near future.  People using Orca and its
keypad navigation functionality will need to wait for this, but for everyone
else who doesn't really make use of their keypad, you can bind (as
illustrated above) now a few navigation commands.  The typical multimedia
keys found on newer keyboards are also good candidates for useful
bindings as the example illustrates.

Apparently, this now also makes it possible for the first time ever to use
BRLTTY to do screen review without a connected braille display.  Yes, with
autospeak enabled and a few review commands bound to the keyboard,
you can already do this.  As mentioned above, we plan to
add modifier support too, so that you will be able to define mappings
that do not conflict as much with existing applications.

-- 
CYa,
  ⡍⠁⠗⠊⠕ | Debian Developer <URL:http://debian.org/>
  .''`. | Get my public key via finger mlang/key at db.debian.org
 : :' : | 1024D/7FC1A0854909BCCDBE6C102DDFFC022A6B113E44
 `. `'
   `-      <URL:http://delysid.org/>  <URL:http://www.staff.tugraz.at/mlang/>


More information about the BRLTTY mailing list