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