1 ##########################################################################
3 # Languages supported by LyX.
9 # BabelName <babelname>
10 # PolyglossiaName <polyglossianame>
11 # PolyglossiaOpts "<language-specific options>"
13 # FontEncoding <font encoding>
14 # QuoteStyle <danish|english|french|german|polish|swedish>
15 # InternalEncoding <true|false>
17 # AsBabelOptions <true|false>
18 # LangCode <language_code>
19 # LangVariety <language_variety>
21 # <extra latex code inserted before babel>
24 # <extra latex code inserted after babel>
25 # EndPostBabelPreamble
26 # Requires <requirement>
32 # * Omitted elements will be treated as empty (if string) or "false"
34 # * The QuoteStyle arguments correspond to the following styles:
35 # - danish: >>text<< >text< (inward guillemets)
36 # - english: ``text'' `text' (66_99)
37 # - french: <<text>> <text> (outward guillemets)
38 # - german: ,,text`` ,text` (99/66)
39 # - polish: ,,text'' ,text' (99/99)
40 # - swedish: ''text'' 'text' (99_99)
41 # Note that the option names have been selected (rather arbitrarily)
42 # because the respective styles are common in the respective countries.
43 # Of course this does not imply any fixed relation to those countries.
44 # * Encoding is not relevant for XeTeX (which is utf8 always), and if
45 # Document > Settings > Language > Encoding is not set to "Language
47 # * InternalEncoding is used to tell LyX that babel internally sets a font
48 # encoding (such as hebrew to LHE). This prevents LyX from outputting
49 # characters that only exist in T1 font encoding (such as "<", ">", "|"
50 # and straight quote). See bug #5091.
51 # * "FontEncoding none" tells LyX that fontenc should not be loaded with this
53 # * AsBabelOptions advices LyX to pass the languages locally to babel, not
54 # globally to the class. Some languages (basically those not directly
55 # supported by babel) need this.
56 # FIXME: in this case, we might still need to pass the other languages
57 # globally, for the use of other packages (such as varioref).
58 # * LangCode is also used for spellchecking and thesaurus, where the
59 # dictionaries are named accordingly. Thus, check this when intoducing/
60 # changing language codes (especially aspell, thesaurus).
61 # TODO: maybe use Best Current Practice (BCP 47) codes for LangCode
62 # http://www.rfc-editor.org/rfc/bcp/bcp47.txt
63 # http://www.w3.org/International/articles/language-tags/
64 # http://www.iana.org/assignments/language-subtag-registry
65 # * LangVariety is used by the aspell spellchecker to differentiate
66 # dictionaries for different varieties of a given language (e.g. German
67 # pre-1998 and post-1998 spelling). The aspell dictionaries are named
68 # language[_REGION][-variety].multi, e.g. de-alt.multi for "German (old
69 # spelling)" (see http://aspell.net/man-html/Dictionary-Naming.html)
71 ##########################################################################
74 # LyX-internal languages
80 PolyglossiaName ignore
95 # not yet supported by polyglossia
107 PolyglossiaName albanian
114 GuiName "English (USA)"
116 PolyglossiaName english
117 PolyglossiaOpts "variant=american"
123 # In Babel, this is supported since v. 1.8a of babel-greek (2013-12-03)
124 # We introduce it with LyX 2.2 to give the support time to settle.
125 Language ancientgreek
126 GuiName "Greek (ancient)"
129 \languageattribute{greek}{ancient}
131 PolyglossiaName greek
132 PolyglossiaOpts variant=ancient
135 InternalEncoding true
140 # FIXME: dummy babel language for arabic_arabtex to be able
141 # to switch the language the way of the ArabTeX-package
142 Language arabic_arabtex
143 GuiName "Arabic (ArabTeX)"
151 # polyglossia uses "Arabic" for the lang environment
152 Language arabic_arabi
153 GuiName "Arabic (Arabi)"
155 PolyglossiaName arabic
158 FontEncoding "LFE,LAE"
164 # not supported by babel
167 PolyglossiaName armenian
174 GuiName "English (Australia)"
176 PolyglossiaName english
177 PolyglossiaOpts "variant=australian"
183 # In polyglossia, this is supported since release 1.33.4 (May 2014)
184 # We introduce it with LyX 2.2 to give the support time to settle.
186 GuiName "German (Austria, old spelling)"
188 PolyglossiaName german
189 PolyglossiaOpts "variant=austrian,spelling=old,babelshorthands=true"
195 # In polyglossia, this is supported since release 1.33.4 (May 2014)
196 # We introduce it with LyX 2.2 to give the support time to settle.
198 GuiName "German (Austria)"
200 PolyglossiaName german
201 PolyglossiaOpts "variant=austrian,babelshorthands=true"
210 PolyglossiaName bahasai
219 PolyglossiaName bahasam
228 PolyglossiaName basque
233 \addto\extrasbasque{\bbl@deactivate{~}}
237 # not yet supported by polyglossia
248 GuiName "Portuguese (Brazil)"
250 PolyglossiaName brazil
259 PolyglossiaName breton
266 GuiName "English (UK)"
268 PolyglossiaName english
269 PolyglossiaOpts "variant=british"
278 PolyglossiaName bulgarian
284 # not yet supported by polyglossia
286 GuiName "English (Canada)"
288 # PolyglossiaName english
289 # PolyglossiaOpts "variant=canadian"
295 # not yet supported by polyglossia
297 GuiName "French (Canada)"
299 # PolyglossiaName french
300 # PolyglossiaOpts "variant=canadien"
309 PolyglossiaName catalan
310 PolyglossiaOpts "babelshorthands=true"
317 Language chinese-simplified
318 GuiName "Chinese (simplified)"
326 Language chinese-traditional
327 GuiName "Chinese (traditional)"
334 # not supported by babel
337 PolyglossiaName coptic
345 PolyglossiaName croatian
354 PolyglossiaName czech
363 PolyglossiaName danish
369 # not supported by babel
371 GuiName "Divehi (Maldivian)"
372 PolyglossiaName divehi
380 PolyglossiaName dutch
381 PolyglossiaOpts "babelshorthands=true"
390 PolyglossiaName english
396 # Esperanto has no country code because it is an auxiliary language.
397 # We therefore the name of its hunspell dictionary.
401 PolyglossiaName esperanto
410 PolyglossiaName estonian
415 \addto\extrasestonian{\bbl@deactivate{~}}
419 # the preamble definitions are only used due to bugs in the
420 # arabi-package -- remove them if they become unnecessary!
424 PolyglossiaName farsi
426 FontEncoding "LFE,LAE"
430 \DeclareTextSymbol{\guillemotright}{LFE}{62}
431 \DeclareTextSymbol{\guillemotleft}{LFE}{60}
438 PolyglossiaName finnish
444 # We redefine \og and \fg (guillemets) for older french language definitions
448 PolyglossiaName french
453 \addto\extrasfrench{%
454 \providecommand{\og}{\leavevmode\flqq~}%
455 \providecommand{\fg}{\ifdim\lastskip>\z@\unskip\fi~\frqq}%
463 PolyglossiaName galician
468 \addto\shorthandsgalician{\galiciandeactivate{~}}
477 InternalEncoding true
478 FontEncoding "T8M,T8K"
482 # german does not use a country code (due to the variety)
484 GuiName "German (old spelling)"
486 PolyglossiaName german
487 PolyglossiaOpts "spelling=old,babelshorthands=true"
497 PolyglossiaName german
498 PolyglossiaOpts "babelshorthands=true"
504 # In Babel, this is supported since release 2.7 of babel-german (Dec 2013)
505 # We introduce it with LyX 2.2 to give the support time to settle.
506 # In polyglossia, this is supported since release 1.33.6 (May 2015)
507 # We use german until TL 2015 is out, though.
509 GuiName "German (Switzerland)"
510 BabelName nswissgerman
511 PolyglossiaName german
512 PolyglossiaOpts "babelshorthands=true"
513 # PolyglossiaOpts "variant=swiss,babelshorthands=true"
519 # In Babel, this is supported since release 2.7 of babel-german (Dec 2013)
520 # In polyglossia, this is supported since release 1.33.6 (May 2015)
521 # We use ngerman until TL 2015 is out, though.
522 Language german-ch-old
523 GuiName "German (Switzerland, old spelling)"
524 BabelName swissgerman
525 PolyglossiaName german
526 PolyglossiaOpts "spelling=old,babelshorthands=true"
527 # PolyglossiaOpts "variant=swiss,spelling=old,babelshorthands=true"
536 PolyglossiaName greek
539 InternalEncoding true
544 Language polutonikogreek
545 GuiName "Greek (polytonic)"
546 BabelName polutonikogreek
547 PolyglossiaName greek
548 PolyglossiaOpts "variant=polytonic"
551 InternalEncoding true
559 PolyglossiaName hebrew
562 InternalEncoding true
563 # Hebrew babel loads the font encodings
564 # itself in the appropriate order
570 # not supported by babel
573 PolyglossiaName hindi
578 # Currently not supported (file format change!)
579 # "hungarian" is a synonym for the "magyar" babel language option
580 # "hungarian" might be used for special purposes,
581 # see http://www.math.bme.hu/latex/magyar_pre_tug2004.pdf
583 # GuiName "Hungarian"
584 # BabelName hungarian
592 PolyglossiaName icelandic
598 # Interlingua has no official country code because it is an auxiliary
599 # language. We therefore the name of its hunspell dictionary.
601 GuiName "Interlingua"
602 BabelName interlingua
603 PolyglossiaName interlingua
611 PolyglossiaName irish
620 PolyglossiaName italian
626 # japanese must be loaded locally with babel options,
627 # not globally via class options
628 # http://www.lyx.org/trac/ticket/4597#c4
629 # Since japanese does not load fontenc, we set
630 # InternalEncoding to true.
638 InternalEncoding true
643 Language japanese-cjk
644 GuiName "Japanese (CJK)"
650 # not yet supported by polyglossia
651 # not supported by babel
658 \AtBeginDocument{\fontencoding{T2A}\selectfont}
670 # not yet supported by polyglossia
679 # not supported by babel
687 # There is no country code for Latin because it is a dead language.
688 # We therefore the name of its hunspell dictionary.
692 PolyglossiaName latin
697 # latvian must be loaded locally with babel options,
698 # not globally via class options
702 PolyglossiaName latvian
709 # lithuanian must be loaded locally with babel options,
710 # not globally via class options
714 PolyglossiaName lithuanian
721 Language lowersorbian
722 GuiName "Lower Sorbian"
723 BabelName lowersorbian
724 PolyglossiaName lsorbian
733 PolyglossiaName magyar
739 # not supported by babel
742 PolyglossiaName marathi
747 # mongolian must be loaded locally with babel options,
748 # not globally via class options
749 # not yet supported by polyglossia
759 GuiName "English (New Zealand)"
761 PolyglossiaName english
762 PolyglossiaOpts "variant=newzealand"
769 GuiName "Norwegian (Bokmaal)"
771 PolyglossiaName norsk
778 GuiName "Norwegian (Nynorsk)"
780 PolyglossiaName nynorsk
786 # not supported by babel
789 PolyglossiaName occitan
795 # Currently not supported (file format change!)
796 # Russian orthography from the Petrine orthographic reforms of
797 # 1708 to the 1917 orthographic reform
798 # Language oldrussian
799 # GuiName "Russian (Petrine orthography)"
800 # PolyglossiaName russian
801 # PolyglossiaOpts spelling=old
802 # LangCode ru_petr1708
808 PolyglossiaName polish
817 PolyglossiaName portuges
826 PolyglossiaName romanian
835 PolyglossiaName russian
839 InternalEncoding true
846 PolyglossiaName samin
851 # not supported by babel
854 PolyglossiaName sanskrit
862 PolyglossiaName scottish
871 PolyglossiaName serbian
878 Language serbian-latin
879 GuiName "Serbian (Latin)"
881 PolyglossiaName serbian
882 PolyglossiaOpts "script=latin"
891 PolyglossiaName slovak
900 PolyglossiaName slovenian
909 PolyglossiaName spanish
914 \addto\shorthandsspanish{\spanishdeactivate{~<>}}
918 # there are no spanish shorthands in polyglossia
919 Language spanish-mexico
920 GuiName "Spanish (Mexico)"
922 PolyglossiaName spanish
927 \addto\shorthandsspanish{\spanishdeactivate{~<>.}}
934 PolyglossiaName swedish
940 # not supported by babel
943 # PolyglossiaName syriac
949 # not supported by babel
952 PolyglossiaName tamil
957 # not supported by babel
960 PolyglossiaName telugu
973 \usepackage{thswitch}
977 # not supported by babel
980 PolyglossiaName tibetan
988 PolyglossiaName turkish
997 # turkmen must be loaded locally with babel options,
998 # not globally via class options
1002 PolyglossiaName turkmen
1012 PolyglossiaName ukrainian
1016 InternalEncoding true
1020 Language uppersorbian
1021 GuiName "Upper Sorbian"
1022 BabelName uppersorbian
1023 PolyglossiaName usorbian
1029 # not supported by babel
1032 # PolyglossiaName urdu
1038 # vietnam must be loaded locally with babel options,
1039 # not globally via class options, see
1040 # http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg129417.html
1042 GuiName "Vietnamese"
1044 PolyglossiaName vietnamese
1055 PolyglossiaName welsh