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
151 # not supported by babel
154 PolyglossiaName armenian
161 GuiName "English (Australia)"
163 PolyglossiaName english
164 PolyglossiaOpts "variant=australian"
171 GuiName "German (Austria, old spelling)"
173 PolyglossiaName german
174 PolyglossiaOpts "variant=austrian,spelling=old,babelshorthands=true"
181 GuiName "German (Austria)"
183 PolyglossiaName german
184 PolyglossiaOpts "variant=austrian,babelshorthands=true"
193 PolyglossiaName bahasai
202 PolyglossiaName bahasam
211 PolyglossiaName basque
216 \addto\extrasbasque{\bbl@deactivate{~}}
220 # not yet supported by polyglossia
231 GuiName "Portuguese (Brazil)"
233 PolyglossiaName brazil
242 PolyglossiaName breton
249 GuiName "English (UK)"
251 PolyglossiaName english
252 PolyglossiaOpts "variant=british"
261 PolyglossiaName bulgarian
267 # not yet supported by polyglossia
269 GuiName "English (Canada)"
271 # PolyglossiaName english
272 # PolyglossiaOpts "variant=canadian"
278 # not yet supported by polyglossia
280 GuiName "French (Canada)"
282 # PolyglossiaName french
283 # PolyglossiaOpts "variant=canadien"
292 PolyglossiaName catalan
293 PolyglossiaOpts "babelshorthands=true"
300 Language chinese-simplified
301 GuiName "Chinese (simplified)"
309 Language chinese-traditional
310 GuiName "Chinese (traditional)"
317 # not supported by babel
320 PolyglossiaName coptic
328 PolyglossiaName croatian
337 PolyglossiaName czech
346 PolyglossiaName danish
352 # not supported by babel
354 GuiName "Divehi (Maldivian)"
355 PolyglossiaName divehi
363 PolyglossiaName dutch
364 PolyglossiaOpts "babelshorthands=true"
373 PolyglossiaName english
379 # Esperanto has no country code because it is an auxiliary language.
380 # We therefore the name of its hunspell dictionary.
384 PolyglossiaName esperanto
393 PolyglossiaName estonian
398 \addto\extrasestonian{\bbl@deactivate{~}}
402 # the preamble definitions are only used due to bugs in the
403 # arabi-package -- remove them if they become unnecessary!
407 PolyglossiaName farsi
412 \DeclareTextSymbol{\guillemotright}{LFE}{62}
413 \DeclareTextSymbol{\guillemotleft}{LFE}{60}
420 PolyglossiaName finnish
426 # We redefine \og and \fg (guillemets) for older french language definitions
430 PolyglossiaName french
435 \addto\extrasfrench{%
436 \providecommand{\og}{\leavevmode\flqq~}%
437 \providecommand{\fg}{\ifdim\lastskip>\z@\unskip\fi~\frqq}%
445 PolyglossiaName galician
450 \addto\shorthandsgalician{\galiciandeactivate{~}}
454 # german does not use a country code (due to the variety)
456 GuiName "German (old spelling)"
458 PolyglossiaName german
459 PolyglossiaOpts "spelling=old,babelshorthands=true"
469 PolyglossiaName german
470 PolyglossiaOpts "babelshorthands=true"
476 # Polyglossia does not yet support Swiss German. We use ngerman for now.
478 GuiName "German (Switzerland)"
479 BabelName nswissgerman
480 PolyglossiaName german
481 PolyglossiaOpts "babelshorthands=true"
482 # PolyglossiaOpts "variant=swiss,babelshorthands=true"
488 # This is now supported, but requires a file format change
489 # Language german-ch-old
490 # GuiName "German (Switzerland, old spelling)"
491 # BabelName swissgerman
492 # PolyglossiaName german
493 # PolyglossiaOpts "spelling=old,babelshorthands=true"
494 ## PolyglossiaOpts "variant=swiss,spelling=old,babelshorthands=true"
496 # Encoding iso8859-15
503 PolyglossiaName greek
506 InternalEncoding true
510 Language polutonikogreek
511 GuiName "Greek (polytonic)"
512 BabelName polutonikogreek
513 PolyglossiaName greek
514 PolyglossiaOpts "variant=polytonic"
517 InternalEncoding true
524 PolyglossiaName hebrew
527 InternalEncoding true
532 # not supported by babel
535 PolyglossiaName hindi
540 # Currently not supported (file format change!)
541 # "hungarian" is a synonym for the "magyar" babel language option
542 # "hungarian" might be used for special purposes,
543 # see http://www.math.bme.hu/latex/magyar_pre_tug2004.pdf
545 # GuiName "Hungarian"
546 # BabelName hungarian
554 PolyglossiaName icelandic
560 # Interlingua has no official country code because it is an auxiliary
561 # language. We therefore the name of its hunspell dictionary.
563 GuiName "Interlingua"
564 BabelName interlingua
565 PolyglossiaName interlingua
573 PolyglossiaName irish
582 PolyglossiaName italian
588 # japanese must be loaded locally with babel options,
589 # not globally via class options
590 # http://www.lyx.org/trac/ticket/4597#c4
591 # Since japanese does not load fontenc, we set
592 # InternalEncoding to true.
600 InternalEncoding true
604 Language japanese-cjk
605 GuiName "Japanese (CJK)"
611 # not yet supported by polyglossia
612 # not supported by babel
619 \AtBeginDocument{\fontencoding{T2A}\selectfont}
631 # not yet supported by polyglossia
640 # not supported by babel
648 # There is no country code for Latin because it is a dead language.
649 # We therefore the name of its hunspell dictionary.
653 PolyglossiaName latin
658 # latvian must be loaded locally with babel options,
659 # not globally via class options
663 PolyglossiaName latvian
670 # lithuanian must be loaded locally with babel options,
671 # not globally via class options
675 PolyglossiaName lithuanian
682 Language lowersorbian
683 GuiName "Lower Sorbian"
684 BabelName lowersorbian
685 PolyglossiaName lsorbian
694 PolyglossiaName magyar
700 # not supported by babel
703 PolyglossiaName marathi
708 # mongolian must be loaded locally with babel options,
709 # not globally via class options
710 # not yet supported by polyglossia
720 GuiName "English (New Zealand)"
722 PolyglossiaName english
723 PolyglossiaOpts "variant=newzealand"
730 GuiName "Norwegian (Bokmaal)"
732 PolyglossiaName norsk
739 GuiName "Norwegian (Nynorsk)"
741 PolyglossiaName nynorsk
747 # not supported by babel
750 PolyglossiaName occitan
756 # Currently not supported (file format change!)
757 # Russian orthography from the Petrine orthographic reforms of
758 # 1708 to the 1917 orthographic reform
759 # Language oldrussian
760 # GuiName "Russian (Petrine orthography)"
761 # PolyglossiaName russian
762 # PolyglossiaOpts spelling=old
763 # LangCode ru_petr1708
769 PolyglossiaName polish
778 PolyglossiaName portuges
787 PolyglossiaName romanian
796 PolyglossiaName russian
805 PolyglossiaName samin
810 # not supported by babel
813 PolyglossiaName sanskrit
821 PolyglossiaName scottish
830 PolyglossiaName serbian
837 Language serbian-latin
838 GuiName "Serbian (Latin)"
840 PolyglossiaName serbian
841 PolyglossiaOpts "script=latin"
850 PolyglossiaName slovak
859 PolyglossiaName slovenian
868 PolyglossiaName spanish
873 \addto\shorthandsspanish{\spanishdeactivate{~<>}}
877 # there are no spanish shorthands in polyglossia
878 Language spanish-mexico
879 GuiName "Spanish (Mexico)"
881 PolyglossiaName spanish
886 \addto\shorthandsspanish{\spanishdeactivate{~<>.}}
893 PolyglossiaName swedish
899 # not supported by babel
902 # PolyglossiaName syriac
908 # not supported by babel
911 PolyglossiaName tamil
916 # not supported by babel
919 PolyglossiaName telugu
932 \usepackage{thswitch}
936 # not supported by babel
939 PolyglossiaName tibetan
947 PolyglossiaName turkish
956 # turkmen must be loaded locally with babel options,
957 # not globally via class options
961 PolyglossiaName turkmen
971 PolyglossiaName ukrainian
977 Language uppersorbian
978 GuiName "Upper Sorbian"
979 BabelName uppersorbian
980 PolyglossiaName usorbian
986 # not supported by babel
989 # PolyglossiaName urdu
995 # vietnam must be loaded locally with babel options,
996 # not globally via class options, see
997 # http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg129417.html
1001 PolyglossiaName vietnamese
1012 PolyglossiaName welsh