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