]> git.lyx.org Git - lyx.git/blobdiff - lib/languages
ctest update.
[lyx.git] / lib / languages
index 54be6912a4099d60a7c264736e0a161f00c48dd6..a39c5c75286e4eb6bceb95ea5dc1d6c604ea83df 100644 (file)
-# name      babel name GUI name        RTL?   encoding   code  latex options
-# LyX internal languages
-ignore      ignore     "Ignore"        false  iso8859-1  ignore         ""
-latex       ""         "LaTeX"         false  iso8859-1  latex  ""
-# Real languages now
-afrikaans   afrikaans  "Afrikaans"     false  iso8859-15 af_ZA  ""
-albanian    albanian   "Albanian"      false  iso8859-2  sq_AL  ""
-american    american   "English (USA)" false  iso8859-15 en_US  ""
-# FIXME: dummy babel language for arabic_arabtex to be able to switch the language the way of the ArabTeX-package
-arabic_arabtex arabtex "Arabic (ArabTeX)" true  cp1256   ar_SA  ""
-arabic_arabi arabic    "Arabic (Arabi)"   true  cp1256   ar_SA  ""
-armenian    ""         "Armenian"      false  armscii8   hy_AM  ""
-austrian    austrian   "German (Austria, old spelling)"        false  iso8859-15 de_AT  ""
-naustrian   naustrian  "German (Austria)"      false  iso8859-15  de_AT         ""
-bahasa      bahasa     "Indonesian"    false  iso8859-15 id_ID  ""
-bahasam     bahasam    "Malay"         false  iso8859-15 ms_MY  ""
-basque      basque     "Basque"        false  iso8859-15 eu_ES  ""
-belarusian  belarusian "Belarusian"    false  cp1251     be_BY  ""
-brazilian   brazil     "Portuguese (Brazil)"   false  iso8859-15  pt_BR         ""
-breton      breton     "Breton"        false  iso8859-15 br_FR  ""
-british     british    "English (UK)"  false  iso8859-15 en_GB  ""
-bulgarian   bulgarian  "Bulgarian"     false  cp1251     bg_BG  ""
-canadian    canadian   "English (Canada)"      false  iso8859-15 en_CA  ""
-canadien    canadien   "French (Canada)"       false  iso8859-15  fr_CA         ""
-catalan     catalan    "Catalan"       false  iso8859-15 ca_ES  ""
-chinese-simplified ""  "Chinese (simplified)"  false  euc-cn zh_CN      ""
-chinese-traditional "" "Chinese (traditional)" false  utf8-cjk zh_CN    ""
-croatian    croatian   "Croatian"      false  iso8859-2  hr_HR  ""
-czech       czech      "Czech"         false  iso8859-2  cs_CZ  ""
-danish      danish     "Danish"        false  iso8859-15 da_DK  ""
-dutch       dutch      "Dutch"         false  iso8859-15 nl_NL  ""
-english     english    "English"       false  iso8859-15 en_US  ""
-# Esperanto has no country code because it is an auxiliary language
-esperanto   esperanto  "Esperanto"     false  iso8859-3  eo     ""
-estonian    estonian   "Estonian"      false  iso8859-15 et_EE  ""
-# the definitions are only used due to bugs in the arabi-package - remove them if they become unnecessary!
-farsi       farsi      "Farsi"         true   utf8       fa_IR  "\DeclareTextSymbol{\guillemotright}{LFE}{62}\DeclareTextSymbol{\guillemotleft}{LFE}{60}"
-finnish     finnish    "Finnish"       false  iso8859-15 fi_FI  ""
+##########################################################################
+#
+# Languages supported by LyX.
+#
+# Syntax:
+#
+# Language <lyxname>
+#      GuiName            "<Gui Name>"
+#      HasGuiSupport      <true|false>
+#      BabelName          <babelname>
+#      PolyglossiaName    <polyglossianame>
+#      PolyglossiaOpts    "<language-specific options>"
+#      QuoteStyle         <british|danish|english|french|frenchin|
+#                           german|polish|russian|swedish|swedishg|swiss|plain>
+#      DateFormats        "<long>|<medium>|<short>"
+#      Encoding           <encoding>
+#      FontEncoding       <font encoding|font encoding|...>
+#      InternalEncoding   <true|false>
+#      RTL                <true|false>
+#      AsBabelOptions     <true|false>
+#      LangCode           <language_code>
+#      LangVariety        <language_variety>
+#      PreBabelPreamble
+#        <extra latex code inserted before babel>
+#      EndPreBabelPreamble
+#      PostBabelPreamble
+#        <extra latex code inserted after babel>
+#      EndPostBabelPreamble
+#      Requires           <requirement>
+#      Provides           <babel language feature>
+# End
+#
+#
+# NOTES:
+#
+# * If we provide Polyglossia languages with different options, the default
+#   options (such as "variant=american", "spelling=modern") should be
+#   explicitely spelled out (in order to provide mixing of such variants).
+# * Omitted elements will be treated as empty (if string) or "false"
+#   (if boolean).
+# * When HasGuiSupport is true, the language is candidate to appear in
+#   the list of possible GUI languages in the Preferences dialog. It
+#   will actually appear there only if a corresponding .mo file can be
+#   found among the translations. When several languages correspond to
+#   the same translation -- like English, English (US) and English
+#   (UK) -- try to select the entry that is most generic -- here
+#   English.
+# * The QuoteStyle arguments correspond to the following styles:
+#                 PRIMARY              SECONDARY
+#   - british:   `text'                ``text''        (6_9 -- 66_99)
+#   - cjk:        corner brackets      white corner br.
+#   - cjk-angle:  double angle br.     angle br.
+#   - danish:    >>text<<              >text<          (inward guillemets)
+#   - english:   ``text''              `text'          (66_99 -- 6_9)
+#   - french:    <<text>>              ``text''        (outward guillemets -- 66_99)
+#   - frenchin:   <<text>>             <<text>>        (French Imprimerie Nationale style)
+#   - german:    ,,text``              ,text`          (99/66 -- 9/6)
+#   - polish:    ,,text''              ,text'          (99/99 -- 9/9)
+#   - russian:    <<text>>             ,,text``        (outward guillemets -- 99/66)
+#   - swedish:   ''text''              'text'          (99_99 -- 9_9)
+#   - swedishg:   >>text>>             'text'          (Swedish Guillemets)
+#   - swiss:     <<text>>              <text>          (outward guillemets)
+#   - plain:     "text"                'text'          (non-typographical quotes)
+#   Note that the option names have been selected (rather arbitrarily)
+#   because the respective styles are common in the respective countries.
+#   Of course this does not imply any fixed relation to those countries.
+# * DateFormats lists the localized conventions for three date forms:
+#   - Long: December 1, 2018
+#   - Medium: Dec 1, 2018
+#   - Short: 1/12/2018
+#   These are separated by | and use the QDate syntax:
+#   * d        the day as number without a leading zero (1 to 31)
+#   * dd       the day as number with a leading zero (01 to 31)
+#   * ddd      the abbreviated localized day name (e.g. 'Mon' to 'Sun')
+#   * dddd     the long localized day name (e.g. 'Monday' to 'Sunday')
+#   * M        the month as number without a leading zero (1 to 12)
+#   * MM       the month as number with a leading zero (01 to 12)
+#   * MMM      the abbreviated localized month name (e.g. 'Jan' to 'Dec')
+#   * MMMM     the long localized month name (e.g. 'January' to 'December')
+#   * yy       the year as two digit number (00 to 99)
+#   * yyyy     the year as four digit number
+# * Encoding is the default encoding used with TeX fonts.
+#   It is only used if Document > Settings > Language > Encoding
+#   is set to "Language Default" or "Language Default (no inputenc)"
+#   and "use non-TeX fonts" is FALSE.
+#   Encoding "inherit" means: keep encoding of the context (used by
+#   latex_language).
+# * FontEncoding is a bar-separated list of font encodings.
+#   The first value is the required font encoding for correct hyphenation with
+#   8-bit TeX (http://www.hyphenation.org). Eventually following values may be
+#   used if the selected font is unavailable in FontEncoding. They provide all
+#   letters used in the language, but some only as "surrogate pairs" with
+#   possible problems for hyphenation and drag-and-drop from the generated
+#   documents. Default: "ASCII".
+#   * "FontEncoding ASCII" means: "works with any standard text encoding
+#     (T<n>) as well as OT1".
+#   * "FontEncoding none" tells LyX that fontenc should not be loaded with
+#     this language.
+# * InternalEncoding is used to tell LyX that babel internally sets a
+#   non-standard font encoding (such as hebrew to LHE or greek to LGR).
+#   If True, LyX takes care for characters/macros that do not exist in
+#   some font encodings ("<", ">", "|" and straight quote).
+#   It is not required for standard encodings like T2A. See bug #5091.
+# * AsBabelOptions advices LyX to pass the languages locally to babel, not
+#   globally to the class. In the old days, some languages (basically those
+#   not natively supported by babel) needed this.
+#   FIXME: in this case, we might still need to pass the other languages
+#          globally, for the use of other packages (such as varioref).
+# * LangCode is also used for spellchecking and thesaurus, where the
+#   dictionaries are named accordingly. Thus, check this when introducing/
+#   changing language codes (especially aspell, thesaurus).
+#   TODO: maybe use Best Current Practice (BCP 47) codes for LangCode
+#         http://www.rfc-editor.org/rfc/bcp/bcp47.txt
+#         http://www.w3.org/International/articles/language-tags/
+#         http://www.iana.org/assignments/language-subtag-registry
+# * LangVariety is used by the aspell spellchecker to differentiate
+#   dictionaries for different varieties of a given language (e.g. German
+#   pre-1998 and post-1998 spelling). The aspell dictionaries are named
+#   language[_REGION][-variety].multi, e.g. de-alt.multi for "German (old
+#   spelling)" (see http://aspell.net/man-html/Dictionary-Naming.html)
+# * Provides lists features that are provided by specific Babel languages,
+#   but are available globally if this language is used (not only for this
+#   language. Examples are \textgreek (Greek) and \textcyrillic (Russian).
+#
+##########################################################################
+
+#
+# LyX-internal languages
+#
+
+Language ignore
+       GuiName          "Ignore"
+       BabelName        ignore
+       PolyglossiaName  ignore
+       Encoding         inherit
+       LangCode         ignore
+End
+
+Language latex
+       GuiName          "LaTeX"
+       Encoding         inherit
+       LangCode         latex
+End
+
+#
+# Real languages
+#
+
+# not yet supported by polyglossia
+Language afrikaans
+       GuiName          "Afrikaans"
+       BabelName        afrikaans
+       QuoteStyle       polish
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "dd MMMM yyyy|dd MMM yyyy|yyyy/MM/dd"
+       LangCode         af_ZA
+End
+
+# FontEncoding: no hyphenation, but uses Ç/ç und Ë/ë
+Language albanian
+       GuiName          "Albanian"
+       BabelName        albanian
+       PolyglossiaName  albanian
+       QuoteStyle       swiss
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
+       LangCode         sq_AL
+End
+
+Language american
+       GuiName          "English (USA)"
+       BabelName        american
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=american"
+       QuoteStyle       english
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       DateFormats      "MMMM dd, yyyy|MMM dd, yyyy|M/d/yyyy"
+       LangCode         en_US
+End
+
+# not supported by babel
+Language amharic
+       GuiName          "Amharic"
+       PolyglossiaName  amharic
+       Encoding         utf8
+       DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
+       LangCode         am_ET
+End
+
+# In Babel, this is supported since v. 1.8a of babel-greek (2013-12-03)
+# We introduce it with LyX 2.2 to give the support time to settle.
+Language ancientgreek
+       GuiName           "Greek (ancient)"
+       BabelName         greek
+       PostBabelPreamble
+       \languageattribute{greek}{ancient}
+       EndPostBabelPreamble
+       PolyglossiaName   greek
+       PolyglossiaOpts   "variant=ancient"
+       QuoteStyle        french
+       Encoding          iso8859-7
+       InternalEncoding  true
+       FontEncoding      LGR
+       DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
+       LangCode          grc_GR
+       Provides          textgreek
+End
+
+# FIXME: dummy babel language for arabic_arabtex to be able
+# to switch the language the way of the ArabTeX-package
+Language arabic_arabtex
+       GuiName          "Arabic (ArabTeX)"
+       HasGuiSupport    true
+       BabelName        arabtex
+       QuoteStyle       french
+       Encoding         cp1256
+       DateFormats      "d MMMM، yyyy|dd/MM/yyyy|d/M/yyyy"
+       RTL              true
+       LangCode         ar_SA
+End
+
+# polyglossia uses "Arabic" for the lang environment
+Language arabic_arabi
+       GuiName          "Arabic (Arabi)"
+       BabelName        arabic
+       PolyglossiaName  arabic
+       QuoteStyle       french
+       Encoding         cp1256
+       FontEncoding     LAE
+       DateFormats      "d MMMM، yyyy|dd/MM/yyyy|d/M/yyyy"
+       RTL              true
+       PostBabelPreamble
+         % arabi + hyperref redefines \noboundary as local textcommand
+         \let\orig@noboundary\noboundary
+         \DeclareTextCommandDefault{\noboundary}{\orig@noboundary}
+       EndPostBabelPreamble
+       LangCode         ar_SA
+End
+
+# not supported by babel
+Language armenian
+       GuiName          "Armenian"
+       PolyglossiaName  armenian
+       QuoteStyle       swiss
+       Encoding         utf8
+       DateFormats      "d MMMM، yyyy|d MMM، yyyy|d/M/yyyy"
+       LangCode         hy_AM
+End
+
+# not supported by babel
+Language asturian
+       GuiName          "Asturian"
+       PolyglossiaName  asturian
+       QuoteStyle       french
+       Encoding         iso8859-15
+       DateFormats      "d 'de' MMMM 'de' yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         ast_ES
+End
+
+
+Language australian
+       GuiName          "English (Australia)"
+       BabelName        australian
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=australian"
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       QuoteStyle       english
+       LangCode         en_AU
+End
+
+# In polyglossia, this is supported since release 1.33.4 (May 2014)
+# We introduce it with LyX 2.2 to give the support time to settle.
+# Due to the variety, we use no country code.
+Language austrian
+       GuiName          "German (Austria, old spelling)"
+       BabelName        austrian
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=austrian,spelling=old,babelshorthands=true"
+       QuoteStyle       german
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
+       LangCode         de
+       LangVariety      alt
+End
+
+# In polyglossia, this is supported since release 1.33.4 (May 2014)
+# We introduce it with LyX 2.2 to give the support time to settle.
+Language naustrian
+       GuiName          "German (Austria)"
+       BabelName        naustrian
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=austrian,spelling=new,babelshorthands=true"
+       QuoteStyle       german
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
+       LangCode         de_AT
+End
+
+Language bahasa
+       GuiName          "Indonesian"
+       HasGuiSupport    true
+       BabelName        bahasa
+       PolyglossiaName  bahasai
+       QuoteStyle       english
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         id_ID
+End
+
+Language bahasam
+       GuiName          "Malay"
+       BabelName        bahasam
+       PolyglossiaName  bahasam
+       QuoteStyle       english
+       Encoding         iso8859-15
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         ms_MY
+End
+
+Language basque
+       GuiName          "Basque"
+       HasGuiSupport    true
+       BabelName        basque
+       PolyglossiaName  basque
+       QuoteStyle       swiss
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "yyyy MMMM dd|yyyy MMM dd|yyyy/MM/dd"
+       LangCode         eu_ES
+       PostBabelPreamble
+       \addto\extrasbasque{\bbl@deactivate{~}}
+       EndPostBabelPreamble
+End
+
+# not yet supported by polyglossia
+# Up to 2018-08-25 (babel-belarusian 1.4), the babel option is "belarusianb"
+# but the language name "belarusian" (without trailing "b").
+Language belarusian
+       GuiName          "Belarusian"
+       BabelName        belarusian
+       QuoteStyle       french
+       Encoding         cp1251
+       FontEncoding     T2A
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|d.M.yyyy"
+       LangCode         be_BY
+End
+
+# not yet supported by polyglossia
+# The (rarely used) Cyrillic script is not supported (try serbian).
+Language bosnian
+       GuiName          "Bosnian"
+       BabelName        bosnian
+       QuoteStyle       polish
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|yyyy-MM-dd"
+       LangCode         bs_BA
+End
+
+Language brazilian
+       GuiName          "Portuguese (Brazil)"
+       HasGuiSupport    true
+       BabelName        brazil
+       PolyglossiaName  brazil
+       QuoteStyle       english
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d 'de' MMMM 'de' yyyy|d 'de' MMM 'de' yyyy|dd/MM/yyyy"
+       LangCode         pt_BR
+End
+
+# FontEncoding: # ? no hyphenation, but uses ñ
+Language breton
+       GuiName          "Breton"
+       BabelName        breton
+       PolyglossiaName  breton
+       QuoteStyle       french
+       Encoding         iso8859-15
+       #FontEncoding    T1
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|yyyy-MM-dd"
+       LangCode         br_FR
+End
+
+Language british
+       GuiName          "English (UK)"
+       BabelName        british
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=british"
+       QuoteStyle       british
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         en_GB
+End
+
+Language bulgarian
+       GuiName          "Bulgarian"
+       BabelName        bulgarian
+       PolyglossiaName  bulgarian
+       QuoteStyle       german
+       Encoding         cp1251
+       FontEncoding     T2A
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|yyyy-M-d"
+       LangCode         bg_BG
+       Provides         textcyrillic
+End
+
+# not yet supported by polyglossia
+Language canadian
+       GuiName          "English (Canada)"
+       BabelName        canadian
+#      PolyglossiaName  english
+#      PolyglossiaOpts  "variant=canadian"
+       QuoteStyle       english
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       DateFormats      "MMMM d, yyyy|d MMM yyyy|yyyy-MM-dd"
+       LangCode         en_CA
+End
+
+# not yet supported by polyglossia
+# Note: If polyglossia support gets implemented, french needs
+#       PolyglossiaOpts  "variant=french"
+Language canadien
+       GuiName          "French (Canada)"
+       BabelName        canadien
+#      PolyglossiaName  french
+#      PolyglossiaOpts  "variant=canadien"
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d MMMM yyyy|d MMM yyyy|yyyy-MM-dd"
+       LangCode         fr_CA
+End
+
+Language catalan
+       GuiName          "Catalan"
+       HasGuiSupport    true
+       BabelName        catalan
+       PolyglossiaName  catalan
+       PolyglossiaOpts  "babelshorthands=true"
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d / MMMM / yyyy|d / MMM / yyyy|dd/MM/yyyy"
+       LangCode         ca_ES
+End
+
+# uses CJK package
+Language chinese-simplified
+       GuiName          "Chinese (simplified)"
+       HasGuiSupport    true
+       Encoding         euc-cn
+       QuoteStyle       english
+       LangCode         zh_CN
+       DateFormats      "yyyy年M月d日|yyyy-M-d|yy-M-d"
+       Requires         CJK
+End
+
+# uses CJK package
+Language chinese-traditional
+       GuiName         "Chinese (traditional)"
+       HasGuiSupport    true
+       QuoteStyle       cjk
+       Encoding         utf8-cjk
+       LangCode         zh_TW
+       DateFormats      "yyyy年M月d日|yyyy年M月d日|yy年M月d日"
+       Requires         CJK
+End
+
+# not supported by babel
+# FIXME DateFormats
+Language coptic
+       GuiName          "Coptic"
+       PolyglossiaName  coptic
+       Encoding         utf8
+       LangCode         cop_EG
+End
+
+Language croatian
+       GuiName          "Croatian"
+       BabelName        croatian
+       PolyglossiaName  croatian
+       QuoteStyle       polish
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy.|d. MMM. yyyy.|dd.MM.yyyy."
+       LangCode         hr_HR
+End
+
+Language czech
+       GuiName          "Czech"
+       HasGuiSupport    true
+       BabelName        czech
+       PolyglossiaName  czech
+       QuoteStyle       german
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. MMM. yyyy|d.M.yyyy"
+       LangCode         cs_CZ
+End
+
+Language danish
+       GuiName          "Danish"
+       HasGuiSupport    true
+       BabelName        danish
+       PolyglossiaName  danish
+       QuoteStyle       danish
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd/MM/yyyy"
+       LangCode         da_DK
+End
+
+# not supported by babel
+Language divehi
+       GuiName          "Divehi (Maldivian)"
+       PolyglossiaName  divehi
+       Encoding         utf8
+       DateFormats      "yyyy MMMM dd|yyyy MMM dd|dd/MM/yyyy"
+       LangCode         dv_MV
+End
+
+Language dutch
+       GuiName          "Dutch"
+       HasGuiSupport    true
+       BabelName        dutch
+       PolyglossiaName  dutch
+       PolyglossiaOpts  "babelshorthands=true"
+       QuoteStyle       polish
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d MMMM yyyy|d MMM yyyy|d-M-yyyy"
+       LangCode         nl_NL
+End
+
+Language english
+       GuiName          "English"
+       HasGuiSupport    true
+       BabelName        english
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=american"
+       QuoteStyle       english
+       DateFormats      "MMMM dd, yyyy|MMM dd, yyyy|M/d/yyyy"
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       LangCode         en_US
+End
+
+# Esperanto has no country code because it is an auxiliary language.
+# We therefore use the name of its hunspell dictionary.
+Language esperanto
+       GuiName          "Esperanto"
+       BabelName        esperanto
+       PolyglossiaName  esperanto
+       QuoteStyle       english
+       Encoding         iso8859-3
+       FontEncoding     IL3|T1|OT1
+       DateFormats      "'la' d 'de' MMMM yyyy|'la' d 'de' MMM yyyy|MM/dd/yyyy"
+       LangCode         eo_EO
+End
+
+Language estonian
+       GuiName          "Estonian"
+       BabelName        estonian
+       PolyglossiaName  estonian
+       QuoteStyle       german
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
+       LangCode         et_EE
+       PostBabelPreamble
+       \addto\extrasestonian{\bbl@deactivate{~}}
+       EndPostBabelPreamble
+End
+
+# the preamble definitions are only used due to bugs in the
+# arabi-package -- remove them if they become unnecessary!
+Language farsi
+       GuiName          "Farsi"
+       BabelName        farsi
+       PolyglossiaName  farsi
+       Encoding         utf8
+       FontEncoding     LAE,LFE
+       DateFormats      "d MMMM yyyy|d MMM yyyy|yyyy/M/d"
+       RTL              true
+       LangCode         fa_IR
+       QuoteStyle       english
+       PostBabelPreamble
+       \DeclareTextSymbol{\guillemotright}{LFE}{62}
+       \DeclareTextSymbol{\guillemotleft}{LFE}{60}
+       EndPostBabelPreamble
+End
+
+Language finnish
+       GuiName          "Finnish"
+       HasGuiSupport    true
+       BabelName        finnish
+       PolyglossiaName  finnish
+       QuoteStyle       swedish
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|d.M.yyyy"
+       LangCode         fi_FI
+End
+
 # We redefine \og and \fg (guillemets) for older french language definitions
-french      french     "French"        false  iso8859-15 fr_FR  "\addto\extrasfrench{\providecommand{\og}{\leavevmode\flqq~}\providecommand{\fg}{\ifdim\lastskip>\z@\unskip\fi~\frqq}}"
-galician    galician   "Galician"      false  iso8859-15 gl_ES  ""
-german      german     "German (old spelling)" false  iso8859-15 de-alt         ""
-ngerman     ngerman    "German"        false  iso8859-15 de_DE  ""
-german-ch   ngerman    "German (Switzerland)"  false  iso8859-15 de_CH  ""
-greek       greek      "Greek"         false  iso8859-7  el_GR  ""
-polutonikogreek polutonikogreek        "Greek (polytonic)"     false  iso8859-7  el_GR  "\providecommand*{\perispomeni}{\char126}\addto\extraspolutonikogreek{\let\~\perispomeni}\addto\extrasgreek{\let\~\perispomeni}"
-hebrew      hebrew     "Hebrew"        true   cp1255     he_IL  ""
+Language french
+       GuiName          "French"
+       HasGuiSupport    true
+       BabelName        french
+       PolyglossiaName  french
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         fr_FR
+       PostBabelPreamble
+       \addto\extrasfrench{%
+          \providecommand{\og}{\leavevmode\flqq~}%
+          \providecommand{\fg}{\ifdim\lastskip>\z@\unskip\fi~\frqq}%
+       }
+       EndPostBabelPreamble
+End
+
+Language friulan
+       GuiName          "Friulian"
+       HasGuiSupport    true
+       BabelName        friulan
+       PolyglossiaName  friulan
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d 'di' MMMM 'dal' yyyy|d 'di' MMM 'dal' yyyy|dd/MM/yyyy"
+       LangCode         fur_IT
+End
+
+Language galician
+       GuiName          "Galician"
+       HasGuiSupport    true
+       BabelName        galician
+       PolyglossiaName  galician
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d 'de' MMMM 'de' yyyy|d 'de' MMM 'de' yyyy|dd/MM/yyyy"
+       LangCode         gl_ES
+       PostBabelPreamble
+       \addto\shorthandsgalician{\galiciandeactivate{~}}
+       EndPostBabelPreamble
+End
+
+# FIXME DateFormats
+Language georgian
+       GuiName          "Georgian"
+       BabelName        georgian
+       QuoteStyle       german
+       Encoding         utf8
+       FontEncoding     T8M
+       LangCode         ka_GE
+End
+
+# german does not use a country code (due to the variety)
+Language german
+       GuiName          "German (old spelling)"
+       BabelName        german
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=german,spelling=old,babelshorthands=true"
+       QuoteStyle       german
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
+       LangCode         de
+       LangVariety      alt
+End
+
+Language ngerman
+       GuiName          "German"
+       HasGuiSupport    true
+       BabelName        ngerman
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=german,spelling=new,babelshorthands=true"
+       QuoteStyle       german
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
+       LangCode         de_DE
+End
+
+# In Babel, this is supported since release 2.7 of babel-german (Dec 2013)
+# We introduce it with LyX 2.2 to give the support time to settle.
+# In polyglossia, this is supported since release 1.33.6 (May 2015)
+# We introduce it with LyX 2.3 to give the support time to settle.
+Language german-ch
+       GuiName          "German (Switzerland)"
+       BabelName        nswissgerman
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=swiss,spelling=new,babelshorthands=true"
+       QuoteStyle       swiss
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
+       LangCode         de_CH
+End
+
+# In Babel, this is supported since release 2.7 of babel-german (Dec 2013)
+# In polyglossia, this is supported since release 1.33.6 (May 2015)
+# We introduce it with LyX 2.3 to give the support time to settle.
+Language german-ch-old
+       GuiName          "German (Switzerland, old spelling)"
+       BabelName        swissgerman
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=swiss,spelling=old,babelshorthands=true"
+       QuoteStyle       swiss
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "dd. MMMM yyyy|dd. MMM yyyy|dd.MM.yyyy"
+       LangCode         de_CH
+End
+
+Language greek
+       GuiName           "Greek"
+       HasGuiSupport     true
+       BabelName         greek
+       PolyglossiaName   greek
+       PolyglossiaOpts   "variant=monotonic"
+       QuoteStyle        french
+       Encoding          iso8859-7
+       InternalEncoding  true
+       FontEncoding      LGR
+       DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
+       LangCode          el_GR
+       Provides          textgreek
+End
+
+Language polutonikogreek
+       GuiName           "Greek (polytonic)"
+       BabelName         polutonikogreek
+       PolyglossiaName   greek
+       PolyglossiaOpts   "variant=polytonic"
+       QuoteStyle        french
+       Encoding          iso8859-7
+       InternalEncoding  true
+       FontEncoding      LGR
+       DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd/MM/yyyy"
+       LangCode          el_GR
+       Provides          textgreek
+End
+
+Language hebrew
+       GuiName           "Hebrew"
+       HasGuiSupport     true
+       BabelName         hebrew
+       PolyglossiaName   hebrew
+       Encoding          cp1255
+       QuoteStyle        english
+       InternalEncoding  true
+       # babel-hebrew expects the encoding for *other* languages last:
+       # FontEncoding      HE8
+       # Define the font encoding the babel-hebrew way and
+       # work around too simple test for article-like classes in rlbabel.def.
+       PreBabelPreamble
+         \providecommand{\l@chapter}{\relax}
+       EndPreBabelPreamble
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       RTL               true
+       LangCode          he_IL
+End
+
+# not supported by babel
+Language hindi
+       GuiName          "Hindi"
+       PolyglossiaName  hindi
+       Encoding         utf8
+       DateFormats      "dd MMMM yyyy|dd MMM yyyy|dd-MM-yyyy"
+       LangCode         hi_IN
+End
+
+# Currently not supported (file format change!)
 # "hungarian" is a synonym for the "magyar" babel language option
-# "hungarian" might be used for special purposes, see http://www.math.bme.hu/latex/magyar_pre_tug2004.pdf
-#hungarian   hungarian "Hungarian"     false  iso8859-2  hu_HU  ""
-icelandic   icelandic  "Icelandic"     false  iso8859-15 is_IS  ""
-# Interlingua has no country code because it is an auxiliary language
-interlingua   interlingua      "Interlingua"   false  iso8859-15 ia     ""
-irish       irish      "Irish"         false  iso8859-15 ga_IE  ""
-italian     italian    "Italian"       false  iso8859-15 it_IT  ""
-japanese    japanese   "Japanese"      false  jis-plain     ja_JP       ""
-japanese-cjk ""                "Japanese (CJK)"        false  euc-jp     ja_JP  ""
-kazakh     kazakh      "Kazakh"        false  pt154      kk_KZ  ""
-# there is no country code for Korean because ko_KR is the same as ko_KI
-korean      ""         "Korean"        false  euc-kr     ko     ""
-# there is no country code for Latin because it is a dead language
-latin       latin      "Latin"         false  iso8859-15 la     ""
-latvian     latvian    "Latvian"       false  iso8859-4  lv_LV  ""
-lithuanian  lithuanian "Lithuanian"    false  iso8859-13 lt_LT  ""
-lowersorbian    lowersorbian   "Lower Sorbian" false  iso8859-2  dsb_DE         ""
-magyar      magyar     "Hungarian"     false  iso8859-2  hu_HU  ""
-mongolian   mongolian  "Mongolian"     false  utf8       mn_MN  ""
-norsk       norsk      "Norsk"         false  iso8859-15 nb_NO  ""
-nynorsk     nynorsk    "Nynorsk"       false  iso8859-15 nn_NO  ""
-polish      polish     "Polish"        false  iso8859-2  pl_PL  ""
-portuguese  portuges   "Portuguese"    false  iso8859-15 pt_PT  ""
-romanian    romanian   "Romanian"      false  iso8859-2  ro_RO  ""
-russian     russian    "Russian"       false  koi8       ru_RU  ""
-samin       samin      "North Sami"    false  iso8859-15 se_NO  ""
-scottish    scottish   "Scottish"      false  iso8859-15 gd_GB  ""
-serbian     serbian    "Serbian"       false  iso8859-5  sr_RS  ""
-serbian-latin     serbian      "Serbian (Latin)"       false  iso8859-2  sr_RS  ""
-slovak      slovak     "Slovak"        false  iso8859-2  sk_SK  ""
-slovene     slovene    "Slovene"       false  iso8859-2  sl_SI  ""
-spanish     spanish    "Spanish"       false  iso8859-15 es_ES  "\addto\shorthandsspanish{\spanishdeactivate{~<>}}"
-spanish-mexico     spanish     "Spanish (Mexico)"      false  iso8859-15 es_MX  "\addto\shorthandsspanish{\spanishdeactivate{~<>.}}"
-swedish     swedish    "Swedish"       false  iso8859-15 sv_SE  ""
-thai        thai       "Thai"          false  tis620-0   th_TH  "\usepackage{thswitch}"
-turkish     turkish    "Turkish"       false  iso8859-9  tr_TR  ""
-ukrainian   ukrainian  "Ukrainian"     false  koi8-u     uk_UA  ""
-uppersorbian    uppersorbian   "Upper Sorbian" false  iso8859-2  hsb_DE         ""
-vietnamese  vietnam    "Vietnamese"    false  utf8       vi_VN  ""
-welsh       welsh      "Welsh"         false  iso8859-15 cy_GB  ""
+# "hungarian" might be used for special purposes,
+# see http://www.math.bme.hu/latex/magyar_pre_tug2004.pdf
+#Language hungarian
+#      GuiName         "Hungarian"
+#      BabelName       hungarian
+#      Encoding        iso8859-2
+#      LangCode        hu_HU
+#       QuoteStyle      polish
+#End
+
+# FontEncoding: OT1 misses ð and Þ
+Language icelandic
+       GuiName          "Icelandic"
+       BabelName        icelandic
+       PolyglossiaName  icelandic
+       QuoteStyle       german
+       Encoding         iso8859-15
+       FontEncoding     T1
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy"
+       LangCode         is_IS
+End
+
+# Interlingua has no official country code because it is an auxiliary
+# language. We therefore the name of its hunspell dictionary.
+Language interlingua
+       GuiName          "Interlingua"
+       HasGuiSupport    true
+       BabelName        interlingua
+       PolyglossiaName  interlingua
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       LangCode         ia_IA
+       DateFormats      "'le' d 'de' MMMM yyyy|'le' d 'de' MMM yyyy|yyyy-mm-dd"
+       QuoteStyle       english
+End
+
+Language irish
+       GuiName          "Irish"
+       BabelName        irish
+       PolyglossiaName  irish
+       QuoteStyle       english
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd/MM/yyyy"
+       LangCode         ga_IE
+End
+
+Language italian
+       GuiName          "Italian"
+       HasGuiSupport    true
+       BabelName        italian
+       PolyglossiaName  italian
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       DateFormats      "dd MMMM yyyy|dd/MMM/yyyy|dd/MM/yyyy"
+       LangCode         it_IT
+End
+
+# japanese must be loaded locally with babel options,
+# not globally via class options
+# http://www.lyx.org/trac/ticket/4597#c4
+# Since japanese does not load fontenc, we set
+# InternalEncoding to true.
+Language japanese
+       GuiName          "Japanese"
+       HasGuiSupport    true
+       BabelName        japanese
+       Encoding         jis-platex
+       LangCode         ja_JP
+       Requires         japanese
+       InternalEncoding true
+       FontEncoding     None
+       DateFormats      "yyyy年M月d日|yyyy/MM/dd|yy/MM/dd"
+       QuoteStyle       cjk
+End
+
+# uses CJK package
+Language japanese-cjk
+       GuiName         "Japanese (CJK)"
+       Encoding        euc-jp
+       DateFormats      "yyyy年M月d日|yyyy/MM/dd|yy/MM/dd"
+       LangCode        ja_JP
+       Requires        CJK
+       QuoteStyle      cjk
+End
+
+# not supported by babel
+Language kannada
+       GuiName          "Kannada"
+       PolyglossiaName  kannada
+       Encoding         utf8
+       DateFormats      "dd MMMM yyyy|dd MMMM yyyy|dd-MM-yyyy"
+       LangCode         kn_IN
+End
+
+# not yet supported by polyglossia
+# not supported by babel
+Language kazakh
+       GuiName          "Kazakh"
+       Encoding         ascii
+       FontEncoding     T2A
+       DateFormats      "dd MMMM yyyy|dd MMMM yyyy|yyyy-dd-MM"
+       LangCode         kk_KZ
+       # FIXME: this sets the global font encoding also
+       # if Kazakh is only used as secondary language.
+       PostBabelPreamble
+       \input{t2aenc.def}
+       \AtBeginDocument{\fontencoding{T2A}\selectfont}
+       EndPostBabelPreamble
+End
+
+# not supported by babel
+Language khmer
+       GuiName          "Khmer"
+       PolyglossiaName  khmer
+       Encoding         utf8
+       DateFormats      "d MMMM yyyy|d MMMM yyyy|dd/MM/yyyy"
+       LangCode         km_KH
+End
+
+Language korean
+       GuiName         "Korean"
+       Encoding        euc-kr
+       QuoteStyle      cjkangle
+       DateFormats     "yyyy년 M월 d일|yyyy. M. d.|yy. M. d."
+       LangCode        ko_KR
+       Requires        CJK
+End
+
+# not yet supported by polyglossia
+Language kurmanji
+       GuiName          "Kurmanji"
+       BabelName        kurmanji
+       Encoding         utf8
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. M. yyyy|yyyy-MM-dd"
+       LangCode         kmr
+End
+
+# not supported by babel
+Language lao
+       GuiName          "Lao"
+       PolyglossiaName  lao
+       Encoding         utf8
+       DateFormats      "dd MMMM yyyy|dd MMMM yyyy|dd/MM/yyyy"
+       LangCode         lo_LA
+End
+
+# There is no country code for Latin because it is a dead language.
+# We therefore the name of its hunspell dictionary.
+# FIXME DateFormats
+Language latin
+       GuiName          "Latin"
+       BabelName        latin
+       PolyglossiaName  latin
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       LangCode         la_LA
+End
+
+# latvian must be loaded locally with babel options,
+# not globally via class options
+# FontEncoding: L7x required for hyphenation but not set by Babel
+Language latvian
+       GuiName          "Latvian"
+       BabelName        latvian
+       PolyglossiaName  latvian
+       QuoteStyle       german
+       Encoding         iso8859-4
+       FontEncoding     L7x|T1|OT1
+       DateFormats      "yyyy. 'gada' d. MMMM|yyyy. 'gada' d. MMM|dd.MM.yyyy"
+       LangCode         lv_LV
+End
+
+# lithuanian must be loaded locally with babel options,
+# not globally via class options
+# FontEncoding: L7x set by Babel
+Language lithuanian
+       GuiName          "Lithuanian"
+       BabelName        lithuanian
+       PolyglossiaName  lithuanian
+       QuoteStyle       german
+       Encoding         iso8859-13
+       FontEncoding     L7x
+       DateFormats      "yyyy 'm.' MMMM d 'd.'|yyyy 'm.' MMMM d 'd.'|yyyy-MM-dd"
+       LangCode         lt_LT
+End
+
+Language lowersorbian
+       GuiName          "Lower Sorbian"
+       BabelName        lowersorbian
+       PolyglossiaName  lsorbian
+       QuoteStyle       german
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
+       LangCode         dsb_DE
+End
+
+Language magyar
+       GuiName          "Hungarian"
+       HasGuiSupport    true
+       BabelName        magyar
+       PolyglossiaName  magyar
+       QuoteStyle       polish
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "yyyy. MMMM d.|yyyy. MMM d.|yyyy.MM.dd."
+       LangCode         hu_HU
+End
+
+# not yet supported by polyglossia
+Language macedonian
+       GuiName          "Macedonian"
+       BabelName        macedonian
+       QuoteStyle       german
+       Encoding         cp1251
+       FontEncoding     T2A
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|d.M.yyyy"
+       LangCode         mk_MK
+       Provides         textcyrillic
+End
+
+# not supported by babel
+Language malayalam
+       GuiName          "Malayalam"
+       PolyglossiaName  malayalam
+       Encoding         utf8
+       QuoteStyle       english
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
+       LangCode         ml_IN
+End
+
+# not supported by babel
+Language marathi
+       GuiName          "Marathi"
+       PolyglossiaName  marathi
+       Encoding         utf8
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
+       LangCode         mr_IN
+End
+
+# mongolian must be loaded locally with babel options,
+# not globally via class options
+# not yet supported by polyglossia
+Language mongolian
+       GuiName          "Mongolian"
+       BabelName        mongolian
+       Encoding         utf8
+       FontEncoding     T2A
+       DateFormats      "yyyy оны M сарын d|d-M-yyyy|dd-MM-yyyy"
+       LangCode         mn_MN
+       Provides         textcyrillic
+End
+
+Language newzealand
+       GuiName          "English (New Zealand)"
+       BabelName        newzealand
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=newzealand"
+       QuoteStyle       english
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         en_NZ
+End
+
+Language norsk
+       GuiName          "Norwegian (Bokmaal)"
+       HasGuiSupport    true
+       BabelName        norsk
+       PolyglossiaName  norsk
+       QuoteStyle       swiss
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy"
+       LangCode         nb_NO
+End
+
+Language nynorsk
+       GuiName          "Norwegian (Nynorsk)"
+       HasGuiSupport    true
+       BabelName        nynorsk
+       PolyglossiaName  nynorsk
+       QuoteStyle       swiss
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy"
+       LangCode         nn_NO
+End
+
+# not supported by babel
+Language occitan
+       GuiName          "Occitan"
+       PolyglossiaName  occitan
+       QuoteStyle       french
+       Encoding         utf8
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         oc_FR
+End
+
+# Currently not supported (file format change!)
+# Russian orthography from the Petrine orthographic reforms of
+# 1708 to the 1917 orthographic reform
+# Note: If this is enabled, russian needs to get
+#       PolyglossiaOpts  "spelling=modern"
+# Language oldrussian
+#      GuiName          "Russian (Petrine orthography)"
+#      PolyglossiaName  russian
+#      PolyglossiaOpts  "spelling=old"
+#      LangCode         ru_petr1708
+#       QuoteStyle       russian
+# End
+
+# FIXME DateFormats
+Language piedmontese
+       GuiName          "Piedmontese"
+       HasGuiSupport    true
+       BabelName        piedmontese
+       PolyglossiaName  piedmontese
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       LangCode         pms_IT
+End
+
+# FontEncoding: QX required for hyphenation but not set by babel
+Language polish
+       GuiName          "Polish"
+       HasGuiSupport    true
+       BabelName        polish
+       PolyglossiaName  polish
+       QuoteStyle       polish
+       Encoding         iso8859-2
+       FontEncoding     QX|T1|OT1
+       DateFormats      "d MMMM yyyy|d MMM yyyy|yyyy-MM-dd"
+       LangCode         pl_PL
+End
+
+Language portuguese
+       GuiName          "Portuguese"
+       HasGuiSupport    true
+       BabelName        portuges
+       PolyglossiaName  portuges
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d 'de' MMMM 'de' yyyy|d 'de' MMM 'de' yyyy|yyyy/MM/dd"
+       LangCode         pt_PT
+End
+
+Language romanian
+       GuiName          "Romanian"
+       HasGuiSupport    true
+       BabelName        romanian
+       PolyglossiaName  romanian
+       QuoteStyle       polish
+       Encoding         iso8859-16
+       FontEncoding     T1|OT1
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
+       LangCode         ro_RO
+End
+
+Language romansh
+       GuiName          "Romansh"
+       HasGuiSupport    true
+       BabelName        romansh
+       PolyglossiaName  romansh
+       QuoteStyle       german
+       Encoding         iso8859-15
+       FontEncoding     ASCII
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
+       LangCode         rm_CH
+End
+
+Language russian
+       GuiName          "Russian"
+       HasGuiSupport    true
+       BabelName        russian
+       PolyglossiaName  russian
+       QuoteStyle       russian
+       Encoding         koi8-r
+       FontEncoding     T2A
+       DateFormats      "d MMMM yyyy 'г'.|d MMM yyyy 'г'.|dd.MM.yyyy"
+       LangCode         ru_RU
+       Provides         textcyrillic
+End
+
+# FontEncoding: no hyphenation, but diacritics
+Language samin
+       GuiName          "North Sami"
+       BabelName        samin
+       PolyglossiaName  samin
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "MMMM d. 'b'. yyyy|MMM d. 'b'. yyyy|d.M.yyyy"
+       LangCode         se_NO
+End
+
+# not supported by babel
+Language sanskrit
+       GuiName          "Sanskrit"
+       PolyglossiaName  sanskrit
+       Encoding         utf8
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
+       LangCode         sa_IN
+End
+
+# Gaidhlig (Scottish Gaelic)
+# FontEncoding: no hyphenation, grave accent (à, è, ì, ò, ù)
+Language scottish
+       GuiName          "Scottish"
+       BabelName        scottish
+       PolyglossiaName  scottish
+       QuoteStyle       english
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         gd_GB
+End
+
+# Note: script option is uppercase, even if the polyglossia
+#       manual states otherwise.
+Language serbian
+       GuiName          "Serbian"
+       HasGuiSupport    true
+       BabelName        serbianc
+       PolyglossiaName  serbian
+       PolyglossiaOpts  "script=Cyrillic"
+       QuoteStyle       polish
+       Encoding         utf8
+        # Cyrillic font encoding required but not set by "serbianc".
+       # FontEncoding     T2A
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy"
+       LangCode         sr_RS
+End
+
+# Note: script option is uppercase, even if the polyglossia
+#       manual states otherwise.
+Language serbian-latin
+       GuiName          "Serbian (Latin)"
+       BabelName        serbian
+       PolyglossiaName  serbian
+       PolyglossiaOpts  "script=Latin"
+       QuoteStyle       polish
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|dd.MM.yyyy"
+       LangCode         sr_RS-Latin
+End
+
+Language slovak
+       GuiName          "Slovak"
+       HasGuiSupport    true
+       BabelName        slovak
+       PolyglossiaName  slovak
+       QuoteStyle       german
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "d. MMMM yyyy|d. MMM yyyy|d.M.yyyy"
+       LangCode         sk_SK
+End
+
+Language slovene
+       GuiName          "Slovene"
+       BabelName        slovene
+       PolyglossiaName  slovenian
+       QuoteStyle       german
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "dd. MMMM yyyy|d. MMM yyyy|d.M.yyyy"
+       LangCode         sl_SI
+End
+
+Language spanish
+       GuiName          "Spanish"
+       HasGuiSupport    true
+       BabelName        spanish
+       PolyglossiaName  spanish
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d 'de' MMMM 'de' yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         es_ES
+       PostBabelPreamble
+       \addto\shorthandsspanish{\spanishdeactivate{~<>}}
+       EndPostBabelPreamble
+End
+
+# there are no spanish shorthands in polyglossia
+Language spanish-mexico
+       GuiName          "Spanish (Mexico)"
+       BabelName        spanish
+       PolyglossiaName  spanish
+       QuoteStyle       french
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d 'de' MMMM 'de' yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         es_MX
+       PostBabelPreamble
+       \addto\shorthandsspanish{\spanishdeactivate{~<>.}}
+       EndPostBabelPreamble
+End
+
+Language swedish
+       GuiName          "Swedish"
+       HasGuiSupport    true
+       BabelName        swedish
+       PolyglossiaName  swedish
+       QuoteStyle       swedish
+       Encoding         iso8859-15
+       FontEncoding     T1|OT1
+       DateFormats      "d MMMM yyyy|d MMM yyyy|yyyy-MM-dd"
+       LangCode         sv_SE
+End
+
+# not supported by babel
+Language syriac
+       GuiName          "Syriac"
+       PolyglossiaName  syriac
+       Encoding         utf8
+       RTL              true
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         syr_SY
+End
+
+# not supported by babel
+Language tamil
+       GuiName          "Tamil"
+       PolyglossiaName  tamil
+       Encoding         utf8
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
+       LangCode         ta_IN
+End
+
+# not supported by babel
+Language telugu
+       GuiName          "Telugu"
+       PolyglossiaName  telugu
+       Encoding         utf8
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|dd-MM-yyyy"
+       LangCode         te_IN
+End
+
+Language thai
+       GuiName          "Thai"
+       BabelName        thai
+       PolyglossiaName  thai
+       QuoteStyle       english
+       Encoding         tis620-0
+       FontEncoding     LTH
+       DateFormats      "dd MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       LangCode         th_TH
+       # Fixme: load font package?
+       # +1 support for font attributes in thai emphasizing etc.
+       # -1 conflict with custom font settings and other languages' fonts
+       # PostBabelPreamble
+       # \usepackage{fonts-tlwg}
+       # EndPostBabelPreamble
+End
+
+# not supported by babel
+#FIXME DateFormats
+Language tibetan
+       GuiName          "Tibetan"
+       PolyglossiaName  tibetan
+       Encoding         utf8
+       LangCode         bo_CN
+End
+
+Language turkish
+       GuiName          "Turkish"
+       HasGuiSupport    true
+       BabelName        turkish
+       PolyglossiaName  turkish
+       QuoteStyle       english
+       Encoding         iso8859-9
+       FontEncoding     T1|OT1
+       LangCode         tr_TR
+       DateFormats      "d MMMM yyyy|dd.MMM.yyyy|dd.MM.yyyy"
+       PostBabelPreamble
+       \usepackage{xkeyval}
+       EndPostBabelPreamble
+End
+
+# turkmen must be loaded locally with babel options,
+# not globally via class options
+Language turkmen
+       GuiName          "Turkmen"
+       BabelName        turkmen
+       PolyglossiaName  turkmen
+       QuoteStyle       swiss
+       Encoding         utf8
+       FontEncoding     T1|OT1
+       DateFormats      "yyyy ý. MMMM d|dd.MM.yyyy ý.|dd.MM.yy ý."
+       LangCode         tk_TM
+End
+
+Language ukrainian
+       GuiName          "Ukrainian"
+       HasGuiSupport    true
+       BabelName        ukrainian
+       PolyglossiaName  ukrainian
+       QuoteStyle       russian
+       Encoding         koi8-u
+       FontEncoding     T2A
+       DateFormats      "dd MMMM yyyy|d MM yyyy|dd.MM.yyyy"
+       LangCode         uk_UA
+       Provides         textcyrillic
+End
+
+Language uppersorbian
+       GuiName          "Upper Sorbian"
+       BabelName        uppersorbian
+       PolyglossiaName  usorbian
+       QuoteStyle       german
+       Encoding         iso8859-2
+       FontEncoding     T1|OT1
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd.MM.yyyy"
+       LangCode         hsb_DE
+End
+
+# not supported by babel
+Language urdu
+       GuiName          "Urdu"
+       PolyglossiaName  urdu
+       Encoding         utf8
+       DateFormats      "d MMMM, yyyy|d MMM yyyy|dd/MM/yyyy"
+       RTL              true
+       LangCode         ur_PK
+End
+
+Language vietnamese
+       GuiName          "Vietnamese"
+       BabelName        vietnamese
+       PolyglossiaName  vietnamese
+       QuoteStyle       english
+       Encoding         utf8
+       DateFormats      "dd 'tháng' MMMM yyyy|dd-MM-yyyy|dd/MM/yyyy"
+       FontEncoding     T5
+       LangCode         vi_VN
+End
+
+Language welsh
+       GuiName          "Welsh"
+       BabelName        welsh
+       PolyglossiaName  welsh
+       QuoteStyle       british
+       Encoding         iso8859-15
+       DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
+       FontEncoding     T1|OT1
+       LangCode         cy_GB
+End