brlapi_keycodes(3) Library Functions Manual brlapi_keycodes(3)

brlapi_keycodes - Types and Defines for\e BrlAPI Key Codes


#define BRLAPI_KEYCODE_C(value) UINT64_C(value)
#define BRLAPI_PRIxKEYCODE PRIx64
#define BRLAPI_PRIuKEYCODE PRIu64
#define BRLAPI_KEY_MAX UINT64_C(0XFFFFFFFFFFFFFFFF)
#define BRLAPI_KEY_FLAGS_MASK UINT64_C(0XFFFFFFFF00000000)
#define BRLAPI_KEY_FLAGS_SHIFT 32
#define BRLAPI_KEY_FLG(v) ((brlapi_keyCode_t)(v) << BRLAPI_KEY_FLAGS_SHIFT)
#define BRLAPI_KEY_FLG_MOD1 BRLAPI_KEY_FLG(0x00000008)
#define BRLAPI_KEY_FLG_MOD2 BRLAPI_KEY_FLG(0x00000010)
#define BRLAPI_KEY_FLG_MOD3 BRLAPI_KEY_FLG(0x00000020)
#define BRLAPI_KEY_FLG_MOD4 BRLAPI_KEY_FLG(0x00000040)
#define BRLAPI_KEY_FLG_MOD5 BRLAPI_KEY_FLG(0x00000080)
#define BRLAPI_KEY_TYPE_MASK UINT64_C(0X00000000E0000000)
#define BRLAPI_KEY_TYPE_SHIFT 29
#define BRLAPI_KEY_TYPE_CMD UINT64_C(0X0000000020000000)
#define BRLAPI_KEY_TYPE_SYM UINT64_C(0X0000000000000000)
#define BRLAPI_KEY_CODE_MASK UINT64_C(0X000000001FFFFFFF)
#define BRLAPI_KEY_CODE_SHIFT 0
#define BRLAPI_KEY_CMD_BLK_MASK UINT64_C(0X1FFF0000)
#define BRLAPI_KEY_CMD_BLK_SHIFT 16
#define BRLAPI_KEY_CMD_ARG_MASK UINT64_C(0X0000FFFF)
#define BRLAPI_KEY_CMD_ARG_SHIFT 0
#define BRLAPI_KEY_CMD(v) ((v) << BRLAPI_KEY_CMD_BLK_SHIFT)
#define BRLAPI_KEY_SYM_BACKSPACE UINT64_C(0X0000FF08)
#define BRLAPI_KEY_SYM_TAB UINT64_C(0X0000FF09)
#define BRLAPI_KEY_SYM_LINEFEED UINT64_C(0X0000FF0D)
#define BRLAPI_KEY_SYM_ESCAPE UINT64_C(0X0000FF1B)
#define BRLAPI_KEY_SYM_HOME UINT64_C(0X0000FF50)
#define BRLAPI_KEY_SYM_LEFT UINT64_C(0X0000FF51)
#define BRLAPI_KEY_SYM_UP UINT64_C(0X0000FF52)
#define BRLAPI_KEY_SYM_RIGHT UINT64_C(0X0000FF53)
#define BRLAPI_KEY_SYM_DOWN UINT64_C(0X0000FF54)
#define BRLAPI_KEY_SYM_PAGE_UP UINT64_C(0X0000FF55)
#define BRLAPI_KEY_SYM_PAGE_DOWN UINT64_C(0X0000FF56)
#define BRLAPI_KEY_SYM_END UINT64_C(0X0000FF57)
#define BRLAPI_KEY_SYM_INSERT UINT64_C(0X0000FF63)
#define BRLAPI_KEY_SYM_FUNCTION UINT64_C(0X0000FFBE)
#define BRLAPI_KEY_SYM_DELETE UINT64_C(0X0000FFFF)
#define BRLAPI_KEY_SYM_UNICODE UINT64_C(0X01000000)
#define BRLAPI_DRV_KEY_PRESS BRLAPI_KEYCODE_C(0X8000000000000000)
#define BRLAPI_DRV_KEY_NUMBER_SHIFT 0
#define BRLAPI_DRV_KEY_NUMBER_MASK 0XFF
#define BRLAPI_DRV_KEY_NUMBER(code) (((code) & BRLAPI_DRV_KEY_NUMBER_MASK) >> BRLAPI_DRV_KEY_NUMBER_SHIFT)
#define BRLAPI_DRV_KEY_GROUP_SHIFT 8
#define BRLAPI_DRV_KEY_GROUP_MASK 0XFF00
#define BRLAPI_DRV_KEY_GROUP(code) (((code) & BRLAPI_DRV_KEY_GROUP_MASK) >> BRLAPI_DRV_KEY_GROUP_SHIFT)
#define BRLAPI_DRV_KEY_VALUE_MASK (BRLAPI_DRV_KEY_GROUP_MASK | BRLAPI_DRV_KEY_NUMBER_MASK)
#define BRLAPI_DRV_KEY_NUMBER_ANY 0XFF


typedef uint64_t brlapi_keyCode_t

Key codes are unsigned 64 bit integers. This 64-bit space is split into 3 parts:

The second and third part are thus mandatory to tell the type of keycode and the value of the keycode, and the first part contains optional flags.

The third part is itself split into two parts: a command number and a command value. The relative sizes of these parts vary according to the key type.

For a braille command, bits 28-16 (BRLAPI_KEY_CMD_BLK_MASK) hold the braille command number, while bits 15-0 (BRLAPI_KEY_CMD_ARG_MASK) hold the command value.

The brlapi_expandKeyCode() function may be used for splitting key codes into these parts.

For a X keysym, if it is a unicode keysym (0x1uvwxyz), then the command number part is 0x1000000 and the value part is 0xuvwxyz. Else, the command part is held by bits 28-8 and the value part is held by bits 7-0. This permits to easily handle usual cases like 0x00xy (latin1), 0x01xy (latin2), XK_Backspace (0xff08, backspace), XK_Tab (0xff09, tab), ...

For instance, if key == 0x0000000020010008,

if key == 0x000000010000FF09,

in the X11 standard some keysyms are directly unicode, for instance if key == 0x0000000001001EA0,

brlapi_ignoreKeyRanges() and brlapi_acceptKeyRanges() manipulate keycode ranges. They are composed of 2 keycodes: the 'first' and the 'last' boundaries. The range expressed by these two keycodes is the set of keycodes whose lower part (bits 31-0) is between the lower part of the 'first' keycode and the 'last' keycode (inclusive), and whose high part (bits 63-32), the flags, contains at least the flags of the 'first' keycode, and at most the flags of the 'last' keycode. Setting the 'first' and 'last' keycode to the same value express only one keycode, for instance. Setting the first and last keycode to the same command code but setting no flags in the 'first' keycode and setting one flag in the 'last' keycode expresses only two keycode, with the same lower part and no flags set except possibly the flag that is set in the 'last' keycode. Setting one flag i in the 'first' keycode and setting the same flag plus another flag j in the 'last' keycode expresses that the keycodes in the range have flag i set and possibly flag j set, but no other flag.

upper-left dot of standard braille cell

middle-left dot of standard braille cell

lower-left dot of standard braille cell

upper-right dot of standard braille cell

middle-right dot of standard braille cell

lower-right dot of standard braille cell

lower-left dot of computer braille cell

lower-right dot of computer braille cell

space key

chord (space bar on braille keyboard)

Value:.PP

  (\
  ((dot1)? BRLAPI_DOT1: 0) | \
  ((dot2)? BRLAPI_DOT2: 0) | \
  ((dot3)? BRLAPI_DOT3: 0) | \
  ((dot4)? BRLAPI_DOT4: 0) | \
  ((dot5)? BRLAPI_DOT5: 0) | \
  ((dot6)? BRLAPI_DOT6: 0) | \
  ((dot7)? BRLAPI_DOT7: 0) | \
  ((dot8)? BRLAPI_DOT8: 0) \
)

Helper macro to easily produce braille patterns

Get key group of brlapi_keyCode_t

Mask for key group of brlapi_keyCode_t

Shift for key group of brlapi_keyCode_t

Get key number of brlapi_keyCode_t

Key number representing any key in the group

Mask for key number of brlapi_keyCode_t

Shift for key number of brlapi_keyCode_t

When brlapi_enterTtyMode() or brlapi_entg$erTtyModeWithPath() is called with a driver name, brlapi_readKey() and brlapi_readKeyWithTimeout() will return driver-specific key codes. From most- to least-significant, their eight bytes are: F 0 0 0 0 0 G N. F is a byte that contains flag bits which are common for all drivers. BRLAPI_DRV_KEY_PRESS, which indicates that it's a key press (as opposed to a release) event, is the only currently defined flag. The other flag bits are always 0. G is the key's group, and N is the key's number within that group. Flag for a driver-specific keycode press (not set means a release)

Mask for key value (group and number) of brlapi_keyCode_t

render an alert

cycle the AltGr (Right Alt) sticky input modifier (next, on, off)

deprecated definition of CLIP_APPEND - append characters to clipboard

Mask for braille command value

Shift for braille command value

set autospeak completed words on/off

set autospeak deleted characters on/off

set autospeak indent of current line on/off

set autospeak inserted characters on/off

set autospeak replaced characters on/off

set autospeak selected character on/off

set autospeak selected line on/off

set attribute blinking on/off

go down to nearest line with different highlighting

go up to nearest line with different highlighting

set attribute underlining on/off

set autorepeat on/off

set autospeak on/off

go back after cursor tracking

Mask for braille command type

Shift for braille command type

go to bottom line

go to beginning of bottom line

start the braille driver

stop the braille driver

set braille keyboard enabled/disabled

set braille typing mode dots/text

set capital letter blinking on/off

go left one character

go right one character

append to clipboard from character

append characters to clipboard

copy characters to clipboard

start new clipboard at character

restore clipboard from disk

save clipboard to disk

set six/eight dot computer braille

switch to command context

set contracted/computer braille

cycle the Control sticky input modifier (next, on, off)

linear copy to character

rectangular copy to character

deprecated definition of CLIP_COPY - copy characters to clipboard

set screen cursor blinking on/off

set hidden screen cursor on/off

bring screen cursor to current line

set screen cursor style block/underline

set track screen cursor on/off

set screen cursor visibility on/off

deprecated definition of CLIP_ADD - append to clipboard from character

deprecated definition of CLIP_NEW - start new clipboard at character

deprecated definition of COPY_LINE - linear copy to character

deprecated definition of COPY_RECT - rectangular copy to character

describe current character

describe character

set display mode attributes/text

set screen image frozen/unfrozen

go backward one braille window

go backward skipping blank braille windows

go forward one braille window

go forward skipping blank braille windows

go to selected line

go to remembered braille window position

cycle the GUI (Windows) sticky input modifier (next, on, off)

open the application alerts window

open the application list window

open the application-specific menu

return to the active screen area

switch to the next screen area

switch to the previous screen area

go back to the previous screen

open the braille actions window

open the device options window

open the device settings window

go to the home screen

move to the first item in the screen area

move to the last item in the screen area

move to the next item in the screen area

move to the previous item in the screen area

show the window title

enter/leave help display

go to screen cursor

copy selected text to host clipboard

cut selected text to host clipboard

insert host clipboard text after screen cursor

run host command

go left half a braille window

go right half a braille window

show various device status indicators

enter/leave status display

enter/leave command learn mode

go to beginning of line

go down one line

go to end of line

go up one line

execute command macro

go up to first item

go down to last item

go down to next item

select next choice

go up to previous item

go to previous menu level

select previous choice

cycle the Meta (Left Alt) sticky input modifier (next, on, off)

stop speaking

do nothing

go down to nearest line with different character

go down to nearest line with different content

go down to nearest line with less indent than character

go forward to nearest non-blank braille window

go down to first line of next paragraph

go down to next command prompt

search forward for clipboard text

braille display temporarily unavailable

AT (set 2) keyboard scan code

type braille dots

PS/2 (set 3) keyboard scan code

XT (set 1) keyboard scan code

insert clipboard text after screen cursor

insert clipboard history entry after screen cursor

go up to nearest line with different character

go up to nearest line with different content

restore preferences from disk

enter/leave preferences menu

reset preferences to defaults

save preferences to disk

go up to nearest line with less indent than character

go backward to nearest non-blank braille window

go up to first line of paragraph

go up to previous command prompt

search backward for clipboard text

refresh braille display

refresh braille line

restart braille driver

restart speech driver

go to screen cursor or go back after cursor tracking

bring screen cursor to character

bring screen cursor to speech cursor

bring screen cursor to line

bring speech cursor to character

speak from top of screen through current line

speak from top of screen through bottom of screen

speak from current line through bottom of screen

increase speaking rate

increase speaking pitch

speak current line

increase speaking volume

decrease speaking pitch

decrease speaking rate

decrease speaking volume

start the screen driver

stop the screen driver

bind to specific virtual terminal

bind to the next virtual terminal

bind to the previous virtual terminal

set attributes table

set contraction table

set keyboard table

set language profile

set text table

place left end of braille window at character

remember current braille window position

cycle the Shift sticky input modifier (next, on, off)

set speech cursor visibility on/off

set text style 6-dot/8-dot

set skipping of blank braille windows on/off

set skipping of lines with identical content on/off

set sliding braille window on/off

speak current character

speak current line

speak speech cursor location

speak current word

go to and speak first non-blank character on line

go to and speak first non-blank line on screen

speak indent of current line

go to and speak last non-blank character on line

go to and speak last non-blank line on screen

go to and speak next character

go to and speak next line

go to and speak next word

go to and speak previous character

go to and speak previous line

go to and speak previous word

spell current word

start the speech driver

stop the speech driver

go to current speaking position

switch to specific virtual terminal

switch to the next virtual terminal

switch to the previous virtual terminal

show current date and time

go to top line

go to beginning of top line

current reading location

set touch navigation on/off

set alert tunes on/off

select all of the text

clear the text selection

set text selection

start text selection

clear all sticky input modifiers

cycle the Upper sticky input modifier (next, on, off)

go down several lines

go up several lines

Mask for code of brlapi_keyCode_t

Shift for code of brlapi_keyCode_t

Mask for flags of brlapi_keyCode_t

Shift for flags of brlapi_keyCode_t

altgr (right alt) key pressed

control key pressed

prefix with escape

gui (windows) key pressed

it is an emulation 0 scan code

it is an emulation 1 scan code

it is a release scan code

meta (left alt) key pressed

Standard X modifiers Mod1 modifier (AKA meta)

Mod2 modifier (usually numlock)

Mod3 modifier

Mod4 modifier

Mod5 modifier (usually Alt-Gr)

bring screen cursor into braille window after function

scale arg=0X00-0XFF to screen height

go to beginning of line

shift key pressed

mask for all toggle flags

disable feature

enable feature

convert to uppercase

Brlapi_keyCode_t's biggest value

As defined in <stdint.h>

Standard X keysyms

Braille command brlapi_keyCode_t

Mask for type of brlapi_keyCode_t

Shift for type of brlapi_keyCode_t

X Keysym brlapi_keyCode_t

Define a brlapi_keyCode_t constant

Unsigned decimal print format for brlapi_keyCode_t

Hexadecimal print format for brlapi_keyCode_t

Generated automatically by Doxygen for BrlAPI from the source code.

Version 0.8 BrlAPI