]> git.lyx.org Git - lyx.git/blob - lib/languages
Use call_once to ensure something is only called once
[lyx.git] / lib / languages
1 ##########################################################################
2 #
3 # Languages supported by LyX.
4 #
5 # Syntax:
6 #
7 # Language <lyxname>
8 #       GuiName            "<Gui Name>"
9 #       HasGuiSupport      <true|false>
10 #       BabelName          <babelname>
11 #       PolyglossiaName    <polyglossianame>
12 #       PolyglossiaOpts    "<language-specific options>"
13 #       Encoding           <encoding>
14 #       FontEncoding       <font encoding>
15 #       QuoteStyle         <danish|english|french|german|polish|swedish>
16 #       InternalEncoding   <true|false>
17 #       RTL                <true|false>
18 #       AsBabelOptions     <true|false>
19 #       LangCode           <language_code>
20 #       LangVariety        <language_variety>
21 #       PreBabelPreamble
22 #         <extra latex code inserted before babel>
23 #       EndPreBabelPreamble
24 #       PostBabelPreamble
25 #         <extra latex code inserted after babel>
26 #       EndPostBabelPreamble
27 #       Requires           <requirement>
28 # End
29 #
30 #
31 # NOTES:
32 #
33 # * Omitted elements will be treated as empty (if string) or "false"
34 #   (if boolean).
35 # * When HasGuiSupport is true, the language is candidate to appear in
36 #   the list of possible GUI languages in the Preferences dialog. It
37 #   will actually appear there only if a corresponding .mo file can be
38 #   found among the translations. When several languages correspond to
39 #   the same translation -- like English, English (US) and English
40 #   (UK) -- try to select the entry that is most generic -- here
41 #   English.
42 # * The QuoteStyle arguments correspond to the following styles:
43 #   - danish:  >>text<<  >text<   (inward guillemets)
44 #   - english: ``text''  `text'   (66_99)
45 #   - french:  <<text>>  <text>   (outward guillemets)
46 #   - german:  ,,text``  ,text`   (99/66)
47 #   - polish:  ,,text''  ,text'   (99/99)
48 #   - swedish: ''text''  'text'   (99_99)
49 #   Note that the option names have been selected (rather arbitrarily)
50 #   because the respective styles are common in the respective countries.
51 #   Of course this does not imply any fixed relation to those countries.
52 # * Encoding is the default encoding used with TeX fonts.
53 #   It is only used if Document > Settings > Language > Encoding
54 #   is set to "Language Default" and "use non-TeX fonts" is FALSE.
55 # * InternalEncoding is used to tell LyX that babel internally sets a
56 #   non-standard font encoding (such as hebrew to LHE or greek to LGR).
57 #   If True, LyX cares for characters/macros that do not exist in
58 #   some font encodings ("<", ">", "|" and straight quote).
59 #   It is not required for standard encodings like T2A. See bug #5091.
60 # * "FontEncoding none" tells LyX that fontenc should not be loaded with this
61 #   language.
62 # * AsBabelOptions advices LyX to pass the languages locally to babel, not
63 #   globally to the class. Some languages (basically those not directly
64 #   supported by babel) need this.
65 #   FIXME: in this case, we might still need to pass the other languages
66 #          globally, for the use of other packages (such as varioref).
67 # * LangCode is also used for spellchecking and thesaurus, where the
68 #   dictionaries are named accordingly. Thus, check this when introducing/
69 #   changing language codes (especially aspell, thesaurus).
70 #   TODO: maybe use Best Current Practice (BCP 47) codes for LangCode
71 #         http://www.rfc-editor.org/rfc/bcp/bcp47.txt
72 #         http://www.w3.org/International/articles/language-tags/
73 #         http://www.iana.org/assignments/language-subtag-registry
74 # * LangVariety is used by the aspell spellchecker to differentiate
75 #   dictionaries for different varieties of a given language (e.g. German
76 #   pre-1998 and post-1998 spelling). The aspell dictionaries are named
77 #   language[_REGION][-variety].multi, e.g. de-alt.multi for "German (old
78 #   spelling)" (see http://aspell.net/man-html/Dictionary-Naming.html)
79 #
80 ##########################################################################
81
82 #
83 # LyX-internal languages
84 #
85
86 Language ignore
87         GuiName          "Ignore"
88         BabelName        ignore
89         PolyglossiaName  ignore
90         Encoding         iso8859-1
91         LangCode         ignore
92 End
93
94 Language latex
95         GuiName          "LaTeX"
96         Encoding         iso8859-1
97         LangCode         latex
98 End
99
100 #
101 # Real languages
102 #
103
104 # not yet supported by polyglossia
105 Language afrikaans
106         GuiName          "Afrikaans"
107         BabelName        afrikaans
108         QuoteStyle       polish
109         Encoding         iso8859-15
110         LangCode         af_ZA
111 End
112
113 Language albanian
114         GuiName          "Albanian"
115         BabelName        albanian
116         PolyglossiaName  albanian
117         QuoteStyle       french
118         Encoding         iso8859-2
119         LangCode         sq_AL
120 End
121
122 Language american
123         GuiName          "English (USA)"
124         BabelName        american
125         PolyglossiaName  english
126         PolyglossiaOpts  "variant=american"
127         QuoteStyle       english
128         Encoding         iso8859-15
129         LangCode         en_US
130 End
131
132 # In Babel, this is supported since v. 1.8a of babel-greek (2013-12-03)
133 # We introduce it with LyX 2.2 to give the support time to settle.
134 Language ancientgreek
135         GuiName           "Greek (ancient)"
136         BabelName         greek
137         PostBabelPreamble
138         \languageattribute{greek}{ancient}
139         EndPostBabelPreamble
140         PolyglossiaName   greek
141         PolyglossiaOpts   variant=ancient
142         QuoteStyle        french
143         Encoding          iso8859-7
144         InternalEncoding  true
145         FontEncoding      LGR
146         LangCode          grc_GR
147 End
148
149 # FIXME: dummy babel language for arabic_arabtex to be able
150 # to switch the language the way of the ArabTeX-package
151 Language arabic_arabtex
152         GuiName          "Arabic (ArabTeX)"
153         HasGuiSupport    true
154         BabelName        arabtex
155         QuoteStyle       french
156         Encoding         cp1256
157         RTL              true
158         LangCode         ar_SA
159 End
160
161 # polyglossia uses "Arabic" for the lang environment
162 Language arabic_arabi
163         GuiName          "Arabic (Arabi)"
164         BabelName        arabic
165         PolyglossiaName  arabic
166         QuoteStyle       french
167         Encoding         cp1256
168         FontEncoding     "LFE,LAE"
169         RTL              true
170         AsBabelOptions   true
171         LangCode         ar_SA
172 End
173
174 # not supported by babel
175 Language armenian
176         GuiName          "Armenian"
177         PolyglossiaName  armenian
178         QuoteStyle       french
179         Encoding         utf8
180         LangCode         hy_AM
181 End
182
183 Language australian
184         GuiName          "English (Australia)"
185         BabelName        australian
186         PolyglossiaName  english
187         PolyglossiaOpts  "variant=australian"
188         Encoding         iso8859-15
189         QuoteStyle       english
190         LangCode         en_AU
191 End
192
193 # In polyglossia, this is supported since release 1.33.4 (May 2014)
194 # We introduce it with LyX 2.2 to give the support time to settle.
195 Language austrian
196         GuiName          "German (Austria, old spelling)"
197         BabelName        austrian
198         PolyglossiaName  german
199         PolyglossiaOpts  "variant=austrian,spelling=old,babelshorthands=true"
200         QuoteStyle       german
201         Encoding         iso8859-15
202         LangCode         de_AT
203 End
204
205 # In polyglossia, this is supported since release 1.33.4 (May 2014)
206 # We introduce it with LyX 2.2 to give the support time to settle.
207 Language naustrian
208         GuiName          "German (Austria)"
209         BabelName        naustrian
210         PolyglossiaName  german
211         PolyglossiaOpts  "variant=austrian,babelshorthands=true"
212         QuoteStyle       german
213         Encoding         iso8859-15
214         LangCode         de_AT
215 End
216
217 Language bahasa
218         GuiName          "Indonesian"
219         HasGuiSupport    true
220         BabelName        bahasa
221         PolyglossiaName  bahasai
222         QuoteStyle       english
223         Encoding         iso8859-15
224         LangCode         id_ID
225 End
226
227 Language bahasam
228         GuiName          "Malay"
229         BabelName        bahasam
230         PolyglossiaName  bahasam
231         QuoteStyle       english
232         Encoding         iso8859-15
233         LangCode         ms_MY
234 End
235
236 Language basque
237         GuiName          "Basque"
238         HasGuiSupport    true
239         BabelName        basque
240         PolyglossiaName  basque
241         QuoteStyle       french
242         Encoding         iso8859-15
243         LangCode         eu_ES
244         PostBabelPreamble
245         \addto\extrasbasque{\bbl@deactivate{~}}
246         EndPostBabelPreamble
247 End
248
249 # not yet supported by polyglossia
250 Language belarusian
251         GuiName          "Belarusian"
252         BabelName        belarusian
253         QuoteStyle       french
254         Encoding         cp1251
255         LangCode         be_BY
256         AsBabelOptions   true
257 End
258
259 Language brazilian
260         GuiName          "Portuguese (Brazil)"
261         HasGuiSupport    true
262         BabelName        brazil
263         PolyglossiaName  brazil
264         QuoteStyle       english
265         Encoding         iso8859-15
266         LangCode         pt_BR
267 End
268
269 Language breton
270         GuiName          "Breton"
271         BabelName        breton
272         PolyglossiaName  breton
273         QuoteStyle       french
274         Encoding         iso8859-15
275         LangCode         br_FR
276 End
277
278 Language british
279         GuiName          "English (UK)"
280         BabelName        british
281         PolyglossiaName  english
282         PolyglossiaOpts  "variant=british"
283         QuoteStyle       english
284         Encoding         iso8859-15
285         LangCode         en_GB
286 End
287
288 Language bulgarian
289         GuiName          "Bulgarian"
290         BabelName        bulgarian
291         PolyglossiaName  bulgarian
292         QuoteStyle       german
293         Encoding         cp1251
294         FontEncoding     T2A
295         LangCode         bg_BG
296 End
297
298 # not yet supported by polyglossia
299 Language canadian
300         GuiName          "English (Canada)"
301         BabelName        canadian
302 #       PolyglossiaName  english
303 #       PolyglossiaOpts  "variant=canadian"
304         QuoteStyle       english
305         Encoding         iso8859-15
306         LangCode         en_CA
307 End
308
309 # not yet supported by polyglossia
310 Language canadien
311         GuiName          "French (Canada)"
312         BabelName        canadien
313 #       PolyglossiaName  french
314 #       PolyglossiaOpts  "variant=canadien"
315         QuoteStyle       french
316         Encoding         iso8859-15
317         LangCode         fr_CA
318 End
319
320 Language catalan
321         GuiName          "Catalan"
322         HasGuiSupport    true
323         BabelName        catalan
324         PolyglossiaName  catalan
325         PolyglossiaOpts  "babelshorthands=true"
326         QuoteStyle       french
327         Encoding         iso8859-15
328         LangCode         ca_ES
329 End
330
331 # uses CJK package
332 Language chinese-simplified
333         GuiName          "Chinese (simplified)"
334         HasGuiSupport    true
335         Encoding         euc-cn
336         QuoteStyle       english
337         LangCode         zh_CN
338         Requires         CJK
339 End
340
341 # uses CJK package
342 Language chinese-traditional
343         GuiName         "Chinese (traditional)"
344         HasGuiSupport    true
345         QuoteStyle       english
346         Encoding        utf8-cjk
347         LangCode        zh_TW
348         Requires         CJK
349 End
350
351 # not supported by babel
352 Language coptic
353         GuiName          "Coptic"
354         PolyglossiaName  coptic
355         Encoding         utf8
356         LangCode         cop_EG
357 End
358
359 Language croatian
360         GuiName          "Croatian"
361         BabelName        croatian
362         PolyglossiaName  croatian
363         QuoteStyle       polish
364         Encoding         iso8859-2
365         LangCode         hr_HR
366 End
367
368 Language czech
369         GuiName          "Czech"
370         HasGuiSupport    true
371         BabelName        czech
372         PolyglossiaName  czech
373         QuoteStyle       german
374         Encoding         iso8859-2
375         LangCode         cs_CZ
376 End
377
378 Language danish
379         GuiName          "Danish"
380         HasGuiSupport    true
381         BabelName        danish
382         PolyglossiaName  danish
383         QuoteStyle       danish
384         Encoding         iso8859-15
385         LangCode         da_DK
386 End
387
388 # not supported by babel
389 Language divehi
390         GuiName          "Divehi (Maldivian)"
391         PolyglossiaName  divehi
392         Encoding         utf8
393         LangCode         dv_MV
394 End
395
396 Language dutch
397         GuiName          "Dutch"
398         HasGuiSupport    true
399         BabelName        dutch
400         PolyglossiaName  dutch
401         PolyglossiaOpts  "babelshorthands=true"
402         QuoteStyle       polish
403         Encoding         iso8859-15
404         LangCode         nl_NL
405 End
406
407 Language english
408         GuiName          "English"
409         HasGuiSupport    true
410         BabelName        english
411         PolyglossiaName  english
412         QuoteStyle       english
413         Encoding         iso8859-15
414         LangCode         en_US
415 End
416
417 # Esperanto has no country code because it is an auxiliary language.
418 # We therefore the name of its hunspell dictionary.
419 Language esperanto
420         GuiName          "Esperanto"
421         BabelName        esperanto
422         PolyglossiaName  esperanto
423         QuoteStyle       english
424         Encoding         iso8859-3
425         LangCode         eo_EO
426 End
427
428 Language estonian
429         GuiName          "Estonian"
430         BabelName        estonian
431         PolyglossiaName  estonian
432         QuoteStyle       polish
433         Encoding         iso8859-15
434         LangCode         et_EE
435         PostBabelPreamble
436         \addto\extrasestonian{\bbl@deactivate{~}}
437         EndPostBabelPreamble
438 End
439
440 # the preamble definitions are only used due to bugs in the
441 # arabi-package -- remove them if they become unnecessary!
442 Language farsi
443         GuiName          "Farsi"
444         BabelName        farsi
445         PolyglossiaName  farsi
446         Encoding         utf8
447         FontEncoding     "LFE,LAE"
448         RTL              true
449         LangCode         fa_IR
450         PostBabelPreamble
451         \DeclareTextSymbol{\guillemotright}{LFE}{62}
452         \DeclareTextSymbol{\guillemotleft}{LFE}{60}
453         EndPostBabelPreamble
454 End
455
456 Language finnish
457         GuiName          "Finnish"
458         HasGuiSupport    true
459         BabelName        finnish
460         PolyglossiaName  finnish
461         QuoteStyle       swedish
462         Encoding         iso8859-15
463         LangCode         fi_FI
464 End
465
466 # We redefine \og and \fg (guillemets) for older french language definitions
467 Language french
468         GuiName          "French"
469         HasGuiSupport    true
470         BabelName        french
471         PolyglossiaName  french
472         QuoteStyle       french
473         Encoding         iso8859-15
474         LangCode         fr_FR
475         PostBabelPreamble
476         \addto\extrasfrench{%
477            \providecommand{\og}{\leavevmode\flqq~}%
478            \providecommand{\fg}{\ifdim\lastskip>\z@\unskip\fi~\frqq}%
479         }
480         EndPostBabelPreamble
481 End
482
483 Language galician
484         GuiName          "Galician"
485         HasGuiSupport    true
486         BabelName        galician
487         PolyglossiaName  galician
488         QuoteStyle       french
489         Encoding         iso8859-15
490         LangCode         gl_ES
491         PostBabelPreamble
492         \addto\shorthandsgalician{\galiciandeactivate{~}}
493         EndPostBabelPreamble
494 End
495
496 Language georgian
497         GuiName          "Georgian"
498         BabelName        georgian
499         QuoteStyle       german
500         Encoding         utf8
501         FontEncoding     T8M
502         LangCode         ka_GE
503 End
504
505 # german does not use a country code (due to the variety)
506 Language german
507         GuiName          "German (old spelling)"
508         BabelName        german
509         PolyglossiaName  german
510         PolyglossiaOpts  "spelling=old,babelshorthands=true"
511         QuoteStyle       german
512         Encoding         iso8859-15
513         LangCode         de
514         LangVariety      alt
515 End
516
517 Language ngerman
518         GuiName          "German"
519         HasGuiSupport    true
520         BabelName        ngerman
521         PolyglossiaName  german
522         PolyglossiaOpts  "babelshorthands=true"
523         QuoteStyle       german
524         Encoding         iso8859-15
525         LangCode         de_DE
526 End
527
528 # In Babel, this is supported since release 2.7 of babel-german (Dec 2013)
529 # We introduce it with LyX 2.2 to give the support time to settle.
530 # In polyglossia, this is supported since release 1.33.6 (May 2015)
531 # We use german until TL 2015 is out, though.
532 Language german-ch
533         GuiName          "German (Switzerland)"
534         BabelName        nswissgerman
535         PolyglossiaName  german
536         PolyglossiaOpts  "babelshorthands=true"
537 #       PolyglossiaOpts  "variant=swiss,babelshorthands=true"
538         QuoteStyle       danish
539         Encoding         iso8859-15
540         LangCode         de_CH
541 End
542
543 # In Babel, this is supported since release 2.7 of babel-german (Dec 2013)
544 # In polyglossia, this is supported since release 1.33.6 (May 2015)
545 # We use ngerman until TL 2015 is out, though.
546 Language german-ch-old
547         GuiName          "German (Switzerland, old spelling)"
548         BabelName        swissgerman
549         PolyglossiaName  german
550         PolyglossiaOpts  "spelling=old,babelshorthands=true"
551 #       PolyglossiaOpts  "variant=swiss,spelling=old,babelshorthands=true"
552         QuoteStyle       danish
553         Encoding         iso8859-15
554         LangCode         de_CH
555 End
556
557 Language greek
558         GuiName           "Greek"
559         HasGuiSupport     true
560         BabelName         greek
561         PolyglossiaName   greek
562         QuoteStyle        french
563         Encoding          iso8859-7
564         InternalEncoding  true
565         FontEncoding      LGR
566         LangCode          el_GR
567 End
568
569 Language polutonikogreek
570         GuiName           "Greek (polytonic)"
571         BabelName         polutonikogreek
572         PolyglossiaName   greek
573         PolyglossiaOpts   "variant=polytonic"
574         QuoteStyle        french
575         Encoding          iso8859-7
576         InternalEncoding  true
577         FontEncoding      LGR
578         LangCode          el_GR
579 End
580
581 Language hebrew
582         GuiName           "Hebrew"
583         HasGuiSupport     true
584         BabelName         hebrew
585         PolyglossiaName   hebrew
586         Encoding          cp1255
587         QuoteStyle        english
588         InternalEncoding  true
589 # Hebrew babel loads the font encodings
590 # itself in the appropriate order
591 #       FontEncoding      LHE
592         RTL               true
593         LangCode          he_IL
594 End
595
596 # not supported by babel
597 Language hindi
598         GuiName          "Hindi"
599         PolyglossiaName  hindi
600         Encoding         utf8
601         LangCode         hi_IN
602 End
603
604 # Currently not supported (file format change!)
605 # "hungarian" is a synonym for the "magyar" babel language option
606 # "hungarian" might be used for special purposes,
607 # see http://www.math.bme.hu/latex/magyar_pre_tug2004.pdf
608 #Language hungarian
609 #       GuiName         "Hungarian"
610 #       BabelName       hungarian
611 #       Encoding        iso8859-2
612 #       LangCode        hu_HU
613 #End
614
615 Language icelandic
616         GuiName          "Icelandic"
617         BabelName        icelandic
618         PolyglossiaName  icelandic
619         QuoteStyle       german
620         Encoding         iso8859-15
621         LangCode         is_IS
622 End
623
624 # Interlingua has no official country code because it is an auxiliary
625 # language. We therefore the name of its hunspell dictionary.
626 Language interlingua
627         GuiName          "Interlingua"
628         HasGuiSupport    true
629         BabelName        interlingua
630         PolyglossiaName  interlingua
631         Encoding         iso8859-15
632         LangCode         ia_IA
633 End
634
635 Language irish
636         GuiName          "Irish"
637         BabelName        irish
638         PolyglossiaName  irish
639         QuoteStyle       english
640         Encoding         iso8859-15
641         LangCode         ga_IE
642 End
643
644 Language italian
645         GuiName          "Italian"
646         HasGuiSupport    true
647         BabelName        italian
648         PolyglossiaName  italian
649         QuoteStyle       french
650         Encoding         iso8859-15
651         LangCode         it_IT
652 End
653
654 # japanese must be loaded locally with babel options,
655 # not globally via class options
656 # http://www.lyx.org/trac/ticket/4597#c4
657 # Since japanese does not load fontenc, we set
658 # InternalEncoding to true.
659 Language japanese
660         GuiName          "Japanese"
661         HasGuiSupport    true
662         BabelName        japanese
663         Encoding         jis-platex
664         LangCode         ja_JP
665         AsBabelOptions   true
666         Requires         japanese
667         InternalEncoding true
668         FontEncoding     None
669 End
670
671 # uses CJK package
672 Language japanese-cjk
673         GuiName         "Japanese (CJK)"
674         Encoding        euc-jp
675         LangCode        ja_JP
676         Requires        CJK
677 End
678
679 # not yet supported by polyglossia
680 # not supported by babel
681 Language kazakh
682         GuiName         "Kazakh"
683         Encoding        ascii
684         LangCode        kk_KZ
685         PostBabelPreamble
686         \input{t2aenc.def}
687         \AtBeginDocument{\fontencoding{T2A}\selectfont}
688         EndPostBabelPreamble
689 End
690
691 Language korean
692         GuiName         "Korean"
693         Encoding        euc-kr
694         QuoteStyle      english
695         LangCode        ko_KR
696         Requires        CJK
697 End
698
699 # not yet supported by polyglossia
700 Language kurmanji
701         GuiName          "Kurmanji"
702         BabelName        kurmanji
703         Encoding         utf8
704         LangCode         kmr
705         AsBabelOptions   true
706 End
707
708 # not supported by babel
709 Language lao
710         GuiName          "Lao"
711         PolyglossiaName  lao
712         Encoding         utf8
713         LangCode         lo_LA
714 End
715
716 # There is no country code for Latin because it is a dead language.
717 # We therefore the name of its hunspell dictionary.
718 Language latin
719         GuiName          "Latin"
720         BabelName        latin
721         PolyglossiaName  latin
722         Encoding         iso8859-15
723         LangCode         la_LA
724 End
725
726 # latvian must be loaded locally with babel options,
727 # not globally via class options
728 Language latvian
729         GuiName          "Latvian"
730         BabelName        latvian
731         PolyglossiaName  latvian
732         QuoteStyle       danish
733         Encoding         iso8859-4
734 #       FontEncoding     L7x # (required for hyphenation but not set by babel)
735         LangCode         lv_LV
736         AsBabelOptions   true
737 End
738
739 # lithuanian must be loaded locally with babel options,
740 # not globally via class options
741 Language lithuanian
742         GuiName          "Lithuanian"
743         BabelName        lithuanian
744         PolyglossiaName  lithuanian
745         QuoteStyle       german
746         Encoding         iso8859-13
747         FontEncoding     L7x
748         LangCode         lt_LT
749         AsBabelOptions   true
750 End
751
752 Language lowersorbian
753         GuiName          "Lower Sorbian"
754         BabelName        lowersorbian
755         PolyglossiaName  lsorbian
756         QuoteStyle       german
757         Encoding         iso8859-2
758         LangCode         dsb_DE
759 End
760
761 Language magyar
762         GuiName          "Hungarian"
763         HasGuiSupport    true
764         BabelName        magyar
765         PolyglossiaName  magyar
766         QuoteStyle       polish
767         Encoding         iso8859-2
768         LangCode         hu_HU
769 End
770
771 # not supported by babel
772 Language marathi
773         GuiName          "Marathi"
774         PolyglossiaName  marathi
775         Encoding         utf8
776         LangCode         mr_IN
777 End
778
779 # mongolian must be loaded locally with babel options,
780 # not globally via class options
781 # not yet supported by polyglossia
782 Language mongolian
783         GuiName          "Mongolian"
784         BabelName        mongolian
785         Encoding         utf8
786         FontEncoding     T2A
787         LangCode         mn_MN
788         AsBabelOptions   true
789 End
790
791 Language newzealand
792         GuiName          "English (New Zealand)"
793         BabelName        newzealand
794         PolyglossiaName  english
795         PolyglossiaOpts  "variant=newzealand"
796         QuoteStyle       english
797         Encoding         iso8859-15
798         LangCode         en_NZ
799 End
800
801 Language norsk
802         GuiName          "Norwegian (Bokmaal)"
803         HasGuiSupport    true
804         BabelName        norsk
805         PolyglossiaName  norsk
806         QuoteStyle       french
807         Encoding         iso8859-15
808         LangCode         nb_NO
809 End
810
811 Language nynorsk
812         GuiName          "Norwegian (Nynorsk)"
813         HasGuiSupport    true
814         BabelName        nynorsk
815         PolyglossiaName  nynorsk
816         QuoteStyle       french
817         Encoding         iso8859-15
818         LangCode         nn_NO
819 End
820
821 # not supported by babel
822 Language occitan
823         GuiName          "Occitan"
824         PolyglossiaName  occitan
825         QuoteStyle       french
826         Encoding         utf8
827         LangCode         oc_FR
828 End
829
830 # Currently not supported (file format change!)
831 # Russian orthography from the Petrine orthographic reforms of
832 # 1708 to the 1917 orthographic reform
833 # Language oldrussian
834 #       GuiName          "Russian (Petrine orthography)"
835 #       PolyglossiaName  russian
836 #       PolyglossiaOpts  spelling=old
837 #       LangCode         ru_petr1708
838 # End
839
840 Language polish
841         GuiName          "Polish"
842         HasGuiSupport    true
843         BabelName        polish
844         PolyglossiaName  polish
845         QuoteStyle       polish
846         Encoding         iso8859-2
847 #       FontEncoding     QX # (required for hyphenation but not set by babel)
848         LangCode         pl_PL
849 End
850
851 Language portuguese
852         GuiName          "Portuguese"
853         HasGuiSupport    true
854         BabelName        portuges
855         PolyglossiaName  portuges
856         QuoteStyle       english
857         Encoding         iso8859-15
858         LangCode         pt_PT
859 End
860
861 Language romanian
862         GuiName          "Romanian"
863         HasGuiSupport    true
864         BabelName        romanian
865         PolyglossiaName  romanian
866         QuoteStyle       polish
867         Encoding         iso8859-16
868         LangCode         ro_RO
869 End
870
871 Language russian
872         GuiName          "Russian"
873         HasGuiSupport    true
874         BabelName        russian
875         PolyglossiaName  russian
876         QuoteStyle       french
877         Encoding         koi8-r
878         FontEncoding     T2A
879         LangCode         ru_RU
880 End
881
882 Language samin
883         GuiName          "North Sami"
884         BabelName        samin
885         PolyglossiaName  samin
886         Encoding         iso8859-15
887         LangCode         se_NO
888 End
889
890 # not supported by babel
891 Language sanskrit
892         GuiName          "Sanskrit"
893         PolyglossiaName  sanskrit
894         Encoding         utf8
895         LangCode         sa_IN
896 End
897
898 Language scottish
899         GuiName          "Scottish"
900         BabelName        scottish
901         PolyglossiaName  scottish
902         QuoteStyle       english
903         Encoding         iso8859-15
904         LangCode         gd_GB
905 End
906
907 Language serbian
908         GuiName          "Serbian"
909         HasGuiSupport    true
910         BabelName        serbianc
911         PolyglossiaName  serbian
912         QuoteStyle       german
913         Encoding         utf8
914         FontEncoding     T2A
915         LangCode         sr_RS
916         AsBabelOptions   true
917 End
918
919 Language serbian-latin
920         GuiName          "Serbian (Latin)"
921         BabelName        serbian
922         PolyglossiaName  serbian
923         PolyglossiaOpts  "script=Latin"
924         QuoteStyle       german
925         Encoding         iso8859-2
926         LangCode         sr_RS-Latin
927 End
928
929 Language slovak
930         GuiName          "Slovak"
931         HasGuiSupport    true
932         BabelName        slovak
933         PolyglossiaName  slovak
934         QuoteStyle       german
935         Encoding         iso8859-2
936         LangCode         sk_SK
937 End
938
939 Language slovene
940         GuiName          "Slovene"
941         BabelName        slovene
942         PolyglossiaName  slovenian
943         QuoteStyle       german
944         Encoding         iso8859-2
945         LangCode         sl_SI
946 End
947
948 Language spanish
949         GuiName          "Spanish"
950         HasGuiSupport    true
951         BabelName        spanish
952         PolyglossiaName  spanish
953         QuoteStyle       french
954         Encoding         iso8859-15
955         LangCode         es_ES
956         PostBabelPreamble
957         \addto\shorthandsspanish{\spanishdeactivate{~<>}}
958         EndPostBabelPreamble
959 End
960
961 # there are no spanish shorthands in polyglossia
962 Language spanish-mexico
963         GuiName          "Spanish (Mexico)"
964         BabelName        spanish
965         PolyglossiaName  spanish
966         QuoteStyle       french
967         Encoding         iso8859-15
968         LangCode         es_MX
969         PostBabelPreamble
970         \addto\shorthandsspanish{\spanishdeactivate{~<>.}}
971         EndPostBabelPreamble
972 End
973
974 Language swedish
975         GuiName          "Swedish"
976         HasGuiSupport    true
977         BabelName        swedish
978         PolyglossiaName  swedish
979         QuoteStyle       swedish
980         Encoding         iso8859-15
981         LangCode         sv_SE
982 End
983
984 # not supported by babel
985 #Language syriac
986 #       GuiName          "Syriac"
987 #       PolyglossiaName  syriac
988 #       Encoding         utf8
989 #       RTL              true
990 #       LangCode         syr_SY
991 #End
992
993 # not supported by babel
994 Language tamil
995         GuiName          "Tamil"
996         PolyglossiaName  tamil
997         Encoding         utf8
998         LangCode         ta_IN
999 End
1000
1001 # not supported by babel
1002 Language telugu
1003         GuiName          "Telugu"
1004         PolyglossiaName  telugu
1005         Encoding         utf8
1006         LangCode         te_IN
1007 End
1008
1009 Language thai
1010         GuiName          "Thai"
1011         BabelName        thai
1012         PolyglossiaName  thai
1013         QuoteStyle       english
1014         Encoding         tis620-0
1015 #       FontEncoding     LTH
1016         LangCode         th_TH
1017         PostBabelPreamble
1018         \usepackage{thswitch}
1019         EndPostBabelPreamble
1020 End
1021
1022 # not supported by babel
1023 Language tibetan
1024         GuiName          "Tibetan"
1025         PolyglossiaName  tibetan
1026         Encoding         utf8
1027         LangCode         bo_CN
1028 End
1029
1030 Language turkish
1031         GuiName          "Turkish"
1032         HasGuiSupport    true
1033         BabelName        turkish
1034         PolyglossiaName  turkish
1035         QuoteStyle       french
1036         Encoding         iso8859-9
1037         LangCode         tr_TR
1038         PostBabelPreamble
1039         \usepackage{xkeyval}
1040         EndPostBabelPreamble
1041 End
1042
1043 # turkmen must be loaded locally with babel options,
1044 # not globally via class options
1045 Language turkmen
1046         GuiName          "Turkmen"
1047         BabelName        turkmen
1048         PolyglossiaName  turkmen
1049         QuoteStyle       french
1050         Encoding         utf8
1051         LangCode         tk_TM
1052         AsBabelOptions   true
1053 End
1054
1055 Language ukrainian
1056         GuiName          "Ukrainian"
1057         HasGuiSupport    true
1058         BabelName        ukrainian
1059         PolyglossiaName  ukrainian
1060         QuoteStyle       french
1061         Encoding         koi8-u
1062         FontEncoding     T2A
1063         LangCode         uk_UA
1064 End
1065
1066 Language uppersorbian
1067         GuiName          "Upper Sorbian"
1068         BabelName        uppersorbian
1069         PolyglossiaName  usorbian
1070         QuoteStyle       german
1071         Encoding         iso8859-2
1072         LangCode         hsb_DE
1073 End
1074
1075 # not supported by babel
1076 #Language urdu
1077 #       GuiName          "Urdu"
1078 #       PolyglossiaName  urdu
1079 #       Encoding         utf8
1080 #       RTL              true
1081 #       LangCode         ur_PK
1082 #End
1083
1084 # vietnam must be loaded locally with babel options,
1085 # not globally via class options, see
1086 # http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg129417.html
1087 Language vietnamese
1088         GuiName          "Vietnamese"
1089         BabelName        vietnam
1090         PolyglossiaName  vietnamese
1091         QuoteStyle       french
1092         Encoding         utf8
1093         LangCode         vi_VN
1094         AsBabelOptions   true
1095         Requires         vietnamese
1096 End
1097
1098 Language welsh
1099         GuiName          "Welsh"
1100         BabelName        welsh
1101         PolyglossiaName  welsh
1102         QuoteStyle       english
1103         Encoding         iso8859-15
1104         LangCode         cy_GB
1105 End