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