1 ##########################################################################
3 # Languages supported by LyX.
9 # BabelName <babelname>
10 # PolyglossiaName <polyglossianame>
11 # PolyglossiaOpts "<language-specific options>"
13 # QuoteStyle <danish|english|french|german|polish|swedish>
14 # InternalEncoding <true|false>
16 # AsBabelOptions <true|false>
17 # LangCode <language_code>
18 # LangVariety <language_variety>
20 # <extra latex code inserted before babel>
23 # <extra latex code inserted after babel>
24 # EndPostBabelPreamble
25 # Requires <requirement>
31 # * Omitted elements will be treated as empty (if string) or "false"
33 # * The QuoteStyle arguments correspond to the following styles:
34 # - danish: >>text<< >text< (inward guillemets)
35 # - english: ``text'' `text' (66_99)
36 # - french: <<text>> <text> (outward guillemets)
37 # - german: ,,text`` ,text` (99/66)
38 # - polish: ,,text'' ,text' (99/99)
39 # - swedish: ''text'' 'text' (99_99)
40 # Note that the option names have been selected (rather arbitrarily)
41 # because the respective styles are common in the respective countries.
42 # Of course this does not imply any fixed relation to those countries.
43 # * Encoding is not relevant for XeTeX (which is utf8 always), and if
44 # Document > Settings > Language > Encoding is not set to "Language
46 # * InternalEncoding is used to tell LyX that babel internally sets a font
47 # encoding (such as hebrew to LHE). See bug #5091.
48 # * AsBabelOptions advices LyX to pass the languages locally to babel, not
49 # globally to the class. Some languages (basically those not directly
50 # supported by babel) need this.
51 # FIXME: in this case, we might still need to pass the other languages
52 # globally, for the use of other packages (such as varioref).
53 # * LangCode is also used for spellchecking and thesaurus, where the
54 # dictionaries are named accordingly. Thus, check this when intoducing/
55 # changing language codes (especially aspell, thesaurus).
56 # TODO: maybe use Best Current Practice (BCP 47) codes for LangCode
57 # http://www.rfc-editor.org/rfc/bcp/bcp47.txt
58 # http://www.w3.org/International/articles/language-tags/
59 # http://www.iana.org/assignments/language-subtag-registry
60 # * LangVariety is used by the aspell spellchecker to differentiate
61 # dictionaries for different varieties of a given language (e.g. German
62 # pre-1998 and post-1998 spelling). The aspell dictionaries are named
63 # language[_REGION][-variety].multi, e.g. de-alt.multi for "German (old
64 # spelling)" (see http://aspell.net/man-html/Dictionary-Naming.html)
66 ##########################################################################
69 # LyX-internal languages
75 PolyglossiaName ignore
90 # not yet supported by polyglossia
102 PolyglossiaName albanian
109 GuiName "English (USA)"
111 PolyglossiaName english
112 PolyglossiaOpts "variant=american"
118 # not supported by babel
119 Language ancientgreek
120 GuiName "Greek (ancient)"
121 PolyglossiaName greek
122 PolyglossiaOpts variant=ancient
128 # FIXME: dummy babel language for arabic_arabtex to be able
129 # to switch the language the way of the ArabTeX-package
130 Language arabic_arabtex
131 GuiName "Arabic (ArabTeX)"
139 # polyglossia uses "Arabic" for the lang environment
140 Language arabic_arabi
141 GuiName "Arabic (Arabi)"
143 PolyglossiaName arabic
150 # not supported by babel
153 PolyglossiaName armenian
160 GuiName "English (Australia)"
162 PolyglossiaName english
163 PolyglossiaOpts "variant=australian"
169 # not yet supported by polyglossia
171 GuiName "German (Austria, old spelling)"
178 # not yet supported by polyglossia
180 GuiName "German (Austria)"
190 PolyglossiaName bahasai
199 PolyglossiaName bahasam
208 PolyglossiaName basque
214 # not yet supported by polyglossia
224 GuiName "Portuguese (Brazil)"
226 PolyglossiaName brazil
235 PolyglossiaName breton
242 GuiName "English (UK)"
244 PolyglossiaName english
245 PolyglossiaOpts "variant=british"
254 PolyglossiaName bulgarian
260 # not yet supported by polyglossia
262 GuiName "English (Canada)"
264 # PolyglossiaName english
265 # PolyglossiaOpts "variant=canadian"
271 # not yet supported by polyglossia
273 GuiName "French (Canada)"
275 # PolyglossiaName french
276 # PolyglossiaOpts "variant=canadien"
285 PolyglossiaName catalan
286 PolyglossiaOpts "babelshorthands=true"
293 Language chinese-simplified
294 GuiName "Chinese (simplified)"
302 Language chinese-traditional
303 GuiName "Chinese (traditional)"
310 # not supported by babel
313 PolyglossiaName coptic
321 PolyglossiaName croatian
330 PolyglossiaName czech
339 PolyglossiaName danish
345 # not supported by babel
347 GuiName "Divehi (Maldivian)"
348 PolyglossiaName divehi
356 PolyglossiaName dutch
357 PolyglossiaOpts "babelshorthands=true"
366 PolyglossiaName english
372 # Esperanto has no country code because it is an auxiliary language.
373 # We therefore the name of its hunspell dictionary.
377 PolyglossiaName esperanto
386 PolyglossiaName estonian
392 # the preamble definitions are only used due to bugs in the
393 # arabi-package -- remove them if they become unnecessary!
397 PolyglossiaName farsi
402 \DeclareTextSymbol{\guillemotright}{LFE}{62}
403 \DeclareTextSymbol{\guillemotleft}{LFE}{60}
410 PolyglossiaName finnish
416 # We redefine \og and \fg (guillemets) for older french language definitions
420 PolyglossiaName french
425 \addto\extrasfrench{%
426 \providecommand{\og}{\leavevmode\flqq~}%
427 \providecommand{\fg}{\ifdim\lastskip>\z@\unskip\fi~\frqq}%
435 PolyglossiaName galician
441 # german does not use a country code (due to the variety)
443 GuiName "German (old spelling)"
445 PolyglossiaName german
446 PolyglossiaOpts "spelling=old,babelshorthands=true"
456 PolyglossiaName german
457 PolyglossiaOpts "babelshorthands=true"
463 # Swiss German is not supported by babel and polyglossia yet
464 # We use ngerman for now (spellchecking is supported though!)
466 GuiName "German (Switzerland)"
468 PolyglossiaName german
469 PolyglossiaOpts "babelshorthands=true"
478 PolyglossiaName greek
481 InternalEncoding true
485 Language polutonikogreek
486 GuiName "Greek (polytonic)"
487 BabelName polutonikogreek
488 PolyglossiaName greek
489 PolyglossiaOpts "variant=polytonic"
492 InternalEncoding true
499 PolyglossiaName hebrew
502 InternalEncoding true
507 # not supported by babel
510 PolyglossiaName hindi
515 # Currently not supported (file format change!)
516 # "hungarian" is a synonym for the "magyar" babel language option
517 # "hungarian" might be used for special purposes,
518 # see http://www.math.bme.hu/latex/magyar_pre_tug2004.pdf
520 # GuiName "Hungarian"
521 # BabelName hungarian
529 PolyglossiaName icelandic
535 # Interlingua has no official country code because it is an auxiliary
536 # language. We therefore the name of its hunspell dictionary.
538 GuiName "Interlingua"
539 BabelName interlingua
540 PolyglossiaName interlingua
548 PolyglossiaName irish
557 PolyglossiaName italian
563 # japanese must be loaded locally with babel options,
564 # not globally via class options
565 # http://www.lyx.org/trac/ticket/4597#c4
576 Language japanese-cjk
577 GuiName "Japanese (CJK)"
583 # not yet supported by polyglossia
599 # not yet supported by polyglossia
608 # not supported by babel
616 # There is no country code for Latin because it is a dead language.
617 # We therefore the name of its hunspell dictionary.
621 PolyglossiaName latin
626 # latvian must be loaded locally with babel options,
627 # not globally via class options
631 PolyglossiaName latvian
638 # lithuanian must be loaded locally with babel options,
639 # not globally via class options
643 PolyglossiaName lithuanian
650 Language lowersorbian
651 GuiName "Lower Sorbian"
652 BabelName lowersorbian
653 PolyglossiaName lsorbian
662 PolyglossiaName magyar
668 # not supported by babel
671 PolyglossiaName marathi
676 # mongolian must be loaded locally with babel options,
677 # not globally via class options
678 # not yet supported by polyglossia
688 GuiName "English (New Zealand)"
690 PolyglossiaName english
691 PolyglossiaOpts "variant=newzealand"
698 GuiName "Norwegian (Bokmaal)"
700 PolyglossiaName norsk
707 GuiName "Norwegian (Nynorsk)"
709 PolyglossiaName nynorsk
715 # not supported by babel
718 PolyglossiaName occitan
724 # Currently not supported (file format change!)
725 # Russian orthography from the Petrine orthographic reforms of
726 # 1708 to the 1917 orthographic reform
727 # Language oldrussian
728 # GuiName "Russian (Petrine orthography)"
729 # PolyglossiaName russian
730 # PolyglossiaOpts spelling=old
731 # LangCode ru_petr1708
737 PolyglossiaName polish
746 PolyglossiaName portuges
755 PolyglossiaName romanian
764 PolyglossiaName russian
773 PolyglossiaName samin
778 # not supported by babel
781 PolyglossiaName sanskrit
789 PolyglossiaName scottish
798 PolyglossiaName serbian
804 Language serbian-latin
805 GuiName "Serbian (Latin)"
807 PolyglossiaName serbian
808 PolyglossiaOpts "script=latin"
817 PolyglossiaName slovak
826 PolyglossiaName slovenian
835 PolyglossiaName spanish
840 \addto\shorthandsspanish{\spanishdeactivate{~<>}}
844 # there are no spanish shorthands in polyglossia
845 Language spanish-mexico
846 GuiName "Spanish (Mexico)"
848 PolyglossiaName spanish
853 \addto\shorthandsspanish{\spanishdeactivate{~<>.}}
860 PolyglossiaName swedish
866 # not supported by babel
869 PolyglossiaName syriac
874 # not supported by babel
877 PolyglossiaName tamil
882 # not supported by babel
885 PolyglossiaName telugu
898 \usepackage{thswitch}
905 PolyglossiaName turkish
914 # turkmen must be loaded locally with babel options,
915 # not globally via class options
919 PolyglossiaName turkmen
929 PolyglossiaName ukrainian
935 Language uppersorbian
936 GuiName "Upper Sorbian"
937 BabelName uppersorbian
938 PolyglossiaName usorbian
944 # not supported by babel
952 # vietnam must be loaded locally with babel options,
953 # not globally via class options, see
954 # http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg129417.html
958 PolyglossiaName vietnamese
969 PolyglossiaName welsh