]> git.lyx.org Git - lyx.git/blobdiff - lib/languages
The way this was done here is inconsistent with how it is done
[lyx.git] / lib / languages
index 3fe5b8f4c57db74c8d1d13ead0eba7b535077485..dbdf79276b2711e6f6e39e94e91cee1d8b5fcb70 100644 (file)
@@ -6,10 +6,12 @@
 #
 # Language <lyxname>
 #      GuiName            "<Gui Name>"
+#      HasGuiSupport      <true|false>
 #      BabelName          <babelname>
 #      PolyglossiaName    <polyglossianame>
 #      PolyglossiaOpts    "<language-specific options>"
 #      Encoding           <encoding>
+#      FontEncoding       <font encoding>
 #      QuoteStyle         <danish|english|french|german|polish|swedish>
 #      InternalEncoding   <true|false>
 #      RTL                <true|false>
 #
 # * 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:
 #   - danish:  >>text<<  >text<   (inward guillemets)
 #   - english: ``text''  `text'   (66_99)
 #   Document > Settings > Language > Encoding is not set to "Language
 #   Default"
 # * InternalEncoding is used to tell LyX that babel internally sets a font
-#   encoding (such as hebrew to LHE). See bug #5091.
+#   encoding (such as hebrew to LHE). This prevents LyX from outputting
+#   characters that only exist in T1 font encoding (such as "<", ">", "|"
+#   and straight quote). 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.
@@ -115,20 +128,28 @@ Language american
        LangCode         en_US
 End
 
-# not supported by babel
+# 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)"
-       PolyglossiaName  greek
-       PolyglossiaOpts  variant=ancient
-       QuoteStyle       french
-       Encoding         iso8859-7
-       LangCode         grc_GR
+       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)"
+       HasGuiSupport    true
        BabelName        arabtex
        QuoteStyle       french
        Encoding         cp1256
@@ -143,6 +164,7 @@ Language arabic_arabi
        PolyglossiaName  arabic
        QuoteStyle       french
        Encoding         cp1256
+       FontEncoding     "LFE,LAE"
        RTL              true
        AsBabelOptions   true
        LangCode         ar_SA
@@ -167,19 +189,25 @@ Language australian
        LangCode         en_AU
 End
 
-# not yet supported by polyglossia
+# 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
+       PolyglossiaName  german
+       PolyglossiaOpts  "variant=austrian,spelling=old,babelshorthands=true"
        QuoteStyle       german
        Encoding         iso8859-15
        LangCode         de_AT
 End
 
-# not yet supported by polyglossia
+# 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,babelshorthands=true"
        QuoteStyle       german
        Encoding         iso8859-15
        LangCode         de_AT
@@ -187,6 +215,7 @@ End
 
 Language bahasa
        GuiName          "Indonesian"
+       HasGuiSupport    true
        BabelName        bahasa
        PolyglossiaName  bahasai
        QuoteStyle       english
@@ -205,6 +234,7 @@ End
 
 Language basque
        GuiName          "Basque"
+       HasGuiSupport    true
        BabelName        basque
        PolyglossiaName  basque
        QuoteStyle       french
@@ -227,6 +257,7 @@ End
 
 Language brazilian
        GuiName          "Portuguese (Brazil)"
+       HasGuiSupport    true
        BabelName        brazil
        PolyglossiaName  brazil
        QuoteStyle       english
@@ -286,6 +317,7 @@ End
 
 Language catalan
        GuiName          "Catalan"
+       HasGuiSupport    true
        BabelName        catalan
        PolyglossiaName  catalan
        PolyglossiaOpts  "babelshorthands=true"
@@ -297,6 +329,7 @@ End
 # uses CJK package
 Language chinese-simplified
        GuiName          "Chinese (simplified)"
+       HasGuiSupport    true
        Encoding         euc-cn
        QuoteStyle       english
        LangCode         zh_CN
@@ -306,6 +339,7 @@ End
 # uses CJK package
 Language chinese-traditional
        GuiName         "Chinese (traditional)"
+       HasGuiSupport    true
        QuoteStyle       english
        Encoding        utf8-cjk
        LangCode        zh_TW
@@ -331,6 +365,7 @@ End
 
 Language czech
        GuiName          "Czech"
+       HasGuiSupport    true
        BabelName        czech
        PolyglossiaName  czech
        QuoteStyle       german
@@ -340,6 +375,7 @@ End
 
 Language danish
        GuiName          "Danish"
+       HasGuiSupport    true
        BabelName        danish
        PolyglossiaName  danish
        QuoteStyle       danish
@@ -357,6 +393,7 @@ End
 
 Language dutch
        GuiName          "Dutch"
+       HasGuiSupport    true
        BabelName        dutch
        PolyglossiaName  dutch
        PolyglossiaOpts  "babelshorthands=true"
@@ -367,6 +404,7 @@ End
 
 Language english
        GuiName          "English"
+       HasGuiSupport    true
        BabelName        english
        PolyglossiaName  english
        QuoteStyle       english
@@ -404,6 +442,7 @@ Language farsi
        BabelName        farsi
        PolyglossiaName  farsi
        Encoding         utf8
+       FontEncoding     "LFE,LAE"
        RTL              true
        LangCode         fa_IR
        PostBabelPreamble
@@ -414,6 +453,7 @@ End
 
 Language finnish
        GuiName          "Finnish"
+       HasGuiSupport    true
        BabelName        finnish
        PolyglossiaName  finnish
        QuoteStyle       swedish
@@ -424,6 +464,7 @@ End
 # We redefine \og and \fg (guillemets) for older french language definitions
 Language french
        GuiName          "French"
+       HasGuiSupport    true
        BabelName        french
        PolyglossiaName  french
        QuoteStyle       french
@@ -439,6 +480,7 @@ End
 
 Language galician
        GuiName          "Galician"
+       HasGuiSupport    true
        BabelName        galician
        PolyglossiaName  galician
        QuoteStyle       french
@@ -449,6 +491,16 @@ Language galician
        EndPostBabelPreamble
 End
 
+Language georgian
+       GuiName          "Georgian"
+       BabelName        georgian
+       QuoteStyle       german
+       Encoding         utf8
+       InternalEncoding true
+       FontEncoding     "T8M,T8K"
+       LangCode         ka_GE
+End
+
 # german does not use a country code (due to the variety)
 Language german
        GuiName          "German (old spelling)"
@@ -463,6 +515,7 @@ End
 
 Language ngerman
        GuiName          "German"
+       HasGuiSupport    true
        BabelName        ngerman
        PolyglossiaName  german
        PolyglossiaOpts  "babelshorthands=true"
@@ -471,25 +524,44 @@ Language ngerman
        LangCode         de_DE
 End
 
-# Swiss German is not supported by babel and polyglossia yet
-# We use ngerman for now (spellchecking is supported though!)
+# 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 use german until TL 2015 is out, though.
 Language german-ch
        GuiName          "German (Switzerland)"
-       BabelName        ngerman
+       BabelName        nswissgerman
        PolyglossiaName  german
        PolyglossiaOpts  "babelshorthands=true"
+#      PolyglossiaOpts  "variant=swiss,babelshorthands=true"
        QuoteStyle       danish
        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 use ngerman until TL 2015 is out, though.
+Language german-ch-old
+       GuiName          "German (Switzerland, old spelling)"
+       BabelName        swissgerman
+       PolyglossiaName  german
+       PolyglossiaOpts  "spelling=old,babelshorthands=true"
+#      PolyglossiaOpts  "variant=swiss,spelling=old,babelshorthands=true"
+       QuoteStyle       danish
+       Encoding         iso8859-15
+       LangCode         de_CH
+End
+
 Language greek
        GuiName           "Greek"
+       HasGuiSupport     true
        BabelName         greek
        PolyglossiaName   greek
        QuoteStyle        french
        Encoding          iso8859-7
        InternalEncoding  true
+       FontEncoding      LGR
        LangCode          el_GR
 End
 
@@ -501,16 +573,21 @@ Language polutonikogreek
        QuoteStyle        french
        Encoding          iso8859-7
        InternalEncoding  true
+       FontEncoding      LGR
        LangCode          el_GR
 End
 
 Language hebrew
        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
@@ -547,6 +624,7 @@ End
 # language. We therefore the name of its hunspell dictionary.
 Language interlingua
        GuiName          "Interlingua"
+       HasGuiSupport    true
        BabelName        interlingua
        PolyglossiaName  interlingua
        Encoding         iso8859-15
@@ -564,6 +642,7 @@ End
 
 Language italian
        GuiName          "Italian"
+       HasGuiSupport    true
        BabelName        italian
        PolyglossiaName  italian
        QuoteStyle       french
@@ -578,12 +657,14 @@ End
 # InternalEncoding to true.
 Language japanese
        GuiName          "Japanese"
+       HasGuiSupport    true
        BabelName        japanese
        Encoding         jis-platex
        LangCode         ja_JP
        AsBabelOptions   true
        Requires         japanese
        InternalEncoding true
+       FontEncoding     None
 End
 
 # uses CJK package
@@ -676,6 +757,7 @@ End
 
 Language magyar
        GuiName          "Hungarian"
+       HasGuiSupport    true
        BabelName        magyar
        PolyglossiaName  magyar
        QuoteStyle       polish
@@ -714,6 +796,7 @@ End
 
 Language norsk
        GuiName          "Norwegian (Bokmaal)"
+       HasGuiSupport    true
        BabelName        norsk
        PolyglossiaName  norsk
        QuoteStyle       french
@@ -723,6 +806,7 @@ End
 
 Language nynorsk
        GuiName          "Norwegian (Nynorsk)"
+       HasGuiSupport    true
        BabelName        nynorsk
        PolyglossiaName  nynorsk
        QuoteStyle       french
@@ -751,6 +835,7 @@ End
 
 Language polish
        GuiName          "Polish"
+       HasGuiSupport    true
        BabelName        polish
        PolyglossiaName  polish
        QuoteStyle       polish
@@ -760,6 +845,7 @@ End
 
 Language portuguese
        GuiName          "Portuguese"
+       HasGuiSupport    true
        BabelName        portuges
        PolyglossiaName  portuges
        QuoteStyle       english
@@ -769,6 +855,7 @@ End
 
 Language romanian
        GuiName          "Romanian"
+       HasGuiSupport    true
        BabelName        romanian
        PolyglossiaName  romanian
        QuoteStyle       polish
@@ -778,10 +865,13 @@ End
 
 Language russian
        GuiName          "Russian"
+       HasGuiSupport    true
        BabelName        russian
        PolyglossiaName  russian
        QuoteStyle       french
        Encoding         koi8-r
+       FontEncoding     T2A
+       InternalEncoding true
        LangCode         ru_RU
 End
 
@@ -812,6 +902,7 @@ End
 
 Language serbian
        GuiName          "Serbian"
+       HasGuiSupport    true
        BabelName        serbianc
        PolyglossiaName  serbian
        QuoteStyle       german
@@ -832,6 +923,7 @@ End
 
 Language slovak
        GuiName          "Slovak"
+       HasGuiSupport    true
        BabelName        slovak
        PolyglossiaName  slovak
        QuoteStyle       german
@@ -850,6 +942,7 @@ End
 
 Language spanish
        GuiName          "Spanish"
+       HasGuiSupport    true
        BabelName        spanish
        PolyglossiaName  spanish
        QuoteStyle       french
@@ -875,6 +968,7 @@ End
 
 Language swedish
        GuiName          "Swedish"
+       HasGuiSupport    true
        BabelName        swedish
        PolyglossiaName  swedish
        QuoteStyle       swedish
@@ -883,13 +977,13 @@ Language swedish
 End
 
 # not supported by babel
-Language syriac
-       GuiName          "Syriac"
-       PolyglossiaName  syriac
-       Encoding         utf8
-       RTL              true
-       LangCode         syr_SY
-End
+#Language syriac
+#      GuiName          "Syriac"
+#      PolyglossiaName  syriac
+#      Encoding         utf8
+#      RTL              true
+#      LangCode         syr_SY
+#End
 
 # not supported by babel
 Language tamil
@@ -929,6 +1023,7 @@ End
 
 Language turkish
        GuiName          "Turkish"
+       HasGuiSupport    true
        BabelName        turkish
        PolyglossiaName  turkish
        QuoteStyle       french
@@ -953,10 +1048,13 @@ End
 
 Language ukrainian
        GuiName          "Ukrainian"
+       HasGuiSupport    true
        BabelName        ukrainian
        PolyglossiaName  ukrainian
        QuoteStyle       french
        Encoding         koi8-u
+       FontEncoding     T2A
+       InternalEncoding true
        LangCode         uk_UA
 End
 
@@ -970,13 +1068,13 @@ Language uppersorbian
 End
 
 # not supported by babel
-Language urdu
-       GuiName          "Urdu"
-       PolyglossiaName  urdu
-       Encoding         utf8
-       RTL              true
-       LangCode         ur_PK
-End
+#Language urdu
+#      GuiName          "Urdu"
+#      PolyglossiaName  urdu
+#      Encoding         utf8
+#      RTL              true
+#      LangCode         ur_PK
+#End
 
 # vietnam must be loaded locally with babel options,
 # not globally via class options, see