]> git.lyx.org Git - lyx.git/blob - development/Win32/packaging/AltInstaller/LanguageSettings.nsh
- update to new Aspell repositories
[lyx.git] / development / Win32 / packaging / AltInstaller / LanguageSettings.nsh
1 # Language settings for the installer
2 # create language code for the Windows system language
3
4 # LangNme is the language name when there exists a LyX translation for this language; used for the menu language dialog and for the Aspell installation
5 # LangNmeSys is the Windows system language; used for the Aspell installation
6 # LangCdeSys is the ISO 630 language code of the language; used for the Aspell installation
7 # LangSysEnc is the Windows codepage for the character encoding of the language; used in lyx.bat to assure that scripts are correctly executed
8 !macro TranslateLangCode LangNme LangNmeSys LangCdeSys LangISOCode LangSysEnc
9
10  StrCpy ${LangCdeSys} ""
11
12   ${if} ${LangISOCode} = 1025
13    StrCpy ${LangCdeSys} "ar"
14    StrCpy ${LangNmeSys} "Arabic"
15    StrCpy ${LangSysEnc} "1256"
16   ${endif}
17
18   ${if} ${LangISOCode} = 1026
19    StrCpy ${LangCdeSys} "bg"
20    StrCpy ${LangNmeSys} "Bulgarian"
21    StrCpy ${LangSysEnc} "1251"
22   ${endif}
23
24   ${if} ${LangISOCode} = 1027
25    StrCpy ${LangCdeSys} "ca"
26    StrCpy ${LangNmeSys} "Català"
27    StrCpy ${LangSysEnc} "1252"
28   ${endif}
29
30 # currently no dictionary available
31 #  ${if} ${LangISOCode} = 1028
32 #   StrCpy ${LangCdeSys} "zh"
33 #   StrCpy ${LangNmeSys} "Chinese"
34 #   StrCpy ${LangSysEnc} "936"
35 #  ${endif}
36
37   ${if} ${LangISOCode} = 1029
38    StrCpy ${LangNme} "Ce\9atina"
39    StrCpy ${LangCdeSys} "cs"
40    StrCpy ${LangNmeSys} "Ce\9atina"
41    StrCpy ${LangSysEnc} "1250"
42   ${endif}
43
44   ${if} ${LangISOCode} = 1030
45    StrCpy ${LangNme} "Dansk"
46    StrCpy ${LangCdeSys} "da"
47    StrCpy ${LangNmeSys} "Dansk"
48    StrCpy ${LangSysEnc} "1252"
49   ${endif}
50
51   ${if} ${LangISOCode} = 1031
52    StrCpy ${LangNme} "Deutsch"
53    StrCpy ${LangCdeSys} "de"
54    StrCpy ${LangNmeSys} "Deutsch"
55    StrCpy ${LangSysEnc} "1252"
56   ${endif}
57
58   ${if} ${LangISOCode} = 1032
59    StrCpy ${LangCdeSys} "el"
60    StrCpy ${LangNmeSys} "Greek"
61    StrCpy ${LangSysEnc} "1253"
62   ${endif}
63
64   ${if} ${LangISOCode} = 1033
65    StrCpy ${LangNme} "English"
66    StrCpy ${LangCdeSys} "en"
67    StrCpy ${LangNmeSys} "English"
68    StrCpy ${LangSysEnc} "1252"
69   ${endif}
70
71   ${if} ${LangISOCode} = 1034
72    StrCpy ${LangNme} "Español"
73    StrCpy ${LangCdeSys} "es"
74    StrCpy ${LangNmeSys} "Español"
75    StrCpy ${LangSysEnc} "1252"
76   ${endif}
77
78   ${if} ${LangISOCode} = 1035
79    StrCpy ${LangNme} "Suomi"
80    StrCpy ${LangCdeSys} "fi"
81    StrCpy ${LangNmeSys} "Suomi"
82    StrCpy ${LangSysEnc} "1252"
83   ${endif}
84
85   ${if} ${LangISOCode} = 1036
86    StrCpy ${LangNme} "Français"
87    StrCpy ${LangCdeSys} "fr"
88    StrCpy ${LangNmeSys} "Français"
89    StrCpy ${LangSysEnc} "1252"
90   ${endif}
91
92   ${if} ${LangISOCode} = 1037
93    StrCpy ${LangNme} "Hebrew"
94    StrCpy ${LangCdeSys} "he"
95    StrCpy ${LangNmeSys} "Hebrew"
96    StrCpy ${LangSysEnc} "1255"
97   ${endif}
98
99   ${if} ${LangISOCode} = 1038
100    StrCpy ${LangNme} "Magyar"
101    StrCpy ${LangCdeSys} "hu"
102    StrCpy ${LangNmeSys} "Magyar"
103    StrCpy ${LangSysEnc} "1250"
104   ${endif}
105
106   ${if} ${LangISOCode} = 1039
107    StrCpy ${LangCdeSys} "is"
108    StrCpy ${LangNmeSys} "Íslenska"
109    StrCpy ${LangSysEnc} "1252"
110   ${endif}
111
112   ${if} ${LangISOCode} = 1040
113    StrCpy ${LangNme} "Italiano"
114    StrCpy ${LangCdeSys} "it"
115    StrCpy ${LangNmeSys} "Italiano"
116    StrCpy ${LangSysEnc} "1252"
117   ${endif}
118
119   # currently no dictionary available
120   ${if} ${LangISOCode} = 1041
121    StrCpy ${LangNme} "Japanese"
122    StrCpy ${LangCdeSys} "ja"
123    StrCpy ${LangNmeSys} "Japanese"
124    StrCpy ${LangSysEnc} "932"
125   ${endif}
126
127   # currently no dictionary available
128   ${if} ${LangISOCode} = 1042
129    StrCpy ${LangNme} "Korean"
130    StrCpy ${LangCdeSys} "ko"
131    StrCpy ${LangNmeSys} "Korean"
132    StrCpy ${LangSysEnc} "949"
133   ${endif}
134
135   ${if} ${LangISOCode} = 1043
136    StrCpy ${LangNme} "Nederlands"
137    StrCpy ${LangCdeSys} "nl"
138    StrCpy ${LangNmeSys} "Nederlands"
139    StrCpy ${LangSysEnc} "1252"
140   ${endif}
141
142   ${if} ${LangISOCode} = 1044
143    StrCpy ${LangNme} "Norsk"
144    StrCpy ${LangCdeSys} "no"
145    StrCpy ${LangNmeSys} "Norsk"
146    StrCpy ${LangSysEnc} "1252"
147   ${endif}
148
149   ${if} ${LangISOCode} = 1045
150    StrCpy ${LangNme} "Polski"
151    StrCpy ${LangCdeSys} "pl"
152    StrCpy ${LangNmeSys} "Polski"
153    StrCpy ${LangSysEnc} "1250"
154   ${endif}
155
156   ${if} ${LangISOCode} = 1046  # for portuguese (brasilian)
157    StrCpy ${LangNme} "English" # there is currently no portuguese translation of LyX but of the installer
158    StrCpy ${LangCdeSys} "pt"
159    StrCpy ${LangNmeSys} "Português"
160    StrCpy ${LangSysEnc} "1252"
161   ${endif}
162
163   ${if} ${LangISOCode} = 1048
164    StrCpy ${LangNme} "Româna"
165    StrCpy ${LangCdeSys} "ro"
166    StrCpy ${LangNmeSys} "Româna"
167    StrCpy ${LangSysEnc} "1250"
168   ${endif}
169
170   ${if} ${LangISOCode} = 1049
171    StrCpy ${LangNme} "Russian"
172    StrCpy ${LangCdeSys} "ru"
173    StrCpy ${LangNmeSys} "Russian"
174    StrCpy ${LangSysEnc} "1251"
175   ${endif}
176
177   ${if} ${LangISOCode} = 1050
178    StrCpy ${LangCdeSys} "hr"
179    StrCpy ${LangNmeSys} "Hrvatski"
180    StrCpy ${LangSysEnc} "1250"
181   ${endif}
182
183   ${if} ${LangISOCode} = 1051
184    StrCpy ${LangNme} "Slovenský"
185    StrCpy ${LangCdeSys} "sk"
186    StrCpy ${LangNmeSys} "Slovenský"
187    StrCpy ${LangSysEnc} "1250"
188   ${endif}
189
190 # currently no dictionary available
191 #  ${if} ${LangISOCode} = 1052
192 #   StrCpy ${LangCdeSys} "sq"
193 #   StrCpy ${LangNmeSys} "Shqip"
194 #   StrCpy ${LangSysEnc} "1252"
195 #  ${endif}
196
197   ${if} ${LangISOCode} = 1053
198    StrCpy ${LangNme} "Svenska"
199    StrCpy ${LangCdeSys} "sv"
200    StrCpy ${LangNmeSys} "Svenska"
201    StrCpy ${LangSysEnc} "1252"
202   ${endif}
203
204 # currently no dictionary available
205 #  ${if} ${LangISOCode} = 1054
206 #   StrCpy ${LangCdeSys} "th"
207 #   StrCpy ${LangNmeSys} "Thai"
208 #   StrCpy ${LangSysEnc} "874"
209 #  ${endif}
210
211   ${if} ${LangISOCode} = 1055
212    StrCpy ${LangNme} "Türkçe"
213    StrCpy ${LangCdeSys} "tr"
214    StrCpy ${LangNmeSys} "Türkçe"
215    StrCpy ${LangSysEnc} "1254"
216   ${endif}
217
218   ${if} ${LangISOCode} = 1058
219    StrCpy ${LangCdeSys} "uk"
220    StrCpy ${LangNmeSys} "Ukrainian"
221    StrCpy ${LangSysEnc} "1251"
222   ${endif}
223
224   ${if} ${LangISOCode} = 1060
225    StrCpy ${LangNme} "Sloven\9acina"
226    StrCpy ${LangCdeSys} "sl"
227    StrCpy ${LangNmeSys} "Sloven\9acina"
228    StrCpy ${LangSysEnc} "1250"
229   ${endif}
230
231   ${if} ${LangISOCode} = 1061
232    StrCpy ${LangCdeSys} "et"
233    StrCpy ${LangNmeSys} "Eesti"
234    StrCpy ${LangSysEnc} "1257"
235   ${endif}
236
237   ${if} ${LangISOCode} = 1062
238    StrCpy ${LangCdeSys} "lv"
239    StrCpy ${LangNmeSys} "Latvie\9au"
240    StrCpy ${LangSysEnc} "1257"
241   ${endif}
242
243   ${if} ${LangISOCode} = 1063
244    StrCpy ${LangCdeSys} "lt"
245    StrCpy ${LangNmeSys} "Lietuva"
246    StrCpy ${LangSysEnc} "1257"
247   ${endif}
248   
249   ${if} ${LangISOCode} = 1065
250    StrCpy ${LangCdeSys} "fa"
251    StrCpy ${LangNmeSys} "Farsi"
252   ${endif}      
253   
254   ${if} ${LangISOCode} = 1067
255    StrCpy ${LangCdeSys} "hy"
256    StrCpy ${LangNmeSys} "Armenian"
257   ${endif}      
258
259   # currently no dictionary available
260   ${if} ${LangISOCode} = 1069
261    StrCpy ${LangNme} "Euskara"
262    StrCpy ${LangCdeSys} "eu"
263    StrCpy ${LangNmeSys} "Euskara"
264    StrCpy ${LangSysEnc} "1252"
265   ${endif}
266
267   ${if} ${LangISOCode} = 1078
268    StrCpy ${LangCdeSys} "af"
269    StrCpy ${LangNmeSys} "Afrikaans"
270    StrCpy ${LangSysEnc} "1252"
271   ${endif}
272
273   ${if} ${LangISOCode} = 1081
274    StrCpy ${LangCdeSys} "hi"
275    StrCpy ${LangNmeSys} "Hindi"
276   ${endif}
277
278   ${if} ${LangISOCode} = 1110
279    StrCpy ${LangNme} "Galego"
280    StrCpy ${LangCdeSys} "gl"
281    StrCpy ${LangNmeSys} "Galego"
282    StrCpy ${LangSysEnc} "1252"
283   ${endif}
284
285 # currently no dictionary available
286 #  ${if} ${LangISOCode} = 2052
287 #   StrCpy ${LangCdeSys} "zh"
288 #   StrCpy ${LangNmeSys} "Chinese"
289 #   StrCpy ${LangSysEnc} "936"
290 #  ${endif}
291
292   ${if} ${LangISOCode} = 2055
293    StrCpy ${LangCdeSys} "de"
294    StrCpy ${LangNmeSys} "Deutsch"
295    StrCpy ${LangSysEnc} "1252"
296   ${endif}
297
298   ${if} ${LangISOCode} = 2057
299    StrCpy ${LangCdeSys} "en"
300    StrCpy ${LangNmeSys} "English"
301    StrCpy ${LangSysEnc} "1252"
302   ${endif}
303
304   ${if} ${LangISOCode} = 2058
305    StrCpy ${LangCdeSys} "es"
306    StrCpy ${LangNmeSys} "Español"
307    StrCpy ${LangSysEnc} "1252"
308   ${endif}
309
310   ${if} ${LangISOCode} = 2060
311    StrCpy ${LangCdeSys} "fr"
312    StrCpy ${LangNmeSys} "Français"
313    StrCpy ${LangSysEnc} "1252"
314   ${endif}
315
316   ${if} ${LangISOCode} = 2064
317    StrCpy ${LangCdeSys} "it"
318    StrCpy ${LangNmeSys} "Italiano"
319    StrCpy ${LangSysEnc} "1252"
320   ${endif}
321
322   ${if} ${LangISOCode} = 2067
323    StrCpy ${LangCdeSys} "nl"
324    StrCpy ${LangNmeSys} "Nederlands"
325    StrCpy ${LangSysEnc} "1252"
326   ${endif}
327
328   ${if} ${LangISOCode} = 2068
329    StrCpy ${LangNme} "Nynorsk"
330    StrCpy ${LangCdeSys} "nn"
331    StrCpy ${LangNmeSys} "Nynorsk"
332    StrCpy ${LangSysEnc} "1252"
333   ${endif}
334
335   ${if} ${LangISOCode} = 2070  # for portuguese
336    StrCpy ${LangNme} "English" # there is currently no portuguese translation of LyX but of the installer
337    StrCpy ${LangCdeSys} "pt"
338    StrCpy ${LangNmeSys} "Português"
339    StrCpy ${LangSysEnc} "1252"
340   ${endif}  
341
342   ${if} ${LangISOCode} = 2074
343    StrCpy ${LangCdeSys} "sr"
344    StrCpy ${LangNmeSys} "Srpski"
345    StrCpy ${LangSysEnc} "1250"
346   ${endif}
347
348   ${if} ${LangISOCode} = 2077
349    StrCpy ${LangCdeSys} "sv"
350    StrCpy ${LangNmeSys} "Svenska"
351    StrCpy ${LangSysEnc} "1252"
352   ${endif}
353
354   ${if} ${LangISOCode} = 3079
355    StrCpy ${LangCdeSys} "de"
356    StrCpy ${LangNmeSys} "Deutsch"
357    StrCpy ${LangSysEnc} "1252"
358   ${endif}
359
360   ${if} ${LangISOCode} = 3081
361    StrCpy ${LangCdeSys} "en"
362    StrCpy ${LangNmeSys} "English"
363    StrCpy ${LangSysEnc} "1252"
364   ${endif}
365
366   ${if} ${LangISOCode} = 3082
367    StrCpy ${LangCdeSys} "es"
368    StrCpy ${LangNmeSys} "Español"
369    StrCpy ${LangSysEnc} "1252"
370   ${endif}
371
372   ${if} ${LangISOCode} = 3084
373    StrCpy ${LangCdeSys} "fr"
374    StrCpy ${LangNmeSys} "Français"
375    StrCpy ${LangSysEnc} "1252"
376   ${endif}
377
378   ${if} ${LangISOCode} = 4103
379    StrCpy ${LangCdeSys} "de"
380    StrCpy ${LangNmeSys} "Deutsch"
381    StrCpy ${LangSysEnc} "1252"
382   ${endif}
383
384   ${if} ${LangISOCode} = 4105
385    StrCpy ${LangCdeSys} "en"
386    StrCpy ${LangNmeSys} "English"
387    StrCpy ${LangSysEnc} "1252"
388   ${endif}
389
390   ${if} ${LangISOCode} = 4108
391    StrCpy ${LangCdeSys} "fr"
392    StrCpy ${LangNmeSys} "Français"
393    StrCpy ${LangSysEnc} "1252"
394   ${endif}
395
396   ${if} ${LangISOCode} = 5129
397    StrCpy ${LangCdeSys} "en"
398    StrCpy ${LangNmeSys} "English"
399    StrCpy ${LangSysEnc} "1252"
400   ${endif}
401
402   ${if} ${LangISOCode} = 5132
403    StrCpy ${LangCdeSys} "fr"
404    StrCpy ${LangNmeSys} "Français"
405    StrCpy ${LangSysEnc} "1252"
406   ${endif}
407
408   ${if} ${LangISOCode} = 7177
409    StrCpy ${LangCdeSys} "en"
410    StrCpy ${LangNmeSys} "English"
411    StrCpy ${LangSysEnc} "1252"
412   ${endif}
413
414   ${if} ${LangISOCode} = 11274
415    StrCpy ${LangCdeSys} "es"
416    StrCpy ${LangNmeSys} "Español"
417    StrCpy ${LangSysEnc} "1252"
418   ${endif}
419
420   ${if} ${LangISOCode} = 13322
421    StrCpy ${LangCdeSys} "es"
422    StrCpy ${LangNmeSys} "Español"
423    StrCpy ${LangSysEnc} "1252"
424   ${endif}
425
426   ${if} ${LangISOCode} = 14346
427    StrCpy ${LangCdeSys} "es"
428    StrCpy ${LangNmeSys} "Español"
429    StrCpy ${LangSysEnc} "1252"
430   ${endif}
431
432   ${if} ${LangISOCode} = 20490
433    StrCpy ${LangCdeSys} "es"
434    StrCpy ${LangNmeSys} "Español"
435    StrCpy ${LangSysEnc} "1252"
436   ${endif}
437
438 !macroend
439
440 #------------------------------------------
441
442 # To set later LyX's menu language
443 # therefore here are only declared the languages LyX is translated to
444
445 !macro GetLangCode LangCde Name LangEnc
446
447   ${if} ${Name} == "Ce\9atina"
448    StrCpy ${LangCde} "cs_CZ"
449    StrCpy ${LangEnc} "cp-1250"
450   ${endif}
451
452   ${if} ${Name} == "Dansk"
453    StrCpy ${LangCde} "da_DK"
454    StrCpy ${LangEnc} "cp-1252"
455   ${endif}
456
457   ${if} ${Name} == "Deutsch"
458    StrCpy ${LangCde} "de_DE"
459    StrCpy ${LangEnc} "cp-1252"
460   ${endif}
461
462   ${if} ${Name} == "English"
463    StrCpy ${LangCde} "en_EN"
464    StrCpy ${LangEnc} "cp-1252"
465   ${endif}
466
467   ${if} ${Name} == "Español"
468    StrCpy ${LangCde} "es_ES"
469    StrCpy ${LangEnc} "cp-1252"
470   ${endif}
471
472   ${if} ${Name} == "Euskara"
473    StrCpy ${LangCde} "eu_EU"
474    StrCpy ${LangEnc} "cp-1252"
475   ${endif}
476
477   ${if} ${Name} == "Français"
478    StrCpy ${LangCde} "fr_FR"
479    StrCpy ${LangEnc} "cp-1252"
480   ${endif}
481
482   ${if} ${Name} == "Galego"
483    StrCpy ${LangCde} "gl_ES"
484    StrCpy ${LangEnc} "cp-1252"
485   ${endif}
486
487   ${if} ${Name} == "Hebrew"
488    StrCpy ${LangCde} "he_IL"
489    StrCpy ${LangEnc} "cp-1255"
490   ${endif}
491
492   ${if} ${Name} == "Italiano"
493    StrCpy ${LangCde} "it_IT"
494    StrCpy ${LangEnc} "cp-1252"
495   ${endif}
496
497   ${if} ${Name} == "Japanese"
498    StrCpy ${LangCde} "ja_JP"
499    StrCpy ${LangEnc} "cp-932"
500   ${endif}
501
502   ${if} ${Name} == "Korean"
503    StrCpy ${LangCde} "ko" # no country code, see the definition in the file "SVN ~/lib/languages"
504    StrCpy ${LangEnc} "cp-949"
505   ${endif}
506
507   ${if} ${Name} == "Magyar"
508    StrCpy ${LangCde} "hu_HU"
509    StrCpy ${LangEnc} "cp-1250"
510   ${endif}
511
512   ${if} ${Name} == "Nederlands"
513    StrCpy ${LangCde} "nl_NL"
514    StrCpy ${LangEnc} "cp-1252"
515   ${endif}
516
517   ${if} ${Name} == "Norsk"
518    StrCpy ${LangCde} "nb_NO"
519    StrCpy ${LangEnc} "cp-1252"
520   ${endif}
521
522   ${if} ${Name} == "Nynorsk"
523    StrCpy ${LangCde} "nn_NO"
524    StrCpy ${LangEnc} "cp-1252"
525   ${endif}
526
527   ${if} ${Name} == "Polski"
528    StrCpy ${LangCde} "pl_PL"
529    StrCpy ${LangEnc} "cp-1250"
530   ${endif}
531
532   ${if} ${Name} == "Româna"
533    StrCpy ${LangCde} "ro_RO"
534    StrCpy ${LangEnc} "cp-1250"
535   ${endif}
536
537   ${if} ${Name} == "Russian"
538    StrCpy ${LangCde} "ru_RU"
539    StrCpy ${LangEnc} "cp-1251"
540   ${endif}
541
542   ${if} ${Name} == "Slovenský"
543    StrCpy ${LangCde} "sk_SK"
544    StrCpy ${LangEnc} "cp-1250"
545   ${endif}
546
547   ${if} ${Name} == "Sloven\9acina"
548    StrCpy ${LangCde} "sl_SI"
549    StrCpy ${LangEnc} "cp-1250"
550   ${endif}
551
552   ${if} ${Name} == "Suomi"
553    StrCpy ${LangCde} "fi_FI"
554    StrCpy ${LangEnc} "cp-1252"
555   ${endif}
556
557   ${if} ${Name} == "Türkçe"
558    StrCpy ${LangCde} "tr_TR"
559    StrCpy ${LangEnc} "cp-1254"
560   ${endif}
561
562 !macroend
563
564 #--------------------
565 # function that creates the installer page for the language setting
566 Function SelectMenuLanguage
567
568   !insertmacro MUI_INSTALLOPTIONS_EXTRACT "io_ui_language.ini"
569
570   ${if} $LangName == ""
571    # translate NSIS's language code to the language name
572    !insertmacro TranslateLangCode $LangName $LangNameSys $LangCodeSys $Language $LangSysEncoding
573   ${endif}
574
575   ${if} $LangName == ""
576    !insertmacro MUI_INSTALLOPTIONS_WRITE "io_ui_language.ini" "Field 2" "State" "English"
577   ${else}
578    !insertmacro MUI_INSTALLOPTIONS_WRITE "io_ui_language.ini" "Field 2" "State" "$LangName"
579   ${endif}
580
581   !insertmacro MUI_HEADER_TEXT "$(LangSelectHeader)" ""
582   !insertmacro MUI_INSTALLOPTIONS_WRITE "io_ui_language.ini" "Field 1" "Text" "$(AvailableLang)"
583   !insertmacro MUI_INSTALLOPTIONS_DISPLAY "io_ui_language.ini"
584   !insertmacro MUI_INSTALLOPTIONS_READ $LangName "io_ui_language.ini" "Field 2" "State"
585
586 FunctionEnd
587
588 Function SelectMenuLanguage_LeaveFunction
589
590   !insertmacro MUI_INSTALLOPTIONS_READ $LangName "io_ui_language.ini" "Field 2" "State"
591   # Get the language code
592   StrCpy $LangCode ""
593   !insertmacro GetLangCode $LangCode $LangName $LangEncoding # macro from lyx_utils.nsh
594
595 FunctionEnd
596