brlapi_keycodes(3)                  BrlAPI                  brlapi_keycodes(3)



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


SYNOPSIS
   Macros
       #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

   Typedefs
       typedef uint64_t brlapi_keyCode_t
       #define BRLAPI_KEY_CMD_NOOP   (BRLAPI_KEY_CMD(0) + 0)
       #define BRLAPI_KEY_CMD_LNUP   (BRLAPI_KEY_CMD(0) + 1)
       #define BRLAPI_KEY_CMD_LNDN   (BRLAPI_KEY_CMD(0) + 2)
       #define BRLAPI_KEY_CMD_WINUP   (BRLAPI_KEY_CMD(0) + 3)
       #define BRLAPI_KEY_CMD_WINDN   (BRLAPI_KEY_CMD(0) + 4)
       #define BRLAPI_KEY_CMD_PRDIFLN   (BRLAPI_KEY_CMD(0) + 5)
       #define BRLAPI_KEY_CMD_NXDIFLN   (BRLAPI_KEY_CMD(0) + 6)
       #define BRLAPI_KEY_CMD_ATTRUP   (BRLAPI_KEY_CMD(0) + 7)
       #define BRLAPI_KEY_CMD_ATTRDN   (BRLAPI_KEY_CMD(0) + 8)
       #define BRLAPI_KEY_CMD_TOP   (BRLAPI_KEY_CMD(0) + 9)
       #define BRLAPI_KEY_CMD_BOT   (BRLAPI_KEY_CMD(0) + 10)
       #define BRLAPI_KEY_CMD_TOP_LEFT   (BRLAPI_KEY_CMD(0) + 11)
       #define BRLAPI_KEY_CMD_BOT_LEFT   (BRLAPI_KEY_CMD(0) + 12)
       #define BRLAPI_KEY_CMD_PRPGRPH   (BRLAPI_KEY_CMD(0) + 13)
       #define BRLAPI_KEY_CMD_NXPGRPH   (BRLAPI_KEY_CMD(0) + 14)
       #define BRLAPI_KEY_CMD_PRPROMPT   (BRLAPI_KEY_CMD(0) + 15)
       #define BRLAPI_KEY_CMD_NXPROMPT   (BRLAPI_KEY_CMD(0) + 16)
       #define BRLAPI_KEY_CMD_PRSEARCH   (BRLAPI_KEY_CMD(0) + 17)
       #define BRLAPI_KEY_CMD_NXSEARCH   (BRLAPI_KEY_CMD(0) + 18)
       #define BRLAPI_KEY_CMD_CHRLT   (BRLAPI_KEY_CMD(0) + 19)
       #define BRLAPI_KEY_CMD_CHRRT   (BRLAPI_KEY_CMD(0) + 20)
       #define BRLAPI_KEY_CMD_HWINLT   (BRLAPI_KEY_CMD(0) + 21)
       #define BRLAPI_KEY_CMD_HWINRT   (BRLAPI_KEY_CMD(0) + 22)
       #define BRLAPI_KEY_CMD_FWINLT   (BRLAPI_KEY_CMD(0) + 23)
       #define BRLAPI_KEY_CMD_FWINRT   (BRLAPI_KEY_CMD(0) + 24)
       #define BRLAPI_KEY_CMD_FWINLTSKIP   (BRLAPI_KEY_CMD(0) + 25)
       #define BRLAPI_KEY_CMD_FWINRTSKIP   (BRLAPI_KEY_CMD(0) + 26)
       #define BRLAPI_KEY_CMD_LNBEG   (BRLAPI_KEY_CMD(0) + 27)
       #define BRLAPI_KEY_CMD_LNEND   (BRLAPI_KEY_CMD(0) + 28)
       #define BRLAPI_KEY_CMD_HOME   (BRLAPI_KEY_CMD(0) + 29)
       #define BRLAPI_KEY_CMD_BACK   (BRLAPI_KEY_CMD(0) + 30)
       #define BRLAPI_KEY_CMD_RETURN   (BRLAPI_KEY_CMD(0) + 31)
       #define BRLAPI_KEY_CMD_FREEZE   (BRLAPI_KEY_CMD(0) + 32)
       #define BRLAPI_KEY_CMD_DISPMD   (BRLAPI_KEY_CMD(0) + 33)
       #define BRLAPI_KEY_CMD_SIXDOTS   (BRLAPI_KEY_CMD(0) + 34)
       #define BRLAPI_KEY_CMD_SLIDEWIN   (BRLAPI_KEY_CMD(0) + 35)
       #define BRLAPI_KEY_CMD_SKPIDLNS   (BRLAPI_KEY_CMD(0) + 36)
       #define BRLAPI_KEY_CMD_SKPBLNKWINS   (BRLAPI_KEY_CMD(0) + 37)
       #define BRLAPI_KEY_CMD_CSRVIS   (BRLAPI_KEY_CMD(0) + 38)
       #define BRLAPI_KEY_CMD_CSRHIDE   (BRLAPI_KEY_CMD(0) + 39)
       #define BRLAPI_KEY_CMD_CSRTRK   (BRLAPI_KEY_CMD(0) + 40)
       #define BRLAPI_KEY_CMD_CSRSIZE   (BRLAPI_KEY_CMD(0) + 41)
       #define BRLAPI_KEY_CMD_CSRBLINK   (BRLAPI_KEY_CMD(0) + 42)
       #define BRLAPI_KEY_CMD_ATTRVIS   (BRLAPI_KEY_CMD(0) + 43)
       #define BRLAPI_KEY_CMD_ATTRBLINK   (BRLAPI_KEY_CMD(0) + 44)
       #define BRLAPI_KEY_CMD_CAPBLINK   (BRLAPI_KEY_CMD(0) + 45)
       #define BRLAPI_KEY_CMD_TUNES   (BRLAPI_KEY_CMD(0) + 46)
       #define BRLAPI_KEY_CMD_AUTOREPEAT   (BRLAPI_KEY_CMD(0) + 47)
       #define BRLAPI_KEY_CMD_AUTOSPEAK   (BRLAPI_KEY_CMD(0) + 48)
       #define BRLAPI_KEY_CMD_HELP   (BRLAPI_KEY_CMD(0) + 49)
       #define BRLAPI_KEY_CMD_INFO   (BRLAPI_KEY_CMD(0) + 50)
       #define BRLAPI_KEY_CMD_LEARN   (BRLAPI_KEY_CMD(0) + 51)
       #define BRLAPI_KEY_CMD_PREFMENU   (BRLAPI_KEY_CMD(0) + 52)
       #define BRLAPI_KEY_CMD_PREFSAVE   (BRLAPI_KEY_CMD(0) + 53)
       #define BRLAPI_KEY_CMD_PREFLOAD   (BRLAPI_KEY_CMD(0) + 54)
       #define BRLAPI_KEY_CMD_MENU_FIRST_ITEM   (BRLAPI_KEY_CMD(0) + 55)
       #define BRLAPI_KEY_CMD_MENU_LAST_ITEM   (BRLAPI_KEY_CMD(0) + 56)
       #define BRLAPI_KEY_CMD_MENU_PREV_ITEM   (BRLAPI_KEY_CMD(0) + 57)
       #define BRLAPI_KEY_CMD_MENU_NEXT_ITEM   (BRLAPI_KEY_CMD(0) + 58)
       #define BRLAPI_KEY_CMD_MENU_PREV_SETTING   (BRLAPI_KEY_CMD(0) + 59)
       #define BRLAPI_KEY_CMD_MENU_NEXT_SETTING   (BRLAPI_KEY_CMD(0) + 60)
       #define BRLAPI_KEY_CMD_MUTE   (BRLAPI_KEY_CMD(0) + 61)
       #define BRLAPI_KEY_CMD_SPKHOME   (BRLAPI_KEY_CMD(0) + 62)
       #define BRLAPI_KEY_CMD_SAY_LINE   (BRLAPI_KEY_CMD(0) + 63)
       #define BRLAPI_KEY_CMD_SAY_ABOVE   (BRLAPI_KEY_CMD(0) + 64)
       #define BRLAPI_KEY_CMD_SAY_BELOW   (BRLAPI_KEY_CMD(0) + 65)
       #define BRLAPI_KEY_CMD_SAY_SLOWER   (BRLAPI_KEY_CMD(0) + 66)
       #define BRLAPI_KEY_CMD_SAY_FASTER   (BRLAPI_KEY_CMD(0) + 67)
       #define BRLAPI_KEY_CMD_SAY_SOFTER   (BRLAPI_KEY_CMD(0) + 68)
       #define BRLAPI_KEY_CMD_SAY_LOUDER   (BRLAPI_KEY_CMD(0) + 69)
       #define BRLAPI_KEY_CMD_SWITCHVT_PREV   (BRLAPI_KEY_CMD(0) + 70)
       #define BRLAPI_KEY_CMD_SWITCHVT_NEXT   (BRLAPI_KEY_CMD(0) + 71)
       #define BRLAPI_KEY_CMD_CSRJMP_VERT   (BRLAPI_KEY_CMD(0) + 72)
       #define BRLAPI_KEY_CMD_PASTE   (BRLAPI_KEY_CMD(0) + 73)
       #define BRLAPI_KEY_CMD_RESTARTBRL   (BRLAPI_KEY_CMD(0) + 74)
       #define BRLAPI_KEY_CMD_RESTARTSPEECH   (BRLAPI_KEY_CMD(0) + 75)
       #define BRLAPI_KEY_CMD_OFFLINE   (BRLAPI_KEY_CMD(0) + 76)
       #define BRLAPI_KEY_CMD_SHIFT   (BRLAPI_KEY_CMD(0) + 77)
       #define BRLAPI_KEY_CMD_UPPER   (BRLAPI_KEY_CMD(0) + 78)
       #define BRLAPI_KEY_CMD_CONTROL   (BRLAPI_KEY_CMD(0) + 79)
       #define BRLAPI_KEY_CMD_META   (BRLAPI_KEY_CMD(0) + 80)
       #define BRLAPI_KEY_CMD_TIME   (BRLAPI_KEY_CMD(0) + 81)
       #define BRLAPI_KEY_CMD_MENU_PREV_LEVEL   (BRLAPI_KEY_CMD(0) + 82)
       #define BRLAPI_KEY_CMD_ASPK_SEL_LINE   (BRLAPI_KEY_CMD(0) + 83)
       #define BRLAPI_KEY_CMD_ASPK_SEL_CHAR   (BRLAPI_KEY_CMD(0) + 84)
       #define BRLAPI_KEY_CMD_ASPK_INS_CHARS   (BRLAPI_KEY_CMD(0) + 85)
       #define BRLAPI_KEY_CMD_ASPK_DEL_CHARS   (BRLAPI_KEY_CMD(0) + 86)
       #define BRLAPI_KEY_CMD_ASPK_REP_CHARS   (BRLAPI_KEY_CMD(0) + 87)
       #define BRLAPI_KEY_CMD_ASPK_CMP_WORDS   (BRLAPI_KEY_CMD(0) + 88)
       #define BRLAPI_KEY_CMD_SPEAK_CURR_CHAR   (BRLAPI_KEY_CMD(0) + 89)
       #define BRLAPI_KEY_CMD_SPEAK_PREV_CHAR   (BRLAPI_KEY_CMD(0) + 90)
       #define BRLAPI_KEY_CMD_SPEAK_NEXT_CHAR   (BRLAPI_KEY_CMD(0) + 91)
       #define BRLAPI_KEY_CMD_SPEAK_CURR_WORD   (BRLAPI_KEY_CMD(0) + 92)
       #define BRLAPI_KEY_CMD_SPEAK_PREV_WORD   (BRLAPI_KEY_CMD(0) + 93)
       #define BRLAPI_KEY_CMD_SPEAK_NEXT_WORD   (BRLAPI_KEY_CMD(0) + 94)
       #define BRLAPI_KEY_CMD_SPEAK_CURR_LINE   (BRLAPI_KEY_CMD(0) + 95)
       #define BRLAPI_KEY_CMD_SPEAK_PREV_LINE   (BRLAPI_KEY_CMD(0) + 96)
       #define BRLAPI_KEY_CMD_SPEAK_NEXT_LINE   (BRLAPI_KEY_CMD(0) + 97)
       #define BRLAPI_KEY_CMD_SPEAK_FRST_CHAR   (BRLAPI_KEY_CMD(0) + 98)
       #define BRLAPI_KEY_CMD_SPEAK_LAST_CHAR   (BRLAPI_KEY_CMD(0) + 99)
       #define BRLAPI_KEY_CMD_SPEAK_FRST_LINE   (BRLAPI_KEY_CMD(0) + 100)
       #define BRLAPI_KEY_CMD_SPEAK_LAST_LINE   (BRLAPI_KEY_CMD(0) + 101)
       #define BRLAPI_KEY_CMD_DESC_CURR_CHAR   (BRLAPI_KEY_CMD(0) + 102)
       #define BRLAPI_KEY_CMD_SPELL_CURR_WORD   (BRLAPI_KEY_CMD(0) + 103)
       #define BRLAPI_KEY_CMD_ROUTE_CURR_LOCN   (BRLAPI_KEY_CMD(0) + 104)
       #define BRLAPI_KEY_CMD_SPEAK_CURR_LOCN   (BRLAPI_KEY_CMD(0) + 105)
       #define BRLAPI_KEY_CMD_SHOW_CURR_LOCN   (BRLAPI_KEY_CMD(0) + 106)
       #define BRLAPI_KEY_CMD_CLIP_SAVE   (BRLAPI_KEY_CMD(0) + 107)
       #define BRLAPI_KEY_CMD_CLIP_RESTORE   (BRLAPI_KEY_CMD(0) + 108)
       #define BRLAPI_KEY_CMD_BRLUCDOTS   (BRLAPI_KEY_CMD(0) + 109)
       #define BRLAPI_KEY_CMD_BRLKBD   (BRLAPI_KEY_CMD(0) + 110)
       #define BRLAPI_KEY_CMD_UNSTICK   (BRLAPI_KEY_CMD(0) + 111)
       #define BRLAPI_KEY_CMD_ALTGR   (BRLAPI_KEY_CMD(0) + 112)
       #define BRLAPI_KEY_CMD_GUI   (BRLAPI_KEY_CMD(0) + 113)
       #define BRLAPI_KEY_CMD_BRL_STOP   (BRLAPI_KEY_CMD(0) + 114)
       #define BRLAPI_KEY_CMD_BRL_START   (BRLAPI_KEY_CMD(0) + 115)
       #define BRLAPI_KEY_CMD_SPK_STOP   (BRLAPI_KEY_CMD(0) + 116)
       #define BRLAPI_KEY_CMD_SPK_START   (BRLAPI_KEY_CMD(0) + 117)
       #define BRLAPI_KEY_CMD_SCR_STOP   (BRLAPI_KEY_CMD(0) + 118)
       #define BRLAPI_KEY_CMD_SCR_START   (BRLAPI_KEY_CMD(0) + 119)
       #define BRLAPI_KEY_CMD_SELECTVT_PREV   (BRLAPI_KEY_CMD(0) + 120)
       #define BRLAPI_KEY_CMD_SELECTVT_NEXT   (BRLAPI_KEY_CMD(0) + 121)
       #define BRLAPI_KEY_CMD_PRNBWIN   (BRLAPI_KEY_CMD(0) + 122)
       #define BRLAPI_KEY_CMD_NXNBWIN   (BRLAPI_KEY_CMD(0) + 123)
       #define BRLAPI_KEY_CMD_TOUCH_NAV   (BRLAPI_KEY_CMD(0) + 124)
       #define BRLAPI_KEY_CMD_SPEAK_INDENT   (BRLAPI_KEY_CMD(0) + 125)
       #define BRLAPI_KEY_CMD_ASPK_INDENT   (BRLAPI_KEY_CMD(0) + 126)
       #define BRLAPI_KEY_CMD_REFRESH   (BRLAPI_KEY_CMD(0) + 127)
       #define BRLAPI_KEY_CMD_INDICATORS   (BRLAPI_KEY_CMD(0) + 128)
       #define BRLAPI_KEY_CMD_TXTSEL_CLEAR   (BRLAPI_KEY_CMD(0) + 129)
       #define BRLAPI_KEY_CMD_TXTSEL_ALL   (BRLAPI_KEY_CMD(0) + 130)
       #define BRLAPI_KEY_CMD_HOST_COPY   (BRLAPI_KEY_CMD(0) + 131)
       #define BRLAPI_KEY_CMD_HOST_CUT   (BRLAPI_KEY_CMD(0) + 132)
       #define BRLAPI_KEY_CMD_HOST_PASTE   (BRLAPI_KEY_CMD(0) + 133)
       #define BRLAPI_KEY_CMD_GUI_TITLE   (BRLAPI_KEY_CMD(0) + 134)
       #define BRLAPI_KEY_CMD_GUI_BRL_ACTIONS   (BRLAPI_KEY_CMD(0) + 135)
       #define BRLAPI_KEY_CMD_GUI_HOME   (BRLAPI_KEY_CMD(0) + 136)
       #define BRLAPI_KEY_CMD_GUI_BACK   (BRLAPI_KEY_CMD(0) + 137)
       #define BRLAPI_KEY_CMD_GUI_DEV_SETTINGS   (BRLAPI_KEY_CMD(0) + 138)
       #define BRLAPI_KEY_CMD_GUI_DEV_OPTIONS   (BRLAPI_KEY_CMD(0) + 139)
       #define BRLAPI_KEY_CMD_GUI_APP_LIST   (BRLAPI_KEY_CMD(0) + 140)
       #define BRLAPI_KEY_CMD_GUI_APP_MENU   (BRLAPI_KEY_CMD(0) + 141)
       #define BRLAPI_KEY_CMD_GUI_APP_ALERTS   (BRLAPI_KEY_CMD(0) + 142)
       #define BRLAPI_KEY_CMD_GUI_AREA_ACTV   (BRLAPI_KEY_CMD(0) + 143)
       #define BRLAPI_KEY_CMD_GUI_AREA_PREV   (BRLAPI_KEY_CMD(0) + 144)
       #define BRLAPI_KEY_CMD_GUI_AREA_NEXT   (BRLAPI_KEY_CMD(0) + 145)
       #define BRLAPI_KEY_CMD_GUI_ITEM_FRST   (BRLAPI_KEY_CMD(0) + 146)
       #define BRLAPI_KEY_CMD_GUI_ITEM_PREV   (BRLAPI_KEY_CMD(0) + 147)
       #define BRLAPI_KEY_CMD_GUI_ITEM_NEXT   (BRLAPI_KEY_CMD(0) + 148)
       #define BRLAPI_KEY_CMD_GUI_ITEM_LAST   (BRLAPI_KEY_CMD(0) + 149)
       #define BRLAPI_KEY_CMD_SAY_LOWER   (BRLAPI_KEY_CMD(0) + 150)
       #define BRLAPI_KEY_CMD_SAY_HIGHER   (BRLAPI_KEY_CMD(0) + 151)
       #define BRLAPI_KEY_CMD_SAY_ALL   (BRLAPI_KEY_CMD(0) + 152)
       #define BRLAPI_KEY_CMD_CONTRACTED   (BRLAPI_KEY_CMD(0) + 153)
       #define BRLAPI_KEY_CMD_COMPBRL6   (BRLAPI_KEY_CMD(0) + 154)
       #define BRLAPI_KEY_CMD_PREFRESET   (BRLAPI_KEY_CMD(0) + 155)
       #define BRLAPI_KEY_CMD_ASPK_EMP_LINE   (BRLAPI_KEY_CMD(0) + 156)
       #define BRLAPI_KEY_CMD_SPK_PUNCT_LEVEL   (BRLAPI_KEY_CMD(0) + 157)
       #define BRLAPI_KEY_CMD_PASTE_ALTMODE   (BRLAPI_KEY_CMD(0) + 158)
       #define BRLAPI_KEY_CMD_SPEAK_CURR_PWRD   (BRLAPI_KEY_CMD(0) + 159)
       #define BRLAPI_KEY_CMD_SPEAK_PREV_PWRD   (BRLAPI_KEY_CMD(0) + 160)
       #define BRLAPI_KEY_CMD_SPEAK_NEXT_PWRD   (BRLAPI_KEY_CMD(0) + 161)
       #define BRLAPI_KEY_CMD_SPELL_CURR_PWRD   (BRLAPI_KEY_CMD(0) + 162)
       #define BRLAPI_KEY_CMD_SPELL_CURR_LINE   (BRLAPI_KEY_CMD(0) + 163)
       #define BRLAPI_KEY_CMD_ROUTE   BRLAPI_KEY_CMD(1)
       #define BRLAPI_KEY_CMD_CLIP_NEW   BRLAPI_KEY_CMD(2)
       #define BRLAPI_KEY_CMD_CUTBEGIN   BRLAPI_KEY_CMD(2)
       #define BRLAPI_KEY_CMD_CLIP_ADD   BRLAPI_KEY_CMD(3)
       #define BRLAPI_KEY_CMD_CUTAPPEND   BRLAPI_KEY_CMD(3)
       #define BRLAPI_KEY_CMD_COPY_RECT   BRLAPI_KEY_CMD(4)
       #define BRLAPI_KEY_CMD_CUTRECT   BRLAPI_KEY_CMD(4)
       #define BRLAPI_KEY_CMD_COPY_LINE   BRLAPI_KEY_CMD(5)
       #define BRLAPI_KEY_CMD_CUTLINE   BRLAPI_KEY_CMD(5)
       #define BRLAPI_KEY_CMD_SWITCHVT   BRLAPI_KEY_CMD(6)
       #define BRLAPI_KEY_CMD_PRINDENT   BRLAPI_KEY_CMD(7)
       #define BRLAPI_KEY_CMD_NXINDENT   BRLAPI_KEY_CMD(8)
       #define BRLAPI_KEY_CMD_DESCCHAR   BRLAPI_KEY_CMD(9)
       #define BRLAPI_KEY_CMD_SETLEFT   BRLAPI_KEY_CMD(10)
       #define BRLAPI_KEY_CMD_SETMARK   BRLAPI_KEY_CMD(11)
       #define BRLAPI_KEY_CMD_GOTOMARK   BRLAPI_KEY_CMD(12)
       #define BRLAPI_KEY_CMD_GOTOLINE   BRLAPI_KEY_CMD(13)
       #define BRLAPI_KEY_CMD_PRDIFCHAR   BRLAPI_KEY_CMD(14)
       #define BRLAPI_KEY_CMD_NXDIFCHAR   BRLAPI_KEY_CMD(15)
       #define BRLAPI_KEY_CMD_CLIP_COPY   BRLAPI_KEY_CMD(16)
       #define BRLAPI_KEY_CMD_COPYCHARS   BRLAPI_KEY_CMD(16)
       #define BRLAPI_KEY_CMD_CLIP_APPEND   BRLAPI_KEY_CMD(17)
       #define BRLAPI_KEY_CMD_APNDCHARS   BRLAPI_KEY_CMD(17)
       #define BRLAPI_KEY_CMD_PASTE_HISTORY   BRLAPI_KEY_CMD(18)
       #define BRLAPI_KEY_CMD_SET_TEXT_TABLE   BRLAPI_KEY_CMD(19)
       #define BRLAPI_KEY_CMD_SET_ATTRIBUTES_TABLE   BRLAPI_KEY_CMD(20)
       #define BRLAPI_KEY_CMD_SET_CONTRACTION_TABLE   BRLAPI_KEY_CMD(21)
       #define BRLAPI_KEY_CMD_SET_KEYBOARD_TABLE   BRLAPI_KEY_CMD(22)
       #define BRLAPI_KEY_CMD_SET_LANGUAGE_PROFILE   BRLAPI_KEY_CMD(23)
       #define BRLAPI_KEY_CMD_ROUTE_LINE   BRLAPI_KEY_CMD(24)
       #define BRLAPI_KEY_CMD_REFRESH_LINE   BRLAPI_KEY_CMD(25)
       #define BRLAPI_KEY_CMD_TXTSEL_START   BRLAPI_KEY_CMD(26)
       #define BRLAPI_KEY_CMD_TXTSEL_SET   BRLAPI_KEY_CMD(27)
       #define BRLAPI_KEY_CMD_ROUTE_SPEECH   BRLAPI_KEY_CMD(28)
       #define BRLAPI_KEY_CMD_PASTE_HISTORY_ALTMODE   BRLAPI_KEY_CMD(29)
       #define BRLAPI_KEY_CMD_SELECTVT   BRLAPI_KEY_CMD(30)
       #define BRLAPI_KEY_CMD_ALERT   BRLAPI_KEY_CMD(31)
       #define BRLAPI_KEY_CMD_PASSDOTS   BRLAPI_KEY_CMD(34)
       #define BRLAPI_KEY_CMD_PASSAT   BRLAPI_KEY_CMD(35)
       #define BRLAPI_KEY_CMD_PASSXT   BRLAPI_KEY_CMD(36)
       #define BRLAPI_KEY_CMD_PASSPS2   BRLAPI_KEY_CMD(37)
       #define BRLAPI_KEY_CMD_CONTEXT   BRLAPI_KEY_CMD(38)
       #define BRLAPI_KEY_CMD_TOUCH_AT   BRLAPI_KEY_CMD(39)
       #define BRLAPI_KEY_CMD_MACRO   BRLAPI_KEY_CMD(40)
       #define BRLAPI_KEY_CMD_HOSTCMD   BRLAPI_KEY_CMD(41)
       #define BRLAPI_KEY_CMD_COLOR   BRLAPI_KEY_CMD(42)
       #define BRLAPI_KEY_FLG_TOGGLE_ON   BRLAPI_KEY_FLG(0X0100)
       #define BRLAPI_KEY_FLG_TOGGLE_OFF   BRLAPI_KEY_FLG(0X0200)
       #define BRLAPI_KEY_FLG_TOGGLE_MASK   (BRLAPI_KEY_FLG_TOGGLE_ON |
           BRLAPI_KEY_FLG_TOGGLE_OFF)
       #define BRLAPI_KEY_FLG_MOTION_ROUTE   BRLAPI_KEY_FLG(0X0400)
       #define BRLAPI_KEY_FLG_MOTION_SCALED   BRLAPI_KEY_FLG(0X0800)
       #define BRLAPI_KEY_FLG_MOTION_TOLEFT   BRLAPI_KEY_FLG(0X1000)
       #define BRLAPI_KEY_FLG_SHIFT   BRLAPI_KEY_FLG(0X01)
       #define BRLAPI_KEY_FLG_UPPER   BRLAPI_KEY_FLG(0X02)
       #define BRLAPI_KEY_FLG_CONTROL   BRLAPI_KEY_FLG(0X04)
       #define BRLAPI_KEY_FLG_META   BRLAPI_KEY_FLG(0X08)
       #define BRLAPI_KEY_FLG_ALTGR   BRLAPI_KEY_FLG(0X10)
       #define BRLAPI_KEY_FLG_GUI   BRLAPI_KEY_FLG(0X20)
       #define BRLAPI_KEY_FLG_ESCAPED   BRLAPI_KEY_FLG(0X40)
       #define BRLAPI_KEY_FLG_CAPSLOCK   BRLAPI_KEY_FLG(0X80)
       #define BRLAPI_KEY_FLG_KBD_RELEASE   BRLAPI_KEY_FLG(0X0100)
       #define BRLAPI_KEY_FLG_KBD_EMUL0   BRLAPI_KEY_FLG(0X0200)
       #define BRLAPI_KEY_FLG_KBD_EMUL1   BRLAPI_KEY_FLG(0X0400)
       #define BRLAPI_DOT1   1
       #define BRLAPI_DOT2   2
       #define BRLAPI_DOT3   4
       #define BRLAPI_DOT4   8
       #define BRLAPI_DOT5   16
       #define BRLAPI_DOT6   32
       #define BRLAPI_DOT7   64
       #define BRLAPI_DOT8   128
       #define BRLAPI_DOTC   256
       #define BRLAPI_DOTS(dot1,  dot2,  dot3,  dot4,  dot5,  dot6,  dot7,
           dot8)
       #define BRLAPI_DOT_CHORD   256

Detailed Description
       +o bits 63-32 (BRLAPI_KEY_FLAGS_MASK), flags: bits 39-32 are standard X
         modifiers (shift, control, meta, ...). Other flags are used for some
         commands, see documentation of BRLAPI_KEY_FLG_* for their respective
         uses.

       +o bits 31-29 (BRLAPI_KEY_TYPE_MASK), key type: either
         BRLAPI_KEY_TYPE_CMD for braille commands, or BRLAPI_KEY_TYPE_SYM for
         standard X keysyms.

       +o bits 28-0 (BRLAPI_KEY_CODE_MASK), key code: for braille commands, see
         BRLAPI_KEY_CMD_* ; for standard X keysyms, this is the keysym value,
         see X11 documentation, a complete list is probably available on your
         system in /usr/include/X11/keysymdef.h

       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,

       +o (key & BRLAPI_KEY_TYPE_MASK) == BRLAPI_KEY_TYPE_CMD, so it's a
         braille command

       +o (key & BRLAPI_KEY_CMD_BLK_MASK) == BRLAPI_KEY_CMD_ROUTE, so it's the
         braille route command.

       +o (key & BRLAPI_KEY_CMD_ARG_MASK) == 8, so the highlighted cell is the
         9th one (cells are numbered from 0)

       +o (key & BRLAPI_KEY_FLAGS_MASK) == 0, so no modifier key was pressed
         during the command, and no particular flag applies to the command.

       if key == 0x000000010000FF09,

       +o (key & BRLAPI_KEY_TYPE_MASK) == BRLAPI_KEY_TYPE_SYM, so it's a keysym

       +o (key & BRLAPI_KEY_CODE_MASK) == XK_Tab, so it's the tab key.
         BRLAPI_KEY_SYM_TAB can also be used here, as well as a few other
         BRLAPI_KEY_SYM_* constants which are provided to avoid having to
         include X11/keysymdef.h

       +o (key & BRLAPI_KEY_FLAGS_MASK) == BRLAPI_KEY_FLG_SHIFT, so the shift
         modifier was pressed during the command.

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

       +o (key & BRLAPI_KEY_TYPE_MASK) == BRLAPI_KEY_TYPE_SYM, so it's a keysym

       +o (key & BRLAPI_KEY_SYM_UNICODE) != 0 so it's a unicode keysym, whose
         value is key & (BRLAPI_KEY_SYM_UNICODE-1). Of course, one can also
         consider (key & BRLAPI_KEY_CODE_MASK) == XK_Abelowdot

       +o (key & BRLAPI_KEY_FLAGS_MASK) == 0, so no modifier key was pressed
         during the command, and no particular flag applies to the command.

       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.

Macro Definition Documentation
   #define BRLAPI_DOT1   1
       upper-left dot of standard braille cell

   #define BRLAPI_DOT2   2
       middle-left dot of standard braille cell

   #define BRLAPI_DOT3   4
       lower-left dot of standard braille cell

   #define BRLAPI_DOT4   8
       upper-right dot of standard braille cell

   #define BRLAPI_DOT5   16
       middle-right dot of standard braille cell

   #define BRLAPI_DOT6   32
       lower-right dot of standard braille cell

   #define BRLAPI_DOT7   64
       lower-left dot of computer braille cell

   #define BRLAPI_DOT8   128
       lower-right dot of computer braille cell

   #define BRLAPI_DOT_CHORD   256
       space key

   #define BRLAPI_DOTC   256
       chord (space bar on braille keyboard)

   #define BRLAPI_DOTS(dot1, dot2, dot3, dot4, dot5, dot6, dot7, dot8)
       Value:

         (  ((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

   #define BRLAPI_DRV_KEY_GROUP(code)   (((code) & BRLAPI_DRV_KEY_GROUP_MASK)
       >> BRLAPI_DRV_KEY_GROUP_SHIFT)
       Get key group of brlapi_keyCode_t

   #define BRLAPI_DRV_KEY_GROUP_MASK   0XFF00
       Mask for key group of brlapi_keyCode_t

   #define BRLAPI_DRV_KEY_GROUP_SHIFT   8
       Shift for key group of brlapi_keyCode_t

   #define BRLAPI_DRV_KEY_NUMBER(code)   (((code) &
       BRLAPI_DRV_KEY_NUMBER_MASK) >> BRLAPI_DRV_KEY_NUMBER_SHIFT)
       Get key number of brlapi_keyCode_t

   #define BRLAPI_DRV_KEY_NUMBER_ANY   0XFF
       Key number representing any key in the group

   #define BRLAPI_DRV_KEY_NUMBER_MASK   0XFF
       Mask for key number of brlapi_keyCode_t

   #define BRLAPI_DRV_KEY_NUMBER_SHIFT   0
       Shift for key number of brlapi_keyCode_t

   #define BRLAPI_DRV_KEY_PRESS   BRLAPI_KEYCODE_C(0X8000000000000000)
       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)

   #define BRLAPI_DRV_KEY_VALUE_MASK   (BRLAPI_DRV_KEY_GROUP_MASK |
       BRLAPI_DRV_KEY_NUMBER_MASK)
       Mask for key value (group and number) of brlapi_keyCode_t

   #define BRLAPI_KEY_CMD(v)   ((v) << BRLAPI_KEY_CMD_BLK_SHIFT)
   #define BRLAPI_KEY_CMD_ALERT   BRLAPI_KEY_CMD(31)
       render an alert

   #define BRLAPI_KEY_CMD_ALTGR   (BRLAPI_KEY_CMD(0) + 112)
       cycle the AltGr (Right Alt) sticky input modifier (next, on, off)

   #define BRLAPI_KEY_CMD_APNDCHARS   BRLAPI_KEY_CMD(17)
       deprecated definition of CLIP_APPEND - append characters to clipboard

   #define BRLAPI_KEY_CMD_ARG_MASK   UINT64_C(0X0000FFFF)
       Mask for braille command value

   #define BRLAPI_KEY_CMD_ARG_SHIFT   0
       Shift for braille command value

   #define BRLAPI_KEY_CMD_ASPK_CMP_WORDS   (BRLAPI_KEY_CMD(0) + 88)
       set autospeak completed words on/off

   #define BRLAPI_KEY_CMD_ASPK_DEL_CHARS   (BRLAPI_KEY_CMD(0) + 86)
       set autospeak deleted characters on/off

   #define BRLAPI_KEY_CMD_ASPK_EMP_LINE   (BRLAPI_KEY_CMD(0) + 156)
       set autospeak empty line on/off

   #define BRLAPI_KEY_CMD_ASPK_INDENT   (BRLAPI_KEY_CMD(0) + 126)
       set autospeak indent of current line on/off

   #define BRLAPI_KEY_CMD_ASPK_INS_CHARS   (BRLAPI_KEY_CMD(0) + 85)
       set autospeak inserted characters on/off

   #define BRLAPI_KEY_CMD_ASPK_REP_CHARS   (BRLAPI_KEY_CMD(0) + 87)
       set autospeak replaced characters on/off

   #define BRLAPI_KEY_CMD_ASPK_SEL_CHAR   (BRLAPI_KEY_CMD(0) + 84)
       set autospeak selected character on/off

   #define BRLAPI_KEY_CMD_ASPK_SEL_LINE   (BRLAPI_KEY_CMD(0) + 83)
       set autospeak selected line on/off

   #define BRLAPI_KEY_CMD_ATTRBLINK   (BRLAPI_KEY_CMD(0) + 44)
       set attribute blinking on/off

   #define BRLAPI_KEY_CMD_ATTRDN   (BRLAPI_KEY_CMD(0) + 8)
       go down to nearest line with different highlighting

   #define BRLAPI_KEY_CMD_ATTRUP   (BRLAPI_KEY_CMD(0) + 7)
       go up to nearest line with different highlighting

   #define BRLAPI_KEY_CMD_ATTRVIS   (BRLAPI_KEY_CMD(0) + 43)
       set attribute underlining on/off

   #define BRLAPI_KEY_CMD_AUTOREPEAT   (BRLAPI_KEY_CMD(0) + 47)
       set autorepeat on/off

   #define BRLAPI_KEY_CMD_AUTOSPEAK   (BRLAPI_KEY_CMD(0) + 48)
       set autospeak on/off

   #define BRLAPI_KEY_CMD_BACK   (BRLAPI_KEY_CMD(0) + 30)
       go back after cursor tracking

   #define BRLAPI_KEY_CMD_BLK_MASK   UINT64_C(0X1FFF0000)
       Mask for braille command type

   #define BRLAPI_KEY_CMD_BLK_SHIFT   16
       Shift for braille command type

   #define BRLAPI_KEY_CMD_BOT   (BRLAPI_KEY_CMD(0) + 10)
       go to bottom line

   #define BRLAPI_KEY_CMD_BOT_LEFT   (BRLAPI_KEY_CMD(0) + 12)
       go to beginning of bottom line

   #define BRLAPI_KEY_CMD_BRL_START   (BRLAPI_KEY_CMD(0) + 115)
       start the braille driver

   #define BRLAPI_KEY_CMD_BRL_STOP   (BRLAPI_KEY_CMD(0) + 114)
       stop the braille driver

   #define BRLAPI_KEY_CMD_BRLKBD   (BRLAPI_KEY_CMD(0) + 110)
       set braille keyboard enabled/disabled

   #define BRLAPI_KEY_CMD_BRLUCDOTS   (BRLAPI_KEY_CMD(0) + 109)
       set braille typing mode dots/text

   #define BRLAPI_KEY_CMD_CAPBLINK   (BRLAPI_KEY_CMD(0) + 45)
       set capital letter blinking on/off

   #define BRLAPI_KEY_CMD_CHRLT   (BRLAPI_KEY_CMD(0) + 19)
       go left one character

   #define BRLAPI_KEY_CMD_CHRRT   (BRLAPI_KEY_CMD(0) + 20)
       go right one character

   #define BRLAPI_KEY_CMD_CLIP_ADD   BRLAPI_KEY_CMD(3)
       append to clipboard from character

   #define BRLAPI_KEY_CMD_CLIP_APPEND   BRLAPI_KEY_CMD(17)
       append characters to clipboard

   #define BRLAPI_KEY_CMD_CLIP_COPY   BRLAPI_KEY_CMD(16)
       copy characters to clipboard

   #define BRLAPI_KEY_CMD_CLIP_NEW   BRLAPI_KEY_CMD(2)
       start new clipboard at character

   #define BRLAPI_KEY_CMD_CLIP_RESTORE   (BRLAPI_KEY_CMD(0) + 108)
       restore clipboard from disk

   #define BRLAPI_KEY_CMD_CLIP_SAVE   (BRLAPI_KEY_CMD(0) + 107)
       save clipboard to disk

   #define BRLAPI_KEY_CMD_COLOR   BRLAPI_KEY_CMD(42)
       describe color of character

   #define BRLAPI_KEY_CMD_COMPBRL6   (BRLAPI_KEY_CMD(0) + 154)
       set six/eight dot computer braille

   #define BRLAPI_KEY_CMD_CONTEXT   BRLAPI_KEY_CMD(38)
       switch to command context

   #define BRLAPI_KEY_CMD_CONTRACTED   (BRLAPI_KEY_CMD(0) + 153)
       set contracted/computer braille

   #define BRLAPI_KEY_CMD_CONTROL   (BRLAPI_KEY_CMD(0) + 79)
       cycle the Control sticky input modifier (next, on, off)

   #define BRLAPI_KEY_CMD_COPY_LINE   BRLAPI_KEY_CMD(5)
       linear copy to character

   #define BRLAPI_KEY_CMD_COPY_RECT   BRLAPI_KEY_CMD(4)
       rectangular copy to character

   #define BRLAPI_KEY_CMD_COPYCHARS   BRLAPI_KEY_CMD(16)
       deprecated definition of CLIP_COPY - copy characters to clipboard

   #define BRLAPI_KEY_CMD_CSRBLINK   (BRLAPI_KEY_CMD(0) + 42)
       set screen cursor blinking on/off

   #define BRLAPI_KEY_CMD_CSRHIDE   (BRLAPI_KEY_CMD(0) + 39)
       set hidden screen cursor on/off

   #define BRLAPI_KEY_CMD_CSRJMP_VERT   (BRLAPI_KEY_CMD(0) + 72)
       bring screen cursor to current line

   #define BRLAPI_KEY_CMD_CSRSIZE   (BRLAPI_KEY_CMD(0) + 41)
       set screen cursor style block/underline

   #define BRLAPI_KEY_CMD_CSRTRK   (BRLAPI_KEY_CMD(0) + 40)
       set track screen cursor on/off

   #define BRLAPI_KEY_CMD_CSRVIS   (BRLAPI_KEY_CMD(0) + 38)
       set screen cursor visibility on/off

   #define BRLAPI_KEY_CMD_CUTAPPEND   BRLAPI_KEY_CMD(3)
       deprecated definition of CLIP_ADD - append to clipboard from character

   #define BRLAPI_KEY_CMD_CUTBEGIN   BRLAPI_KEY_CMD(2)
       deprecated definition of CLIP_NEW - start new clipboard at character

   #define BRLAPI_KEY_CMD_CUTLINE   BRLAPI_KEY_CMD(5)
       deprecated definition of COPY_LINE - linear copy to character

   #define BRLAPI_KEY_CMD_CUTRECT   BRLAPI_KEY_CMD(4)
       deprecated definition of COPY_RECT - rectangular copy to character

   #define BRLAPI_KEY_CMD_DESC_CURR_CHAR   (BRLAPI_KEY_CMD(0) + 102)
       describe current character

   #define BRLAPI_KEY_CMD_DESCCHAR   BRLAPI_KEY_CMD(9)
       describe character

   #define BRLAPI_KEY_CMD_DISPMD   (BRLAPI_KEY_CMD(0) + 33)
       set display mode attributes/text

   #define BRLAPI_KEY_CMD_FREEZE   (BRLAPI_KEY_CMD(0) + 32)
       set screen image frozen/unfrozen

   #define BRLAPI_KEY_CMD_FWINLT   (BRLAPI_KEY_CMD(0) + 23)
       go backward one braille window

   #define BRLAPI_KEY_CMD_FWINLTSKIP   (BRLAPI_KEY_CMD(0) + 25)
       go backward skipping blank braille windows

   #define BRLAPI_KEY_CMD_FWINRT   (BRLAPI_KEY_CMD(0) + 24)
       go forward one braille window

   #define BRLAPI_KEY_CMD_FWINRTSKIP   (BRLAPI_KEY_CMD(0) + 26)
       go forward skipping blank braille windows

   #define BRLAPI_KEY_CMD_GOTOLINE   BRLAPI_KEY_CMD(13)
       go to selected line

   #define BRLAPI_KEY_CMD_GOTOMARK   BRLAPI_KEY_CMD(12)
       go to remembered braille window position

   #define BRLAPI_KEY_CMD_GUI   (BRLAPI_KEY_CMD(0) + 113)
       cycle the GUI (Windows) sticky input modifier (next, on, off)

   #define BRLAPI_KEY_CMD_GUI_APP_ALERTS   (BRLAPI_KEY_CMD(0) + 142)
       open the application alerts window

   #define BRLAPI_KEY_CMD_GUI_APP_LIST   (BRLAPI_KEY_CMD(0) + 140)
       open the application list window

   #define BRLAPI_KEY_CMD_GUI_APP_MENU   (BRLAPI_KEY_CMD(0) + 141)
       open the application-specific menu

   #define BRLAPI_KEY_CMD_GUI_AREA_ACTV   (BRLAPI_KEY_CMD(0) + 143)
       return to the active screen area

   #define BRLAPI_KEY_CMD_GUI_AREA_NEXT   (BRLAPI_KEY_CMD(0) + 145)
       switch to the next screen area

   #define BRLAPI_KEY_CMD_GUI_AREA_PREV   (BRLAPI_KEY_CMD(0) + 144)
       switch to the previous screen area

   #define BRLAPI_KEY_CMD_GUI_BACK   (BRLAPI_KEY_CMD(0) + 137)
       go back to the previous screen

   #define BRLAPI_KEY_CMD_GUI_BRL_ACTIONS   (BRLAPI_KEY_CMD(0) + 135)
       open the braille actions window

   #define BRLAPI_KEY_CMD_GUI_DEV_OPTIONS   (BRLAPI_KEY_CMD(0) + 139)
       open the device options window

   #define BRLAPI_KEY_CMD_GUI_DEV_SETTINGS   (BRLAPI_KEY_CMD(0) + 138)
       open the device settings window

   #define BRLAPI_KEY_CMD_GUI_HOME   (BRLAPI_KEY_CMD(0) + 136)
       go to the home screen

   #define BRLAPI_KEY_CMD_GUI_ITEM_FRST   (BRLAPI_KEY_CMD(0) + 146)
       move to the first item in the screen area

   #define BRLAPI_KEY_CMD_GUI_ITEM_LAST   (BRLAPI_KEY_CMD(0) + 149)
       move to the last item in the screen area

   #define BRLAPI_KEY_CMD_GUI_ITEM_NEXT   (BRLAPI_KEY_CMD(0) + 148)
       move to the next item in the screen area

   #define BRLAPI_KEY_CMD_GUI_ITEM_PREV   (BRLAPI_KEY_CMD(0) + 147)
       move to the previous item in the screen area

   #define BRLAPI_KEY_CMD_GUI_TITLE   (BRLAPI_KEY_CMD(0) + 134)
       show the window title

   #define BRLAPI_KEY_CMD_HELP   (BRLAPI_KEY_CMD(0) + 49)
       enter/leave help display

   #define BRLAPI_KEY_CMD_HOME   (BRLAPI_KEY_CMD(0) + 29)
       go to screen cursor

   #define BRLAPI_KEY_CMD_HOST_COPY   (BRLAPI_KEY_CMD(0) + 131)
       copy selected text to host clipboard

   #define BRLAPI_KEY_CMD_HOST_CUT   (BRLAPI_KEY_CMD(0) + 132)
       cut selected text to host clipboard

   #define BRLAPI_KEY_CMD_HOST_PASTE   (BRLAPI_KEY_CMD(0) + 133)
       insert the host clipboard text before the screen cursor

   #define BRLAPI_KEY_CMD_HOSTCMD   BRLAPI_KEY_CMD(41)
       run host command

   #define BRLAPI_KEY_CMD_HWINLT   (BRLAPI_KEY_CMD(0) + 21)
       go left half a braille window

   #define BRLAPI_KEY_CMD_HWINRT   (BRLAPI_KEY_CMD(0) + 22)
       go right half a braille window

   #define BRLAPI_KEY_CMD_INDICATORS   (BRLAPI_KEY_CMD(0) + 128)
       show various device status indicators

   #define BRLAPI_KEY_CMD_INFO   (BRLAPI_KEY_CMD(0) + 50)
       enter/leave status display

   #define BRLAPI_KEY_CMD_LEARN   (BRLAPI_KEY_CMD(0) + 51)
       enter/leave command learn mode

   #define BRLAPI_KEY_CMD_LNBEG   (BRLAPI_KEY_CMD(0) + 27)
       go to beginning of line

   #define BRLAPI_KEY_CMD_LNDN   (BRLAPI_KEY_CMD(0) + 2)
       go down one line

   #define BRLAPI_KEY_CMD_LNEND   (BRLAPI_KEY_CMD(0) + 28)
       go to end of line

   #define BRLAPI_KEY_CMD_LNUP   (BRLAPI_KEY_CMD(0) + 1)
       go up one line

   #define BRLAPI_KEY_CMD_MACRO   BRLAPI_KEY_CMD(40)
       execute command macro

   #define BRLAPI_KEY_CMD_MENU_FIRST_ITEM   (BRLAPI_KEY_CMD(0) + 55)
       go up to first item

   #define BRLAPI_KEY_CMD_MENU_LAST_ITEM   (BRLAPI_KEY_CMD(0) + 56)
       go down to last item

   #define BRLAPI_KEY_CMD_MENU_NEXT_ITEM   (BRLAPI_KEY_CMD(0) + 58)
       go down to next item

   #define BRLAPI_KEY_CMD_MENU_NEXT_SETTING   (BRLAPI_KEY_CMD(0) + 60)
       select next choice

   #define BRLAPI_KEY_CMD_MENU_PREV_ITEM   (BRLAPI_KEY_CMD(0) + 57)
       go up to previous item

   #define BRLAPI_KEY_CMD_MENU_PREV_LEVEL   (BRLAPI_KEY_CMD(0) + 82)
       go to previous menu level

   #define BRLAPI_KEY_CMD_MENU_PREV_SETTING   (BRLAPI_KEY_CMD(0) + 59)
       select previous choice

   #define BRLAPI_KEY_CMD_META   (BRLAPI_KEY_CMD(0) + 80)
       cycle the Meta (Left Alt) sticky input modifier (next, on, off)

   #define BRLAPI_KEY_CMD_MUTE   (BRLAPI_KEY_CMD(0) + 61)
       stop speaking

   #define BRLAPI_KEY_CMD_NOOP   (BRLAPI_KEY_CMD(0) + 0)
       do nothing

   #define BRLAPI_KEY_CMD_NXDIFCHAR   BRLAPI_KEY_CMD(15)
       go down to nearest line with different character

   #define BRLAPI_KEY_CMD_NXDIFLN   (BRLAPI_KEY_CMD(0) + 6)
       go down to nearest line with different content

   #define BRLAPI_KEY_CMD_NXINDENT   BRLAPI_KEY_CMD(8)
       go down to nearest line with less indent than character

   #define BRLAPI_KEY_CMD_NXNBWIN   (BRLAPI_KEY_CMD(0) + 123)
       go forward to nearest non-blank braille window

   #define BRLAPI_KEY_CMD_NXPGRPH   (BRLAPI_KEY_CMD(0) + 14)
       go down to first line of next paragraph

   #define BRLAPI_KEY_CMD_NXPROMPT   (BRLAPI_KEY_CMD(0) + 16)
       go down to next command prompt

   #define BRLAPI_KEY_CMD_NXSEARCH   (BRLAPI_KEY_CMD(0) + 18)
       search forward for clipboard text

   #define BRLAPI_KEY_CMD_OFFLINE   (BRLAPI_KEY_CMD(0) + 76)
       braille display temporarily unavailable

   #define BRLAPI_KEY_CMD_PASSAT   BRLAPI_KEY_CMD(35)
       AT (set 2) keyboard scan code

   #define BRLAPI_KEY_CMD_PASSDOTS   BRLAPI_KEY_CMD(34)
       type braille dots

   #define BRLAPI_KEY_CMD_PASSPS2   BRLAPI_KEY_CMD(37)
       PS/2 (set 3) keyboard scan code

   #define BRLAPI_KEY_CMD_PASSXT   BRLAPI_KEY_CMD(36)
       XT (set 1) keyboard scan code

   #define BRLAPI_KEY_CMD_PASTE   (BRLAPI_KEY_CMD(0) + 73)
       insert the clipboard content before the screen cursor

   #define BRLAPI_KEY_CMD_PASTE_ALTMODE   (BRLAPI_KEY_CMD(0) + 158)
       insert the clipboard content before the screen cursor using the
       alternate paste mode

   #define BRLAPI_KEY_CMD_PASTE_HISTORY   BRLAPI_KEY_CMD(18)
       insert a clipboard history entry before the screen cursor

   #define BRLAPI_KEY_CMD_PASTE_HISTORY_ALTMODE   BRLAPI_KEY_CMD(29)
       insert a clipboard history entry before the screen cursor using the
       alternate paste mode

   #define BRLAPI_KEY_CMD_PRDIFCHAR   BRLAPI_KEY_CMD(14)
       go up to nearest line with different character

   #define BRLAPI_KEY_CMD_PRDIFLN   (BRLAPI_KEY_CMD(0) + 5)
       go up to nearest line with different content

   #define BRLAPI_KEY_CMD_PREFLOAD   (BRLAPI_KEY_CMD(0) + 54)
       restore preferences from disk

   #define BRLAPI_KEY_CMD_PREFMENU   (BRLAPI_KEY_CMD(0) + 52)
       enter/leave preferences menu

   #define BRLAPI_KEY_CMD_PREFRESET   (BRLAPI_KEY_CMD(0) + 155)
       reset preferences to defaults

   #define BRLAPI_KEY_CMD_PREFSAVE   (BRLAPI_KEY_CMD(0) + 53)
       save preferences to disk

   #define BRLAPI_KEY_CMD_PRINDENT   BRLAPI_KEY_CMD(7)
       go up to nearest line with less indent than character

   #define BRLAPI_KEY_CMD_PRNBWIN   (BRLAPI_KEY_CMD(0) + 122)
       go backward to nearest non-blank braille window

   #define BRLAPI_KEY_CMD_PRPGRPH   (BRLAPI_KEY_CMD(0) + 13)
       go up to first line of paragraph

   #define BRLAPI_KEY_CMD_PRPROMPT   (BRLAPI_KEY_CMD(0) + 15)
       go up to previous command prompt

   #define BRLAPI_KEY_CMD_PRSEARCH   (BRLAPI_KEY_CMD(0) + 17)
       search backward for clipboard text

   #define BRLAPI_KEY_CMD_REFRESH   (BRLAPI_KEY_CMD(0) + 127)
       refresh braille display

   #define BRLAPI_KEY_CMD_REFRESH_LINE   BRLAPI_KEY_CMD(25)
       refresh braille line

   #define BRLAPI_KEY_CMD_RESTARTBRL   (BRLAPI_KEY_CMD(0) + 74)
       restart braille driver

   #define BRLAPI_KEY_CMD_RESTARTSPEECH   (BRLAPI_KEY_CMD(0) + 75)
       restart speech driver

   #define BRLAPI_KEY_CMD_RETURN   (BRLAPI_KEY_CMD(0) + 31)
       go to screen cursor or go back after cursor tracking

   #define BRLAPI_KEY_CMD_ROUTE   BRLAPI_KEY_CMD(1)
       bring screen cursor to character

   #define BRLAPI_KEY_CMD_ROUTE_CURR_LOCN   (BRLAPI_KEY_CMD(0) + 104)
       bring screen cursor to speech cursor

   #define BRLAPI_KEY_CMD_ROUTE_LINE   BRLAPI_KEY_CMD(24)
       bring screen cursor to line

   #define BRLAPI_KEY_CMD_ROUTE_SPEECH   BRLAPI_KEY_CMD(28)
       bring speech cursor to character

   #define BRLAPI_KEY_CMD_SAY_ABOVE   (BRLAPI_KEY_CMD(0) + 64)
       speak from top of screen through current line

   #define BRLAPI_KEY_CMD_SAY_ALL   (BRLAPI_KEY_CMD(0) + 152)
       speak from top of screen through bottom of screen

   #define BRLAPI_KEY_CMD_SAY_BELOW   (BRLAPI_KEY_CMD(0) + 65)
       speak from current line through bottom of screen

   #define BRLAPI_KEY_CMD_SAY_FASTER   (BRLAPI_KEY_CMD(0) + 67)
       increase speaking rate

   #define BRLAPI_KEY_CMD_SAY_HIGHER   (BRLAPI_KEY_CMD(0) + 151)
       increase speaking pitch

   #define BRLAPI_KEY_CMD_SAY_LINE   (BRLAPI_KEY_CMD(0) + 63)
       speak current line

   #define BRLAPI_KEY_CMD_SAY_LOUDER   (BRLAPI_KEY_CMD(0) + 69)
       increase speaking volume

   #define BRLAPI_KEY_CMD_SAY_LOWER   (BRLAPI_KEY_CMD(0) + 150)
       decrease speaking pitch

   #define BRLAPI_KEY_CMD_SAY_SLOWER   (BRLAPI_KEY_CMD(0) + 66)
       decrease speaking rate

   #define BRLAPI_KEY_CMD_SAY_SOFTER   (BRLAPI_KEY_CMD(0) + 68)
       decrease speaking volume

   #define BRLAPI_KEY_CMD_SCR_START   (BRLAPI_KEY_CMD(0) + 119)
       start the screen driver

   #define BRLAPI_KEY_CMD_SCR_STOP   (BRLAPI_KEY_CMD(0) + 118)
       stop the screen driver

   #define BRLAPI_KEY_CMD_SELECTVT   BRLAPI_KEY_CMD(30)
       bind to specific virtual terminal

   #define BRLAPI_KEY_CMD_SELECTVT_NEXT   (BRLAPI_KEY_CMD(0) + 121)
       bind to the next virtual terminal

   #define BRLAPI_KEY_CMD_SELECTVT_PREV   (BRLAPI_KEY_CMD(0) + 120)
       bind to the previous virtual terminal

   #define BRLAPI_KEY_CMD_SET_ATTRIBUTES_TABLE   BRLAPI_KEY_CMD(20)
       set attributes table

   #define BRLAPI_KEY_CMD_SET_CONTRACTION_TABLE   BRLAPI_KEY_CMD(21)
       set contraction table

   #define BRLAPI_KEY_CMD_SET_KEYBOARD_TABLE   BRLAPI_KEY_CMD(22)
       set keyboard table

   #define BRLAPI_KEY_CMD_SET_LANGUAGE_PROFILE   BRLAPI_KEY_CMD(23)
       set language profile

   #define BRLAPI_KEY_CMD_SET_TEXT_TABLE   BRLAPI_KEY_CMD(19)
       set text table

   #define BRLAPI_KEY_CMD_SETLEFT   BRLAPI_KEY_CMD(10)
       place left end of braille window at character

   #define BRLAPI_KEY_CMD_SETMARK   BRLAPI_KEY_CMD(11)
       remember current braille window position

   #define BRLAPI_KEY_CMD_SHIFT   (BRLAPI_KEY_CMD(0) + 77)
       cycle the Shift sticky input modifier (next, on, off)

   #define BRLAPI_KEY_CMD_SHOW_CURR_LOCN   (BRLAPI_KEY_CMD(0) + 106)
       set speech cursor visibility on/off

   #define BRLAPI_KEY_CMD_SIXDOTS   (BRLAPI_KEY_CMD(0) + 34)
       set text style 6-dot/8-dot

   #define BRLAPI_KEY_CMD_SKPBLNKWINS   (BRLAPI_KEY_CMD(0) + 37)
       set skipping of blank braille windows on/off

   #define BRLAPI_KEY_CMD_SKPIDLNS   (BRLAPI_KEY_CMD(0) + 36)
       set skipping of lines with identical content on/off

   #define BRLAPI_KEY_CMD_SLIDEWIN   (BRLAPI_KEY_CMD(0) + 35)
       set sliding braille window on/off

   #define BRLAPI_KEY_CMD_SPEAK_CURR_CHAR   (BRLAPI_KEY_CMD(0) + 89)
       speak current character

   #define BRLAPI_KEY_CMD_SPEAK_CURR_LINE   (BRLAPI_KEY_CMD(0) + 95)
       speak current line

   #define BRLAPI_KEY_CMD_SPEAK_CURR_LOCN   (BRLAPI_KEY_CMD(0) + 105)
       speak speech cursor location

   #define BRLAPI_KEY_CMD_SPEAK_CURR_PWRD   (BRLAPI_KEY_CMD(0) + 159)
       speak current partial (identifier or symbols) word

   #define BRLAPI_KEY_CMD_SPEAK_CURR_WORD   (BRLAPI_KEY_CMD(0) + 92)
       speak current whitespace-delimited word

   #define BRLAPI_KEY_CMD_SPEAK_FRST_CHAR   (BRLAPI_KEY_CMD(0) + 98)
       go to and speak first non-blank character on line

   #define BRLAPI_KEY_CMD_SPEAK_FRST_LINE   (BRLAPI_KEY_CMD(0) + 100)
       go to and speak first non-blank line on screen

   #define BRLAPI_KEY_CMD_SPEAK_INDENT   (BRLAPI_KEY_CMD(0) + 125)
       speak indent of current line

   #define BRLAPI_KEY_CMD_SPEAK_LAST_CHAR   (BRLAPI_KEY_CMD(0) + 99)
       go to and speak last non-blank character on line

   #define BRLAPI_KEY_CMD_SPEAK_LAST_LINE   (BRLAPI_KEY_CMD(0) + 101)
       go to and speak last non-blank line on screen

   #define BRLAPI_KEY_CMD_SPEAK_NEXT_CHAR   (BRLAPI_KEY_CMD(0) + 91)
       go to and speak next character

   #define BRLAPI_KEY_CMD_SPEAK_NEXT_LINE   (BRLAPI_KEY_CMD(0) + 97)
       go to and speak next line

   #define BRLAPI_KEY_CMD_SPEAK_NEXT_PWRD   (BRLAPI_KEY_CMD(0) + 161)
       go to and speak next partial (identifier or symbols) word

   #define BRLAPI_KEY_CMD_SPEAK_NEXT_WORD   (BRLAPI_KEY_CMD(0) + 94)
       go to and speak next whitespace-delimited word

   #define BRLAPI_KEY_CMD_SPEAK_PREV_CHAR   (BRLAPI_KEY_CMD(0) + 90)
       go to and speak previous character

   #define BRLAPI_KEY_CMD_SPEAK_PREV_LINE   (BRLAPI_KEY_CMD(0) + 96)
       go to and speak previous line

   #define BRLAPI_KEY_CMD_SPEAK_PREV_PWRD   (BRLAPI_KEY_CMD(0) + 160)
       go to and speak previous partial (identifier or symbols) word

   #define BRLAPI_KEY_CMD_SPEAK_PREV_WORD   (BRLAPI_KEY_CMD(0) + 93)
       go to and speak previous whitespace-delimited word

   #define BRLAPI_KEY_CMD_SPELL_CURR_LINE   (BRLAPI_KEY_CMD(0) + 163)
       spell current line

   #define BRLAPI_KEY_CMD_SPELL_CURR_PWRD   (BRLAPI_KEY_CMD(0) + 162)
       spell current partial (identifier or symbols) word

   #define BRLAPI_KEY_CMD_SPELL_CURR_WORD   (BRLAPI_KEY_CMD(0) + 103)
       spell current whitespace-delimited word

   #define BRLAPI_KEY_CMD_SPK_PUNCT_LEVEL   (BRLAPI_KEY_CMD(0) + 157)
       cycle speech punctuation level

   #define BRLAPI_KEY_CMD_SPK_START   (BRLAPI_KEY_CMD(0) + 117)
       start the speech driver

   #define BRLAPI_KEY_CMD_SPK_STOP   (BRLAPI_KEY_CMD(0) + 116)
       stop the speech driver

   #define BRLAPI_KEY_CMD_SPKHOME   (BRLAPI_KEY_CMD(0) + 62)
       go to current speaking position

   #define BRLAPI_KEY_CMD_SWITCHVT   BRLAPI_KEY_CMD(6)
       switch to specific virtual terminal

   #define BRLAPI_KEY_CMD_SWITCHVT_NEXT   (BRLAPI_KEY_CMD(0) + 71)
       switch to the next virtual terminal

   #define BRLAPI_KEY_CMD_SWITCHVT_PREV   (BRLAPI_KEY_CMD(0) + 70)
       switch to the previous virtual terminal

   #define BRLAPI_KEY_CMD_TIME   (BRLAPI_KEY_CMD(0) + 81)
       show current date and time

   #define BRLAPI_KEY_CMD_TOP   (BRLAPI_KEY_CMD(0) + 9)
       go to top line

   #define BRLAPI_KEY_CMD_TOP_LEFT   (BRLAPI_KEY_CMD(0) + 11)
       go to beginning of top line

   #define BRLAPI_KEY_CMD_TOUCH_AT   BRLAPI_KEY_CMD(39)
       current reading location

   #define BRLAPI_KEY_CMD_TOUCH_NAV   (BRLAPI_KEY_CMD(0) + 124)
       set touch navigation on/off

   #define BRLAPI_KEY_CMD_TUNES   (BRLAPI_KEY_CMD(0) + 46)
       set alert tunes on/off

   #define BRLAPI_KEY_CMD_TXTSEL_ALL   (BRLAPI_KEY_CMD(0) + 130)
       select all of the text

   #define BRLAPI_KEY_CMD_TXTSEL_CLEAR   (BRLAPI_KEY_CMD(0) + 129)
       clear the text selection

   #define BRLAPI_KEY_CMD_TXTSEL_SET   BRLAPI_KEY_CMD(27)
       set text selection

   #define BRLAPI_KEY_CMD_TXTSEL_START   BRLAPI_KEY_CMD(26)
       start text selection

   #define BRLAPI_KEY_CMD_UNSTICK   (BRLAPI_KEY_CMD(0) + 111)
       clear all sticky input modifiers

   #define BRLAPI_KEY_CMD_UPPER   (BRLAPI_KEY_CMD(0) + 78)
       cycle the Upper sticky input modifier (next, on, off)

   #define BRLAPI_KEY_CMD_WINDN   (BRLAPI_KEY_CMD(0) + 4)
       go down several lines

   #define BRLAPI_KEY_CMD_WINUP   (BRLAPI_KEY_CMD(0) + 3)
       go up several lines

   #define BRLAPI_KEY_CODE_MASK   UINT64_C(0X000000001FFFFFFF)
       Mask for code of brlapi_keyCode_t

   #define BRLAPI_KEY_CODE_SHIFT   0
       Shift for code of brlapi_keyCode_t

   #define BRLAPI_KEY_FLAGS_MASK   UINT64_C(0XFFFFFFFF00000000)
       Mask for flags of brlapi_keyCode_t

   #define BRLAPI_KEY_FLAGS_SHIFT   32
       Shift for flags of brlapi_keyCode_t

   #define BRLAPI_KEY_FLG(v)   ((brlapi_keyCode_t)(v) <<
       BRLAPI_KEY_FLAGS_SHIFT)
   #define BRLAPI_KEY_FLG_ALTGR   BRLAPI_KEY_FLG(0X10)
       altgr (right alt) key pressed

   #define BRLAPI_KEY_FLG_CAPSLOCK   BRLAPI_KEY_FLG(0X80)
       capslock key pressed

   #define BRLAPI_KEY_FLG_CONTROL   BRLAPI_KEY_FLG(0X04)
       control key pressed

   #define BRLAPI_KEY_FLG_ESCAPED   BRLAPI_KEY_FLG(0X40)
       prefix with escape

   #define BRLAPI_KEY_FLG_GUI   BRLAPI_KEY_FLG(0X20)
       gui (windows) key pressed

   #define BRLAPI_KEY_FLG_KBD_EMUL0   BRLAPI_KEY_FLG(0X0200)
       it is an emulation 0 scan code

   #define BRLAPI_KEY_FLG_KBD_EMUL1   BRLAPI_KEY_FLG(0X0400)
       it is an emulation 1 scan code

   #define BRLAPI_KEY_FLG_KBD_RELEASE   BRLAPI_KEY_FLG(0X0100)
       it is a release scan code

   #define BRLAPI_KEY_FLG_META   BRLAPI_KEY_FLG(0X08)
       meta (left alt) key pressed

   #define BRLAPI_KEY_FLG_MOD1   BRLAPI_KEY_FLG(0x00000008)
       Standard X modifiers Mod1 modifier (AKA meta)

   #define BRLAPI_KEY_FLG_MOD2   BRLAPI_KEY_FLG(0x00000010)
       Mod2 modifier (usually numlock)

   #define BRLAPI_KEY_FLG_MOD3   BRLAPI_KEY_FLG(0x00000020)
       Mod3 modifier

   #define BRLAPI_KEY_FLG_MOD4   BRLAPI_KEY_FLG(0x00000040)
       Mod4 modifier

   #define BRLAPI_KEY_FLG_MOD5   BRLAPI_KEY_FLG(0x00000080)
       Mod5 modifier (usually Alt-Gr)

   #define BRLAPI_KEY_FLG_MOTION_ROUTE   BRLAPI_KEY_FLG(0X0400)
       bring screen cursor into braille window after function

   #define BRLAPI_KEY_FLG_MOTION_SCALED   BRLAPI_KEY_FLG(0X0800)
       scale arg=0X00-0XFF to screen height

   #define BRLAPI_KEY_FLG_MOTION_TOLEFT   BRLAPI_KEY_FLG(0X1000)
       go to beginning of line

   #define BRLAPI_KEY_FLG_SHIFT   BRLAPI_KEY_FLG(0X01)
       shift key pressed

   #define BRLAPI_KEY_FLG_TOGGLE_MASK   (BRLAPI_KEY_FLG_TOGGLE_ON |
       BRLAPI_KEY_FLG_TOGGLE_OFF)
       mask for all toggle flags

   #define BRLAPI_KEY_FLG_TOGGLE_OFF   BRLAPI_KEY_FLG(0X0200)
       disable feature

   #define BRLAPI_KEY_FLG_TOGGLE_ON   BRLAPI_KEY_FLG(0X0100)
       enable feature

   #define BRLAPI_KEY_FLG_UPPER   BRLAPI_KEY_FLG(0X02)
       convert to uppercase

   #define BRLAPI_KEY_MAX   UINT64_C(0XFFFFFFFFFFFFFFFF)
       Brlapi_keyCode_t's biggest value

       As defined in <stdint.h>

   #define BRLAPI_KEY_SYM_BACKSPACE   UINT64_C(0X0000FF08)
       Standard X keysyms

   #define BRLAPI_KEY_SYM_DELETE   UINT64_C(0X0000FFFF)
   #define BRLAPI_KEY_SYM_DOWN   UINT64_C(0X0000FF54)
   #define BRLAPI_KEY_SYM_END   UINT64_C(0X0000FF57)
   #define BRLAPI_KEY_SYM_ESCAPE   UINT64_C(0X0000FF1B)
   #define BRLAPI_KEY_SYM_FUNCTION   UINT64_C(0X0000FFBE)
   #define BRLAPI_KEY_SYM_HOME   UINT64_C(0X0000FF50)
   #define BRLAPI_KEY_SYM_INSERT   UINT64_C(0X0000FF63)
   #define BRLAPI_KEY_SYM_LEFT   UINT64_C(0X0000FF51)
   #define BRLAPI_KEY_SYM_LINEFEED   UINT64_C(0X0000FF0D)
   #define BRLAPI_KEY_SYM_PAGE_DOWN   UINT64_C(0X0000FF56)
   #define BRLAPI_KEY_SYM_PAGE_UP   UINT64_C(0X0000FF55)
   #define BRLAPI_KEY_SYM_RIGHT   UINT64_C(0X0000FF53)
   #define BRLAPI_KEY_SYM_TAB   UINT64_C(0X0000FF09)
   #define BRLAPI_KEY_SYM_UNICODE   UINT64_C(0X01000000)
   #define BRLAPI_KEY_SYM_UP   UINT64_C(0X0000FF52)
   #define BRLAPI_KEY_TYPE_CMD   UINT64_C(0X0000000020000000)
       Braille command brlapi_keyCode_t

   #define BRLAPI_KEY_TYPE_MASK   UINT64_C(0X00000000E0000000)
       Mask for type of brlapi_keyCode_t

   #define BRLAPI_KEY_TYPE_SHIFT   29
       Shift for type of brlapi_keyCode_t

   #define BRLAPI_KEY_TYPE_SYM   UINT64_C(0X0000000000000000)
       X Keysym brlapi_keyCode_t

   #define BRLAPI_KEYCODE_C(value)   UINT64_C(value)
       Define a brlapi_keyCode_t constant

   #define BRLAPI_PRIuKEYCODE   PRIu64
       Unsigned decimal print format for brlapi_keyCode_t

   #define BRLAPI_PRIxKEYCODE   PRIx64
       Hexadecimal print format for brlapi_keyCode_t

Typedef Documentation
   typedef uint64_t brlapi_keyCode_t
Author
       Generated automatically by Doxygen for BrlAPI from the source code.



Version 0.8                     Tue Feb 17 2026             brlapi_keycodes(3)
