Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) #ifndef I18N_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) #define I18N_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) /* Internationalization declarations */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) enum msg_index_t {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) 	MSG_FIRST_INDEX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) 	MSG_ANNOUNCEMENTS_START = MSG_FIRST_INDEX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) 	MSG_BLANK = MSG_ANNOUNCEMENTS_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) 	MSG_IAM_ALIVE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) 	MSG_YOU_KILLED_SPEAKUP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) 	MSG_HEY_THATS_BETTER,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) 	MSG_YOU_TURNED_ME_OFF,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) 	MSG_PARKED,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 	MSG_UNPARKED,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) 	MSG_MARK,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) 	MSG_CUT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) 	MSG_MARK_CLEARED,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) 	MSG_PASTE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 	MSG_BRIGHT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) 	MSG_ON_BLINKING,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 	MSG_STATUS_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) 	MSG_OFF = MSG_STATUS_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) 	MSG_ON,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 	MSG_NO_WINDOW,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) 	MSG_CURSOR_MSGS_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 	MSG_CURSORING_OFF = MSG_CURSOR_MSGS_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) 	MSG_CURSORING_ON,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) 	MSG_HIGHLIGHT_TRACKING,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 	MSG_READ_WINDOW,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) 	MSG_READ_ALL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 	MSG_EDIT_DONE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) 	MSG_WINDOW_ALREADY_SET,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) 	MSG_END_BEFORE_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) 	MSG_WINDOW_CLEARED,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 	MSG_WINDOW_SILENCED,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) 	MSG_WINDOW_SILENCE_DISABLED,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) 	MSG_ERROR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 	MSG_GOTO_CANCELED,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) 	MSG_GOTO,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 	MSG_LEAVING_HELP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) 	MSG_IS_UNASSIGNED,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) 	MSG_HELP_INFO,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) 	MSG_EDGE_MSGS_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 	MSG_EDGE_TOP  = MSG_EDGE_MSGS_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) 	MSG_EDGE_BOTTOM,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) 	MSG_EDGE_LEFT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) 	MSG_EDGE_RIGHT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) 	MSG_NUMBER,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 	MSG_SPACE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 	MSG_START, /* A little confusing, given our convention. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) 	MSG_END, /* A little confusing, given our convention. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 	MSG_CTRL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) /* A message containing the single word "or". */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 	MSG_DISJUNCTION,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) 	MSG_ANNOUNCEMENTS_END = MSG_DISJUNCTION,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) /* Messages with format specifiers. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 	MSG_FORMATTED_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 	MSG_POS_INFO = MSG_FORMATTED_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) 	MSG_CHAR_INFO,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 	MSG_REPEAT_DESC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 	MSG_REPEAT_DESC2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) 	MSG_WINDOW_LINE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 	MSG_WINDOW_BOUNDARY,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) 	MSG_EDIT_PROMPT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 	MSG_NO_COMMAND,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) 	MSG_KEYDESC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 	MSG_FORMATTED_END = MSG_KEYDESC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 	/* Control keys. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 	MSG_CTL_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 	MSG_CTL_SHIFT = MSG_CTL_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) 	MSG_CTL_ALTGR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 	MSG_CTL_CONTROL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) 	MSG_CTL_ALT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) 	MSG_CTL_LSHIFT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) 	MSG_CTL_SPEAKUP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) 	MSG_CTL_LCONTROL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 	MSG_CTL_RCONTROL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 	MSG_CTL_CAPSSHIFT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 	MSG_CTL_END = MSG_CTL_CAPSSHIFT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 	/* Colors. */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 	MSG_COLORS_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 	MSG_COLOR_BLACK = MSG_COLORS_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) 	MSG_COLOR_BLUE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) 	MSG_COLOR_GREEN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 	MSG_COLOR_CYAN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) 	MSG_COLOR_RED,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) 	MSG_COLOR_MAGENTA,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 	MSG_COLOR_YELLOW,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 	MSG_COLOR_WHITE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) 	MSG_COLOR_GREY,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 	MSG_COLORS_END = MSG_COLOR_GREY,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) 	MSG_STATES_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 	MSG_STATE_DOUBLE = MSG_STATES_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) 	MSG_STATE_SPEAKUP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) 	MSG_STATE_ALT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) 	MSG_STATE_CONTROL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) 	MSG_STATE_ALTGR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) 	MSG_STATE_SHIFT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) 	MSG_STATES_END = MSG_STATE_SHIFT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) 	MSG_KEYNAMES_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 	MSG_KEYNAME_ESC = MSG_KEYNAMES_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) 	MSG_KEYNAME_1, MSG_KEYNAME_2, MSG_KEYNAME_3, MSG_KEYNAME_4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) 	MSG_KEYNAME_5, MSG_KEYNAME_6, MSG_KEYNAME_7, MSG_KEYNAME_8,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 	MSG_KEYNAME_9,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 	MSG_KEYNAME_0, MSG_KEYNAME_DASH, MSG_KEYNAME_EQUAL, MSG_KEYNAME_BS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) 	MSG_KEYNAME_TAB,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 	MSG_KEYNAME_Q, MSG_KEYNAME_W, MSG_KEYNAME_E, MSG_KEYNAME_R,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) 	MSG_KEYNAME_T, MSG_KEYNAME_Y, MSG_KEYNAME_U, MSG_KEYNAME_I,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 	MSG_KEYNAME_O, MSG_KEYNAME_P,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 	MSG_KEYNAME_LEFTBRACE, MSG_KEYNAME_RIGHTBRACE, MSG_KEYNAME_ENTER,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 	MSG_KEYNAME_LEFTCTRL, MSG_KEYNAME_A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 	MSG_KEYNAME_S, MSG_KEYNAME_D, MSG_KEYNAME_F, MSG_KEYNAME_G,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 	MSG_KEYNAME_H, MSG_KEYNAME_J, MSG_KEYNAME_K, MSG_KEYNAME_L,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) 	MSG_KEYNAME_SEMICOLON,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 	MSG_KEYNAME_SINGLEQUOTE, MSG_KEYNAME_GRAVE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) 	MSG_KEYNAME_LEFTSHFT, MSG_KEYNAME_BACKSLASH, MSG_KEYNAME_Z,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) 	MSG_KEYNAME_X, MSG_KEYNAME_C, MSG_KEYNAME_V, MSG_KEYNAME_B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 	MSG_KEYNAME_N, MSG_KEYNAME_M, MSG_KEYNAME_COMMA, MSG_KEYNAME_DOT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 	MSG_KEYNAME_SLASH, MSG_KEYNAME_RIGHTSHFT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) 	MSG_KEYNAME_KPSTAR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 	MSG_KEYNAME_LEFTALT, MSG_KEYNAME_SPACE, MSG_KEYNAME_CAPSLOCK,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 	MSG_KEYNAME_F1, MSG_KEYNAME_F2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 	MSG_KEYNAME_F3, MSG_KEYNAME_F4, MSG_KEYNAME_F5, MSG_KEYNAME_F6,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) 	MSG_KEYNAME_F7,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) 	MSG_KEYNAME_F8, MSG_KEYNAME_F9, MSG_KEYNAME_F10, MSG_KEYNAME_NUMLOCK,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 	MSG_KEYNAME_SCROLLLOCK,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 	MSG_KEYNAME_KP7, MSG_KEYNAME_KP8, MSG_KEYNAME_KP9, MSG_KEYNAME_KPMINUS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) 	MSG_KEYNAME_KP4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) 	MSG_KEYNAME_KP5, MSG_KEYNAME_KP6, MSG_KEYNAME_KPPLUS, MSG_KEYNAME_KP1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) 	MSG_KEYNAME_KP2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) 	MSG_KEYNAME_KP3, MSG_KEYNAME_KP0, MSG_KEYNAME_KPDOT, MSG_KEYNAME_103RD,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 	MSG_KEYNAME_F13,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) 	MSG_KEYNAME_102ND, MSG_KEYNAME_F11, MSG_KEYNAME_F12, MSG_KEYNAME_F14,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) 	MSG_KEYNAME_F15,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) 	MSG_KEYNAME_F16, MSG_KEYNAME_F17, MSG_KEYNAME_F18, MSG_KEYNAME_F19,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 	MSG_KEYNAME_F20,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) 	MSG_KEYNAME_KPENTER, MSG_KEYNAME_RIGHTCTRL, MSG_KEYNAME_KPSLASH,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 	MSG_KEYNAME_SYSRQ, MSG_KEYNAME_RIGHTALT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 	MSG_KEYNAME_LF, MSG_KEYNAME_HOME, MSG_KEYNAME_UP, MSG_KEYNAME_PGUP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 	MSG_KEYNAME_LEFT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) 	MSG_KEYNAME_RIGHT, MSG_KEYNAME_END, MSG_KEYNAME_DOWN, MSG_KEYNAME_PGDN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 	MSG_KEYNAME_INS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) 	MSG_KEYNAME_DEL, MSG_KEYNAME_MACRO, MSG_KEYNAME_MUTE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 	MSG_KEYNAME_VOLDOWN, MSG_KEYNAME_VOLUP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 	MSG_KEYNAME_POWER, MSG_KEYNAME_KPEQUAL, MSG_KEYNAME_KPPLUSDASH,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) 	MSG_KEYNAME_PAUSE, MSG_KEYNAME_F21, MSG_KEYNAME_F22, MSG_KEYNAME_F23,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 	MSG_KEYNAME_F24, MSG_KEYNAME_KPCOMMA, MSG_KEYNAME_LEFTMETA,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) 	MSG_KEYNAME_RIGHTMETA, MSG_KEYNAME_COMPOSE, MSG_KEYNAME_STOP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) 	MSG_KEYNAME_AGAIN, MSG_KEYNAME_PROPS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) 	MSG_KEYNAME_UNDO, MSG_KEYNAME_FRONT, MSG_KEYNAME_COPY, MSG_KEYNAME_OPEN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) 	MSG_KEYNAME_PASTE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 	MSG_KEYNAME_FIND, MSG_KEYNAME_CUT, MSG_KEYNAME_HELP, MSG_KEYNAME_MENU,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 	MSG_KEYNAME_CALC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) 	MSG_KEYNAME_SETUP, MSG_KEYNAME_SLEEP, MSG_KEYNAME_WAKEUP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) 	MSG_KEYNAME_FILE, MSG_KEYNAME_SENDFILE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 	MSG_KEYNAME_DELFILE, MSG_KEYNAME_XFER, MSG_KEYNAME_PROG1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) 	MSG_KEYNAME_PROG2, MSG_KEYNAME_WWW,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 	MSG_KEYNAME_MSDOS, MSG_KEYNAME_COFFEE, MSG_KEYNAME_DIRECTION,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 	MSG_KEYNAME_CYCLEWINDOWS, MSG_KEYNAME_MAIL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) 	MSG_KEYNAME_BOOKMARKS, MSG_KEYNAME_COMPUTER, MSG_KEYNAME_BACK,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) 	MSG_KEYNAME_FORWARD, MSG_KEYNAME_CLOSECD,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) 	MSG_KEYNAME_EJECTCD, MSG_KEYNAME_EJECTCLOSE, MSG_KEYNAME_NEXTSONG,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 	MSG_KEYNAME_PLAYPAUSE, MSG_KEYNAME_PREVSONG,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) 	MSG_KEYNAME_STOPCD, MSG_KEYNAME_RECORD, MSG_KEYNAME_REWIND,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) 	MSG_KEYNAME_PHONE, MSG_KEYNAME_ISO,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) 	MSG_KEYNAME_CONFIG, MSG_KEYNAME_HOMEPG, MSG_KEYNAME_REFRESH,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) 	MSG_KEYNAME_EXIT, MSG_KEYNAME_MOVE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) 	MSG_KEYNAME_EDIT, MSG_KEYNAME_SCROLLUP, MSG_KEYNAME_SCROLLDN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) 	MSG_KEYNAME_KPLEFTPAR, MSG_KEYNAME_KPRIGHTPAR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) 	MSG_KEYNAMES_END = MSG_KEYNAME_KPRIGHTPAR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) 	MSG_FUNCNAMES_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 	MSG_FUNCNAME_ATTRIB_BLEEP_DEC = MSG_FUNCNAMES_START,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) 	MSG_FUNCNAME_ATTRIB_BLEEP_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 	MSG_FUNCNAME_BLEEPS_DEC, MSG_FUNCNAME_BLEEPS_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 	MSG_FUNCNAME_CHAR_FIRST, MSG_FUNCNAME_CHAR_LAST,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) 	MSG_FUNCNAME_CHAR_CURRENT, MSG_FUNCNAME_CHAR_HEX_AND_DEC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 	MSG_FUNCNAME_CHAR_NEXT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 	MSG_FUNCNAME_CHAR_PHONETIC, MSG_FUNCNAME_CHAR_PREVIOUS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) 	MSG_FUNCNAME_CURSOR_PARK, MSG_FUNCNAME_CUT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) 	MSG_FUNCNAME_EDIT_DELIM, MSG_FUNCNAME_EDIT_EXNUM,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 	MSG_FUNCNAME_EDIT_MOST, MSG_FUNCNAME_EDIT_REPEATS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 	MSG_FUNCNAME_EDIT_SOME,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 	MSG_FUNCNAME_GOTO, MSG_FUNCNAME_GOTO_BOTTOM, MSG_FUNCNAME_GOTO_LEFT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) 	MSG_FUNCNAME_GOTO_RIGHT, MSG_FUNCNAME_GOTO_TOP, MSG_FUNCNAME_HELP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 	MSG_FUNCNAME_LINE_SAY_CURRENT, MSG_FUNCNAME_LINE_SAY_NEXT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) 	MSG_FUNCNAME_LINE_SAY_PREVIOUS, MSG_FUNCNAME_LINE_SAY_WITH_INDENT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) 	MSG_FUNCNAME_PASTE, MSG_FUNCNAME_PITCH_DEC, MSG_FUNCNAME_PITCH_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 	MSG_FUNCNAME_PUNC_DEC, MSG_FUNCNAME_PUNC_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) 	MSG_FUNCNAME_PUNC_LEVEL_DEC, MSG_FUNCNAME_PUNC_LEVEL_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) 	MSG_FUNCNAME_QUIET,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) 	MSG_FUNCNAME_RATE_DEC, MSG_FUNCNAME_RATE_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) 	MSG_FUNCNAME_READING_PUNC_DEC, MSG_FUNCNAME_READING_PUNC_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) 	MSG_FUNCNAME_SAY_ATTRIBUTES,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 	MSG_FUNCNAME_SAY_FROM_LEFT, MSG_FUNCNAME_SAY_FROM_TOP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) 	MSG_FUNCNAME_SAY_POSITION, MSG_FUNCNAME_SAY_SCREEN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) 	MSG_FUNCNAME_SAY_TO_BOTTOM, MSG_FUNCNAME_SAY_TO_RIGHT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 	MSG_FUNCNAME_SPEAKUP, MSG_FUNCNAME_SPEAKUP_LOCK,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) 	MSG_FUNCNAME_SPEAKUP_OFF, MSG_FUNCNAME_SPEECH_KILL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) 	MSG_FUNCNAME_SPELL_DELAY_DEC, MSG_FUNCNAME_SPELL_DELAY_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) 	MSG_FUNCNAME_SPELL_WORD, MSG_FUNCNAME_SPELL_WORD_PHONETICALLY,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) 	MSG_FUNCNAME_TONE_DEC, MSG_FUNCNAME_TONE_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) 	MSG_FUNCNAME_VOICE_DEC, MSG_FUNCNAME_VOICE_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) 	MSG_FUNCNAME_VOLUME_DEC, MSG_FUNCNAME_VOLUME_INC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) 	MSG_FUNCNAME_WINDOW_CLEAR, MSG_FUNCNAME_WINDOW_SAY,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) 	MSG_FUNCNAME_WINDOW_SET, MSG_FUNCNAME_WINDOW_SILENCE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 	MSG_FUNCNAME_WORD_SAY_CURRENT, MSG_FUNCNAME_WORD_SAY_NEXT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) 	MSG_FUNCNAME_WORD_SAY_PREVIOUS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 	MSG_FUNCNAMES_END = MSG_FUNCNAME_WORD_SAY_PREVIOUS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 	/* all valid indices must be above this */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) 	MSG_LAST_INDEX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) struct msg_group_t {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) 	char *name;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) 	enum msg_index_t start;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) 	enum msg_index_t end;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) char *spk_msg_get(enum msg_index_t index);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) ssize_t spk_msg_set(enum msg_index_t index, char *text, size_t length);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) struct msg_group_t *spk_find_msg_group(const char *group_name);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) void spk_reset_msg_group(struct msg_group_t *group);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) void spk_initialize_msgs(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) void spk_free_user_msgs(void);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) #endif