]> git.lyx.org Git - lyx.git/blobdiff - lib/languages
remerge he.po
[lyx.git] / lib / languages
index 052e5e6cbf878b9d1b9f490d9b2cab6374a17977..760a1ff64086cbd3306c9829d63957601534d798 100644 (file)
@@ -10,6 +10,7 @@
 #      BabelName          <babelname>
 #      PolyglossiaName    <polyglossianame>
 #      PolyglossiaOpts    "<language-specific options>"
+#      XindyName          <xindyname>
 #      ActiveChars        <activated characters>
 #      QuoteStyle         <british|danish|english|french|frenchin|
 #                           german|polish|russian|swedish|swedishg|swiss|plain>
@@ -56,6 +57,8 @@
 #   - french:    <<text>>              ``text''        (outward guillemets -- 66_99)
 #   - frenchin:   <<text>>             <<text>>        (French Imprimerie Nationale style)
 #   - german:    ,,text``              ,text`          (99/66 -- 9/6)
+#   - hebrew:    ''text,,              'text,          (99/99 -- 9/9)
+#   - hungarian:  ,,text''             >>text<<        (99/99 -- double inward guillemets)
 #   - polish:    ,,text''              ,text'          (99/99 -- 9/9)
 #   - russian:    <<text>>             ,,text``        (outward guillemets -- 99/66)
 #   - swedish:   ''text''              'text'          (99_99 -- 9_9)
 #   but are available globally if this language is used (not only for this
 #   language. Examples are \textgreek (Greek) and \textcyrillic (Russian).
 # * ActiveChars provides a string of the characters that are made active
-#   by the language. We record particularly those characters that have to 
+#   by the language. We record particularly those characters that have to
 #   be de-activated in some contexts (such as - or =).
+# * XindyName holds the value to the (te)xindy -L option. We only give it
+#   if a corresponding language module exists.
 #
 ##########################################################################
 
@@ -148,10 +153,10 @@ End
 # Real languages
 #
 
-# not yet supported by polyglossia
 Language afrikaans
        GuiName          "Afrikaans"
        BabelName        afrikaans
+       PolyglossiaName  afrikaans
        QuoteStyle       polish
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -172,6 +177,7 @@ Language albanian
          \@ifl@aded{def}{t1enc}{\DeclareTextSymbol{\th}{T1}{254}}{}
        EndPostBabelPreamble
        PolyglossiaName  albanian
+       XindyName        albanian
        QuoteStyle       swiss
        Encoding         iso8859-2
        FontEncoding     T1|OT1
@@ -184,6 +190,7 @@ Language american
        BabelName        american
        PolyglossiaName  english
        PolyglossiaOpts  "variant=american"
+       XindyName        english
        QuoteStyle       english
        Encoding         iso8859-15
        FontEncoding     ASCII
@@ -210,6 +217,7 @@ Language ancientgreek
        EndPostBabelPreamble
        PolyglossiaName  greek
        PolyglossiaOpts  "variant=ancient"
+       XindyName        greek
        QuoteStyle       french
        Encoding         iso8859-7
        InternalEncoding true
@@ -243,24 +251,26 @@ Language arabic_arabi
        DateFormats      "d MMMM، yyyy|dd/MM/yyyy|d/M/yyyy"
        RTL              true
        PostBabelPreamble
-         % arabic + hyperref redefines \noboundary as local textcommand
-         \let\orig@noboundary\noboundary
-         \DeclareTextCommandDefault{\noboundary}{\orig@noboundary}
-         % work around too simple test for article-like classes in arabicore.sty
-         \ifdefined\chapter\else
-           \def\thesection{\protect\if@rl\protect\I{\number\c@section}%
-             \protect\else\protect\textLR{\number\c@section}%
-             \protect\fi}
-           \def\thesubsection{\protect\if@rl\protect\I{\number\c@subsection.\number\c@section}%
-             \protect\else\protect\textLR{\number\c@section.\number\c@subsection}%
-             \protect\fi}%
-           \def\thetable{\protect\if@rl\protect\I{\number\c@table}%
-             \protect\else\protect\textLR{\number\c@table}%
-             \protect\fi}%
-           \def\thefigure{\protect\if@rl\protect\I{\number\c@figure}%
-             \protect\else\protect\textLR{\number\c@figure}%
-             \protect\fi}%
-         \fi
+         \@ifundefined{if@rl}{}{
+                 % arabic + hyperref redefines \noboundary as local textcommand
+                 \let\orig@noboundary\noboundary
+                 \DeclareTextCommandDefault{\noboundary}{\orig@noboundary}
+                 % work around too simple test for article-like classes in arabicore.sty
+                 \@ifundefined{chapter}{
+                   \def\thesection{\protect\if@rl\protect\I{\number\c@section}%
+                     \protect\else\protect\textLR{\number\c@section}%
+                     \protect\fi}
+                   \def\thesubsection{\protect\if@rl\protect\I{\number\c@subsection.\number\c@section}%
+                     \protect\else\protect\textLR{\number\c@section.\number\c@subsection}%
+                     \protect\fi}
+                   \def\thetable{\protect\if@rl\protect\I{\number\c@table}%
+                     \protect\else\protect\textLR{\number\c@table}%
+                     \protect\fi}
+                   \def\thefigure{\protect\if@rl\protect\I{\number\c@figure}%
+                     \protect\else\protect\textLR{\number\c@figure}%
+                     \protect\fi}
+                 }{}
+         }
        EndPostBabelPreamble
        LangCode         ar_SA
 End
@@ -291,6 +301,7 @@ Language australian
        BabelName        australian
        PolyglossiaName  english
        PolyglossiaOpts  "variant=australian"
+       XindyName        english
        Encoding         iso8859-15
        FontEncoding     ASCII
        DateFormats      "d MMMM yyyy|d MMM yyyy|dd/MM/yyyy"
@@ -305,6 +316,7 @@ Language austrian
        BabelName        austrian
        PolyglossiaName  german
        PolyglossiaOpts  "variant=austrian,spelling=old,babelshorthands=true"
+       XindyName        german-duden
        QuoteStyle       german
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -319,6 +331,7 @@ Language naustrian
        BabelName        naustrian
        PolyglossiaName  german
        PolyglossiaOpts  "variant=austrian,spelling=new,babelshorthands=true"
+       XindyName        german-duden
        QuoteStyle       german
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -379,12 +392,13 @@ Language basque
        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
+       PolyglossiaName  belarusian
+       XindyName        belarusian
        QuoteStyle       french
        Encoding         cp1251
        FontEncoding     T2A
@@ -402,11 +416,11 @@ Language bengali
 End
 
 
-# not yet supported by polyglossia
 # The (rarely used) Cyrillic script is not supported (try serbian).
 Language bosnian
        GuiName          "Bosnian"
        BabelName        bosnian
+       PolyglossiaName  bosnian
        QuoteStyle       polish
        Encoding         iso8859-2
        FontEncoding     T1|OT1
@@ -419,6 +433,7 @@ Language brazilian
        HasGuiSupport    true
        BabelName        brazil
        PolyglossiaName  brazil
+       XindyName        portuguese
        QuoteStyle       english
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -443,6 +458,7 @@ Language british
        BabelName        british
        PolyglossiaName  english
        PolyglossiaOpts  "variant=british"
+       XindyName        english
        QuoteStyle       british
        Encoding         iso8859-15
        FontEncoding     ASCII
@@ -455,6 +471,7 @@ Language bulgarian
        HasGuiSupport    true
        BabelName        bulgarian
        PolyglossiaName  bulgarian
+       XindyName        bulgarian
        QuoteStyle       german
        Encoding         cp1251
        FontEncoding     T2A
@@ -463,28 +480,26 @@ Language bulgarian
        Provides         textcyrillic
 End
 
-# Unless polyglossia supports variant=canadian,
-# we can use american, as canadian \eq. american also in babel
 Language canadian
        GuiName          "English (Canada)"
        BabelName        canadian
        PolyglossiaName  english
-       PolyglossiaOpts  "variant=american"
-#      PolyglossiaOpts  "variant=canadian"
+       PolyglossiaOpts  "variant=canadian"
+       XindyName        english
        QuoteStyle       english
        Encoding         iso8859-15
-       FontEncoding     ASCII
+       FontEncoding     ASCII
        DateFormats      "MMMM d, yyyy|d MMM yyyy|yyyy-MM-dd"
        LangCode         en_CA
 End
 
-# Unless polyglossia supports variant=canadian,
-# we can use french, as canadien \eq. french also in babel
 Language canadien
        GuiName          "French (Canada)"
        BabelName        acadian
        PolyglossiaName  french
-#      PolyglossiaOpts  "variant=canadian"
+       PolyglossiaOpts  "variant=canadian"
+       ActiveChars      ;!?:
+       XindyName        french
        QuoteStyle       french
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -554,6 +569,7 @@ Language croatian
        GuiName          "Croatian"
        BabelName        croatian
        PolyglossiaName  croatian
+       XindyName        croatian
        QuoteStyle       polish
        Encoding         iso8859-2
        FontEncoding     T1|OT1
@@ -566,6 +582,7 @@ Language czech
        HasGuiSupport    true
        BabelName        czech
        PolyglossiaName  czech
+       XindyName        czech
        QuoteStyle       german
        ActiveChars      -
        Encoding         iso8859-2
@@ -579,6 +596,7 @@ Language danish
        HasGuiSupport    true
        BabelName        danish
        PolyglossiaName  danish
+       XindyName        danish
        QuoteStyle       danish
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -601,6 +619,7 @@ Language dutch
        BabelName        dutch
        PolyglossiaName  dutch
        PolyglossiaOpts  "babelshorthands=true"
+       XindyName        dutch
        QuoteStyle       polish
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -614,6 +633,7 @@ Language english
        BabelName        english
        PolyglossiaName  english
        PolyglossiaOpts  "variant=american"
+       XindyName        english
        QuoteStyle       english
        DateFormats      "MMMM dd, yyyy|MMM dd, yyyy|M/d/yyyy"
        Encoding         iso8859-15
@@ -627,6 +647,7 @@ Language esperanto
        GuiName          "Esperanto"
        BabelName        esperanto
        PolyglossiaName  esperanto
+       XindyName        esperanto
        QuoteStyle       english
        Encoding         iso8859-3
        FontEncoding     IL3|T1|OT1
@@ -638,6 +659,7 @@ Language estonian
        GuiName          "Estonian"
        BabelName        estonian
        PolyglossiaName  estonian
+       XindyName        estonian
        QuoteStyle       german
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -654,6 +676,7 @@ Language farsi
        GuiName          "Farsi"
        BabelName        farsi
        PolyglossiaName  farsi
+       XindyName        persian
        Encoding         utf8
        FontEncoding     LAE,LFE
        DateFormats      "d MMMM yyyy|d MMM yyyy|yyyy/M/d"
@@ -671,6 +694,7 @@ Language finnish
        HasGuiSupport    true
        BabelName        finnish
        PolyglossiaName  finnish
+       XindyName        finnish
        QuoteStyle       swedish
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -682,7 +706,9 @@ Language french
        GuiName          "French"
        HasGuiSupport    true
        BabelName        french
+       ActiveChars      ;!?:
        PolyglossiaName  french
+       XindyName        french
        QuoteStyle       french
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -721,6 +747,8 @@ End
 Language georgian
        GuiName          "Georgian"
        BabelName        georgian
+       PolyglossiaName  georgian
+       XindyName        georgian
        QuoteStyle       german
        Encoding         utf8
        FontEncoding     T8M
@@ -733,6 +761,7 @@ Language german
        BabelName        german
        PolyglossiaName  german
        PolyglossiaOpts  "variant=german,spelling=old,babelshorthands=true"
+       XindyName        german-duden
        QuoteStyle       german
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -747,6 +776,7 @@ Language ngerman
        BabelName        ngerman
        PolyglossiaName  german
        PolyglossiaOpts  "variant=german,spelling=new,babelshorthands=true"
+       XindyName        german-duden
        QuoteStyle       german
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -763,6 +793,7 @@ Language german-ch
        BabelName        nswissgerman
        PolyglossiaName  german
        PolyglossiaOpts  "variant=swiss,spelling=new,babelshorthands=true"
+       XindyName        german-duden
        QuoteStyle       swiss
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -778,6 +809,7 @@ Language german-ch-old
        BabelName        swissgerman
        PolyglossiaName  german
        PolyglossiaOpts  "variant=swiss,spelling=old,babelshorthands=true"
+       XindyName        german-duden
        QuoteStyle       swiss
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -791,6 +823,7 @@ Language greek
        BabelName        greek
        PolyglossiaName  greek
        PolyglossiaOpts  "variant=monotonic"
+       XindyName        greek
        QuoteStyle       french
        Encoding         iso8859-7
        InternalEncoding true
@@ -805,6 +838,7 @@ Language polutonikogreek
        BabelName        polutonikogreek
        PolyglossiaName  greek
        PolyglossiaOpts  "variant=polytonic"
+       XindyName        greek
        QuoteStyle       french
        Encoding         iso8859-7
        InternalEncoding true
@@ -819,13 +853,14 @@ Language hebrew
        HasGuiSupport    true
        BabelName        hebrew
        PolyglossiaName  hebrew
+       XindyName        hebrew
        Encoding         cp1255
-       QuoteStyle       english
+       QuoteStyle       hebrew
        InternalEncoding true
        # babel-hebrew expects the encoding for *other* languages last:
        FontEncoding    HE8,T1|LHE,T1
        ## Use font encoding HE8 if the Culmus fonts are installed and
-       # work around too simple test for article-like classes in rlbabel.def.
+       # work around to simple test for article-like classes in rlbabel.def.
        PreBabelPreamble
          \IfFileExists{he8david.fd}{%
            \providecommand{\HeblatexEncoding}{HE8}
@@ -864,6 +899,7 @@ Language icelandic
        GuiName          "Icelandic"
        BabelName        icelandic
        PolyglossiaName  icelandic
+       XindyName        icelandic
        QuoteStyle       german
        Encoding         iso8859-15
        FontEncoding     T1
@@ -901,6 +937,7 @@ Language italian
        HasGuiSupport    true
        BabelName        italian
        PolyglossiaName  italian
+       XindyName        italian
        QuoteStyle       french
        Encoding         iso8859-15
        FontEncoding     ASCII
@@ -965,6 +1002,7 @@ End
 Language korean
        GuiName         "Korean"
        PolyglossiaName korean
+       XindyName       korean
        Encoding        euc-kr
        QuoteStyle      cjkangle
        DateFormats     "yyyy년 M월 d일|yyyy. M. d.|yy. M. d."
@@ -986,6 +1024,7 @@ Language kurmanji
        GuiName          "Kurdish (Kurmanji)"
        BabelName        kurmanji
        PolyglossiaName  kurdish
+       XindyName        kurdish-bedirxan
        PolyglossiaOpts  "variant=kurmanji"
        Encoding         utf8
        FontEncoding     T1|OT1
@@ -1009,6 +1048,7 @@ Language latin
        GuiName          "Latin"
        BabelName        latin
        PolyglossiaName  latin
+       XindyName        latin
        ActiveChars      ^=
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -1022,6 +1062,7 @@ Language latvian
        GuiName          "Latvian"
        BabelName        latvian
        PolyglossiaName  latvian
+       XindyName        latvian
        QuoteStyle       german
        Encoding         iso8859-4
        FontEncoding     L7x|T1|OT1
@@ -1029,23 +1070,35 @@ Language latvian
        LangCode         lv_LV
 End
 
-# lithuanian must be loaded locally with babel options,
-# not globally via class options
-# FontEncoding: L7x set by Babel
+# FontEncoding: L7x required for hyphenation but no longer set by Babel
+# (since 2017-12-06)
 Language lithuanian
        GuiName          "Lithuanian"
        BabelName        lithuanian
        PolyglossiaName  lithuanian
+       XindyName        lithuanian
        QuoteStyle       german
        Encoding         iso8859-13
        FontEncoding     L7x
        # L7x defines \copyright as TextSymbol which leads to an endless loop
-        # when it is used in other font encodings.
+       # when it is used in other font encodings.
        PostBabelPreamble
-         % restore \coyright definition corrupted by l7xenc.def
-          \DeclareRobustCommand{\copyright}{%
-            \ifmmode{\nfss@text{\textcopyright}}\else\textcopyright\fi}
-           \addto\noextraslithuanian{\latintext}
+         \@ifl@aded{def}{l7xenc}{
+           % restore corrupted \coyright definition
+           \DeclareRobustCommand{\copyright}{%
+             \ifmmode{\nfss@text{\textcopyright}}\else\textcopyright\fi
+           }
+           % Switch to L7x and back
+           \addto\extraslithuanian{
+             \let\bbl@lithuanian@cfencoding\cf@encoding
+             \fontencoding{L7x}\selectfont
+             \def\encodingdefault{L7x}
+           }
+           \addto\noextraslithuanian{
+             \def\encodingdefault{\bbl@lithuanian@cfencoding}
+             \fontencoding{\encodingdefault}\selectfont
+           }  
+         }{}
        EndPostBabelPreamble
        DateFormats      "yyyy 'm.' MMMM d 'd.'|yyyy 'm.' MMMM d 'd.'|yyyy-MM-dd"
        LangCode         lt_LT
@@ -1055,6 +1108,7 @@ Language lowersorbian
        GuiName          "Lower Sorbian"
        BabelName        lowersorbian
        PolyglossiaName  lsorbian
+       XindyName        lower-sorbian
        QuoteStyle       german
        Encoding         iso8859-2
        FontEncoding     T1|OT1
@@ -1067,7 +1121,8 @@ Language magyar
        HasGuiSupport    true
        BabelName        magyar
        PolyglossiaName  magyar
-       QuoteStyle       polish
+       XindyName        hungarian
+       QuoteStyle       hungarian
        Encoding         iso8859-2
        FontEncoding     T1|OT1
        DateFormats      "yyyy. MMMM d.|yyyy. MMM d.|yyyy.MM.dd."
@@ -1078,6 +1133,7 @@ Language macedonian
        GuiName          "Macedonian"
        BabelName        macedonian
        PolyglossiaName  macedonian
+       XindyName        macedonian
        QuoteStyle       german
        Encoding         cp1251
        FontEncoding     T2A
@@ -1111,6 +1167,7 @@ Language mongolian
        GuiName          "Mongolian"
        BabelName        mongolian
        PolyglossiaName  mongolian
+       XindyName        mongolian
        Encoding         utf8
        FontEncoding     T2A
        DateFormats      "yyyy оны M сарын d|d-M-yyyy|dd-MM-yyyy"
@@ -1123,6 +1180,7 @@ Language newzealand
        BabelName        newzealand
        PolyglossiaName  english
        PolyglossiaOpts  "variant=newzealand"
+       XindyName        english
        QuoteStyle       english
        Encoding         iso8859-15
        FontEncoding     ASCII
@@ -1135,6 +1193,7 @@ Language norsk
        HasGuiSupport    true
        BabelName        norsk
        PolyglossiaName  norsk
+       XindyName        norwegian
        QuoteStyle       swiss
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -1163,6 +1222,7 @@ Language nynorsk
        HasGuiSupport    true
        BabelName        nynorsk
        PolyglossiaName  nynorsk
+       XindyName        norwegian
        QuoteStyle       swiss
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -1187,6 +1247,7 @@ Language oldrussian
        GuiName          "Russian (Petrine orthography)"
        PolyglossiaName  russian
        PolyglossiaOpts  "spelling=old"
+       XindyName        russian
        QuoteStyle       russian
        LangCode         ru_petr1708
 End
@@ -1209,6 +1270,7 @@ Language polish
        HasGuiSupport    true
        BabelName        polish
        PolyglossiaName  polish
+       XindyName        polish
        QuoteStyle       polish
        Encoding         iso8859-2
        FontEncoding     QX|T1|OT1
@@ -1221,6 +1283,7 @@ Language portuguese
        HasGuiSupport    true
        BabelName        portuges
        PolyglossiaName  portuges
+       XindyName        portuguese
        QuoteStyle       french
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -1233,6 +1296,7 @@ Language romanian
        HasGuiSupport    true
        BabelName        romanian
        PolyglossiaName  romanian
+       XindyName        romanian
        QuoteStyle       polish
        Encoding         iso8859-16
        FontEncoding     T1|OT1
@@ -1258,6 +1322,7 @@ Language russian
        BabelName        russian
        PolyglossiaName  russian
        PolyglossiaOpts  "spelling=modern"
+       XindyName        russian
        QuoteStyle       russian
        Encoding         koi8-r
        FontEncoding     T2A
@@ -1310,6 +1375,7 @@ Language serbian
        BabelName        serbianc
        PolyglossiaName  serbian
        PolyglossiaOpts  "script=Cyrillic"
+       XindyName        serbian
        # Note: script option is uppercase, even if the polyglossia
        #       manual states otherwise.
        QuoteStyle       polish
@@ -1319,13 +1385,13 @@ Language serbian
        LangCode         sr_RS
 End
 
-# Note: script option is uppercase, even if the polyglossia
-#       manual states otherwise.
+# We use croatian for Latin Serbian index ordering
 Language serbian-latin
        GuiName          "Serbian (Latin)"
        BabelName        serbian
        PolyglossiaName  serbian
        PolyglossiaOpts  "script=Latin"
+       XindyName        croatian
        QuoteStyle       polish
        Encoding         iso8859-2
        FontEncoding     T1|OT1
@@ -1338,6 +1404,7 @@ Language slovak
        HasGuiSupport    true
        BabelName        slovak
        PolyglossiaName  slovak
+       XindyName        slovak-large
        QuoteStyle       german
        ActiveChars      -^
        Encoding         iso8859-2
@@ -1350,6 +1417,7 @@ Language slovene
        GuiName          "Slovene"
        BabelName        slovene
        PolyglossiaName  slovenian
+       XindyName        slovenian
        QuoteStyle       german
        Encoding         iso8859-2
        FontEncoding     T1|OT1
@@ -1362,6 +1430,7 @@ Language spanish
        HasGuiSupport    true
        BabelName        spanish
        PolyglossiaName  spanish
+       XindyName        spanish-modern
        QuoteStyle       french
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -1377,6 +1446,7 @@ Language spanish-mexico
        GuiName          "Spanish (Mexico)"
        BabelName        spanish
        PolyglossiaName  spanish
+       XindyName        spanish-modern
        QuoteStyle       french
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -1392,6 +1462,7 @@ Language swedish
        HasGuiSupport    true
        BabelName        swedish
        PolyglossiaName  swedish
+       XindyName        swedish
        QuoteStyle       swedish
        Encoding         iso8859-15
        FontEncoding     T1|OT1
@@ -1451,11 +1522,23 @@ Language thai
          \DeclareRobustCommand{\copyright}{%
            \ifmmode{\nfss@text{\textcopyright}}\else\textcopyright\fi}
          \DeclareTextSymbol{\textcopyright}{LTH}{8}
+         %
           % set up Thai fonts as substitue for the default families
-          \usepackage{substitutefont}
-          \substitutefont{LTH}{\rmdefault}{norasi}
-          \substitutefont{LTH}{\sfdefault}{garuda}
-          \substitutefont{LTH}{\ttdefault}{ttypist}
+         % The 'substitutefont' package is obsolete now, since commands
+         % from the LaTeX kernel can be used instead. See here:
+         %   https://ctan.org/pkg/substitutefont
+         %   https://www.latex-project.org/news/latex2e-news/ltnews31.pdf
+         \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
+         \IfFormatAtLeastTF{2020/02/01}{%
+           \DeclareFontFamilySubstitution{LTH}{\rmdefault}{norasi}
+           \DeclareFontFamilySubstitution{LTH}{\sfdefault}{garuda}
+           \DeclareFontFamilySubstitution{LTH}{\ttdefault}{ttypist}
+         }{%
+           \usepackage{substitutefont}
+           \substitutefont{LTH}{\rmdefault}{norasi}
+           \substitutefont{LTH}{\sfdefault}{garuda}
+           \substitutefont{LTH}{\ttdefault}{ttypist}
+         }
        EndPostBabelPreamble
 End
 
@@ -1473,6 +1556,7 @@ Language turkish
        HasGuiSupport    true
        BabelName        turkish
        PolyglossiaName  turkish
+       XindyName        turkish
        QuoteStyle       english
        ActiveChars      =
        Encoding         iso8859-9
@@ -1499,6 +1583,7 @@ Language ukrainian
        HasGuiSupport    true
        BabelName        ukrainian
        PolyglossiaName  ukrainian
+       XindyName        ukrainian
        QuoteStyle       russian
        Encoding         koi8-u
        FontEncoding     T2A
@@ -1511,6 +1596,7 @@ Language uppersorbian
        GuiName          "Upper Sorbian"
        BabelName        uppersorbian
        PolyglossiaName  usorbian
+       XindyName        upper-sorbian
        QuoteStyle       german
        Encoding         iso8859-2
        FontEncoding     T1|OT1
@@ -1532,6 +1618,7 @@ Language vietnamese
        GuiName          "Vietnamese"
        BabelName        vietnamese
        PolyglossiaName  vietnamese
+       XindyName        vietnamese
        QuoteStyle       english
        Encoding         utf8
        DateFormats      "dd 'tháng' MMMM yyyy|dd-MM-yyyy|dd/MM/yyyy"