]>
Commit | Line | Data |
---|---|---|
c6e3fd22 WH |
1 | #ifndef I18N_H |
2 | #define I18N_H | |
3 | /* Internationalization declarations */ | |
4 | ||
5 | enum 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, /* A little confusing, given our convention. */ | |
51 | MSG_END, /* A little confusing, given our convention. */ | |
52 | MSG_CTRL, | |
53 | ||
54 | /* A message containing the single word "or". */ | |
55 | MSG_DISJUNCTION, | |
56 | MSG_ANNOUNCEMENTS_END = MSG_DISJUNCTION, | |
57 | ||
58 | /* Messages with format specifiers. */ | |
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 | /* Control keys. */ | |
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 | /* Colors. */ | |
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 | /* all valid indices must be above this */ | |
212 | MSG_LAST_INDEX | |
213 | }; | |
214 | ||
215 | struct msg_group_t { | |
216 | char *name; | |
217 | enum msg_index_t start; | |
218 | enum msg_index_t end; | |
219 | }; | |
220 | ||
221 | extern char *msg_get(enum msg_index_t index); | |
222 | extern ssize_t msg_set(enum msg_index_t index, char *text, size_t length); | |
223 | extern struct msg_group_t *find_msg_group(const char *group_name); | |
224 | extern void reset_msg_group(struct msg_group_t *group); | |
225 | extern void initialize_msgs(void); | |
226 | extern void free_user_msgs(void); | |
227 | ||
228 | #endif |