]> git.lyx.org Git - lyx.git/blobdiff - lib/languages
de/EmbeddedObjects: add and translate the Inkscape modifications.
[lyx.git] / lib / languages
index ab0cc7f885ba2d12946499b9d77bac9a34915c95..282d902c78adcb4953794ec6e5595d9f1e6fe289 100644 (file)
@@ -1,4 +1,4 @@
-########################################################################
+##########################################################################
 #
 # Languages supported by LyX.
 #
 #
 # Language <lyxname>
 #      GuiName            "<Gui Name>"
+#      HasGuiSupport      <true|false>
 #      BabelName          <babelname>
+#      PolyglossiaName    <polyglossianame>
+#      PolyglossiaOpts    "<language-specific options>"
 #      Encoding           <encoding>
+#      FontEncoding       <font encoding>
+#      QuoteStyle         <british|danish|english|french|frenchin|
+#                           german|polish|russian|swedish|swedishg|swiss|plain>
 #      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>
 # End
 #
-# Omitted elements will be treated as empty
-# (omitted RTL and InternalEncoding as "false")
 #
-########################################################################
+# 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.
+# * Encoding is the default encoding used with TeX fonts.
+#   It is only used if Document > Settings > Language > Encoding
+#   is set to "Language Default" and "use non-TeX fonts" is FALSE.
+# * 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 cares 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.
+# * "FontEncoding none" tells LyX that fontenc should not be loaded with this
+#   language.
+# * AsBabelOptions advices LyX to pass the languages locally to babel, not
+#   globally to the class. Some languages (basically those not directly
+#   supported by babel) need 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)
+#
+##########################################################################
 
 #
 # LyX-internal languages
 #
 
 Language ignore
-       GuiName         "Ignore"
-       BabelName       ignore
-       Encoding        iso8859-1
-       LangCode        ignore
+       GuiName          "Ignore"
+       BabelName        ignore
+       PolyglossiaName  ignore
+       Encoding         iso8859-1
+       LangCode         ignore
 End
 
 Language latex
-       GuiName         "LaTeX"
-       Encoding        iso8859-1
-       LangCode        latex
+       GuiName          "LaTeX"
+       Encoding         iso8859-1
+       LangCode         latex
 End
 
 #
 # Real languages
 #
 
+# not yet supported by polyglossia
 Language afrikaans
-       GuiName         "Afrikaans"
-       BabelName       afrikaans
-       Encoding        iso8859-15
-       LangCode        af_ZA
+       GuiName          "Afrikaans"
+       BabelName        afrikaans
+       QuoteStyle       polish
+       Encoding         iso8859-15
+       LangCode         af_ZA
 End
 
 Language albanian
-       GuiName         "Albanian"
-       BabelName       albanian
-       Encoding        iso8859-2
-       LangCode        sq_AL
+       GuiName          "Albanian"
+       BabelName        albanian
+       PolyglossiaName  albanian
+       QuoteStyle       swiss
+       Encoding         iso8859-2
+       LangCode         sq_AL
 End
 
 Language american
-       GuiName         "English (USA)"
-       BabelName       american
-       Encoding        iso8859-15
-       LangCode        en_US
+       GuiName          "English (USA)"
+       BabelName        american
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=american"
+       QuoteStyle       english
+       Encoding         iso8859-15
+       LangCode         en_US
+End
+
+# not supported by babel
+Language amharic
+       GuiName          "Amharic"
+       PolyglossiaName  amharic
+       Encoding         utf8
+       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
+       LangCode          grc_GR
 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)"
-       BabelName       arabtex
-       Encoding        cp1256
-       RTL             true
-       LangCode        ar_SA
+       GuiName          "Arabic (ArabTeX)"
+       HasGuiSupport    true
+       BabelName        arabtex
+       QuoteStyle       french
+       Encoding         cp1256
+       RTL              true
+       LangCode         ar_SA
 End
 
+# polyglossia uses "Arabic" for the lang environment
 Language arabic_arabi
-       GuiName         "Arabic (Arabi)"
-       BabelName       arabic
-       Encoding        cp1256
-       RTL             true
-       LangCode        ar_SA
+       GuiName          "Arabic (Arabi)"
+       BabelName        arabic
+       PolyglossiaName  arabic
+       QuoteStyle       french
+       Encoding         cp1256
+       FontEncoding     LAE
+       RTL              true
+       AsBabelOptions   true
+       LangCode         ar_SA
 End
 
+# not supported by babel
 Language armenian
-       GuiName         "Armenian"
-       Encoding        armscii8
-       LangCode        hy_AM
-End
-
+       GuiName          "Armenian"
+       PolyglossiaName  armenian
+       QuoteStyle       swiss
+       Encoding         utf8
+       LangCode         hy_AM
+End
+
+# not supported by babel
+Language asturian
+       GuiName          "Asturian"
+       PolyglossiaName  asturian
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         ast_ES
+End
+
+Language australian
+       GuiName          "English (Australia)"
+       BabelName        australian
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=australian"
+       Encoding         iso8859-15
+       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.
 Language austrian
-       GuiName         "German (Austria, old spelling)"
-       BabelName       austrian
-       Encoding        iso8859-15
-       LangCode        de_AT
+       GuiName          "German (Austria, old spelling)"
+       BabelName        austrian
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=austrian,spelling=old,babelshorthands=true"
+       QuoteStyle       german
+       Encoding         iso8859-15
+       LangCode         de_AT
 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
-       Encoding        iso8859-15
-       LangCode        de_AT
+       GuiName          "German (Austria)"
+       BabelName        naustrian
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=austrian,spelling=new,babelshorthands=true"
+       QuoteStyle       german
+       Encoding         iso8859-15
+       LangCode         de_AT
 End
 
 Language bahasa
-       GuiName         "Indonesian"
-       BabelName       bahasa
-       Encoding        iso8859-15
-       LangCode        id_ID
+       GuiName          "Indonesian"
+       HasGuiSupport    true
+       BabelName        bahasa
+       PolyglossiaName  bahasai
+       QuoteStyle       english
+       Encoding         iso8859-15
+       LangCode         id_ID
 End
 
 Language bahasam
-       GuiName         "Malay"
-       BabelName       bahasam
-       Encoding        iso8859-15
-       LangCode        ms_MY
+       GuiName          "Malay"
+       BabelName        bahasam
+       PolyglossiaName  bahasam
+       QuoteStyle       english
+       Encoding         iso8859-15
+       LangCode         ms_MY
 End
 
 Language basque
-       GuiName         "Basque"
-       BabelName       basque
-       Encoding        iso8859-15
-       LangCode        eu_ES
+       GuiName          "Basque"
+       HasGuiSupport    true
+       BabelName        basque
+       PolyglossiaName  basque
+       QuoteStyle       swiss
+       Encoding         iso8859-15
+       LangCode         eu_ES
+       PostBabelPreamble
+       \addto\extrasbasque{\bbl@deactivate{~}}
+       EndPostBabelPreamble
 End
 
+# not yet supported by polyglossia
 Language belarusian
-       GuiName         "Belarusian"
-       BabelName       belarusian
-       Encoding        cp1251
-       LangCode        be_BY
+       GuiName          "Belarusian"
+       BabelName        belarusian
+       QuoteStyle       french
+       Encoding         cp1251
+       LangCode         be_BY
+       AsBabelOptions   true
+End
+
+# not yet supported by polyglossia
+Language bosnian
+       GuiName          "Bosnian"
+       BabelName        bosnian
+       QuoteStyle       polish
+       Encoding         iso8859-2
+       LangCode         bs_BA
 End
 
 Language brazilian
-       GuiName         "Portuguese (Brazil)"
-       BabelName       brazil
-       Encoding        iso8859-15
-       LangCode        pt_BR
+       GuiName          "Portuguese (Brazil)"
+       HasGuiSupport    true
+       BabelName        brazil
+       PolyglossiaName  brazil
+       QuoteStyle       english
+       Encoding         iso8859-15
+       LangCode         pt_BR
 End
 
 Language breton
-       GuiName         "Breton"
-       BabelName       breton
-       Encoding        iso8859-15
-       LangCode        br_FR
+       GuiName          "Breton"
+       BabelName        breton
+       PolyglossiaName  breton
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         br_FR
 End
 
 Language british
-       GuiName         "English (UK)"
-       BabelName       british
-       Encoding        iso8859-15
-       LangCode        en_GB
+       GuiName          "English (UK)"
+       BabelName        british
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=british"
+       QuoteStyle       british
+       Encoding         iso8859-15
+       LangCode         en_GB
 End
 
 Language bulgarian
-       GuiName         "Bulgarian"
-       BabelName       bulgarian
-       Encoding        cp1251
-       LangCode        bg_BG
+       GuiName          "Bulgarian"
+       BabelName        bulgarian
+       PolyglossiaName  bulgarian
+       QuoteStyle       german
+       Encoding         cp1251
+       FontEncoding     T2A
+       LangCode         bg_BG
 End
 
+# not yet supported by polyglossia
 Language canadian
-       GuiName         "English (Canada)"
-       BabelName       canadian
-       Encoding        iso8859-15
-       LangCode        en_CA
-End
-
+       GuiName          "English (Canada)"
+       BabelName        canadian
+#      PolyglossiaName  english
+#      PolyglossiaOpts  "variant=canadian"
+       QuoteStyle       english
+       Encoding         iso8859-15
+       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
-       Encoding        iso8859-15
-       LangCode        fr_CA
+       GuiName          "French (Canada)"
+       BabelName        canadien
+#      PolyglossiaName  french
+#      PolyglossiaOpts  "variant=canadien"
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         fr_CA
 End
 
 Language catalan
-       GuiName         "Catalan"
-       BabelName       catalan
-       Encoding        iso8859-15
-       LangCode        ca_ES
+       GuiName          "Catalan"
+       HasGuiSupport    true
+       BabelName        catalan
+       PolyglossiaName  catalan
+       PolyglossiaOpts  "babelshorthands=true"
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         ca_ES
 End
 
+# uses CJK package
 Language chinese-simplified
-       GuiName         "Chinese (simplified)"
-       Encoding        euc-cn
-       LangCode        zh_CN
+       GuiName          "Chinese (simplified)"
+       HasGuiSupport    true
+       Encoding         euc-cn
+       QuoteStyle       english
+       LangCode         zh_CN
+       Requires         CJK
 End
 
+# uses CJK package
 Language chinese-traditional
        GuiName         "Chinese (traditional)"
-       Encoding        utf8-cjk
-       LangCode        zh_CN
+       HasGuiSupport    true
+       QuoteStyle       cjk
+       Encoding         utf8-cjk
+       LangCode         zh_TW
+       Requires         CJK
+End
+
+# not supported by babel
+Language coptic
+       GuiName          "Coptic"
+       PolyglossiaName  coptic
+       Encoding         utf8
+       LangCode         cop_EG
 End
 
 Language croatian
-       GuiName         "Croatian"
-       BabelName       croatian
-       Encoding        iso8859-2
-       LangCode        hr_HR
+       GuiName          "Croatian"
+       BabelName        croatian
+       PolyglossiaName  croatian
+       QuoteStyle       polish
+       Encoding         iso8859-2
+       LangCode         hr_HR
 End
 
 Language czech
-       GuiName         "Czech"
-       BabelName       czech
-       Encoding        iso8859-2
-       LangCode        cs_CZ
+       GuiName          "Czech"
+       HasGuiSupport    true
+       BabelName        czech
+       PolyglossiaName  czech
+       QuoteStyle       german
+       Encoding         iso8859-2
+       LangCode         cs_CZ
 End
 
 Language danish
-       GuiName         "Danish"
-       BabelName       danish
-       Encoding        iso8859-15
-       LangCode        da_DK
+       GuiName          "Danish"
+       HasGuiSupport    true
+       BabelName        danish
+       PolyglossiaName  danish
+       QuoteStyle       danish
+       Encoding         iso8859-15
+       LangCode         da_DK
 End
 
-Language dutch
-       GuiName         "Dutch"
-       BabelName       dutch
-       Encoding        iso8859-15
-       LangCode        nl_NL
+# not supported by babel
+Language divehi
+       GuiName          "Divehi (Maldivian)"
+       PolyglossiaName  divehi
+       Encoding         utf8
+       LangCode         dv_MV
 End
 
-Language english
-       GuiName         "English"
-       BabelName       english
-       Encoding        iso8859-15
-       LangCode        en_US
+Language dutch
+       GuiName          "Dutch"
+       HasGuiSupport    true
+       BabelName        dutch
+       PolyglossiaName  dutch
+       PolyglossiaOpts  "babelshorthands=true"
+       QuoteStyle       polish
+       Encoding         iso8859-15
+       LangCode         nl_NL
 End
 
-# Esperanto has no country code because it is an auxiliary language
+Language english
+       GuiName          "English"
+       HasGuiSupport    true
+       BabelName        english
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=american"
+       QuoteStyle       english
+       Encoding         iso8859-15
+       LangCode         en_US
+End
+
+# Esperanto has no country code because it is an auxiliary language.
+# We therefore the name of its hunspell dictionary.
 Language esperanto
-       GuiName         "Esperanto"
-       BabelName       esperanto
-       Encoding        iso8859-3
-       LangCode        eo
+       GuiName          "Esperanto"
+       BabelName        esperanto
+       PolyglossiaName  esperanto
+       QuoteStyle       english
+       Encoding         iso8859-3
+       LangCode         eo_EO
 End
 
 Language estonian
-       GuiName         "Estonian"
-       BabelName       estonian
-       Encoding        iso8859-15
-       LangCode        et_EE
+       GuiName          "Estonian"
+       BabelName        estonian
+       PolyglossiaName  estonian
+       QuoteStyle       german
+       Encoding         iso8859-15
+       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
-       Encoding        utf8
-       RTL             true
-       LangCode        fa_IR
+       GuiName          "Farsi"
+       BabelName        farsi
+       PolyglossiaName  farsi
+       Encoding         utf8
+       FontEncoding     LFE
+       RTL              true
+       LangCode         fa_IR
+       QuoteStyle       english
        PostBabelPreamble
-         \DeclareTextSymbol{\guillemotright}{LFE}{62}
-         \DeclareTextSymbol{\guillemotleft}{LFE}{60}
+       \DeclareTextSymbol{\guillemotright}{LFE}{62}
+       \DeclareTextSymbol{\guillemotleft}{LFE}{60}
        EndPostBabelPreamble
 End
 
 Language finnish
-       GuiName         "Finnish"
-       BabelName       finnish
-       Encoding        iso8859-15
-       LangCode        fi_FI
+       GuiName          "Finnish"
+       HasGuiSupport    true
+       BabelName        finnish
+       PolyglossiaName  finnish
+       QuoteStyle       swedish
+       Encoding         iso8859-15
+       LangCode         fi_FI
 End
 
 # We redefine \og and \fg (guillemets) for older french language definitions
 Language french
-       GuiName         "French"
-       BabelName       french
-       Encoding        iso8859-15
-       LangCode        fr_FR
+       GuiName          "French"
+       HasGuiSupport    true
+       BabelName        french
+       PolyglossiaName  french
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         fr_FR
        PostBabelPreamble
-         \addto\extrasfrench{%
-              \providecommand{\og}{\leavevmode\flqq~}
-              \providecommand{\fg}{\ifdim\lastskip>\z@\unskip\fi~\frqq}
-         }
+       \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
+       LangCode         fur_IT
+End
+
 Language galician
-       GuiName         "Galician"
-       BabelName       galician
-       Encoding        iso8859-15
-       LangCode        gl_ES
+       GuiName          "Galician"
+       HasGuiSupport    true
+       BabelName        galician
+       PolyglossiaName  galician
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         gl_ES
+       PostBabelPreamble
+       \addto\shorthandsgalician{\galiciandeactivate{~}}
+       EndPostBabelPreamble
+End
+
+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
-       Encoding        iso8859-15
-       LangCode        de
-       LangVariety     alt
+       GuiName          "German (old spelling)"
+       BabelName        german
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=german,spelling=old,babelshorthands=true"
+       QuoteStyle       german
+       Encoding         iso8859-15
+       LangCode         de
+       LangVariety      alt
 End
 
 Language ngerman
-       GuiName         "German"
-       BabelName       ngerman
-       Encoding        iso8859-15
-       LangCode        de_DE
-End
-
+       GuiName          "German"
+       HasGuiSupport    true
+       BabelName        ngerman
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=german,spelling=new,babelshorthands=true"
+       QuoteStyle       german
+       Encoding         iso8859-15
+       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       ngerman
-       Encoding        iso8859-15
-       LangCode        de_CH
+       GuiName          "German (Switzerland)"
+       BabelName        nswissgerman
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=swiss,spelling=new,babelshorthands=true"
+       QuoteStyle       swiss
+       Encoding         iso8859-15
+       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
+       LangCode         de_CH
 End
 
 Language greek
-       GuiName          "Greek"
-       BabelName        greek
-       Encoding         iso8859-7
-       InternalEncoding true
-       LangCode         el_GR
+       GuiName           "Greek"
+       HasGuiSupport     true
+       BabelName         greek
+       PolyglossiaName   greek
+       PolyglossiaOpts   "variant=monotonic"
+       QuoteStyle        french
+       Encoding          iso8859-7
+       InternalEncoding  true
+       FontEncoding      LGR
+       LangCode          el_GR
 End
 
 Language polutonikogreek
-       GuiName          "Greek (polytonic)"
-       BabelName        polutonikogreek
-       Encoding         iso8859-7
-       InternalEncoding true
-       LangCode         el_GR
+       GuiName           "Greek (polytonic)"
+       BabelName         polutonikogreek
+       PolyglossiaName   greek
+       PolyglossiaOpts   "variant=polytonic"
+       QuoteStyle        french
+       Encoding          iso8859-7
+       InternalEncoding  true
+       FontEncoding      LGR
+       LangCode          el_GR
 End
 
 Language hebrew
-       GuiName          "Hebrew"
-       BabelName        hebrew
-       Encoding         cp1255
-       InternalEncoding true
-       RTL              true
-       LangCode         he_IL
-End
-
+       GuiName           "Hebrew"
+       HasGuiSupport     true
+       BabelName         hebrew
+       PolyglossiaName   hebrew
+       Encoding          cp1255
+       QuoteStyle        english
+       InternalEncoding  true
+# Hebrew babel loads the font encodings
+# itself in the appropriate order
+#      FontEncoding      LHE
+       RTL               true
+       LangCode          he_IL
+End
+
+# not supported by babel
+Language hindi
+       GuiName          "Hindi"
+       PolyglossiaName  hindi
+       Encoding         utf8
+       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
@@ -338,267 +661,550 @@ End
 #      GuiName         "Hungarian"
 #      BabelName       hungarian
 #      Encoding        iso8859-2
-##     LangCode        hu_HU
+#      LangCode        hu_HU
+#       QuoteStyle      polish
 #End
 
 Language icelandic
-       GuiName         "Icelandic"
-       BabelName       icelandic
-       Encoding        iso8859-15
-       LangCode        is_IS
+       GuiName          "Icelandic"
+       BabelName        icelandic
+       PolyglossiaName  icelandic
+       QuoteStyle       german
+       Encoding         iso8859-15
+       LangCode         is_IS
 End
 
-# Interlingua has no country code because it is an auxiliary language
+# Interlingua has no official country code because it is an auxiliary
+# language. We therefore the name of its hunspell dictionary.
 Language interlingua
-       GuiName         "Interlingua"
-       BabelName       interlingua
-       Encoding        iso8859-15
-       LangCode        ia
+       GuiName          "Interlingua"
+       HasGuiSupport    true
+       BabelName        interlingua
+       PolyglossiaName  interlingua
+       Encoding         iso8859-15
+       LangCode         ia_IA
+       QuoteStyle       english
 End
 
 Language irish
-       GuiName         "Irish"
-       BabelName       irish
-       Encoding        iso8859-15
-       LangCode        ga_IE
+       GuiName          "Irish"
+       BabelName        irish
+       PolyglossiaName  irish
+       QuoteStyle       english
+       Encoding         iso8859-15
+       LangCode         ga_IE
 End
 
 Language italian
-       GuiName         "Italian"
-       BabelName       italian
-       Encoding        iso8859-15
-       LangCode        it_IT
-End
-
+       GuiName          "Italian"
+       HasGuiSupport    true
+       BabelName        italian
+       PolyglossiaName  italian
+       QuoteStyle       french
+       Encoding         iso8859-15
+       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"
-       BabelName       japanese
-       Encoding        jis-plain
-       LangCode        ja_JP
+       GuiName          "Japanese"
+       HasGuiSupport    true
+       BabelName        japanese
+       Encoding         jis-platex
+       LangCode         ja_JP
+       AsBabelOptions   true
+       Requires         japanese
+       InternalEncoding true
+       FontEncoding     None
+       QuoteStyle       cjk
 End
 
+# uses CJK package
 Language japanese-cjk
        GuiName         "Japanese (CJK)"
        Encoding        euc-jp
        LangCode        ja_JP
+       Requires        CJK
+       QuoteStyle      cjk
 End
 
+# not supported by babel
+Language kannada
+       GuiName          "Kannada"
+       PolyglossiaName  kannada
+       Encoding         utf8
+       LangCode         kn_IN
+End
+
+# not yet supported by polyglossia
+# not supported by babel
 Language kazakh
        GuiName         "Kazakh"
-       BabelName       kazakh
-       Encoding        pt154
+       Encoding        ascii
        LangCode        kk_KZ
+       PostBabelPreamble
+       \input{t2aenc.def}
+       \AtBeginDocument{\fontencoding{T2A}\selectfont}
+       EndPostBabelPreamble
+End
+
+# not supported by babel
+Language khmer
+       GuiName          "Khmer"
+       PolyglossiaName  khmer
+       Encoding         utf8
+       LangCode         km_KH
 End
 
-# there is no country code for Korean because ko_KR is the same as ko_KI
 Language korean
        GuiName         "Korean"
        Encoding        euc-kr
-       LangCode        ko
+       QuoteStyle      cjkangle
+       LangCode        ko_KR
+       Requires        CJK
 End
 
-# there is no country code for Latin because it is a dead language
-Language latin
-       GuiName         "Latin"
-       BabelName       latin
-       Encoding        iso8859-15
-       LangCode        la
+# not yet supported by polyglossia
+Language kurmanji
+       GuiName          "Kurmanji"
+       BabelName        kurmanji
+       Encoding         utf8
+       LangCode         kmr
+       AsBabelOptions   true
 End
 
-Language latvian
-       GuiName         "Latvian"
-       BabelName       latvian
-       Encoding        iso8859-4
-       LangCode        lv_LV
+# not supported by babel
+Language lao
+       GuiName          "Lao"
+       PolyglossiaName  lao
+       Encoding         utf8
+       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.
+Language latin
+       GuiName          "Latin"
+       BabelName        latin
+       PolyglossiaName  latin
+       Encoding         iso8859-15
+       LangCode         la_LA
+End
+
+# latvian must be loaded locally with babel options,
+# not globally via class options
+Language latvian
+       GuiName          "Latvian"
+       BabelName        latvian
+       PolyglossiaName  latvian
+       QuoteStyle       german
+       Encoding         iso8859-4
+#      FontEncoding     L7x # (required for hyphenation but not set by babel)
+       LangCode         lv_LV
+       AsBabelOptions   true
+End
+
+# lithuanian must be loaded locally with babel options,
+# not globally via class options
 Language lithuanian
-       GuiName         "Lithuanian"
-       BabelName       lithuanian
-       Encoding        iso8859-13
-       LangCode        lt_LT
+       GuiName          "Lithuanian"
+       BabelName        lithuanian
+       PolyglossiaName  lithuanian
+       QuoteStyle       german
+       Encoding         iso8859-13
+       FontEncoding     L7x
+       LangCode         lt_LT
+       AsBabelOptions   true
 End
 
 Language lowersorbian
-       GuiName         "Lower Sorbian"
-       BabelName       lowersorbian
-       Encoding        iso8859-2
-       LangCode        dsb_DE
+       GuiName          "Lower Sorbian"
+       BabelName        lowersorbian
+       PolyglossiaName  lsorbian
+       QuoteStyle       german
+       Encoding         iso8859-2
+       LangCode         dsb_DE
 End
 
 Language magyar
-       GuiName         "Hungarian"
-       BabelName       magyar
-       Encoding        iso8859-2
-       LangCode        hu_HU
+       GuiName          "Hungarian"
+       HasGuiSupport    true
+       BabelName        magyar
+       PolyglossiaName  magyar
+       QuoteStyle       polish
+       Encoding         iso8859-2
+       LangCode         hu_HU
+End
+
+# not yet supported by polyglossia
+Language macedonian
+       GuiName          "Macedonian"
+       BabelName        macedonian
+       QuoteStyle       german
+       Encoding         cp1251
+       FontEncoding     T2A
+       LangCode         mk_MK
+End
+
+# not supported by babel
+Language marathi
+       GuiName          "Marathi"
+       PolyglossiaName  marathi
+       Encoding         utf8
+       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
+       LangCode         mn_MN
+       AsBabelOptions   true
 End
 
-Language mongolian
-       GuiName         "Mongolian"
-       BabelName       mongolian
-       Encoding        utf8
-       LangCode        mn_MN
+Language newzealand
+       GuiName          "English (New Zealand)"
+       BabelName        newzealand
+       PolyglossiaName  english
+       PolyglossiaOpts  "variant=newzealand"
+       QuoteStyle       english
+       Encoding         iso8859-15
+       LangCode         en_NZ
 End
 
 Language norsk
-       GuiName         "Norsk"
-       BabelName       norsk
-       Encoding        iso8859-15
-       LangCode        nb_NO
+       GuiName          "Norwegian (Bokmaal)"
+       HasGuiSupport    true
+       BabelName        norsk
+       PolyglossiaName  norsk
+       QuoteStyle       swiss
+       Encoding         iso8859-15
+       LangCode         nb_NO
 End
 
 Language nynorsk
-       GuiName         "Nynorsk"
-       BabelName       nynorsk
-       Encoding        iso8859-15
-       LangCode        nn_NO
+       GuiName          "Norwegian (Nynorsk)"
+       HasGuiSupport    true
+       BabelName        nynorsk
+       PolyglossiaName  nynorsk
+       QuoteStyle       swiss
+       Encoding         iso8859-15
+       LangCode         nn_NO
+End
+
+# not supported by babel
+Language occitan
+       GuiName          "Occitan"
+       PolyglossiaName  occitan
+       QuoteStyle       french
+       Encoding         utf8
+       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
+
+Language piedmontese
+       GuiName          "Piedmontese"
+       HasGuiSupport    true
+       BabelName        piedmontese
+       PolyglossiaName  piedmontese
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         pms_IT
 End
 
 Language polish
-       GuiName         "Polish"
-       BabelName       polish
-       Encoding        iso8859-2
-       LangCode        pl_PL
+       GuiName          "Polish"
+       HasGuiSupport    true
+       BabelName        polish
+       PolyglossiaName  polish
+       QuoteStyle       polish
+       Encoding         iso8859-2
+#      FontEncoding     QX # (required for hyphenation but not set by babel)
+       LangCode         pl_PL
 End
 
 Language portuguese
-       GuiName         "Portuguese"
-       BabelName       portuges
-       Encoding        iso8859-15
-       LangCode        pt_PT
+       GuiName          "Portuguese"
+       HasGuiSupport    true
+       BabelName        portuges
+       PolyglossiaName  portuges
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         pt_PT
 End
 
 Language romanian
-       GuiName         "Romanian"
-       BabelName       romanian
-       Encoding        iso8859-2
-       LangCode        ro_RO
+       GuiName          "Romanian"
+       HasGuiSupport    true
+       BabelName        romanian
+       PolyglossiaName  romanian
+       QuoteStyle       polish
+       Encoding         iso8859-16
+       LangCode         ro_RO
+End
+
+Language romansh
+       GuiName          "Romansh"
+       HasGuiSupport    true
+       BabelName        romansh
+       PolyglossiaName  romansh
+       QuoteStyle       german
+       Encoding         iso8859-15
+       LangCode         rm_CH
 End
 
 Language russian
-       GuiName         "Russian"
-       BabelName       russian
-       Encoding        koi8
-       LangCode        ru_RU
+       GuiName          "Russian"
+       HasGuiSupport    true
+       BabelName        russian
+       PolyglossiaName  russian
+       QuoteStyle       russian
+       Encoding         koi8-r
+       FontEncoding     T2A
+       LangCode         ru_RU
 End
 
 Language samin
-       GuiName         "North Sami"
-       BabelName       samin
-       Encoding        iso8859-15
-       LangCode        se_NO
+       GuiName          "North Sami"
+       BabelName        samin
+       PolyglossiaName  samin
+       Encoding         iso8859-15
+       LangCode         se_NO
 End
 
-Language scottish
-       GuiName         "Scottish"
-       BabelName       scottish
-       Encoding        iso8859-15
-       LangCode        gd_GB
+# not supported by babel
+Language sanskrit
+       GuiName          "Sanskrit"
+       PolyglossiaName  sanskrit
+       Encoding         utf8
+       LangCode         sa_IN
 End
 
-Language serbian
-       GuiName         "Serbian"
-       BabelName       serbian
-       Encoding        iso8859-5
-       LangCode        sr_RS
+Language scottish
+       GuiName          "Scottish"
+       BabelName        scottish
+       PolyglossiaName  scottish
+       QuoteStyle       english
+       Encoding         iso8859-15
+       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
+       FontEncoding     T2A
+       LangCode         sr_RS
+       AsBabelOptions   true
+End
+
+# Note: script option is uppercase, even if the polyglossia
+#       manual states otherwise.
 Language serbian-latin
-       GuiName         "Serbian (Latin)"
-       BabelName       serbian
-       Encoding        iso8859-2
-       LangCode        sr_RS
+       GuiName          "Serbian (Latin)"
+       BabelName        serbian
+       PolyglossiaName  serbian
+       PolyglossiaOpts  "script=Latin"
+       QuoteStyle       polish
+       Encoding         iso8859-2
+       LangCode         sr_RS-Latin
 End
 
 Language slovak
-       GuiName         "Slovak"
-       BabelName       slovak
-       Encoding        iso8859-2
-       LangCode        sk_SK
+       GuiName          "Slovak"
+       HasGuiSupport    true
+       BabelName        slovak
+       PolyglossiaName  slovak
+       QuoteStyle       german
+       Encoding         iso8859-2
+       LangCode         sk_SK
 End
 
 Language slovene
-       GuiName         "Slovene"
-       BabelName       slovene
-       Encoding        iso8859-2
-       LangCode        sl_SI
+       GuiName          "Slovene"
+       BabelName        slovene
+       PolyglossiaName  slovenian
+       QuoteStyle       german
+       Encoding         iso8859-2
+       LangCode         sl_SI
 End
 
 Language spanish
-       GuiName         "Spanish"
-       BabelName       spanish
-       Encoding        iso8859-15
-       LangCode        es_ES
+       GuiName          "Spanish"
+       HasGuiSupport    true
+       BabelName        spanish
+       PolyglossiaName  spanish
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         es_ES
        PostBabelPreamble
-         \addto\shorthandsspanish{\spanishdeactivate{~<>}}
+       \addto\shorthandsspanish{\spanishdeactivate{~<>}}
        EndPostBabelPreamble
 End
 
+# there are no spanish shorthands in polyglossia
 Language spanish-mexico
-       GuiName         "Spanish (Mexico)"
-       BabelName       spanish
-       Encoding        iso8859-15
-       LangCode        es_MX
+       GuiName          "Spanish (Mexico)"
+       BabelName        spanish
+       PolyglossiaName  spanish
+       QuoteStyle       french
+       Encoding         iso8859-15
+       LangCode         es_MX
        PostBabelPreamble
-         \addto\shorthandsspanish{\spanishdeactivate{~<>.}}
+       \addto\shorthandsspanish{\spanishdeactivate{~<>.}}
        EndPostBabelPreamble
 End
 
 Language swedish
-       GuiName         "Swedish"
-       BabelName       swedish
-       Encoding        iso8859-15
-       LangCode        sv_SE
+       GuiName          "Swedish"
+       HasGuiSupport    true
+       BabelName        swedish
+       PolyglossiaName  swedish
+       QuoteStyle       swedish
+       Encoding         iso8859-15
+       LangCode         sv_SE
+End
+
+# not supported by babel
+Language syriac
+       GuiName          "Syriac"
+       PolyglossiaName  syriac
+       Encoding         utf8
+       RTL              true
+       LangCode         syr_SY
+End
+
+# not supported by babel
+Language tamil
+       GuiName          "Tamil"
+       PolyglossiaName  tamil
+       Encoding         utf8
+       LangCode         ta_IN
+End
+
+# not supported by babel
+Language telugu
+       GuiName          "Telugu"
+       PolyglossiaName  telugu
+       Encoding         utf8
+       LangCode         te_IN
 End
 
 Language thai
-       GuiName         "Thai"
-       BabelName       thai
-       Encoding        tis620-0
-       LangCode        th_TH
+       GuiName          "Thai"
+       BabelName        thai
+       PolyglossiaName  thai
+       QuoteStyle       english
+       Encoding         tis620-0
+#      FontEncoding     LTH
+       LangCode         th_TH
        PostBabelPreamble
-         \usepackage{thswitch}
+       \usepackage{thswitch}
        EndPostBabelPreamble
 End
 
+# not supported by babel
+Language tibetan
+       GuiName          "Tibetan"
+       PolyglossiaName  tibetan
+       Encoding         utf8
+       LangCode         bo_CN
+End
+
 Language turkish
-       GuiName         "Turkish"
-       BabelName       turkish
-       Encoding        iso8859-9
-       LangCode        tr_TR
+       GuiName          "Turkish"
+       HasGuiSupport    true
+       BabelName        turkish
+       PolyglossiaName  turkish
+       QuoteStyle       english
+       Encoding         iso8859-9
+       LangCode         tr_TR
+       PostBabelPreamble
+       \usepackage{xkeyval}
+       EndPostBabelPreamble
 End
 
+# turkmen must be loaded locally with babel options,
+# not globally via class options
 Language turkmen
-       GuiName         "Turkmen"
-       BabelName       turkmen
-       Encoding        utf8
-       LangCode        tk_TM
+       GuiName          "Turkmen"
+       BabelName        turkmen
+       PolyglossiaName  turkmen
+       QuoteStyle       swiss
+       Encoding         utf8
+       LangCode         tk_TM
+       AsBabelOptions   true
 End
 
 Language ukrainian
-       GuiName         "Ukrainian"
-       BabelName       ukrainian
-       Encoding        koi8-u
-       LangCode        uk_UA
+       GuiName          "Ukrainian"
+       HasGuiSupport    true
+       BabelName        ukrainian
+       PolyglossiaName  ukrainian
+       QuoteStyle       russian
+       Encoding         koi8-u
+       FontEncoding     T2A
+       LangCode         uk_UA
 End
 
 Language uppersorbian
-       GuiName         "Upper Sorbian"
-       BabelName       uppersorbian
-       Encoding        iso8859-2
-       LangCode        hsb_DE
+       GuiName          "Upper Sorbian"
+       BabelName        uppersorbian
+       PolyglossiaName  usorbian
+       QuoteStyle       german
+       Encoding         iso8859-2
+       LangCode         hsb_DE
+End
+
+# not supported by babel
+Language urdu
+       GuiName          "Urdu"
+       PolyglossiaName  urdu
+       Encoding         utf8
+       RTL              true
+       LangCode         ur_PK
 End
 
 Language vietnamese
-       GuiName         "Vietnamese"
-       BabelName       vietnam
-       Encoding        utf8
-       LangCode        vi_VN
+       GuiName          "Vietnamese"
+       BabelName        vietnamese
+       PolyglossiaName  vietnamese
+       QuoteStyle       english
+       Encoding         utf8
+       LangCode         vi_VN
 End
 
 Language welsh
-       GuiName         "Welsh"
-       BabelName       welsh
-       Encoding        iso8859-15
-       LangCode        cy_GB
+       GuiName          "Welsh"
+       BabelName        welsh
+       PolyglossiaName  welsh
+       QuoteStyle       british
+       Encoding         iso8859-15
+       LangCode         cy_GB
 End