1 ##########################################################################
3 # Languages supported by LyX.
9 # BabelName <babelname>
10 # PolyglossiaName <polyglossianame>
11 # PolyglossiaOpts "<language-specific options>"
13 # InternalEncoding <true|false>
15 # AsBabelOptions <true|false>
16 # LangCode <language_code>
17 # LangVariety <language_variety>
19 # <extra latex code inserted before babel>
22 # <extra latex code inserted after babel>
23 # EndPostBabelPreamble
24 # Requires <requirement>
30 # * Omitted elements will be treated as empty (if string) or "false"
32 # * Encoding is not relevant for XeTeX (which is utf8 always), and if
33 # Document > Settings > Language > Encoding is not set to "Language
35 # * InternalEncoding is used to tell LyX that babel internally sets a font
36 # encoding (such as hebrew to LHE). See bug #5091.
37 # * AsBabelOptions advices LyX to pass the languages locally to babel, not
38 # globally to the class. Some languages (basically those not directly
39 # supported by babel) need this.
40 # FIXME: in this case, we might still need to pass the other languages
41 # globally, for the use of other packages (such as varioref).
42 # * LangCode is also used for spellchecking and thesaurus, where the
43 # dictionaries are named accordingly. Thus, check this when intoducing/
44 # changing language codes (especially aspell, thesaurus).
45 # TODO: maybe use Best Current Practice (BCP 47) codes for LangCode
46 # http://www.rfc-editor.org/rfc/bcp/bcp47.txt
47 # http://www.w3.org/International/articles/language-tags/
48 # http://www.iana.org/assignments/language-subtag-registry
49 # * LangVariety is used by the aspell spellchecker to differentiate
50 # dictionaries for different varieties of a given language (e.g. German
51 # pre-1998 and post-1998 spelling). The aspell dictionaries are named
52 # language[_REGION][-variety].multi, e.g. de-alt.multi for "German (old
53 # spelling)" (see http://aspell.net/man-html/Dictionary-Naming.html)
55 ##########################################################################
58 # LyX-internal languages
64 PolyglossiaName ignore
79 # not yet supported by polyglossia
90 PolyglossiaName albanian
96 GuiName "English (USA)"
98 PolyglossiaName english
99 PolyglossiaOpts "variant=american"
104 # not supported by babel
105 Language ancientgreek
106 GuiName "Greek (ancient)"
107 PolyglossiaName greek
108 PolyglossiaOpts variant=ancient
113 # FIXME: dummy babel language for arabic_arabtex to be able
114 # to switch the language the way of the ArabTeX-package
115 Language arabic_arabtex
116 GuiName "Arabic (ArabTeX)"
123 # polyglossia uses "Arabic" for the lang environment
124 Language arabic_arabi
125 GuiName "Arabic (Arabi)"
127 PolyglossiaName arabic
133 # not supported by babel
136 PolyglossiaName armenian
142 GuiName "English (Australia)"
144 PolyglossiaName english
145 PolyglossiaOpts "variant=australian"
150 # not yet supported by polyglossia
152 GuiName "German (Austria, old spelling)"
158 # not yet supported by polyglossia
160 GuiName "German (Austria)"
169 PolyglossiaName bahasai
177 PolyglossiaName bahasam
185 PolyglossiaName basque
190 # not yet supported by polyglossia
199 GuiName "Portuguese (Brazil)"
201 PolyglossiaName brazil
209 PolyglossiaName breton
215 GuiName "English (UK)"
217 PolyglossiaName english
218 PolyglossiaOpts "variant=british"
226 PolyglossiaName bulgarian
231 # not yet supported by polyglossia
233 GuiName "English (Canada)"
235 # PolyglossiaName english
236 # PolyglossiaOpts "variant=canadian"
241 # not yet supported by polyglossia
243 GuiName "French (Canada)"
245 # PolyglossiaName french
246 # PolyglossiaOpts "variant=canadien"
254 PolyglossiaName catalan
255 PolyglossiaOpts "babelshorthands=true"
261 Language chinese-simplified
262 GuiName "Chinese (simplified)"
269 Language chinese-traditional
270 GuiName "Chinese (traditional)"
276 # not supported by babel
279 PolyglossiaName coptic
287 PolyglossiaName croatian
295 PolyglossiaName czech
303 PolyglossiaName danish
308 # not supported by babel
310 GuiName "Divehi (Maldivian)"
311 PolyglossiaName divehi
319 PolyglossiaName dutch
320 PolyglossiaOpts "babelshorthands=true"
328 PolyglossiaName english
333 # Esperanto has no country code because it is an auxiliary language.
334 # We therefore the name of its hunspell dictionary.
338 PolyglossiaName esperanto
346 PolyglossiaName estonian
351 # the preamble definitions are only used due to bugs in the
352 # arabi-package -- remove them if they become unnecessary!
356 PolyglossiaName farsi
361 \DeclareTextSymbol{\guillemotright}{LFE}{62}
362 \DeclareTextSymbol{\guillemotleft}{LFE}{60}
369 PolyglossiaName finnish
374 # We redefine \og and \fg (guillemets) for older french language definitions
378 PolyglossiaName french
382 \addto\extrasfrench{%
383 \providecommand{\og}{\leavevmode\flqq~}%
384 \providecommand{\fg}{\ifdim\lastskip>\z@\unskip\fi~\frqq}%
392 PolyglossiaName galician
397 # german does not use a country code (due to the variety)
399 GuiName "German (old spelling)"
401 PolyglossiaName german
402 PolyglossiaOpts "spelling=old,babelshorthands=true"
411 PolyglossiaName german
412 PolyglossiaOpts "babelshorthands=true"
417 # Swiss German is not supported by babel and polyglossia yet
418 # We use ngerman for now (spellchecking is supported though!)
420 GuiName "German (Switzerland)"
422 PolyglossiaName german
423 PolyglossiaOpts "babelshorthands=true"
431 PolyglossiaName greek
433 InternalEncoding true
437 Language polutonikogreek
438 GuiName "Greek (polytonic)"
439 BabelName polutonikogreek
440 PolyglossiaName greek
441 PolyglossiaOpts "variant=polytonic"
443 InternalEncoding true
450 PolyglossiaName hebrew
452 InternalEncoding true
457 # not supported by babel
460 PolyglossiaName hindi
465 # Currently not supported (file format change!)
466 # "hungarian" is a synonym for the "magyar" babel language option
467 # "hungarian" might be used for special purposes,
468 # see http://www.math.bme.hu/latex/magyar_pre_tug2004.pdf
470 # GuiName "Hungarian"
471 # BabelName hungarian
479 PolyglossiaName icelandic
484 # Interlingua has no official country code because it is an auxiliary
485 # language. We therefore the name of its hunspell dictionary.
487 GuiName "Interlingua"
488 BabelName interlingua
489 PolyglossiaName interlingua
497 PolyglossiaName irish
505 PolyglossiaName italian
510 # japanese must be loaded locally with babel options,
511 # not globally via class options
512 # http://www.lyx.org/trac/ticket/4597#c4
523 Language japanese-cjk
524 GuiName "Japanese (CJK)"
530 # not yet supported by polyglossia
545 # not yet supported by polyglossia
554 # not supported by babel
562 # There is no country code for Latin because it is a dead language.
563 # We therefore the name of its hunspell dictionary.
567 PolyglossiaName latin
572 # latvian must be loaded locally with babel options,
573 # not globally via class options
577 PolyglossiaName latvian
583 # lithuanian must be loaded locally with babel options,
584 # not globally via class options
588 PolyglossiaName lithuanian
594 Language lowersorbian
595 GuiName "Lower Sorbian"
596 BabelName lowersorbian
597 PolyglossiaName lsorbian
605 PolyglossiaName magyar
610 # not supported by babel
613 PolyglossiaName marathi
618 # mongolian must be loaded locally with babel options,
619 # not globally via class options
620 # not yet supported by polyglossia
630 GuiName "English (New Zealand)"
632 PolyglossiaName english
633 PolyglossiaOpts "variant=newzealand"
639 GuiName "Norwegian (Bokmaal)"
641 PolyglossiaName norsk
647 GuiName "Norwegian (Nynorsk)"
649 PolyglossiaName nynorsk
654 # not supported by babel
657 PolyglossiaName occitan
662 # Currently not supported (file format change!)
663 # Russian orthography from the Petrine orthographic reforms of
664 # 1708 to the 1917 orthographic reform
665 # Language oldrussian
666 # GuiName "Russian (Petrine orthography)"
667 # PolyglossiaName russian
668 # PolyglossiaOpts spelling=old
669 # LangCode ru_petr1708
675 PolyglossiaName polish
683 PolyglossiaName portuges
691 PolyglossiaName romanian
699 PolyglossiaName russian
707 PolyglossiaName samin
712 # not supported by babel
715 PolyglossiaName sanskrit
723 PolyglossiaName scottish
731 PolyglossiaName serbian
736 Language serbian-latin
737 GuiName "Serbian (Latin)"
739 PolyglossiaName serbian
740 PolyglossiaOpts "script=latin"
748 PolyglossiaName slovak
756 PolyglossiaName slovenian
764 PolyglossiaName spanish
768 \addto\shorthandsspanish{\spanishdeactivate{~<>}}
772 # there are no spanish shorthands in polyglossia
773 Language spanish-mexico
774 GuiName "Spanish (Mexico)"
776 PolyglossiaName spanish
780 \addto\shorthandsspanish{\spanishdeactivate{~<>.}}
787 PolyglossiaName swedish
792 # not supported by babel
795 PolyglossiaName syriac
800 # not supported by babel
803 PolyglossiaName tamil
808 # not supported by babel
811 PolyglossiaName telugu
823 \usepackage{thswitch}
830 PolyglossiaName turkish
838 # turkmen must be loaded locally with babel options,
839 # not globally via class options
843 PolyglossiaName turkmen
852 PolyglossiaName ukrainian
857 Language uppersorbian
858 GuiName "Upper Sorbian"
859 BabelName uppersorbian
860 PolyglossiaName usorbian
865 # not supported by babel
873 # vietnam must be loaded locally with babel options,
874 # not globally via class options, see
875 # http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg129417.html
879 PolyglossiaName vietnamese
889 PolyglossiaName welsh