]>
Dogcows Code - chaz/homebank/blob - src/language.c
1 /* HomeBank -- Free, easy, personal accounting for everyone.
2 * Copyright (C) 1995-2016 Maxime DOYEN
4 * This file is part of HomeBank.
6 * HomeBank is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
11 * HomeBank is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
20 /* Win32 language lookup table:
21 * Copyright (C) 2007-2008 Dieter Verfaillie <dieterv@optionexplicit.be>
31 #define _WIN32_WINNT 0x0501
32 #define _WIN32_WINDOWS 0x0501
42 language_init (const gchar
*language
)
47 /* FIXME: This is a hack. gettext doesn't pick the right language
48 * by default on Windows, so we enforce the right one. The
49 * following code is an adaptation of Python code from
50 * pynicotine. For reasons why this approach is needed, and why
51 * the GetLocaleInfo() approach in other libs falls flat, see:
52 * http://blogs.msdn.com/b/michkap/archive/2007/04/15/2146890.aspx
55 switch (GetUserDefaultUILanguage())
58 language
= "af"; /* Afrikaans - South Africa */
61 language
= "sq"; /* Albanian - Albania */
64 language
= "am"; /* Amharic - Ethiopia */
67 language
= "ar"; /* Arabic - Saudi Arabia */
70 language
= "ar"; /* Arabic - Algeria */
73 language
= "ar"; /* Arabic - Bahrain */
76 language
= "ar"; /* Arabic - Egypt */
79 language
= "ar"; /* Arabic - Iraq */
82 language
= "ar"; /* Arabic - Jordan */
85 language
= "ar"; /* Arabic - Kuwait */
88 language
= "ar"; /* Arabic - Lebanon */
91 language
= "ar"; /* Arabic - Libya */
94 language
= "ar"; /* Arabic - Morocco */
97 language
= "ar"; /* Arabic - Oman */
100 language
= "ar"; /* Arabic - Qatar */
103 language
= "ar"; /* Arabic - Syria */
106 language
= "ar"; /* Arabic - Tunisia */
109 language
= "ar"; /* Arabic - U.A.E. */
112 language
= "ar"; /* Arabic - Yemen */
115 language
= "hy"; /* Armenian - Armenia */
118 language
= "as"; /* Assamese */
121 language
= NULL
; /* Azeri (Cyrillic) */
124 language
= NULL
; /* Azeri (Latin) */
127 language
= "eu"; /* Basque */
130 language
= "be"; /* Belarusian */
133 language
= "bn"; /* Bengali (India) */
136 language
= "bn"; /* Bengali (Bangladesh) */
139 language
= "bs"; /* Bosnian (Bosnia/Herzegovina) */
142 language
= "bg"; /* Bulgarian */
145 language
= "my"; /* Burmese */
148 language
= "ca"; /* Catalan */
151 language
= NULL
; /* Cherokee - United States */
154 language
= "zh"; /* Chinese - People"s Republic of China */
157 language
= "zh"; /* Chinese - Singapore */
160 language
= "zh"; /* Chinese - Taiwan */
163 language
= "zh"; /* Chinese - Hong Kong SAR */
166 language
= "zh"; /* Chinese - Macao SAR */
169 language
= "hr"; /* Croatian */
172 language
= "hr"; /* Croatian (Bosnia/Herzegovina) */
175 language
= "cs"; /* Czech */
178 language
= "da"; /* Danish */
181 language
= "dv"; /* Divehi */
184 language
= "nl"; /* Dutch - Netherlands */
187 language
= "nl"; /* Dutch - Belgium */
190 language
= NULL
; /* Edo */
193 language
= "en"; /* English - United States */
196 language
= "en"; /* English - United Kingdom */
199 language
= "en"; /* English - Australia */
202 language
= "en"; /* English - Belize */
205 language
= "en"; /* English - Canada */
208 language
= "en"; /* English - Caribbean */
211 language
= "en"; /* English - Hong Kong SAR */
214 language
= "en"; /* English - India */
217 language
= "en"; /* English - Indonesia */
220 language
= "en"; /* English - Ireland */
223 language
= "en"; /* English - Jamaica */
226 language
= "en"; /* English - Malaysia */
229 language
= "en"; /* English - New Zealand */
232 language
= "en"; /* English - Philippines */
235 language
= "en"; /* English - Singapore */
238 language
= "en"; /* English - South Africa */
241 language
= "en"; /* English - Trinidad */
244 language
= "en"; /* English - Zimbabwe */
247 language
= "et"; /* Estonian */
250 language
= "fo"; /* Faroese */
253 language
= NULL
; /* Farsi */
256 language
= NULL
; /* Filipino */
259 language
= "fi"; /* Finnish */
262 language
= "fr"; /* French - France */
265 language
= "fr"; /* French - Belgium */
268 language
= "fr"; /* French - Cameroon */
271 language
= "fr"; /* French - Canada */
274 language
= "fr"; /* French - Democratic Rep. of Congo */
277 language
= "fr"; /* French - Cote d"Ivoire */
280 language
= "fr"; /* French - Haiti */
283 language
= "fr"; /* French - Luxembourg */
286 language
= "fr"; /* French - Mali */
289 language
= "fr"; /* French - Monaco */
292 language
= "fr"; /* French - Morocco */
295 language
= "fr"; /* French - North Africa */
298 language
= "fr"; /* French - Reunion */
301 language
= "fr"; /* French - Senegal */
304 language
= "fr"; /* French - Switzerland */
307 language
= "fr"; /* French - West Indies */
310 language
= "fy"; /* Frisian - Netherlands */
313 language
= NULL
; /* Fulfulde - Nigeria */
316 language
= "mk"; /* FYRO Macedonian */
319 language
= "ga"; /* Gaelic (Ireland) */
322 language
= "gd"; /* Gaelic (Scotland) */
325 language
= "gl"; /* Galician */
328 language
= "ka"; /* Georgian */
331 language
= "de"; /* German - Germany */
334 language
= "de"; /* German - Austria */
337 language
= "de"; /* German - Liechtenstein */
340 language
= "de"; /* German - Luxembourg */
343 language
= "de"; /* German - Switzerland */
346 language
= "el"; /* Greek */
349 language
= "gn"; /* Guarani - Paraguay */
352 language
= "gu"; /* Gujarati */
355 language
= "ha"; /* Hausa - Nigeria */
358 language
= NULL
; /* Hawaiian - United States */
361 language
= "he"; /* Hebrew */
364 language
= "hi"; /* Hindi */
367 language
= "hu"; /* Hungarian */
370 language
= NULL
; /* Ibibio - Nigeria */
373 language
= "is"; /* Icelandic */
376 language
= "ig"; /* Igbo - Nigeria */
379 language
= "id"; /* Indonesian */
382 language
= "iu"; /* Inuktitut */
385 language
= "it"; /* Italian - Italy */
388 language
= "it"; /* Italian - Switzerland */
391 language
= "ja"; /* Japanese */
394 language
= "kn"; /* Kannada */
397 language
= "kr"; /* Kanuri - Nigeria */
400 language
= "ks"; /* Kashmiri */
403 language
= "ks"; /* Kashmiri (Arabic) */
406 language
= "kk"; /* Kazakh */
409 language
= "km"; /* Khmer */
412 language
= NULL
; /* Konkani */
415 language
= "ko"; /* Korean */
418 language
= "ky"; /* Kyrgyz (Cyrillic) */
421 language
= "lo"; /* Lao */
424 language
= "la"; /* Latin */
427 language
= "lv"; /* Latvian */
430 language
= "lt"; /* Lithuanian */
433 language
= "ms"; /* Malay - Malaysia */
436 language
= "ms"; /* Malay - Brunei Darussalam */
439 language
= "ml"; /* Malayalam */
442 language
= "mt"; /* Maltese */
445 language
= NULL
; /* Manipuri */
448 language
= "mi"; /* Maori - New Zealand */
451 language
= "mr"; /* Marathi */
454 language
= "mn"; /* Mongolian (Cyrillic) */
457 language
= "mn"; /* Mongolian (Mongolian) */
460 language
= "ne"; /* Nepali */
463 language
= "ne"; /* Nepali - India */
466 language
= "no"; /* Norwegian (Bokmᅢᆬl) */
469 language
= "no"; /* Norwegian (Nynorsk) */
472 language
= "or"; /* Oriya */
475 language
= "om"; /* Oromo */
478 language
= NULL
; /* Papiamentu */
481 language
= "ps"; /* Pashto */
484 language
= "pl"; /* Polish */
487 language
= "pt"; /* Portuguese - Brazil */
490 language
= "pt"; /* Portuguese - Portugal */
493 language
= "pa"; /* Punjabi */
496 language
= "pa"; /* Punjabi (Pakistan) */
499 language
= "qu"; /* Quecha - Bolivia */
502 language
= "qu"; /* Quecha - Ecuador */
505 language
= "qu"; /* Quecha - Peru */
508 language
= "rm"; /* Rhaeto-Romanic */
511 language
= "ro"; /* Romanian */
514 language
= "ro"; /* Romanian - Moldava */
517 language
= "ru"; /* Russian */
520 language
= "ru"; /* Russian - Moldava */
523 language
= NULL
; /* Sami (Lappish) */
526 language
= "sa"; /* Sanskrit */
529 language
= NULL
; /* Sepedi */
532 language
= "sr"; /* Serbian (Cyrillic) */
535 language
= "sr"; /* Serbian (Latin) */
538 language
= "sd"; /* Sindhi - India */
541 language
= "sd"; /* Sindhi - Pakistan */
544 language
= "si"; /* Sinhalese - Sri Lanka */
547 language
= "sk"; /* Slovak */
550 language
= "sl"; /* Slovenian */
553 language
= "so"; /* Somali */
556 language
= NULL
; /* Sorbian */
559 language
= "es"; /* Spanish - Spain (Modern Sort) */
562 language
= "es"; /* Spanish - Spain (Traditional Sort) */
565 language
= "es"; /* Spanish - Argentina */
568 language
= "es"; /* Spanish - Bolivia */
571 language
= "es"; /* Spanish - Chile */
574 language
= "es"; /* Spanish - Colombia */
577 language
= "es"; /* Spanish - Costa Rica */
580 language
= "es"; /* Spanish - Dominican Republic */
583 language
= "es"; /* Spanish - Ecuador */
586 language
= "es"; /* Spanish - El Salvador */
589 language
= "es"; /* Spanish - Guatemala */
592 language
= "es"; /* Spanish - Honduras */
595 language
= "es"; /* Spanish - Latin America */
598 language
= "es"; /* Spanish - Mexico */
601 language
= "es"; /* Spanish - Nicaragua */
604 language
= "es"; /* Spanish - Panama */
607 language
= "es"; /* Spanish - Paraguay */
610 language
= "es"; /* Spanish - Peru */
613 language
= "es"; /* Spanish - Puerto Rico */
616 language
= "es"; /* Spanish - United States */
619 language
= "es"; /* Spanish - Uruguay */
622 language
= "es"; /* Spanish - Venezuela */
625 language
= NULL
; /* Sutu */
628 language
= "sw"; /* Swahili */
631 language
= "sv"; /* Swedish */
634 language
= "sv"; /* Swedish - Finland */
637 language
= NULL
; /* Syriac */
640 language
= "tg"; /* Tajik */
643 language
= NULL
; /* Tamazight (Arabic) */
646 language
= NULL
; /* Tamazight (Latin) */
649 language
= "ta"; /* Tamil */
652 language
= "tt"; /* Tatar */
655 language
= "te"; /* Telugu */
658 language
= "th"; /* Thai */
661 language
= "bo"; /* Tibetan - Bhutan */
664 language
= "bo"; /* Tibetan - People"s Republic of China */
667 language
= "ti"; /* Tigrigna - Eritrea */
670 language
= "ti"; /* Tigrigna - Ethiopia */
673 language
= "ts"; /* Tsonga */
676 language
= "tn"; /* Tswana */
679 language
= "tr"; /* Turkish */
682 language
= "tk"; /* Turkmen */
685 language
= "ug"; /* Uighur - China */
688 language
= "uk"; /* Ukrainian */
691 language
= "ur"; /* Urdu */
694 language
= "ur"; /* Urdu - India */
697 language
= "uz"; /* Uzbek (Cyrillic) */
700 language
= "uz"; /* Uzbek (Latin) */
703 language
= "ve"; /* Venda */
706 language
= "vi"; /* Vietnamese */
709 language
= "cy"; /* Welsh */
712 language
= "xh"; /* Xhosa */
715 language
= NULL
; /* Yi */
718 language
= "yi"; /* Yiddish */
721 language
= "yo"; /* Yoruba */
724 language
= "zu"; /* Zulu */
732 /* We already set the locale according to the environment, so just
733 * return early if no language is set in gimprc.
738 g_setenv ("LANGUAGE", language
, TRUE
);
739 setlocale (LC_ALL
, "");
This page took 0.073228 seconds and 4 git commands to generate.