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