summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2010-05-19 09:14:33 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2010-05-19 09:14:33 +0000
commit9bfb3b4dcc6fbab44b2ff86564832e34543a2be8 (patch)
treefe119943babfb365f2b6376438b1fe9537ef14a8 /Master
parente9a2a190f6ce2e9e0027affddb6022f977bbf766 (diff)
xindy-2.4 support files
git-svn-id: svn://tug.org/texlive/trunk@18351 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rwxr-xr-xMaster/bin/x86_64-linux/tex2xindybin20400 -> 20400 bytes
-rw-r--r--Master/bin/x86_64-linux/xindy.membin1034649 -> 1045150 bytes
-rwxr-xr-xMaster/bin/x86_64-linux/xindy.runbin2444616 -> 2438064 bytes
-rwxr-xr-xMaster/texmf/scripts/xindy/texindy.pl216
-rwxr-xr-xMaster/texmf/scripts/xindy/xindy.pl301
-rw-r--r--Master/texmf/xindy/VERSION1
-rw-r--r--Master/texmf/xindy/modules/base/book-order.xdy24
-rw-r--r--Master/texmf/xindy/modules/base/ff-ranges-only.xdy25
-rw-r--r--Master/texmf/xindy/modules/base/ff-ranges.xdy27
-rw-r--r--Master/texmf/xindy/modules/base/german-sty.xdy24
-rw-r--r--Master/texmf/xindy/modules/base/ignore-hyphen.xdy18
-rw-r--r--Master/texmf/xindy/modules/base/ignore-punctuation.xdy42
-rw-r--r--Master/texmf/xindy/modules/base/keep-blanks.xdy40
-rw-r--r--Master/texmf/xindy/modules/base/latex-loc-fmts.xdy25
-rw-r--r--Master/texmf/xindy/modules/base/latex.xdy83
-rw-r--r--Master/texmf/xindy/modules/base/latin-lettergroups.xdy26
-rw-r--r--Master/texmf/xindy/modules/base/letter-order.xdy18
-rw-r--r--Master/texmf/xindy/modules/base/makeindex.xdy46
-rw-r--r--Master/texmf/xindy/modules/base/numeric-sort.xdy25
-rw-r--r--Master/texmf/xindy/modules/base/page-ranges.xdy18
-rw-r--r--Master/texmf/xindy/modules/base/tex.xdy71
-rw-r--r--Master/texmf/xindy/modules/base/texindy.xdy20
-rw-r--r--Master/texmf/xindy/modules/base/word-order.xdy20
-rw-r--r--Master/texmf/xindy/modules/class/pagenums.xdy7
-rw-r--r--Master/texmf/xindy/modules/lang/albanian/latin1-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/albanian/latin1-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/albanian/latin1.xdy403
-rw-r--r--Master/texmf/xindy/modules/lang/albanian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/albanian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/albanian/utf8.xdy403
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/cp1251-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/cp1251-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/cp1251.xdy348
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/iso88595-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/iso88595-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/iso88595.xdy348
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/isoir111-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/isoir111-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/isoir111.xdy348
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/belarusian/utf8.xdy348
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/cp1251-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/cp1251-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/cp1251.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/iso88595-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/iso88595-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/iso88595.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/koi8-r-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/koi8-r-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/koi8-r.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/bulgarian/utf8.xdy313
-rw-r--r--Master/texmf/xindy/modules/lang/croatian/cp1250-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/croatian/cp1250-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/croatian/cp1250.xdy352
-rw-r--r--Master/texmf/xindy/modules/lang/croatian/latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/croatian/latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/croatian/latin2.xdy352
-rw-r--r--Master/texmf/xindy/modules/lang/croatian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/croatian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/croatian/utf8.xdy552
-rw-r--r--Master/texmf/xindy/modules/lang/czech/cp1250-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/czech/cp1250-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/czech/cp1250.xdy433
-rw-r--r--Master/texmf/xindy/modules/lang/czech/latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/czech/latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/czech/latin2.xdy433
-rw-r--r--Master/texmf/xindy/modules/lang/czech/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/czech/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/czech/utf8.xdy433
-rw-r--r--Master/texmf/xindy/modules/lang/danish/cp1252-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/danish/cp1252-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/danish/cp1252.xdy451
-rw-r--r--Master/texmf/xindy/modules/lang/danish/latin9-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/danish/latin9-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/danish/latin9.xdy451
-rw-r--r--Master/texmf/xindy/modules/lang/danish/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/danish/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/danish/utf8.xdy475
-rw-r--r--Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1.xdy320
-rw-r--r--Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8.xdy328
-rw-r--r--Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8.xdy332
-rw-r--r--Master/texmf/xindy/modules/lang/english/cp1252-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/english/cp1252-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/english/cp1252.xdy385
-rw-r--r--Master/texmf/xindy/modules/lang/english/latin9-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/english/latin9-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/english/latin9.xdy385
-rw-r--r--Master/texmf/xindy/modules/lang/english/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/english/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/english/utf8.xdy403
-rw-r--r--Master/texmf/xindy/modules/lang/esperanto/latin3-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/esperanto/latin3-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/esperanto/latin3.xdy326
-rw-r--r--Master/texmf/xindy/modules/lang/esperanto/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/esperanto/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/esperanto/utf8.xdy326
-rw-r--r--Master/texmf/xindy/modules/lang/estonian/cp1252-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/estonian/cp1252-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/estonian/cp1252.xdy321
-rw-r--r--Master/texmf/xindy/modules/lang/estonian/latin9-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/estonian/latin9-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/estonian/latin9.xdy321
-rw-r--r--Master/texmf/xindy/modules/lang/estonian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/estonian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/estonian/utf8.xdy321
-rw-r--r--Master/texmf/xindy/modules/lang/finnish/cp1252-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/finnish/cp1252-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/finnish/cp1252.xdy358
-rw-r--r--Master/texmf/xindy/modules/lang/finnish/latin9-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/finnish/latin9-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/finnish/latin9.xdy358
-rw-r--r--Master/texmf/xindy/modules/lang/finnish/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/finnish/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/finnish/utf8.xdy358
-rw-r--r--Master/texmf/xindy/modules/lang/french/cp1252-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/french/cp1252-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/french/cp1252.xdy420
-rw-r--r--Master/texmf/xindy/modules/lang/french/latin9-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/french/latin9-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/french/latin9.xdy420
-rw-r--r--Master/texmf/xindy/modules/lang/french/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/french/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/french/utf8.xdy420
-rw-r--r--Master/texmf/xindy/modules/lang/general/cp1252-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/general/cp1252-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/general/cp1252.xdy528
-rw-r--r--Master/texmf/xindy/modules/lang/general/cp850-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/general/cp850-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/general/cp850.xdy500
-rw-r--r--Master/texmf/xindy/modules/lang/general/latin9-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/general/latin9-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/general/latin9.xdy528
-rw-r--r--Master/texmf/xindy/modules/lang/general/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/general/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/general/utf8.xdy784
-rw-r--r--Master/texmf/xindy/modules/lang/georgian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/georgian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/georgian/utf8.xdy230
-rw-r--r--Master/texmf/xindy/modules/lang/german/braille-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/german/braille-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/german/braille-utf8.xdy238
-rw-r--r--Master/texmf/xindy/modules/lang/german/din5007-latin1-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/german/din5007-latin1-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/german/din5007-latin1.xdy308
-rw-r--r--Master/texmf/xindy/modules/lang/german/din5007-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/german/din5007-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/german/din5007-utf8.xdy308
-rw-r--r--Master/texmf/xindy/modules/lang/german/din5007.xdy20
-rw-r--r--Master/texmf/xindy/modules/lang/german/duden-latin1-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/german/duden-latin1-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/german/duden-latin1.xdy308
-rw-r--r--Master/texmf/xindy/modules/lang/german/duden-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/german/duden-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/german/duden-utf8.xdy308
-rw-r--r--Master/texmf/xindy/modules/lang/german/duden.xdy37
-rw-r--r--Master/texmf/xindy/modules/lang/german/tex.xdy21
-rw-r--r--Master/texmf/xindy/modules/lang/greek/iso88597-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/greek/iso88597-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/greek/iso88597.xdy340
-rw-r--r--Master/texmf/xindy/modules/lang/greek/polytonic-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/greek/polytonic-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/greek/polytonic-utf8.xdy646
-rw-r--r--Master/texmf/xindy/modules/lang/greek/translit-latin4-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/greek/translit-latin4-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/greek/translit-latin4.xdy230
-rw-r--r--Master/texmf/xindy/modules/lang/greek/translit-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/greek/translit-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/greek/translit-utf8.xdy230
-rw-r--r--Master/texmf/xindy/modules/lang/greek/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/greek/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/greek/utf8.xdy340
-rw-r--r--Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8.xdy424
-rw-r--r--Master/texmf/xindy/modules/lang/hausa/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/hausa/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/hausa/utf8.xdy514
-rw-r--r--Master/texmf/xindy/modules/lang/hebrew/iso88598-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/hebrew/iso88598-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/hebrew/iso88598.xdy166
-rw-r--r--Master/texmf/xindy/modules/lang/hebrew/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/hebrew/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/hebrew/utf8.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/hungarian/cp1250-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/hungarian/cp1250-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/hungarian/cp1250.xdy458
-rw-r--r--Master/texmf/xindy/modules/lang/hungarian/latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/hungarian/latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/hungarian/latin2.xdy458
-rw-r--r--Master/texmf/xindy/modules/lang/hungarian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/hungarian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/hungarian/utf8.xdy466
-rw-r--r--Master/texmf/xindy/modules/lang/icelandic/cp1252-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/icelandic/cp1252-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/icelandic/cp1252.xdy405
-rw-r--r--Master/texmf/xindy/modules/lang/icelandic/latin9-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/icelandic/latin9-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/icelandic/latin9.xdy405
-rw-r--r--Master/texmf/xindy/modules/lang/icelandic/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/icelandic/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/icelandic/utf8.xdy453
-rw-r--r--Master/texmf/xindy/modules/lang/italian/latin1-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/italian/latin1-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/italian/latin1.xdy352
-rw-r--r--Master/texmf/xindy/modules/lang/italian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/italian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/italian/utf8.xdy352
-rw-r--r--Master/texmf/xindy/modules/lang/klingon/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/klingon/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/klingon/utf8.xdy166
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/latin/caseisrt.xdy34
-rw-r--r--Master/texmf/xindy/modules/lang/latin/letgroup.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/latin/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/latin/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/latin/utf8.xdy352
-rw-r--r--Master/texmf/xindy/modules/lang/latvian/latin4-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/latvian/latin4-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/latvian/latin4.xdy383
-rw-r--r--Master/texmf/xindy/modules/lang/latvian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/latvian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/latvian/utf8.xdy383
-rw-r--r--Master/texmf/xindy/modules/lang/lithuanian/latin4-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/lithuanian/latin4-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/lithuanian/latin4.xdy354
-rw-r--r--Master/texmf/xindy/modules/lang/lithuanian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/lithuanian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/lithuanian/utf8.xdy354
-rw-r--r--Master/texmf/xindy/modules/lang/lower-sorbian/cp1250-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/lower-sorbian/cp1250-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/lower-sorbian/cp1250.xdy375
-rw-r--r--Master/texmf/xindy/modules/lang/lower-sorbian/latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/lower-sorbian/latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/lower-sorbian/latin2.xdy375
-rw-r--r--Master/texmf/xindy/modules/lang/lower-sorbian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/lower-sorbian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/lower-sorbian/utf8.xdy375
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/cp1251-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/cp1251-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/cp1251.xdy313
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/iso88595-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/iso88595-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/iso88595.xdy313
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/isoir111-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/isoir111-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/isoir111.xdy313
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/macedonian/utf8.xdy329
-rw-r--r--Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8.xdy455
-rw-r--r--Master/texmf/xindy/modules/lang/norwegian/latin1-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/norwegian/latin1-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/norwegian/latin1.xdy411
-rw-r--r--Master/texmf/xindy/modules/lang/norwegian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/norwegian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/norwegian/utf8.xdy411
-rw-r--r--Master/texmf/xindy/modules/lang/polish/cp1250-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/polish/cp1250-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/polish/cp1250.xdy353
-rw-r--r--Master/texmf/xindy/modules/lang/polish/latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/polish/latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/polish/latin2.xdy353
-rw-r--r--Master/texmf/xindy/modules/lang/polish/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/polish/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/polish/utf8.xdy353
-rw-r--r--Master/texmf/xindy/modules/lang/portuguese/latin1-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/portuguese/latin1-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/portuguese/latin1.xdy416
-rw-r--r--Master/texmf/xindy/modules/lang/portuguese/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/portuguese/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/portuguese/utf8.xdy416
-rw-r--r--Master/texmf/xindy/modules/lang/romanian/latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/romanian/latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/romanian/latin2.xdy313
-rw-r--r--Master/texmf/xindy/modules/lang/romanian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/romanian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/romanian/utf8.xdy313
-rw-r--r--Master/texmf/xindy/modules/lang/russian/cp1251-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/russian/cp1251-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/russian/cp1251.xdy330
-rw-r--r--Master/texmf/xindy/modules/lang/russian/iso88595-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/russian/iso88595-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/russian/iso88595.xdy330
-rw-r--r--Master/texmf/xindy/modules/lang/russian/koi8-r-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/russian/koi8-r-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/russian/koi8-r.xdy330
-rw-r--r--Master/texmf/xindy/modules/lang/russian/translit-iso-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/russian/translit-iso-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/russian/translit-iso-utf8.xdy307
-rw-r--r--Master/texmf/xindy/modules/lang/russian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/russian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/russian/utf8.xdy464
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/cp1251-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/cp1251-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/cp1251.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/iso88595-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/iso88595-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/iso88595.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/isoir111-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/isoir111-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/isoir111.xdy304
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/serbian/utf8.xdy404
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/large-cp1250-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/large-cp1250-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/large-cp1250.xdy437
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/large-latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/large-latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/large-latin2.xdy437
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/large-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/large-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/large-utf8.xdy437
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/small-cp1250-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/small-cp1250-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/small-cp1250.xdy429
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/small-latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/small-latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/small-latin2.xdy429
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/small-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/small-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/slovak/small-utf8.xdy429
-rw-r--r--Master/texmf/xindy/modules/lang/slovenian/cp1250-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/slovenian/cp1250-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/slovenian/cp1250.xdy311
-rw-r--r--Master/texmf/xindy/modules/lang/slovenian/latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/slovenian/latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/slovenian/latin2.xdy311
-rw-r--r--Master/texmf/xindy/modules/lang/slovenian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/slovenian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/slovenian/utf8.xdy375
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/modern-latin1-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/modern-latin1-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/modern-latin1.xdy333
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/modern-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/modern-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/modern-utf8.xdy333
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/traditional-latin1-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/traditional-latin1-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/traditional-latin1.xdy359
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/traditional-utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/traditional-utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/spanish/traditional-utf8.xdy359
-rw-r--r--Master/texmf/xindy/modules/lang/swedish/cp1252-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/swedish/cp1252-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/swedish/cp1252.xdy498
-rw-r--r--Master/texmf/xindy/modules/lang/swedish/latin9-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/swedish/latin9-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/swedish/latin9.xdy498
-rw-r--r--Master/texmf/xindy/modules/lang/swedish/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/swedish/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/swedish/utf8.xdy546
-rw-r--r--Master/texmf/xindy/modules/lang/turkish/latin3-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/turkish/latin3-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/turkish/latin3.xdy338
-rw-r--r--Master/texmf/xindy/modules/lang/turkish/latin5-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/turkish/latin5-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/turkish/latin5.xdy338
-rw-r--r--Master/texmf/xindy/modules/lang/turkish/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/turkish/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/turkish/utf8.xdy338
-rw-r--r--Master/texmf/xindy/modules/lang/ukrainian/cp1251-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/ukrainian/cp1251-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/ukrainian/cp1251.xdy366
-rw-r--r--Master/texmf/xindy/modules/lang/ukrainian/koi8-u-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/ukrainian/koi8-u-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/ukrainian/koi8-u.xdy366
-rw-r--r--Master/texmf/xindy/modules/lang/ukrainian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/ukrainian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/ukrainian/utf8.xdy366
-rw-r--r--Master/texmf/xindy/modules/lang/upper-sorbian/cp1250-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/upper-sorbian/cp1250-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/upper-sorbian/cp1250.xdy379
-rw-r--r--Master/texmf/xindy/modules/lang/upper-sorbian/latin2-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/upper-sorbian/latin2-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/upper-sorbian/latin2.xdy379
-rw-r--r--Master/texmf/xindy/modules/lang/upper-sorbian/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/upper-sorbian/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/upper-sorbian/utf8.xdy379
-rw-r--r--Master/texmf/xindy/modules/lang/vietnamese/utf8-lang.xdy10
-rw-r--r--Master/texmf/xindy/modules/lang/vietnamese/utf8-test.xdy92
-rw-r--r--Master/texmf/xindy/modules/lang/vietnamese/utf8.xdy811
-rw-r--r--Master/texmf/xindy/modules/ord/letorder.xdy8
-rw-r--r--Master/texmf/xindy/modules/rules/isolatin1-exchange.xdy88
-rw-r--r--Master/texmf/xindy/modules/rules/isolatin1-tolower.xdy52
-rw-r--r--Master/texmf/xindy/modules/rules/latin-exchange.xdy64
-rw-r--r--Master/texmf/xindy/modules/rules/latin-tolower.xdy37
-rw-r--r--Master/texmf/xindy/modules/styles/basic.xdy36
-rw-r--r--Master/texmf/xindy/modules/styles/example.xdy101
-rw-r--r--Master/texmf/xindy/modules/styles/makeidx.xdy148
-rw-r--r--Master/texmf/xindy/modules/styles/makeindex.xdy89
-rw-r--r--Master/texmf/xindy/modules/styles/vermeer.xdy89
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/cp1250.xdy128
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/cp1251.xdy132
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/cp1252.xdy128
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/cp437.xdy82
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/cp850.xdy104
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/cp855.xdy105
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/cp866.xdy85
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/iso88595.xdy101
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/isoir111.xdy101
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/koi8-r.xdy83
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/koi8-u.xdy79
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/latin.xdy178
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/latin1.xdy101
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/latin2.xdy101
-rw-r--r--Master/texmf/xindy/modules/tex/inputenc/latin3.xdy94
429 files changed, 63157 insertions, 199 deletions
diff --git a/Master/bin/x86_64-linux/tex2xindy b/Master/bin/x86_64-linux/tex2xindy
index b0ff869534a..e6f4bdc8d60 100755
--- a/Master/bin/x86_64-linux/tex2xindy
+++ b/Master/bin/x86_64-linux/tex2xindy
Binary files differ
diff --git a/Master/bin/x86_64-linux/xindy.mem b/Master/bin/x86_64-linux/xindy.mem
index 8cdfe34b3dc..f3aa7e02d13 100644
--- a/Master/bin/x86_64-linux/xindy.mem
+++ b/Master/bin/x86_64-linux/xindy.mem
Binary files differ
diff --git a/Master/bin/x86_64-linux/xindy.run b/Master/bin/x86_64-linux/xindy.run
index 516d993766c..bcef5220129 100755
--- a/Master/bin/x86_64-linux/xindy.run
+++ b/Master/bin/x86_64-linux/xindy.run
Binary files differ
diff --git a/Master/texmf/scripts/xindy/texindy.pl b/Master/texmf/scripts/xindy/texindy.pl
index cb0664c7016..28a7e0a4dd7 100755
--- a/Master/texmf/scripts/xindy/texindy.pl
+++ b/Master/texmf/scripts/xindy/texindy.pl
@@ -1,5 +1,5 @@
#!/usr/bin/env perl
-# $Id: texindy,v 1.8 2009/03/22 11:08:18 jschrod Exp $
+# $Id: texindy,v 1.11 2010/05/10 23:39:24 jschrod Exp $
#------------------------------------------------------------
# (history at end)
@@ -255,6 +255,51 @@ specific effect.
and ngerman options.
+=head1 COMPATIBILITY TO MAKEINDEX
+
+B<xindy> does not claim to be completely compatible with MakeIndex,
+that would prevent some of its enhancements. That said, we strive to
+deliver as much compatibility as possible. The most important
+incompatibilities are
+
+=over
+
+=item *
+
+For raw index entries in LaTeX syntax, C<\index{aaa|bbb}> is
+interpreted differently. For MakeIndex C<bbb> is markup that is output
+as a LaTeX tag for this page number. For B<xindy>, this is a location
+attribute, an abstract identifier that will be later associated with
+markup that should be output for that attribute.
+
+For straight-forward usage, when C<bbb> is C<textbf> or similar, we
+supply location attribute definitions that mimic MakeIndex's
+behaviour.
+
+For more complex usage, when C<bbb> is not an identifier, no such
+compatibility definitions exist and may also not been created with
+current B<xindy>. In particular, this means that by default the LaTeX
+package C<hyperref> will create raw index files that cannot be
+processed with B<xindy>. This is not a bug, this is the unfortunate
+result of an intented incompatibility. It is currently not possible to
+get both hyperref's index links and use B<xindy>.
+
+A similar situation is reported to exist for the C<memoir> LaTeX
+class.
+
+Programmers who know Common Lisp and Lex and want to work on a remedy
+should please contact the author.
+
+=item *
+
+The MakeIndex compatibility definitions support only the default raw
+index syntax and markup definition. It is not possible to configure
+raw index parsing or use a MakeIndex style file to describe output
+markup.
+
+=back
+
+
=head1 ENVIRONMENT
@@ -291,36 +336,81 @@ GNU General Public License for more details.
=cut
-use 5.006;
+
use strict;
+use English qw(-no_match_vars);
-BEGIN {
- use vars qw($Revision $VERSION);
- q$Revision: 1.8 $ =~ /: (\d+)\.(\d+)/ ; # q wg. Emacs indent!
- my ($major, $minor) = ($1, $2);
- $VERSION = "$major." . ($minor<10 ? '0' : '') . $minor;
-}
+our $VERSION = sprintf "%d.%02d", q$Revision: 1.11 $ =~ /: (\d+)\.(\d+)/ ;
-# Some common variables.
-# Determine environment. Where is our library directory, and our modules?
+# Used modules.
+use Cwd;
use File::Basename;
-our ($cmd_dir, $cmd);
-BEGIN {
- $cmd_dir = dirname($0);
- $cmd = basename($0);
-}
+use Getopt::Long qw(:config bundling);
-# Used modules.
+# Determine environment. Where is our library directory, and our modules?
-use Getopt::Long qw(:config bundling);
+our $is_TL = ( 'yes' eq 'yes' );
+our $is_w32 = ( $OSNAME =~ /^MSWin/i ) ;
+our $real_cmd = Cwd::realpath($0);
+our $cmd_dir = dirname($real_cmd);
+our $cmd = basename($0);
+our $xindy;
+
+# In TeX-Live, user commands are symlinks in some bin directory, and
+# the actual scripts are in the library directory and have a .pl
+# extension. In standalone installations, user command xindy is
+# expected to be in the same directory as our command.
+
+if ( $is_TL ) { # TeX Live
+
+ if ( $is_w32 ) {
+ $xindy = "$cmd_dir/xindy.pl";
+ } else {
+ die "$cmd: not a symlink as required for TeX Live" unless -l $0;
+ # FIXME: What this good for? Ain't xindy not also
+ # "$cmd_dir/xindy.pl" in a Unix TL installation? Why does
+ # Peter use the directory of the last symlink, where it just
+ # finds the symlink again that is then expanded by xindy.pl?
+ $real_cmd = $0;
+ $cmd_dir = dirname($real_cmd);
+ # Follow symlinks, but remember last one
+ my $lcmd_dir;
+ while ( -l $real_cmd ) {
+ $lcmd_dir = $cmd_dir;
+ $real_cmd = readlink($real_cmd);
+ $real_cmd = "$lcmd_dir/$real_cmd" unless $real_cmd =~ m,^[\\/],; # relative link
+ $cmd_dir = dirname($real_cmd);
+ }
+ $xindy = "$lcmd_dir/xindy";
+ }
+ # FIXME: That's a very ugly kludge to achieve that the VERSION
+ # file is found in output_xindy_release(). The real solution is to
+ # copy the code from xindy.pl that determines $modules_dir and
+ # $lib_dir and use that code as well.
+ $cmd_dir = Cwd::realpath("$cmd_dir/../../xindy/modules");
+ die "Cannot locate xindy modules directory" unless -f "$cmd_dir/../VERSION";
+} else {
+ if ( -f "$cmd_dir/xindy" && -x _ ) {
+ $xindy = "$cmd_dir/xindy";
+ } elsif ( -f "$cmd_dir/xindy.pl" && -x _ ) {
+ $xindy = "$cmd_dir/xindy.pl";
+ } else {
+ die "$cmd: cannot locate xindy\n";
+ }
+}
+die "$cmd: cannot locate xindy\n" unless -f $xindy && ($is_w32 || -x $xindy);
# Check arguments, store them in proper variables.
-my $usage_msg = <<_EOT_
+sub usage ( ;$ )
+{
+ my $exit_code = shift;
+ $exit_code += 0; # turn undef into 0
+ print STDERR <<_EOT_
usage: $cmd [-V?h] [-qv] [-iglr] [-d magic] [-o outfile.ind] [-t log] \\
[-L lang] [-C codepage] [-M module] [-I input] [idx0 idx1 ...]
@@ -345,44 +435,19 @@ GNU-STYLE LONG OPTIONS FOR SHORT OPTIONS:
-I / --input-markup (supported: latex, omega)
_EOT_
-;
-
-sub usage ()
-{
- print STDERR $usage_msg;
- exit 1;
+ ;
+ exit ($exit_code);
}
-sub parse_options();
-sub output_version();
-
our ($output_version, $quiet, $verbose, $stdin, @debug,
$outfile, $logfile, $language, $codepage, @modules, $input_markup);
$language = 'general';
$codepage = 'latin';
$input_markup = 'latex';
-our $xindy;
-if ( -f "$cmd_dir/xindy" && -x _ ) {
- $xindy = "$cmd_dir/xindy";
-} elsif ( -f "$cmd_dir/xindy.pl" && -x _ ) {
- $xindy = "$cmd_dir/xindy.pl";
-} elsif ( exists $ENV{"TL_ROOT"} && -f "$ENV{TL_ROOT}\\bin\\win32\\xindy.exe") {
- $xindy = "$ENV{TL_ROOT}\\bin\\win32\\xindy.exe";
- $cmd_dir = "$ENV{TL_ROOT}\\bin\\win32";
-} elsif ( -f "$ENV{SELFAUTOLOC}/xindy.bat" ) { # woe32
- $xindy = "$ENV{SELFAUTOLOC}/xindy.bat";
- $cmd_dir = $ENV{"SELFAUTOLOC"};
-} elsif ( -f "$ENV{SELFAUTOLOC}/xindy.exe" ) {
- $xindy = "$ENV{SELFAUTOLOC}/xindy.exe";
- $cmd_dir = $ENV{"SELFAUTOLOC"};
-} else {
- die "$cmd: cannot locate xindy\n";
-}
-
parse_options();
output_version() if $output_version; # will not return
-usage() if ( ! $stdin && @ARGV == 0 ); # brain damaged, but like makeindex
+usage(1) if ( ! $stdin && @ARGV == 0 ); # brain damaged, but like makeindex
# Construct xindy options, and eventually switch to it.
@@ -401,25 +466,37 @@ push (@opt, map { ('-M', $_) } ($ENV{TEXINDY_AUTO_MODULE} || 'texindy',
push (@opt, '-I', $input_markup);
print "Calling xindy as: $xindy @opt @ARGV\n" if (grep /^script$/, @debug);
+exec_xindy(@opt, @ARGV);
-if ($xindy =~ m,\.(bat|exe)$,) {
- system($xindy, @opt, @ARGV);
- exit $? if $? != -1;
-} else {
- exec $xindy, @opt, @ARGV;
-}
-die "$cmd: could not execute $xindy: $!\n";
+# NOT REACHED
# ------------------------------------------------------------
+sub exec_xindy {
+ if ( $is_w32 ) {
+ system ($EXECUTABLE_NAME, $xindy, @_);
+ if ($? == -1) {
+ die "$cmd: could not execute xindy: $ERRNO\n";
+ } elsif ($? & 127) {
+ die "xindy died with signal " . ($? & 127) ."\n";
+ } else {
+ exit ($? >> 8);
+ }
+ } else {
+ exec ($xindy, @_);
+ die "$cmd: could not execute xindy: $!\n";
+ }
+}
+
+
sub parse_options() {
my ($german, $letter_ordering, $no_ranges);
GetOptions(
'version|V' => \$output_version,
- 'help|h|?' => sub { print $usage_msg; exit 0; },
+ 'help|h|?' => \&usage,
'quiet|q' => \$quiet,
'verbose|v' => \$verbose,
'stdin|i' => \$stdin,
@@ -434,7 +511,7 @@ sub parse_options() {
'module|M=s' => \@modules,
'input-markup|I=s' => \$input_markup,
)
- or usage();
+ or usage(1);
if ( $german ) {
unshift (@modules, 'german-sty');
@@ -454,8 +531,8 @@ sub parse_options() {
# to undef to prevent loading of the inputenc module. Setting it
# to utf8 for the sort encoding is done by the xindy script.
if ( $input_markup ne 'latex' && $input_markup ne 'omega' ) {
- print STDERR "Unsupported input markup $input_markup.\n\n";
- usage();
+ print STDERR "Unsupported input markup $input_markup.\n";
+ usage(1);
}
if ( $input_markup eq 'omega' ) {
$codepage = undef;
@@ -467,9 +544,9 @@ sub parse_options() {
sub output_version () {
output_xindy_release();
print "$cmd script version: $VERSION\n";
- my @xindy_cmd = ($xindy, '--internal-version');
+ my @xindy_cmd = ('--internal-version');
push (@xindy_cmd, qw(-d script --foobar)) if grep(/^script$/, @debug);
- exec @xindy_cmd;
+ exec_xindy(@xindy_cmd);
}
@@ -479,25 +556,17 @@ sub output_xindy_release () {
if ( -f "$cmd_dir/../VERSION" ) {
$version_file = "$cmd_dir/../VERSION";
} else {
- my $xindy_run;
- if ($^O eq "MSWin32" || $^O eq "cygwin") {
- $xindy_run = "xindy-lisp.exe";
- } else {
- $xindy_run = "xindy.run";
- }
# Where is the library directory?
my $lib_dir;
if ( $ENV{XINDY_LIBDIR} ) {
$lib_dir = $ENV{XINDY_LIBDIR};
- } elsif ( -f "$cmd_dir/$xindy_run" ) { # texlive style
- $lib_dir = $cmd_dir;
} elsif ( '@libdir@' ne '@libdir' . '@' ) { # GNU configure at work?
if ( -d '@libdir@/xindy' ) { # /usr style
$lib_dir = '@libdir@/xindy';
} else {
$lib_dir = '@libdir@'; # /opt style
}
- } elsif ( -f "$cmd_dir/../lib/$xindy_run" ) { # /opt style
+ } elsif ( -f "$cmd_dir/../lib/xindy.run" ) { # /opt style
$lib_dir = "$cmd_dir/../lib";
} elsif ( -d "$cmd_dir/../lib/xindy" ) { # /usr style
$lib_dir = "$cmd_dir/../lib/xindy";
@@ -529,6 +598,17 @@ sub output_xindy_release () {
#======================================================================
#
# $Log: texindy,v $
+# Revision 1.11 2010/05/10 23:39:24 jschrod
+# Incorporate TeX-Live patches from Vladimir Volovich and Peter
+# Breitenlohner: Support for TL installation scheme, support for Mac OS
+# X, support for Windows in TL.
+#
+# Revision 1.10 2010/04/20 00:15:23 jschrod
+# Emphasize incompatibility with hyperref in man page.
+#
+# Revision 1.9 2009/12/03 00:28:22 jschrod
+# Search perl via env.
+#
# Revision 1.8 2009/03/22 11:08:18 jschrod
# man page: --v is --verbose, not --version.
#
diff --git a/Master/texmf/scripts/xindy/xindy.pl b/Master/texmf/scripts/xindy/xindy.pl
index 87fa6eea893..1913b316a33 100755
--- a/Master/texmf/scripts/xindy/xindy.pl
+++ b/Master/texmf/scripts/xindy/xindy.pl
@@ -1,5 +1,5 @@
#!/usr/bin/env perl
-# $Id: xindy.pl,v 1.13 2009/03/29 11:14:04 jschrod Exp $
+# $Id: xindy.pl,v 1.16 2010/05/10 23:39:24 jschrod Exp $
#------------------------------------------------------------
# (history at end)
@@ -222,14 +222,59 @@ F<usr>-installations.
=item C<XINDY_LIBDIR>
-Library directory where F<xindy.run> and F<xindy.mem> are located.
+Library directory where F<xindy.mem> is located.
The modules directory may be a subdirectory, too.
=back
-=head1 KNOWN BUGS
+=head1 COMPATIBILITY TO MAKEINDEX
+
+B<xindy> does not claim to be completely compatible with MakeIndex,
+that would prevent some of its enhancements. That said, we strive to
+deliver as much compatibility as possible. The most important
+incompatibilities are
+
+=over
+
+=item *
+
+For raw index entries in LaTeX syntax, C<\index{aaa|bbb}> is
+interpreted differently. For MakeIndex C<bbb> is markup that is output
+as a LaTeX tag for this page number. For B<xindy>, this is a location
+attribute, an abstract identifier that will be later associated with
+markup that should be output for that attribute.
+
+For straight-forward usage, when C<bbb> is C<textbf> or similar, we
+supply location attribute definitions that mimic MakeIndex's
+behaviour.
+
+For more complex usage, when C<bbb> is not an identifier, no such
+compatibility definitions exist and may also not been created with
+current B<xindy>. In particular, this means that by default the LaTeX
+package C<hyperref> will create raw index files that cannot be
+processed with B<xindy>. This is not a bug, this is the unfortunate
+result of an intented incompatibility. It is currently not possible to
+get both hyperref's index links and use B<xindy>.
+
+A similar situation is reported to exist for the C<memoir> LaTeX
+class.
+
+Programmers who know Common Lisp and Lex and want to work on a remedy
+should please contact the author.
+
+=item *
+
+The MakeIndex compatibility definitions support only the default raw
+index syntax and markup definition. It is not possible to configure
+raw index parsing or use a MakeIndex style file to describe output
+markup.
+
+=back
+
+
+=head1 KNOWN ISSUES
Option B<-q> also prevents output of error messages. Error messages
should be output on stderr, progress messages on stdout.
@@ -237,6 +282,8 @@ should be output on stderr, progress messages on stdout.
There should be a way to output the final index to stdout. This would
imply B<-q>, of course.
+LaTeX raw index parsing should be configurable.
+
Codepage C<utf8> should be supported for all languages, and should be
used as internal codepage for LaTeX inputenc re-encoding.
@@ -254,7 +301,7 @@ Joachim Schrod
=head1 LEGALESE
-Copyright (c) 2004-2006 by Joachim Schrod.
+Copyright (c) 2004-2010 by Joachim Schrod.
B<xindy> is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
@@ -267,61 +314,95 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
=for Emacs
-#'
+# '
=cut
-use 5.006;
+
use strict;
+use English qw(-no_match_vars);
-BEGIN {
- use vars qw($Revision $VERSION);
- q$Revision: 1.13 $ =~ /: (\d+)\.(\d+)/ ; # q wg. Emacs indent!
- my ($major, $minor) = ($1, $2);
- $VERSION = "$major." . ($minor<10 ? '0' : '') . $minor;
-}
+our $VERSION = sprintf "%d.%02d", q$Revision: 1.16 $ =~ /: (\d+)\.(\d+)/ ;
-# Some common variables.
-# Determine environment. Where is our library directory, and our modules?
+# Used modules.
-use File::Basename;
use Cwd;
-our ($cmd_dir, $cmd, $xindy_run, $lib_dir, $modules_dir, $path_sep);
-BEGIN {
- $cmd_dir = dirname($0);
- $cmd = basename($0);
-
- if ($^O eq "MSWin32" || $^O eq "cygwin") {
- $xindy_run = "xindy-lisp.exe";
- $path_sep = ";";
+use File::Basename;
+use File::Spec;
+use File::Temp qw(tempfile tmpnam);
+use Getopt::Long qw(:config bundling);
+use POSIX qw(uname);
+
+
+# Determine environment. Where is our library directory, and our modules?
+
+our $is_TL = ( 'yes' eq 'yes' );
+our $is_w32 = ( $OSNAME =~ /^MSWin/i ) ;
+our $is_windows = ( $is_w32 || $OSNAME eq 'cygwin' ) ;
+our $clisp = ( $is_windows ? 'clisp.exe' : 'clisp' ) ;
+our $real_cmd = Cwd::realpath($0);
+our $cmd_dir = dirname($real_cmd);
+our $cmd = basename($0);
+
+our ($lib_dir, $modules_dir);
+
+# We have different installation structures for TeX-Live and a
+# standalone installation. In TeX-Live, the user command is a symlink
+# in some bin directory, and the actual script is in the library
+# directory where both memory image and modules live as well.
+# Standalone installations come in /usr or /opt variants, memory
+# images are located in a lib directory, modules are located in a
+# share directory.
+#
+# FIXME: In standalone installations, modules are still placed in lib
+# directory. This is not conformant to FHS.
+
+if ( $is_TL ) { # TeX Live
+
+ $modules_dir = Cwd::realpath("$cmd_dir/../../xindy/modules");
+ die "$cmd: Cannot locate xindy modules directory" unless -d $modules_dir;
+
+ if ( $is_w32 ) {
+ $cmd_dir = "$cmd_dir/../../../bin/win32";
} else {
- $xindy_run = "xindy.run";
- $path_sep = ":";
+ die "$cmd: not a symlink as required for TeX Live" unless -l $0;
+ # Follow symlinks and determine $cmd_dir such that
+ # $cmd_dir/xindy -> $r0 = XINDY_SCRIPTDIR/xindy.pl
+ #
+ # FIXME: What's this code good for? Cwd::realpath() already
+ # resolves all symbolic links; this just recomputes that
+ # information manually! It's from Peter, check with him.
+ $real_cmd = $0;
+ while (-l $real_cmd) {
+ $cmd_dir = dirname($real_cmd);
+ $real_cmd = readlink($real_cmd);
+ $real_cmd = "$cmd_dir/$real_cmd" unless $real_cmd =~ m,^[\\/],; # relative link
+ }
}
# library directory
+ $lib_dir = $cmd_dir;
+
+ # clisp runtime
+ my $xindy_run = ( $is_windows ?
+ "$lib_dir/xindy-lisp.exe" : "$lib_dir/xindy.run" );
+ $clisp = $xindy_run if -e $xindy_run;
+
+} else { # standalone installation
+
+ # library directory
if ( $ENV{XINDY_LIBDIR} ) {
$lib_dir = $ENV{XINDY_LIBDIR};
- die "$cmd: Invalid XINDY_LIBDIR setting: cannot find $lib_dir/$xindy_run" if ! -f "$lib_dir/$xindy_run";
- } elsif ( -f "$cmd_dir/$xindy_run" ) { # texlive unix
- $lib_dir = $cmd_dir;
- } elsif ( exists $ENV{"TL_ROOT"} && -f "$ENV{TL_ROOT}\\bin\\win32\\$xindy_run") { # TL2009 woe32
- $lib_dir = "$ENV{TL_ROOT}\\bin\\win32";
- $cmd_dir = "$ENV{TL_ROOT}\\bin\\win32";
- } elsif ( exists $ENV{"SELFAUTOLOC"} && -f "$ENV{SELFAUTOLOC}/$xindy_run" ) { # TL2008 woe32
- $lib_dir = $ENV{"SELFAUTOLOC"};
- $cmd_dir = $ENV{"SELFAUTOLOC"};
} elsif ( '@libdir@' ne '@libdir' . '@' ) { # GNU configure at work?
if ( -d '@libdir@/xindy' ) { # /usr style
$lib_dir = '@libdir@/xindy';
} else {
$lib_dir = '@libdir@'; # /opt style
}
- die "$cmd: Cannot locate $lib_dir/$xindy_run" if ! -f "$lib_dir/$xindy_run";
- } elsif ( -f "$cmd_dir/../lib/$xindy_run" ) { # /opt style
+ } elsif ( -f "$cmd_dir/../lib/xindy.mem" ) { # /opt style
$lib_dir = "$cmd_dir/../lib";
- } elsif ( -f "$cmd_dir/../lib/xindy/$xindy_run" ) { # /usr style
+ } elsif ( -d "$cmd_dir/../lib/xindy" ) { # /usr style
$lib_dir = "$cmd_dir/../lib/xindy";
} else {
die "$cmd: Cannot locate xindy library directory";
@@ -332,43 +413,20 @@ BEGIN {
$modules_dir = "$cmd_dir/../modules";
} elsif ( -d "$lib_dir/modules" ) { # /usr style
$modules_dir = "$lib_dir/modules";
- } elsif ( -d "$lib_dir/../../texmf/xindy" ) { # texlive multiplatform style
- $modules_dir = "$lib_dir/../../texmf/xindy";
- } elsif ( -d "$lib_dir/../texmf/xindy" ) { # texlive non-multiplatform style
- $modules_dir = "$lib_dir/../texmf/xindy";
- } elsif ( -d "/usr/share/xindy" ) { # FSH style
- $modules_dir = "/usr/share/xindy";
- } elsif (-l $0) { # binaries may be symlinks e.g. in /usr/local/bin
- my $try_dir = dirname(Cwd::realpath($0));
- if ($try_dir =~ m,/texmf/scripts/xindy$, && -d "$try_dir/../../xindy") {
- $modules_dir = "$try_dir/../../xindy";
- } else {
- die "$cmd: Cannot locate xindy modules directory";
- }
} else {
die "$cmd: Cannot locate xindy modules directory";
}
- # if $cmd_dir or $lib_dir is a symlink, clisp may get confused
- # because of relative paths above, so we resolve the path
- $modules_dir = Cwd::realpath($modules_dir);
-}
+} # determine environment
-# Used modules.
-
-use Getopt::Long qw(:config bundling);
-use File::Temp qw(tempfile tmpnam);
-use File::Spec;
-use POSIX qw(uname);
# Check arguments, store them in proper variables.
-#
-# Do also something for backward compatibility: Check if this is an
-# old-style call. If it is, we have two arguments at the end, and the
-# second-to-last has the extension ".xdy". Then, call the old driver
-# script with the original arguments...
-my $usage_msg = <<_EOT_
+sub usage ( ;$ )
+{
+ my $exit_code = shift;
+ $exit_code += 0; # turn undef into 0
+ print STDERR <<_EOT_
usage: $cmd [-V?h] [-qv] [-d magic] [-o outfile.ind] [-t log] \\
[-L lang] [-C codepage] [-M module] [-I input] \\
@@ -391,58 +449,37 @@ GNU-STYLE LONG OPTIONS FOR SHORT OPTIONS:
-I / --input-markup (supported: latex, omega, xindy)
_EOT_
-;
-
-sub usage ()
-{
- print STDERR $usage_msg;
- exit 1;
+ ;
+ exit ($exit_code);
}
-sub parse_options();
-sub handle_signals();
-sub create_raw_index();
-sub filter_index($$);
-sub xindy_expression();
-sub call_xindy($$);
-
our ($quiet, $verbose, %debug,
$outfile, $logfile, $language, @codepages, @modules, $input_markup,
$interactive, $mem_file);
$input_markup = 'latex';
-
$mem_file = "$lib_dir/xindy.mem";
-if ($^O eq 'darwin' && ! -e $mem_file) {
- # support universal binary on mac
- my @uname = POSIX::uname();
- if ($uname[4] eq 'Power Macintosh') {
- $mem_file = "$lib_dir/xindy-ppc.mem";
- } else {
- $mem_file = "$lib_dir/xindy-i386.mem";
- }
-}
-die "$cmd: Cannot locate $mem_file" if ! -e $mem_file;
+my @orig_argv = @ARGV;
parse_options();
-if ( @ARGV == 2 && $ARGV[0] =~ /\.xdy$/ ) {
- print STDERR <<EOF;
-$cmd: deprecated calling convention detected.
-Please change your command to
-$cmd -I xindy -M $ARGV[0] $ARGV[1]
+# Support universal binary on Mac OS X.
-Run "$cmd --help" for full list of options, or read the documentation.
-EOF
- exit 1;
+if ( $OSNAME eq 'darwin' && ! -e $mem_file ) {
+ my @uname = POSIX::uname();
+ if ( $uname[4] eq 'Power Macintosh' ) {
+ $mem_file = "$lib_dir/xindy-ppc.mem";
+ } else {
+ $mem_file = "$lib_dir/xindy-i386.mem";
+ }
}
+die "$cmd: Cannot locate $mem_file" unless -e $mem_file;
# This script creates temporary files. Whenever a file is created, its
# name is added to @temp_files. In an END handler, the temporary files
# are deleted. Signal handlers are set up to get proper program
-# termination on user-induced signals. During program calls with
-# system, SIGINT and
+# termination on user-induced signals.
our @temp_files = ();
handle_signals();
@@ -458,7 +495,9 @@ END {
our $raw_index = File::Spec->devnull;
unless ( $interactive ) {
- for my $f (@ARGV) { die "$f does not exist" if ! -f $f }
+ for my $f ( @ARGV ) {
+ die "$cmd: input file $f does not exist" unless -f $f;
+ }
$raw_index = create_raw_index(); # processes @ARGV
my $filter_cmd = '';
if ( $input_markup eq 'latex' ) {
@@ -471,8 +510,7 @@ unless ( $interactive ) {
}
-# Execution: Obey environment variables, create xindy start
-# expression, and eventually call it.
+# Execution: Create xindy start expression and call it.
my $xindy_expression = xindy_expression(); # accesses global option vars
my $exit_code = call_xindy ($mem_file, $xindy_expression);
@@ -492,7 +530,7 @@ sub parse_options() {
GetOptions(
'version|V' => sub { output_version(0); },
'internal-version' => sub { output_version(1); },
- 'help|h|?' => sub { print $usage_msg; exit 0; },
+ 'help|h|?' => \&usage,
'quiet|q' => \$quiet,
'verbose|v' => \$verbose,
'debug|d=s' => \@debug,
@@ -505,7 +543,7 @@ sub parse_options() {
'interactive' => \$interactive,
'mem-file=s' => \$mem_file,
)
- or usage();
+ or usage(1);
# Debug option values are easier to test in a hash. Clean up trace
# level options, too.
@@ -527,7 +565,7 @@ sub parse_options() {
if ( %debug_check ) {
my @magic = keys(%debug_check);
print STDERR "Unsupported argument for --debug: @magic\n";
- usage();
+ usage(1);
}
# Script debugging implies running it verbose and not quiet.
@@ -541,13 +579,11 @@ sub parse_options() {
unless ( $outfile || $interactive ) {
if ( @ARGV == 0 ) {
print STDERR
-"You need to specify --out-file if the raw index is read from standard input.\n\n";
- usage();
+"You need to specify --out-file if the raw index is read from standard input.\n";
+ usage(1);
}
my ($name, $path, $suffix) = fileparse ($ARGV[0], '\.[^\.]+');
$outfile = "$path$name.ind";
- # FIXME opening "nul" multiple times causes a problem on woe32
- $logfile = "$path$name.ilg" if $^O eq "MSWin32" && ! defined $logfile;
}
# FIXME: xindy wants a log file. Really?
@@ -561,8 +597,8 @@ sub parse_options() {
if ( $input_markup &&
$input_markup ne 'latex' && $input_markup ne 'omega' &&
$input_markup ne 'xindy' ) {
- print STDERR "Unsupported input markup $input_markup.\n\n";
- usage();
+ print STDERR "Unsupported input markup $input_markup.\n";
+ usage(1);
}
if ( $input_markup eq 'omega' ) {
@codepages = qw(utf8);
@@ -640,7 +676,7 @@ sub filter_index ( $$ ) {
# Construct final xindy expression, from options.
sub xindy_expression () {
- my ($logging, $tracing, $trace_level, $searchpath);
+ my ($logging, $tracing, $trace_level);
# Determine language module of make-rules framework. Part of the
# complexity below is from compatibility with the TLC2
@@ -707,20 +743,18 @@ sub xindy_expression () {
}
$style_file = quotify($style_file);
- my $outfile_q = quotify($outfile);
- $raw_index = quotify($raw_index);
+ $outfile = quotify($outfile);
$logging = ':logfile ' . quotify($logfile) if $logfile;
$tracing = ':markup-trace :on' if $debug{markup};
$trace_level = ":trace-level $debug{trace_level}" if $debug{trace_level};
- $searchpath = quotify(join($path_sep, ".", $modules_dir, "$modules_dir/base"));
my $exp = <<_EOT_
(progn
- (searchpath $searchpath)
+ (searchpath ".:$modules_dir:$modules_dir/base")
(xindy:startup
:idxstyle $style_file
- :rawindex $raw_index
- :output $outfile_q
+ :rawindex "$raw_index"
+ :output $outfile
$logging
$tracing
$trace_level)
@@ -737,18 +771,11 @@ _EOT_
sub call_xindy ( $$ ) {
my ($mem_file, $xindy_exp) = @_;
- my @command = ("$lib_dir/$xindy_run", '-q',
- '-B', $lib_dir, '-M', $mem_file, '-E', 'iso-8859-1');
+ my @command = ($clisp, '-M', $mem_file, '-E', 'iso-8859-1');
if ( $interactive ) {
print "Proposed xindy expression:\n\n$xindy_exp\n" unless $quiet;
} else {
- #push (@command, '-x', $xindy_exp);
- my ($output, $outfile) = tempfile();
- push (@temp_files, $outfile);
- print $output $xindy_exp;
- close ($output);
- print "xindy startup file: $outfile\n" if $debug{script};
- push (@command, $outfile);
+ push (@command, '-x', $xindy_exp);
}
if ( $debug{script} ) {
@@ -759,7 +786,6 @@ sub call_xindy ( $$ ) {
if ( $quiet && ! $interactive ) {
open (STDOUT, '>', File::Spec->devnull);
}
- unlink($outfile) if $^O eq "MSWin32" && -f $outfile;
system @command;
if ( $? == -1 ) {
print STDERR "$cmd: Could not execute xindy kernel: $!\n";
@@ -782,7 +808,9 @@ sub output_version ( ;$ ) { # optional arg: internal-version flag
sub output_xindy_release () {
my $version = 'unknown';
my $version_file;
- if ( -f "$cmd_dir/../VERSION" ) {
+ if ( -f "$modules_dir/../VERSION" ) {
+ $version_file = "$modules_dir/../VERSION";
+ } elsif ( -f "$cmd_dir/../VERSION" ) {
$version_file = "$cmd_dir/../VERSION";
} elsif ( -f "$lib_dir/VERSION" ) {
$version_file = "$lib_dir/VERSION";
@@ -807,7 +835,7 @@ sub output_xindy_release () {
sub quotify ( $ ) {
my $s = shift;
- $s =~ s:([\\\"]):\\$1:g ; # quote double-quote and backslash
+ $s =~ s:[\\\"]:\\&1:g ; # quote double-quote and backslash
return "\"$s\"";
}
@@ -816,6 +844,17 @@ sub quotify ( $ ) {
#======================================================================
#
# $Log: xindy.pl,v $
+# Revision 1.16 2010/05/10 23:39:24 jschrod
+# Incorporate TeX-Live patches from Vladimir Volovich and Peter
+# Breitenlohner: Support for TL installation scheme, support for Mac OS
+# X, support for Windows in TL.
+#
+# Revision 1.15 2010/04/20 00:15:23 jschrod
+# Emphasize incompatibility with hyperref in man page.
+#
+# Revision 1.14 2009/12/03 00:28:22 jschrod
+# Search perl via env.
+#
# Revision 1.13 2009/03/29 11:14:04 jschrod
# xindy.run does not exist any more, call clisp directly.
#
diff --git a/Master/texmf/xindy/VERSION b/Master/texmf/xindy/VERSION
new file mode 100644
index 00000000000..6b4950e3de2
--- /dev/null
+++ b/Master/texmf/xindy/VERSION
@@ -0,0 +1 @@
+2.4
diff --git a/Master/texmf/xindy/modules/base/book-order.xdy b/Master/texmf/xindy/modules/base/book-order.xdy
new file mode 100644
index 00000000000..aa5d078987b
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/book-order.xdy
@@ -0,0 +1,24 @@
+;; $Id: book-order.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; book order scheme
+;;;
+
+;; NOTE: Assumes that makeindex.xdy has been loaded.
+
+(define-location-class-order ("roman-page-numbers"
+ "Roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Alpha-page-numbers"
+ "see"
+ "seealso"))
+
+
+;;======================================================================
+;;
+;; $Log: book-order.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/ff-ranges-only.xdy b/Master/texmf/xindy/modules/base/ff-ranges-only.xdy
new file mode 100644
index 00000000000..451ae9ac472
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/ff-ranges-only.xdy
@@ -0,0 +1,25 @@
+;; $Id: ff-ranges-only.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; ff ranges only
+;;;
+;;; Use "f" for two pages, "ff" notation for ranges of three and more pages
+;;;
+
+;; FIXME: This will output a warning about a redefinition if latex.xdy
+;; is already loaded. Which it is, most of the time. I don't want that
+;; message, and we should get rid of it.
+(define-location-class "arabic-page-numbers"
+ ("arabic-numbers") :min-range-length 1)
+
+(markup-range :sep "f" :length 1 :ignore-end :class "arabic-page-numbers")
+(markup-range :sep "ff" :ignore-end :class "arabic-page-numbers")
+
+
+;;======================================================================
+;;
+;; $Log: ff-ranges-only.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/ff-ranges.xdy b/Master/texmf/xindy/modules/base/ff-ranges.xdy
new file mode 100644
index 00000000000..f38b55765a7
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/ff-ranges.xdy
@@ -0,0 +1,27 @@
+;; $Id: ff-ranges.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; ff ranges
+;;;
+;;; Use "f" for two pages, "ff" notation for ranges of three pages,
+;;; and explicit ranges thereafter: 2f, 2ff, 2--6.
+;;;
+
+;; FIXME: This will output a warning about a redefinition if latex.xdy
+;; is already loaded. Which it is, most of the time. I don't want that
+;; message, and we should get rid of it.
+(define-location-class "arabic-page-numbers"
+ ("arabic-numbers") :min-range-length 1)
+
+(markup-range :sep "f" :length 1 :ignore-end)
+(markup-range :sep "ff" :length 2 :ignore-end)
+(markup-range :sep "--")
+
+
+;;======================================================================
+;;
+;; $Log: ff-ranges.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/german-sty.xdy b/Master/texmf/xindy/modules/base/german-sty.xdy
new file mode 100644
index 00000000000..d0f4d367f18
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/german-sty.xdy
@@ -0,0 +1,24 @@
+;; $Id: german-sty.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; german sty
+;;;
+;;; Map special German TeX letters (german.sty) to 8-bit characters.
+;;;
+
+(merge-rule "~"A" "" :again :string)
+(merge-rule "~"O" "" :again :string)
+(merge-rule "~"U" "" :again :string)
+(merge-rule "~"a" "" :again :string)
+(merge-rule "~"o" "" :again :string)
+(merge-rule "~"u" "" :again :string)
+(merge-rule "~"s" "" :again :string)
+
+
+;;======================================================================
+;;
+;; $Log: german-sty.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/ignore-hyphen.xdy b/Master/texmf/xindy/modules/base/ignore-hyphen.xdy
new file mode 100644
index 00000000000..44d3743a48f
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/ignore-hyphen.xdy
@@ -0,0 +1,18 @@
+;; $Id: ignore-hyphen.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; ignore hyphen scheme
+;;;
+;;; hyphens are ignored, "ad-hoc" is sorted as "adhoc".
+;;;
+
+(sort-rule "-" "")
+
+
+;;======================================================================
+;;
+;; $Log: ignore-hyphen.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/ignore-punctuation.xdy b/Master/texmf/xindy/modules/base/ignore-punctuation.xdy
new file mode 100644
index 00000000000..051f2d63bc6
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/ignore-punctuation.xdy
@@ -0,0 +1,42 @@
+;; $Id: ignore-punctuation.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; ignore punctuation scheme
+;;;
+;;; all kind of punctuations are ignored during sorting
+;;;
+
+;; accents and other special characters (plus, etc) are not considered
+;; punctuations.
+
+(sort-rule "!" "")
+(sort-rule "\"" "")
+(sort-rule "/" "")
+(sort-rule "(" "")
+(sort-rule ")" "")
+(sort-rule "{" "")
+(sort-rule "}" "")
+(sort-rule "[" "")
+(sort-rule "]" "")
+(sort-rule "<" "")
+(sort-rule ">" "")
+(sort-rule "=" "")
+(sort-rule "?" "")
+(sort-rule "\\" "")
+(sort-rule "'" "")
+(sort-rule "|" "")
+(sort-rule "," "")
+(sort-rule ";" "")
+(sort-rule "." "")
+(sort-rule ":" "")
+(sort-rule "-" "")
+(sort-rule "_" "")
+
+
+;;======================================================================
+;;
+;; $Log: ignore-punctuation.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/keep-blanks.xdy b/Master/texmf/xindy/modules/base/keep-blanks.xdy
new file mode 100644
index 00000000000..892b5d70468
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/keep-blanks.xdy
@@ -0,0 +1,40 @@
+;; $Id: keep-blanks.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; keep blanks
+;;;
+;;; Don't trim white space at start or end, and don't collapse white
+;;; space in an index key.
+;;;
+
+;; This does not work currently. White space compression is
+;; implemented by merge rules in tex.xdy; and we would need to undo
+;; these rules. An implementation possibility is the postponing of
+;; these merge rules and our ability to stop their activation. But
+;; this is not implemented yet. Either we need a method to delete a
+;; merge rule, or we need a hook in the kernel.
+
+;; FIXME: I must coerce the error string to a simple-string because we
+;; use a special reader syntax in index styles. This reader syntax
+;; parses C-like strings and creates character arrays, but not simple
+;; strings. Frankly, I don't know how I may code this more easily,
+;; perhaps by a reader macro?
+
+(base:oops (coerce "
+
+Module keep-blanks does not work currently, due to a missing
+functionality in the xindy kernel. Please contact the xindy mailing
+list for more information.
+
+" 'simple-string))
+
+(base:error-exit)
+
+
+;;======================================================================
+;;
+;; $Log: keep-blanks.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/latex-loc-fmts.xdy b/Master/texmf/xindy/modules/base/latex-loc-fmts.xdy
new file mode 100644
index 00000000000..3a39a5c922b
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/latex-loc-fmts.xdy
@@ -0,0 +1,25 @@
+;; $Id: latex-loc-fmts.xdy,v 1.2 2006/08/31 00:10:59 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; Define default location attributes, and their markup.
+;;;
+
+;; Default attributes are all merged into one location group.
+(define-attributes (("default" "textbf" "textit" "hyperpage")))
+
+(markup-locref :open "\textbf{" :close "}" :attr "textbf")
+(markup-locref :open "\textit{" :close "}" :attr "textit")
+(markup-locref :open "\hyperpage{" :close "}" :attr "hyperpage")
+
+
+
+;;======================================================================
+;;
+;; $Log: latex-loc-fmts.xdy,v $
+;; Revision 1.2 2006/08/31 00:10:59 jschrod
+;; Ticket 1549661: Default attributes should be in the same location group.
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/latex.xdy b/Master/texmf/xindy/modules/base/latex.xdy
new file mode 100644
index 00000000000..e45dc67049d
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/latex.xdy
@@ -0,0 +1,83 @@
+;; $Id: latex.xdy,v 1.4 2008/01/09 15:13:29 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; LaTeX conventions
+;;;
+;;; both in raw index entries and output markup
+;;;
+
+
+;; We need to define merge rules for known macros first, as tex.xdy
+;; has a merge-rule that will discard all macros.
+
+(merge-rule "\\LaTeXe *" "LaTeX2e" :eregexp :again)
+(merge-rule "\\BibTeX *" "BibTeX" :eregexp :again)
+(merge-rule "\\AmSTeX *" "AmSTeX" :eregexp :again)
+(merge-rule "\\AmSLaTeX *" "AmSLaTeX" :eregexp :again)
+(merge-rule "\\XeT *" "XeT" :eregexp :again)
+
+
+;; LaTeX has the same conventions as TeX
+
+(require "tex.xdy")
+
+
+;; We do not define attributes, this is done in latex-loc-fmts.
+
+
+;; Standard location classes: arabic and roman numbers, and alphabets.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+
+;;;
+;;; Output Markup
+;;;
+
+(markup-index :open
+"\begin{theindex}
+ \providecommand*\lettergroupDefault[1]{}
+ \providecommand*\lettergroup[1]{%
+ \par\textbf{#1}\par
+ \nopagebreak
+ }
+"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+(markup-letter-group :open-head "~n % ")
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+(markup-locclass-list :open ", " :sep ", ")
+(markup-locref-list :sep ", ")
+
+
+
+
+;;======================================================================
+;;
+;; $Log: latex.xdy,v $
+;; Revision 1.4 2008/01/09 15:13:29 jschrod
+;; Configurable section headline for the Default letter group.
+;;
+;; Revision 1.3 2006/11/07 01:16:50 jschrod
+;; Prevent page break after letter group heading.
+;; Introduce a \lettergroup tag for that, which can be redefined
+;; by the user in an own theindex environment. (Ticket 1255990)
+;;
+;; Revision 1.2 2005/05/09 20:21:11 jschrod
+;; Support handling of some common macros for logos; ignore all other
+;; TeX commands.
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/latin-lettergroups.xdy b/Master/texmf/xindy/modules/base/latin-lettergroups.xdy
new file mode 100644
index 00000000000..5a48b871600
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/latin-lettergroups.xdy
@@ -0,0 +1,26 @@
+;; $Id: latin-lettergroups.xdy,v 1.3 2008/01/09 15:13:29 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; latin lettergroups
+;;;
+
+(markup-letter-group :open-head "~n \lettergroupDefault{" :close-head "}"
+ :group "default")
+(markup-letter-group :open-head "~n \lettergroup{" :close-head "}")
+
+
+;;======================================================================
+;;
+;; $Log: latin-lettergroups.xdy,v $
+;; Revision 1.3 2008/01/09 15:13:29 jschrod
+;; Configurable section headline for the Default letter group.
+;;
+;; Revision 1.2 2006/11/07 01:16:50 jschrod
+;; Prevent page break after letter group heading.
+;; Introduce a \lettergroup tag for that, which can be redefined
+;; by the user in an own theindex environment. (Ticket 1255990)
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/letter-order.xdy b/Master/texmf/xindy/modules/base/letter-order.xdy
new file mode 100644
index 00000000000..810b96d16c0
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/letter-order.xdy
@@ -0,0 +1,18 @@
+;; $Id: letter-order.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; letter order scheme
+;;;
+;;; spaces are ignored, "index style" is sorted after "indexing".
+;;;
+
+(sort-rule " " "")
+
+
+;;======================================================================
+;;
+;; $Log: letter-order.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/makeindex.xdy b/Master/texmf/xindy/modules/base/makeindex.xdy
new file mode 100644
index 00000000000..c859ecac651
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/makeindex.xdy
@@ -0,0 +1,46 @@
+;; $Id: makeindex.xdy,v 1.3 2006/08/30 23:35:43 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; MakeIndex behaviour
+;;;
+
+(define-crossref-class "see")
+;; \see takes two parameters, the second one is for the page number.
+;; We don't emit one in xindy, so we add an empty second argument.
+(markup-crossref-list :class "see" :open "\see{" :sep "; " :close "}{}")
+
+;; FIXME: This does not work properly. This should be for entries that
+;; have both a locref (e.g., the page number) and a cross reference.
+;; Currently, it works as if it's the same as \see, just with another
+;; macro.
+(define-crossref-class "seealso")
+(markup-crossref-list :class "seealso" :open "\seealso{" :sep "; " :close "}{}")
+
+;; Subentries in cross references are seperated by comma for all
+;; crossref classes.
+(markup-crossref-layer-list :sep ", ")
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"
+ "seealso"))
+
+
+
+;;======================================================================
+;;
+;; $Log: makeindex.xdy,v $
+;; Revision 1.3 2006/08/30 23:35:43 jschrod
+;; Ticket 1255983: Markup for multiple cross references and cross
+;; references to sub entries were missing.
+;;
+;; Revision 1.2 2005/05/09 20:19:15 jschrod
+;; Typo in seealso crossref class definition.
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/numeric-sort.xdy b/Master/texmf/xindy/modules/base/numeric-sort.xdy
new file mode 100644
index 00000000000..65c84206628
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/numeric-sort.xdy
@@ -0,0 +1,25 @@
+;; $Id: numeric-sort.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; numerically sorting
+;;;
+;;; "V64" appears before "V128".
+;;;
+
+;; FIXME: Works only for up to 7 digits.
+
+(merge-rule "[0-9][0-9][0-9][0-9][0-9][0-9]" "0&" :eregexp)
+(merge-rule "[0-9][0-9][0-9][0-9][0-9]" "00&" :eregexp)
+(merge-rule "[0-9][0-9][0-9][0-9]" "000&" :eregexp)
+(merge-rule "[0-9][0-9][0-9]" "0000&" :eregexp)
+(merge-rule "[0-9][0-9]" "00000&" :eregexp)
+(merge-rule "[0-9]" "000000&" :eregexp)
+
+
+;;======================================================================
+;;
+;; $Log: numeric-sort.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/page-ranges.xdy b/Master/texmf/xindy/modules/base/page-ranges.xdy
new file mode 100644
index 00000000000..44ddeaa55b8
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/page-ranges.xdy
@@ -0,0 +1,18 @@
+;; $Id: page-ranges.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; page ranges
+;;;
+;;; More than two consecutive pages are listed as a range.
+;;;
+
+(markup-range :sep "--")
+
+
+;;======================================================================
+;;
+;; $Log: page-ranges.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/tex.xdy b/Master/texmf/xindy/modules/base/tex.xdy
new file mode 100644
index 00000000000..d3c23cb3e56
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/tex.xdy
@@ -0,0 +1,71 @@
+;; $Id: tex.xdy,v 1.2 2005/05/09 20:21:11 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; TeX conventions
+;;;
+
+;; Discard leading and trailing white space. Collapse multiple white
+;; space characters to blank.
+;;
+;; FIXME: How do I specify tabs in that regexp? [ \t] does *not* work,
+;; it is taken as blank and t.
+;;
+;; FIXME: Definition of these rules should be postponed until we start
+;; with the actual work. Then they should be only issued if module
+;; keep-blanks is not loaded. Module keep-blanks would set a flag, and
+;; this code would check for it. We will need a hook in the kernel, to
+;; achieve that goal.
+;;
+;; FIXME: Regexps with start-anchored matches do not work. They match
+;; everywhere. We think it's better to not handle leading blanks than
+;; to make all blanks disappear, therefore the first rule is not
+;; activated.
+
+;(merge-rule "^ +" "" :eregexp)
+(merge-rule " +$" "" :eregexp)
+(merge-rule " +" " " :eregexp)
+
+
+;;
+;; Handle TeX markup
+;;
+
+
+;; First, some markup that produces output and that we want to keep.
+;; If this module is required, similar merge-rules for other markup
+;; that shall be kept must be defined first. Otherwise it will be
+;; discarded, by the default rule below.
+
+(merge-rule "\\([{}$%&#])" "\1" :eregexp)
+(merge-rule "~~" " ")
+(merge-rule "---?" "-")
+(merge-rule "\\TeX *" "TeX" :eregexp :again)
+(merge-rule "\\LaTeX *" "LaTeX" :eregexp :again)
+(merge-rule "\\MF *" "METAFONT" :eregexp :again)
+(merge-rule "\\MP *" "METAPOST" :eregexp :again)
+
+;; Ignore TeX commands by default. Some macros are known to be written
+;; to index files where the arguments must be ignored as well. Our
+;; argument parsing code is optimistic -- it will be possible to break
+;; it. Let's wait for an error report and repair it then... ;-)
+
+(merge-rule "\\discretionary *\{[^}]*\}\{[^}]*\}" "" :eregexp)
+(merge-rule "\\kern *[-\.0-9a-z]* ?" "" :eregexp)
+
+(merge-rule "\\[a-zA-Z@]+ *" "" :eregexp)
+(merge-rule "\\[^a-zA-Z@]" "" :eregexp)
+(merge-rule "^[{}$]" "" :eregexp)
+
+
+
+;;======================================================================
+;;
+;; $Log: tex.xdy,v $
+;; Revision 1.2 2005/05/09 20:21:11 jschrod
+;; Support handling of some common macros for logos; ignore all other
+;; TeX commands.
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/texindy.xdy b/Master/texmf/xindy/modules/base/texindy.xdy
new file mode 100644
index 00000000000..a7e5ee8fbb2
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/texindy.xdy
@@ -0,0 +1,20 @@
+;; $Id: texindy.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; all auto modules of texindy.
+;;;
+
+(require "numeric-sort.xdy")
+(require "latex.xdy")
+(require "latex-loc-fmts.xdy")
+(require "makeindex.xdy")
+(require "latin-lettergroups.xdy")
+
+
+;;======================================================================
+;;
+;; $Log: texindy.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/base/word-order.xdy b/Master/texmf/xindy/modules/base/word-order.xdy
new file mode 100644
index 00000000000..9741e2bd10e
--- /dev/null
+++ b/Master/texmf/xindy/modules/base/word-order.xdy
@@ -0,0 +1,20 @@
+;; $Id: word-order.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; word order scheme
+;;;
+;;; a space comes before any letter in the alphabet: "index style" is
+;;; listed before "indexing".
+
+; This is the default, we don't need any code for this behaviour.
+; In fact, this module just exists to satisfy the Companion
+; description... ;-)
+
+
+;;======================================================================
+;;
+;; $Log: word-order.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Master/texmf/xindy/modules/class/pagenums.xdy b/Master/texmf/xindy/modules/class/pagenums.xdy
new file mode 100644
index 00000000000..92f6b685da5
--- /dev/null
+++ b/Master/texmf/xindy/modules/class/pagenums.xdy
@@ -0,0 +1,7 @@
+;; $Id: pagenums.xdy,v 1.1 1996/07/03 18:44:40 kehr Exp $
+;;
+;; This module defines the location-class "page-numbers"
+
+(define-location-class "page-numbers" ("arabic-numbers"))
+
+;; End
diff --git a/Master/texmf/xindy/modules/lang/albanian/latin1-lang.xdy b/Master/texmf/xindy/modules/lang/albanian/latin1-lang.xdy
new file mode 100644
index 00000000000..a7e1b5864b1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/albanian/latin1-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/albanian/latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sq-alphabetize" "sq-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sq-resolve-diacritics" "sq-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sq-resolve-case" "sq-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sq-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/albanian/latin1-test.xdy b/Master/texmf/xindy/modules/lang/albanian/latin1-test.xdy
new file mode 100644
index 00000000000..5b288c7ea59
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/albanian/latin1-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/albanian/latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sq-alphabetize" "sq-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sq-resolve-diacritics" "sq-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sq-resolve-case" "sq-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sq-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/albanian/latin1.xdy b/Master/texmf/xindy/modules/lang/albanian/latin1.xdy
new file mode 100644
index 00000000000..0c4239fb17c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/albanian/latin1.xdy
@@ -0,0 +1,403 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Albanian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "Dh" :after "D" :prefixes (""))
+(define-letter-group "E" :after "Dh" :prefixes (""))
+(define-letter-group "" :after "E" :prefixes (""))
+(define-letter-group "F" :after "" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "Gj" :after "G" :prefixes (""))
+(define-letter-group "H" :after "Gj" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "Ll" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Ll" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Nj" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Nj" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "Rr" :after "R" :prefixes (""))
+(define-letter-group "S" :after "Rr" :prefixes (""))
+(define-letter-group "Sh" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Sh" :prefixes (""))
+(define-letter-group "Th" :after "T" :prefixes (""))
+(define-letter-group "U" :after "Th" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Xh" :after "X" :prefixes (""))
+(define-letter-group "Y" :after "Xh" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Zh" :after "Z" :prefixes (""))
+
+(define-rule-set "sq-alphabetize"
+
+ :rules (("dh" "" :string)
+ ("DH" "" :string)
+ ("Dh" "" :string)
+ ("Gj" "" :string)
+ ("GJ" "" :string)
+ ("gj" "" :string)
+ ("ll" "" :string)
+ ("LL" "" :string)
+ ("Ll" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("Nj" "" :string)
+ ("rr" "" :string)
+ ("RR" "" :string)
+ ("Rr" "" :string)
+ ("SH" "" :string)
+ ("Sh" "" :string)
+ ("sh" "" :string)
+ ("TH" "" :string)
+ ("Th" "" :string)
+ ("th" "" :string)
+ ("Xh" "" :string)
+ ("XH" "" :string)
+ ("xh" "" :string)
+ ("Zh" "" :string)
+ ("ZH" "" :string)
+ ("zh" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "sq-resolve-diacritics"
+
+ :rules (("rr" "" :string)
+ ("Gj" "" :string)
+ ("SH" "" :string)
+ ("ll" "" :string)
+ ("GJ" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("Sh" "" :string)
+ ("dh" "" :string)
+ ("Xh" "" :string)
+ ("DH" "" :string)
+ ("XH" "" :string)
+ ("TH" "" :string)
+ ("gj" "" :string)
+ ("RR" "" :string)
+ ("Nj" "" :string)
+ ("Zh" "" :string)
+ ("sh" "" :string)
+ ("xh" "" :string)
+ ("Th" "" :string)
+ ("LL" "" :string)
+ ("th" "" :string)
+ ("ZH" "" :string)
+ ("Dh" "" :string)
+ ("Rr" "" :string)
+ ("zh" "" :string)
+ ("Ll" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "sq-resolve-case"
+
+ :rules (("SH" "7" :string)
+ ("GJ" "7" :string)
+ ("NJ" "7" :string)
+ ("DH" "7" :string)
+ ("XH" "7" :string)
+ ("TH" "7" :string)
+ ("RR" "7" :string)
+ ("LL" "7" :string)
+ ("ZH" "7" :string)
+ ("Gj" "8" :string)
+ ("Sh" "8" :string)
+ ("Xh" "8" :string)
+ ("Nj" "8" :string)
+ ("Zh" "8" :string)
+ ("Th" "8" :string)
+ ("Dh" "8" :string)
+ ("Rr" "8" :string)
+ ("Ll" "8" :string)
+ ("rr" "9" :string)
+ ("ll" "9" :string)
+ ("nj" "9" :string)
+ ("dh" "9" :string)
+ ("gj" "9" :string)
+ ("sh" "9" :string)
+ ("xh" "9" :string)
+ ("th" "9" :string)
+ ("zh" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "sq-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sq-resolve-special"
+
+ :rules (("rr" "" :string)
+ ("Gj" "" :string)
+ ("SH" "" :string)
+ ("ll" "" :string)
+ ("GJ" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("Sh" "" :string)
+ ("dh" "" :string)
+ ("Xh" "" :string)
+ ("DH" "" :string)
+ ("XH" "" :string)
+ ("TH" "" :string)
+ ("gj" "" :string)
+ ("RR" "" :string)
+ ("Nj" "" :string)
+ ("Zh" "" :string)
+ ("sh" "" :string)
+ ("xh" "" :string)
+ ("Th" "" :string)
+ ("LL" "" :string)
+ ("th" "" :string)
+ ("ZH" "" :string)
+ ("Dh" "" :string)
+ ("Rr" "" :string)
+ ("zh" "" :string)
+ ("Ll" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/albanian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/albanian/utf8-lang.xdy
new file mode 100644
index 00000000000..43dcd4b9a61
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/albanian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/albanian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sq-alphabetize" "sq-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sq-resolve-diacritics" "sq-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sq-resolve-case" "sq-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sq-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/albanian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/albanian/utf8-test.xdy
new file mode 100644
index 00000000000..0a9cd7023cf
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/albanian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/albanian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sq-alphabetize" "sq-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sq-resolve-diacritics" "sq-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sq-resolve-case" "sq-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sq-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/albanian/utf8.xdy b/Master/texmf/xindy/modules/lang/albanian/utf8.xdy
new file mode 100644
index 00000000000..171539cfbf8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/albanian/utf8.xdy
@@ -0,0 +1,403 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Albanian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Ç" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Ç" :prefixes (""))
+(define-letter-group "Dh" :after "D" :prefixes (""))
+(define-letter-group "E" :after "Dh" :prefixes (""))
+(define-letter-group "Ë" :after "E" :prefixes (""))
+(define-letter-group "F" :after "Ë" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "Gj" :after "G" :prefixes (""))
+(define-letter-group "H" :after "Gj" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "Ll" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Ll" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Nj" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Nj" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "Rr" :after "R" :prefixes (""))
+(define-letter-group "S" :after "Rr" :prefixes (""))
+(define-letter-group "Sh" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Sh" :prefixes (""))
+(define-letter-group "Th" :after "T" :prefixes (""))
+(define-letter-group "U" :after "Th" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Xh" :after "X" :prefixes (""))
+(define-letter-group "Y" :after "Xh" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Zh" :after "Z" :prefixes (""))
+
+(define-rule-set "sq-alphabetize"
+
+ :rules (("Ç" "" :string)
+ ("ç" "" :string)
+ ("dh" "" :string)
+ ("DH" "" :string)
+ ("Dh" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("Gj" "" :string)
+ ("GJ" "" :string)
+ ("gj" "" :string)
+ ("ll" "" :string)
+ ("LL" "" :string)
+ ("Ll" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("Nj" "" :string)
+ ("rr" "" :string)
+ ("RR" "" :string)
+ ("Rr" "" :string)
+ ("SH" "" :string)
+ ("Sh" "" :string)
+ ("sh" "" :string)
+ ("TH" "" :string)
+ ("Th" "" :string)
+ ("th" "" :string)
+ ("Xh" "" :string)
+ ("XH" "" :string)
+ ("xh" "" :string)
+ ("Zh" "" :string)
+ ("ZH" "" :string)
+ ("zh" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "sq-resolve-diacritics"
+
+ :rules (("rr" "" :string)
+ ("Gj" "" :string)
+ ("Ç" "" :string)
+ ("SH" "" :string)
+ ("ll" "" :string)
+ ("GJ" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("Sh" "" :string)
+ ("dh" "" :string)
+ ("Xh" "" :string)
+ ("DH" "" :string)
+ ("XH" "" :string)
+ ("TH" "" :string)
+ ("gj" "" :string)
+ ("RR" "" :string)
+ ("Nj" "" :string)
+ ("Zh" "" :string)
+ ("sh" "" :string)
+ ("xh" "" :string)
+ ("Th" "" :string)
+ ("LL" "" :string)
+ ("ç" "" :string)
+ ("th" "" :string)
+ ("Ë" "" :string)
+ ("ZH" "" :string)
+ ("Dh" "" :string)
+ ("ë" "" :string)
+ ("Rr" "" :string)
+ ("zh" "" :string)
+ ("Ll" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "sq-resolve-case"
+
+ :rules (("SH" "7" :string)
+ ("GJ" "7" :string)
+ ("NJ" "7" :string)
+ ("DH" "7" :string)
+ ("XH" "7" :string)
+ ("TH" "7" :string)
+ ("RR" "7" :string)
+ ("LL" "7" :string)
+ ("ZH" "7" :string)
+ ("Gj" "8" :string)
+ ("Ç" "8" :string)
+ ("Sh" "8" :string)
+ ("Xh" "8" :string)
+ ("Nj" "8" :string)
+ ("Zh" "8" :string)
+ ("Th" "8" :string)
+ ("Ë" "8" :string)
+ ("Dh" "8" :string)
+ ("Rr" "8" :string)
+ ("Ll" "8" :string)
+ ("rr" "9" :string)
+ ("ll" "9" :string)
+ ("nj" "9" :string)
+ ("dh" "9" :string)
+ ("gj" "9" :string)
+ ("sh" "9" :string)
+ ("xh" "9" :string)
+ ("ç" "9" :string)
+ ("th" "9" :string)
+ ("ë" "9" :string)
+ ("zh" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "sq-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sq-resolve-special"
+
+ :rules (("rr" "" :string)
+ ("Gj" "" :string)
+ ("Ç" "" :string)
+ ("SH" "" :string)
+ ("ll" "" :string)
+ ("GJ" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("Sh" "" :string)
+ ("dh" "" :string)
+ ("Xh" "" :string)
+ ("DH" "" :string)
+ ("XH" "" :string)
+ ("TH" "" :string)
+ ("gj" "" :string)
+ ("RR" "" :string)
+ ("Nj" "" :string)
+ ("Zh" "" :string)
+ ("sh" "" :string)
+ ("xh" "" :string)
+ ("Th" "" :string)
+ ("LL" "" :string)
+ ("ç" "" :string)
+ ("th" "" :string)
+ ("Ë" "" :string)
+ ("ZH" "" :string)
+ ("Dh" "" :string)
+ ("ë" "" :string)
+ ("Rr" "" :string)
+ ("zh" "" :string)
+ ("Ll" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/belarusian/cp1251-lang.xdy b/Master/texmf/xindy/modules/lang/belarusian/cp1251-lang.xdy
new file mode 100644
index 00000000000..13e522b79c3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/cp1251-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/belarusian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("be-alphabetize" "be-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("be-resolve-diacritics" "be-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("be-resolve-case" "be-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("be-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/belarusian/cp1251-test.xdy b/Master/texmf/xindy/modules/lang/belarusian/cp1251-test.xdy
new file mode 100644
index 00000000000..56e8f2068ea
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/cp1251-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/belarusian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("be-alphabetize" "be-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("be-resolve-diacritics" "be-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("be-resolve-case" "be-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("be-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/belarusian/cp1251.xdy b/Master/texmf/xindy/modules/lang/belarusian/cp1251.xdy
new file mode 100644
index 00000000000..741c18a67fc
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/cp1251.xdy
@@ -0,0 +1,348 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Belarusian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "be-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "be-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "be-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "be-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "be-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/belarusian/iso88595-lang.xdy b/Master/texmf/xindy/modules/lang/belarusian/iso88595-lang.xdy
new file mode 100644
index 00000000000..84bf1609041
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/iso88595-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/belarusian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("be-alphabetize" "be-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("be-resolve-diacritics" "be-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("be-resolve-case" "be-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("be-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/belarusian/iso88595-test.xdy b/Master/texmf/xindy/modules/lang/belarusian/iso88595-test.xdy
new file mode 100644
index 00000000000..c85885150d0
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/iso88595-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/belarusian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("be-alphabetize" "be-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("be-resolve-diacritics" "be-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("be-resolve-case" "be-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("be-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/belarusian/iso88595.xdy b/Master/texmf/xindy/modules/lang/belarusian/iso88595.xdy
new file mode 100644
index 00000000000..b79bacf8191
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/iso88595.xdy
@@ -0,0 +1,348 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Belarusian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "be-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "be-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "be-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "be-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "be-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/belarusian/isoir111-lang.xdy b/Master/texmf/xindy/modules/lang/belarusian/isoir111-lang.xdy
new file mode 100644
index 00000000000..3656c25718a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/isoir111-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/belarusian/isoir111.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("be-alphabetize" "be-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("be-resolve-diacritics" "be-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("be-resolve-case" "be-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("be-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/belarusian/isoir111-test.xdy b/Master/texmf/xindy/modules/lang/belarusian/isoir111-test.xdy
new file mode 100644
index 00000000000..e03667e7551
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/isoir111-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/belarusian/isoir111.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("be-alphabetize" "be-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("be-resolve-diacritics" "be-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("be-resolve-case" "be-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("be-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/belarusian/isoir111.xdy b/Master/texmf/xindy/modules/lang/belarusian/isoir111.xdy
new file mode 100644
index 00000000000..c7bacde9e36
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/isoir111.xdy
@@ -0,0 +1,348 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Belarusian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "be-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "be-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "be-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "be-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "be-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/belarusian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/belarusian/utf8-lang.xdy
new file mode 100644
index 00000000000..ba14169b3d5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/belarusian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("be-alphabetize" "be-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("be-resolve-diacritics" "be-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("be-resolve-case" "be-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("be-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/belarusian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/belarusian/utf8-test.xdy
new file mode 100644
index 00000000000..3d6c544171f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/belarusian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("be-alphabetize" "be-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("be-resolve-diacritics" "be-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("be-resolve-case" "be-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("be-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/belarusian/utf8.xdy b/Master/texmf/xindy/modules/lang/belarusian/utf8.xdy
new file mode 100644
index 00000000000..e9d1a73e576
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/belarusian/utf8.xdy
@@ -0,0 +1,348 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Belarusian
+
+(define-letter-group "А" :prefixes (""))
+(define-letter-group "Б" :after "А" :prefixes (""))
+(define-letter-group "В" :after "Б" :prefixes (""))
+(define-letter-group "Г" :after "В" :prefixes (""))
+(define-letter-group "Д" :after "Г" :prefixes (""))
+(define-letter-group "Е" :after "Д" :prefixes (""))
+(define-letter-group "Ж" :after "Е" :prefixes (""))
+(define-letter-group "З" :after "Ж" :prefixes (""))
+(define-letter-group "И" :after "З" :prefixes (""))
+(define-letter-group "І" :after "И" :prefixes (""))
+(define-letter-group "Й" :after "І" :prefixes (""))
+(define-letter-group "К" :after "Й" :prefixes (""))
+(define-letter-group "Л" :after "К" :prefixes (""))
+(define-letter-group "М" :after "Л" :prefixes (""))
+(define-letter-group "Н" :after "М" :prefixes (""))
+(define-letter-group "О" :after "Н" :prefixes (""))
+(define-letter-group "П" :after "О" :prefixes (""))
+(define-letter-group "Р" :after "П" :prefixes (""))
+(define-letter-group "С" :after "Р" :prefixes (""))
+(define-letter-group "Т" :after "С" :prefixes (""))
+(define-letter-group "У" :after "Т" :prefixes (""))
+(define-letter-group "Ў" :after "У" :prefixes (""))
+(define-letter-group "Ф" :after "Ў" :prefixes (""))
+(define-letter-group "Х" :after "Ф" :prefixes (""))
+(define-letter-group "Ц" :after "Х" :prefixes (""))
+(define-letter-group "Ч" :after "Ц" :prefixes (""))
+(define-letter-group "Ш" :after "Ч" :prefixes (""))
+(define-letter-group "Щ" :after "Ш" :prefixes (""))
+(define-letter-group "Ъ" :after "Щ" :prefixes (""))
+(define-letter-group "Ы" :after "Ъ" :prefixes (""))
+(define-letter-group "Ь" :after "Ы" :prefixes (""))
+(define-letter-group "Э" :after "Ь" :prefixes (""))
+(define-letter-group "Ю" :after "Э" :prefixes (""))
+(define-letter-group "Я" :after "Ю" :prefixes (""))
+
+(define-rule-set "be-alphabetize"
+
+ :rules (("а" "" :string)
+ ("А" "" :string)
+ ("б" "" :string)
+ ("Б" "" :string)
+ ("в" "" :string)
+ ("В" "" :string)
+ ("г" "" :string)
+ ("Г" "" :string)
+ ("Д" "" :string)
+ ("д" "" :string)
+ ("е" "" :string)
+ ("Ё" "" :string)
+ ("ё" "" :string)
+ ("Е" "" :string)
+ ("Ж" "" :string)
+ ("ж" "" :string)
+ ("З" "" :string)
+ ("з" "" :string)
+ ("И" "" :string)
+ ("и" "" :string)
+ ("І" "" :string)
+ ("і" "" :string)
+ ("й" "" :string)
+ ("Й" "" :string)
+ ("к" "" :string)
+ ("К" "" :string)
+ ("Л" "" :string)
+ ("л" "" :string)
+ ("М" "" :string)
+ ("м" "" :string)
+ ("Н" "" :string)
+ ("н" "" :string)
+ ("о" "" :string)
+ ("О" "" :string)
+ ("п" "" :string)
+ ("П" "" :string)
+ ("р" "" :string)
+ ("Р" "" :string)
+ ("С" "" :string)
+ ("с" "" :string)
+ ("т" "" :string)
+ ("Т" "" :string)
+ ("у" "" :string)
+ ("У" "" :string)
+ ("ў" "" :string)
+ ("Ў" "" :string)
+ ("ф" "" :string)
+ ("Ф" "" :string)
+ ("х" "" :string)
+ ("Х" "" :string)
+ ("ц" "" :string)
+ ("Ц" "" :string)
+ ("ч" "" :string)
+ ("Ч" "" :string)
+ ("Ш" "" :string)
+ ("ш" "" :string)
+ ("Щ" "" :string)
+ ("щ" "" :string)
+ ("ъ" "" :string)
+ ("Ъ" "" :string)
+ ("ы" "" :string)
+ ("Ы" "" :string)
+ ("ь" "" :string)
+ ("Ь" "" :string)
+ ("э" "" :string)
+ ("Э" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("Я" "" :string)
+ ("я" "" :string)
+ ))
+
+(define-rule-set "be-resolve-diacritics"
+
+ :rules (("п" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("И" "" :string)
+ ("ў" "" :string)
+ ("й" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("Щ" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("э" "" :string)
+ ("х" "" :string)
+ ("ы" "" :string)
+ ("Я" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("щ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("Ў" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("а" "" :string)
+ ("І" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("і" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("я" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("А" "" :string)
+ ("Ы" "" :string)
+ ("Е" "" :string)
+ ("Э" "" :string)
+ ("Ъ" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("Ё" "" :string)
+ ("ё" "" :string)
+ ))
+
+(define-rule-set "be-resolve-case"
+
+ :rules (("И" "8" :string)
+ ("П" "8" :string)
+ ("Л" "8" :string)
+ ("Ж" "8" :string)
+ ("Д" "8" :string)
+ ("Н" "8" :string)
+ ("Ш" "8" :string)
+ ("Щ" "8" :string)
+ ("К" "8" :string)
+ ("Й" "8" :string)
+ ("Б" "8" :string)
+ ("Я" "8" :string)
+ ("Ч" "8" :string)
+ ("Р" "8" :string)
+ ("М" "8" :string)
+ ("Ў" "8" :string)
+ ("Т" "8" :string)
+ ("З" "8" :string)
+ ("Ц" "8" :string)
+ ("С" "8" :string)
+ ("Ф" "8" :string)
+ ("І" "8" :string)
+ ("В" "8" :string)
+ ("О" "8" :string)
+ ("Х" "8" :string)
+ ("У" "8" :string)
+ ("Ё" "8" :string)
+ ("Г" "8" :string)
+ ("Ь" "8" :string)
+ ("А" "8" :string)
+ ("Ы" "8" :string)
+ ("Е" "8" :string)
+ ("Э" "8" :string)
+ ("Ъ" "8" :string)
+ ("Ю" "8" :string)
+ ("п" "9" :string)
+ ("ч" "9" :string)
+ ("е" "9" :string)
+ ("б" "9" :string)
+ ("у" "9" :string)
+ ("ў" "9" :string)
+ ("й" "9" :string)
+ ("р" "9" :string)
+ ("к" "9" :string)
+ ("т" "9" :string)
+ ("ц" "9" :string)
+ ("о" "9" :string)
+ ("ъ" "9" :string)
+ ("и" "9" :string)
+ ("ф" "9" :string)
+ ("л" "9" :string)
+ ("г" "9" :string)
+ ("э" "9" :string)
+ ("х" "9" :string)
+ ("ы" "9" :string)
+ ("ш" "9" :string)
+ ("щ" "9" :string)
+ ("д" "9" :string)
+ ("ь" "9" :string)
+ ("в" "9" :string)
+ ("а" "9" :string)
+ ("н" "9" :string)
+ ("м" "9" :string)
+ ("з" "9" :string)
+ ("ж" "9" :string)
+ ("і" "9" :string)
+ ("с" "9" :string)
+ ("я" "9" :string)
+ ("ё" "9" :string)
+ ("ю" "9" :string)
+ ))
+
+(define-rule-set "be-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "be-resolve-special"
+
+ :rules (("п" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("И" "" :string)
+ ("ў" "" :string)
+ ("й" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("Щ" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("э" "" :string)
+ ("х" "" :string)
+ ("ы" "" :string)
+ ("Я" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("щ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("Ў" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("а" "" :string)
+ ("І" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("і" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("я" "" :string)
+ ("Ё" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("ё" "" :string)
+ ("А" "" :string)
+ ("Ы" "" :string)
+ ("Е" "" :string)
+ ("Э" "" :string)
+ ("Ъ" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/cp1251-lang.xdy b/Master/texmf/xindy/modules/lang/bulgarian/cp1251-lang.xdy
new file mode 100644
index 00000000000..96cb7895244
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/cp1251-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/bulgarian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("bg-alphabetize" "bg-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("bg-resolve-diacritics" "bg-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("bg-resolve-case" "bg-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("bg-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/cp1251-test.xdy b/Master/texmf/xindy/modules/lang/bulgarian/cp1251-test.xdy
new file mode 100644
index 00000000000..78a6e423ce4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/cp1251-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/bulgarian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("bg-alphabetize" "bg-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("bg-resolve-diacritics" "bg-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("bg-resolve-case" "bg-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("bg-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/cp1251.xdy b/Master/texmf/xindy/modules/lang/bulgarian/cp1251.xdy
new file mode 100644
index 00000000000..fef9125e02e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/cp1251.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Bulgarian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "bg-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "bg-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/iso88595-lang.xdy b/Master/texmf/xindy/modules/lang/bulgarian/iso88595-lang.xdy
new file mode 100644
index 00000000000..b5c0ac69da8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/iso88595-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/bulgarian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("bg-alphabetize" "bg-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("bg-resolve-diacritics" "bg-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("bg-resolve-case" "bg-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("bg-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/iso88595-test.xdy b/Master/texmf/xindy/modules/lang/bulgarian/iso88595-test.xdy
new file mode 100644
index 00000000000..41c0ae66b59
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/iso88595-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/bulgarian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("bg-alphabetize" "bg-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("bg-resolve-diacritics" "bg-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("bg-resolve-case" "bg-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("bg-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/iso88595.xdy b/Master/texmf/xindy/modules/lang/bulgarian/iso88595.xdy
new file mode 100644
index 00000000000..492e58b7651
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/iso88595.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Bulgarian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "bg-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "bg-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/koi8-r-lang.xdy b/Master/texmf/xindy/modules/lang/bulgarian/koi8-r-lang.xdy
new file mode 100644
index 00000000000..f5be018f13f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/koi8-r-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/bulgarian/koi8-r.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("bg-alphabetize" "bg-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("bg-resolve-diacritics" "bg-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("bg-resolve-case" "bg-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("bg-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/koi8-r-test.xdy b/Master/texmf/xindy/modules/lang/bulgarian/koi8-r-test.xdy
new file mode 100644
index 00000000000..03757bf35b8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/koi8-r-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/bulgarian/koi8-r.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("bg-alphabetize" "bg-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("bg-resolve-diacritics" "bg-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("bg-resolve-case" "bg-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("bg-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/koi8-r.xdy b/Master/texmf/xindy/modules/lang/bulgarian/koi8-r.xdy
new file mode 100644
index 00000000000..dfafca4986c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/koi8-r.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Bulgarian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "bg-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "bg-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/bulgarian/utf8-lang.xdy
new file mode 100644
index 00000000000..e4cc8f73aa8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/bulgarian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("bg-alphabetize" "bg-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("bg-resolve-diacritics" "bg-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("bg-resolve-case" "bg-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("bg-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/bulgarian/utf8-test.xdy
new file mode 100644
index 00000000000..5b0bec02214
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/bulgarian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("bg-alphabetize" "bg-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("bg-resolve-diacritics" "bg-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("bg-resolve-case" "bg-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("bg-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/bulgarian/utf8.xdy b/Master/texmf/xindy/modules/lang/bulgarian/utf8.xdy
new file mode 100644
index 00000000000..83b82e4f96b
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/bulgarian/utf8.xdy
@@ -0,0 +1,313 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Bulgarian
+
+(define-letter-group "А" :prefixes (""))
+(define-letter-group "Б" :after "А" :prefixes (""))
+(define-letter-group "В" :after "Б" :prefixes (""))
+(define-letter-group "Г" :after "В" :prefixes (""))
+(define-letter-group "Д" :after "Г" :prefixes (""))
+(define-letter-group "Е" :after "Д" :prefixes (""))
+(define-letter-group "Ж" :after "Е" :prefixes (""))
+(define-letter-group "З" :after "Ж" :prefixes (""))
+(define-letter-group "И" :after "З" :prefixes (""))
+(define-letter-group "Й" :after "И" :prefixes (""))
+(define-letter-group "К" :after "Й" :prefixes (""))
+(define-letter-group "Л" :after "К" :prefixes (""))
+(define-letter-group "М" :after "Л" :prefixes (""))
+(define-letter-group "Н" :after "М" :prefixes (""))
+(define-letter-group "О" :after "Н" :prefixes (""))
+(define-letter-group "П" :after "О" :prefixes (""))
+(define-letter-group "Р" :after "П" :prefixes (""))
+(define-letter-group "С" :after "Р" :prefixes (""))
+(define-letter-group "Т" :after "С" :prefixes (""))
+(define-letter-group "У" :after "Т" :prefixes (""))
+(define-letter-group "Ф" :after "У" :prefixes (""))
+(define-letter-group "Х" :after "Ф" :prefixes (""))
+(define-letter-group "Ц" :after "Х" :prefixes (""))
+(define-letter-group "Ч" :after "Ц" :prefixes (""))
+(define-letter-group "Ш" :after "Ч" :prefixes (""))
+(define-letter-group "Щ" :after "Ш" :prefixes (""))
+(define-letter-group "Ъ" :after "Щ" :prefixes (""))
+(define-letter-group "Ь" :after "Ъ" :prefixes (""))
+(define-letter-group "Ю" :after "Ь" :prefixes (""))
+(define-letter-group "Я" :after "Ю" :prefixes (""))
+(define-letter-group "Ѫ" :after "Я" :prefixes (""))
+
+(define-rule-set "bg-alphabetize"
+
+ :rules (("а" "" :string)
+ ("А" "" :string)
+ ("б" "" :string)
+ ("Б" "" :string)
+ ("в" "" :string)
+ ("В" "" :string)
+ ("Г" "" :string)
+ ("г" "" :string)
+ ("д" "" :string)
+ ("Д" "" :string)
+ ("е" "" :string)
+ ("Е" "" :string)
+ ("Ж" "" :string)
+ ("ж" "" :string)
+ ("З" "" :string)
+ ("з" "" :string)
+ ("И" "" :string)
+ ("и" "" :string)
+ ("й" "" :string)
+ ("Й" "" :string)
+ ("к" "" :string)
+ ("К" "" :string)
+ ("Л" "" :string)
+ ("л" "" :string)
+ ("М" "" :string)
+ ("м" "" :string)
+ ("н" "" :string)
+ ("Н" "" :string)
+ ("О" "" :string)
+ ("о" "" :string)
+ ("п" "" :string)
+ ("П" "" :string)
+ ("Р" "" :string)
+ ("р" "" :string)
+ ("С" "" :string)
+ ("с" "" :string)
+ ("Т" "" :string)
+ ("т" "" :string)
+ ("у" "" :string)
+ ("У" "" :string)
+ ("Ф" "" :string)
+ ("ф" "" :string)
+ ("Х" "" :string)
+ ("х" "" :string)
+ ("Ц" "" :string)
+ ("ц" "" :string)
+ ("Ч" "" :string)
+ ("ч" "" :string)
+ ("ш" "" :string)
+ ("Ш" "" :string)
+ ("щ" "" :string)
+ ("Щ" "" :string)
+ ("ъ" "" :string)
+ ("Ъ" "" :string)
+ ("ь" "" :string)
+ ("Ь" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("Я" "" :string)
+ ("я" "" :string)
+ ("ѫ" "" :string)
+ ("Ѫ" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-diacritics"
+
+ :rules (("Я" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("щ" "" :string)
+ ("п" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("а" "" :string)
+ ("И" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("й" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("н" "" :string)
+ ("ц" "" :string)
+ ("Х" "" :string)
+ ("Л" "" :string)
+ ("м" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("ѫ" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("с" "" :string)
+ ("Ш" "" :string)
+ ("У" "" :string)
+ ("л" "" :string)
+ ("я" "" :string)
+ ("Щ" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("А" "" :string)
+ ("Б" "" :string)
+ ("Е" "" :string)
+ ("г" "" :string)
+ ("Ъ" "" :string)
+ ("х" "" :string)
+ ("ю" "" :string)
+ ("Ѫ" "" :string)
+ ("Ю" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-case"
+
+ :rules (("Я" "8" :string)
+ ("Ч" "8" :string)
+ ("Р" "8" :string)
+ ("М" "8" :string)
+ ("Т" "8" :string)
+ ("З" "8" :string)
+ ("Ц" "8" :string)
+ ("С" "8" :string)
+ ("Ф" "8" :string)
+ ("И" "8" :string)
+ ("В" "8" :string)
+ ("О" "8" :string)
+ ("П" "8" :string)
+ ("Х" "8" :string)
+ ("Л" "8" :string)
+ ("Ж" "8" :string)
+ ("Д" "8" :string)
+ ("Н" "8" :string)
+ ("Ш" "8" :string)
+ ("У" "8" :string)
+ ("Щ" "8" :string)
+ ("Г" "8" :string)
+ ("Ь" "8" :string)
+ ("К" "8" :string)
+ ("Й" "8" :string)
+ ("А" "8" :string)
+ ("Б" "8" :string)
+ ("Е" "8" :string)
+ ("Ъ" "8" :string)
+ ("Ѫ" "8" :string)
+ ("Ю" "8" :string)
+ ("ш" "9" :string)
+ ("щ" "9" :string)
+ ("п" "9" :string)
+ ("д" "9" :string)
+ ("ь" "9" :string)
+ ("ч" "9" :string)
+ ("е" "9" :string)
+ ("в" "9" :string)
+ ("б" "9" :string)
+ ("у" "9" :string)
+ ("а" "9" :string)
+ ("й" "9" :string)
+ ("р" "9" :string)
+ ("к" "9" :string)
+ ("т" "9" :string)
+ ("н" "9" :string)
+ ("ц" "9" :string)
+ ("м" "9" :string)
+ ("о" "9" :string)
+ ("ѫ" "9" :string)
+ ("з" "9" :string)
+ ("ж" "9" :string)
+ ("ъ" "9" :string)
+ ("и" "9" :string)
+ ("ф" "9" :string)
+ ("с" "9" :string)
+ ("л" "9" :string)
+ ("я" "9" :string)
+ ("г" "9" :string)
+ ("х" "9" :string)
+ ("ю" "9" :string)
+ ))
+
+(define-rule-set "bg-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "bg-resolve-special"
+
+ :rules (("п" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("И" "" :string)
+ ("й" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("Щ" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("х" "" :string)
+ ("ш" "" :string)
+ ("Я" "" :string)
+ ("Р" "" :string)
+ ("Ч" "" :string)
+ ("щ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("З" "" :string)
+ ("Т" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("а" "" :string)
+ ("Ф" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("ж" "" :string)
+ ("з" "" :string)
+ ("ѫ" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("я" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("А" "" :string)
+ ("Е" "" :string)
+ ("Ъ" "" :string)
+ ("ю" "" :string)
+ ("Ѫ" "" :string)
+ ("Ю" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/croatian/cp1250-lang.xdy b/Master/texmf/xindy/modules/lang/croatian/cp1250-lang.xdy
new file mode 100644
index 00000000000..ef03041e720
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/croatian/cp1250-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/croatian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hr-alphabetize" "hr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hr-resolve-diacritics" "hr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hr-resolve-case" "hr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/croatian/cp1250-test.xdy b/Master/texmf/xindy/modules/lang/croatian/cp1250-test.xdy
new file mode 100644
index 00000000000..bdc0a657063
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/croatian/cp1250-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/croatian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hr-alphabetize" "hr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hr-resolve-diacritics" "hr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hr-resolve-case" "hr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/croatian/cp1250.xdy b/Master/texmf/xindy/modules/lang/croatian/cp1250.xdy
new file mode 100644
index 00000000000..afab46f109d
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/croatian/cp1250.xdy
@@ -0,0 +1,352 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Croatian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "D" :after "D" :prefixes (""))
+(define-letter-group "" :after "D" :prefixes (""))
+(define-letter-group "E" :after "" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "Lj" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Lj" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Nj" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Nj" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "hr-alphabetize"
+
+ :rules (("d" "" :string)
+ ("D" "" :string)
+ ("D" "" :string)
+ ("LJ" "" :string)
+ ("lj" "" :string)
+ ("Lj" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("Nj" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "hr-resolve-diacritics"
+
+ :rules (("d" "" :string)
+ ("LJ" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("lj" "" :string)
+ ("Nj" "" :string)
+ ("Lj" "" :string)
+ ("D" "" :string)
+ ("D" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "hr-resolve-case"
+
+ :rules (("LJ" "7" :string)
+ ("NJ" "7" :string)
+ ("D" "7" :string)
+ ("Nj" "8" :string)
+ ("Lj" "8" :string)
+ ("D" "8" :string)
+ ("d" "9" :string)
+ ("nj" "9" :string)
+ ("lj" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "hr-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "hr-resolve-special"
+
+ :rules (("d" "" :string)
+ ("LJ" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("lj" "" :string)
+ ("Nj" "" :string)
+ ("Lj" "" :string)
+ ("D" "" :string)
+ ("D" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/croatian/latin2-lang.xdy b/Master/texmf/xindy/modules/lang/croatian/latin2-lang.xdy
new file mode 100644
index 00000000000..8b46384418a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/croatian/latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/croatian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hr-alphabetize" "hr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hr-resolve-diacritics" "hr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hr-resolve-case" "hr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/croatian/latin2-test.xdy b/Master/texmf/xindy/modules/lang/croatian/latin2-test.xdy
new file mode 100644
index 00000000000..f5faf5ed9fe
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/croatian/latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/croatian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hr-alphabetize" "hr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hr-resolve-diacritics" "hr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hr-resolve-case" "hr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/croatian/latin2.xdy b/Master/texmf/xindy/modules/lang/croatian/latin2.xdy
new file mode 100644
index 00000000000..e18fda89683
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/croatian/latin2.xdy
@@ -0,0 +1,352 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Croatian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "D" :after "D" :prefixes (""))
+(define-letter-group "" :after "D" :prefixes (""))
+(define-letter-group "E" :after "" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "Lj" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Lj" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Nj" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Nj" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "hr-alphabetize"
+
+ :rules (("D" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("LJ" "" :string)
+ ("lj" "" :string)
+ ("Lj" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("Nj" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "hr-resolve-diacritics"
+
+ :rules (("LJ" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("lj" "" :string)
+ ("D" "" :string)
+ ("Nj" "" :string)
+ ("d" "" :string)
+ ("Lj" "" :string)
+ ("D" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "hr-resolve-case"
+
+ :rules (("LJ" "7" :string)
+ ("NJ" "7" :string)
+ ("D" "7" :string)
+ ("Nj" "8" :string)
+ ("Lj" "8" :string)
+ ("D" "8" :string)
+ ("nj" "9" :string)
+ ("lj" "9" :string)
+ ("d" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "hr-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "hr-resolve-special"
+
+ :rules (("LJ" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("lj" "" :string)
+ ("D" "" :string)
+ ("Nj" "" :string)
+ ("d" "" :string)
+ ("Lj" "" :string)
+ ("D" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/croatian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/croatian/utf8-lang.xdy
new file mode 100644
index 00000000000..8dd190f561a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/croatian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/croatian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hr-alphabetize" "hr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hr-resolve-diacritics" "hr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hr-resolve-case" "hr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/croatian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/croatian/utf8-test.xdy
new file mode 100644
index 00000000000..30849c9f3c0
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/croatian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/croatian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hr-alphabetize" "hr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hr-resolve-diacritics" "hr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hr-resolve-case" "hr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/croatian/utf8.xdy b/Master/texmf/xindy/modules/lang/croatian/utf8.xdy
new file mode 100644
index 00000000000..33c5014f687
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/croatian/utf8.xdy
@@ -0,0 +1,552 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Croatian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Č" :after "C" :prefixes (""))
+(define-letter-group "Ć" :after "Č" :prefixes (""))
+(define-letter-group "D" :after "Ć" :prefixes (""))
+(define-letter-group "Dž" :after "D" :prefixes (""))
+(define-letter-group "Đ" :after "Dž" :prefixes (""))
+(define-letter-group "E" :after "Đ" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "Lj" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Lj" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Nj" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Nj" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Š" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+
+(define-rule-set "hr-alphabetize"
+
+ :rules (("dž" "" :string)
+ ("Dž" "" :string)
+ ("DŽ" "" :string)
+ ("ḱ" "" :string)
+ ("Ḱ" "" :string)
+ ("ȃ" "" :string)
+ ("ȁ" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("Ȃ" "" :string)
+ ("Ȁ" "" :string)
+ ("č" "" :string)
+ ("Č" "" :string)
+ ("Ć" "" :string)
+ ("ć" "" :string)
+ ("dz" "" :string)
+ ("DZ" "" :string)
+ ("Dz" "" :string)
+ ("dž" "" :string)
+ ("DŽ" "" :string)
+ ("Dž" "" :string)
+ ("đ" "" :string)
+ ("Đ" "" :string)
+ ("Ȅ" "" :string)
+ ("Ȇ" "" :string)
+ ("ȅ" "" :string)
+ ("È" "" :string)
+ ("ȇ" "" :string)
+ ("è" "" :string)
+ ("Ǵ" "" :string)
+ ("ǵ" "" :string)
+ ("Ȉ" "" :string)
+ ("ȋ" "" :string)
+ ("ì" "" :string)
+ ("Ȋ" "" :string)
+ ("ȉ" "" :string)
+ ("Ì" "" :string)
+ ("lj" "" :string)
+ ("Lj" "" :string)
+ ("LJ" "" :string)
+ ("LJ" "" :string)
+ ("lj" "" :string)
+ ("Lj" "" :string)
+ ("NJ" "" :string)
+ ("Nj" "" :string)
+ ("nj" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("Nj" "" :string)
+ ("ȏ" "" :string)
+ ("Ò" "" :string)
+ ("ȍ" "" :string)
+ ("Ȏ" "" :string)
+ ("ò" "" :string)
+ ("Ȍ" "" :string)
+ ("Ȑ" "" :string)
+ ("ȓ" "" :string)
+ ("Ȓ" "" :string)
+ ("ȑ" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("ù" "" :string)
+ ("Ù" "" :string)
+ ("ȗ" "" :string)
+ ("Ȗ" "" :string)
+ ("Ȕ" "" :string)
+ ("ȕ" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "hr-resolve-diacritics"
+
+ :rules (("dž" "" :string)
+ ("Dž" "" :string)
+ ("DŽ" "" :string)
+ ("ḱ" "" :string)
+ ("Ḱ" "" :string)
+ ("Ž" "" :string)
+ ("LJ" "" :string)
+ ("NJ" "" :string)
+ ("nj" "" :string)
+ ("č" "" :string)
+ ("lj" "" :string)
+ ("đ" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Nj" "" :string)
+ ("Ć" "" :string)
+ ("Lj" "" :string)
+ ("Č" "" :string)
+ ("Đ" "" :string)
+ ("ć" "" :string)
+ ("ž" "" :string)
+ ("ù" "" :string)
+ ("Ò" "" :string)
+ ("Ȑ" "" :string)
+ ("Ù" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("Ǵ" "" :string)
+ ("ì" "" :string)
+ ("ǵ" "" :string)
+ ("à" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("ȑ" "" :string)
+ ("Ì" "" :string)
+ ("Ȉ" "" :string)
+ ("Ȅ" "" :string)
+ ("ȁ" "" :string)
+ ("ȍ" "" :string)
+ ("ȅ" "" :string)
+ ("ȓ" "" :string)
+ ("Ȓ" "" :string)
+ ("Ȍ" "" :string)
+ ("Ȕ" "" :string)
+ ("ȉ" "" :string)
+ ("ȕ" "" :string)
+ ("Ȁ" "" :string)
+ ("ȋ" "" :string)
+ ("ȏ" "" :string)
+ ("ȃ" "" :string)
+ ("Ȇ" "" :string)
+ ("Ȏ" "" :string)
+ ("ȗ" "" :string)
+ ("Ȗ" "" :string)
+ ("ȇ" "" :string)
+ ("Ȋ" "" :string)
+ ("Ȃ" "" :string)
+ ("dž" "" :string)
+ ("DŽ" "" :string)
+ ("Dž" "" :string)
+ ("dz" "" :string)
+ ("NJ" "" :string)
+ ("Nj" "" :string)
+ ("lj" "" :string)
+ ("Lj" "" :string)
+ ("DZ" "" :string)
+ ("Dz" "" :string)
+ ("LJ" "" :string)
+ ("nj" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "hr-resolve-case"
+
+ :rules (("DŽ" "7" :string)
+ ("Ḱ" "8" :string)
+ ("Dž" "8" :string)
+ ("dž" "9" :string)
+ ("ḱ" "9" :string)
+ ("LJ" "7" :string)
+ ("NJ" "7" :string)
+ ("Ȉ" "8" :string)
+ ("Ž" "8" :string)
+ ("Ȅ" "8" :string)
+ ("Ò" "8" :string)
+ ("Ȇ" "8" :string)
+ ("Ȑ" "8" :string)
+ ("Ù" "8" :string)
+ ("Ȏ" "8" :string)
+ ("Š" "8" :string)
+ ("È" "8" :string)
+ ("Nj" "8" :string)
+ ("Ȗ" "8" :string)
+ ("Ȓ" "8" :string)
+ ("Ȍ" "8" :string)
+ ("Ć" "8" :string)
+ ("Ǵ" "8" :string)
+ ("Lj" "8" :string)
+ ("Ȕ" "8" :string)
+ ("Ȋ" "8" :string)
+ ("À" "8" :string)
+ ("Č" "8" :string)
+ ("Ì" "8" :string)
+ ("Ȃ" "8" :string)
+ ("Đ" "8" :string)
+ ("Ȁ" "8" :string)
+ ("DŽ" "88" :string)
+ ("NJ" "88" :string)
+ ("DZ" "88" :string)
+ ("LJ" "88" :string)
+ ("Dž" "89" :string)
+ ("Nj" "89" :string)
+ ("Lj" "89" :string)
+ ("Dz" "89" :string)
+ ("ù" "9" :string)
+ ("ȋ" "9" :string)
+ ("ȏ" "9" :string)
+ ("ȃ" "9" :string)
+ ("nj" "9" :string)
+ ("ȁ" "9" :string)
+ ("ȍ" "9" :string)
+ ("č" "9" :string)
+ ("lj" "9" :string)
+ ("ȅ" "9" :string)
+ ("đ" "9" :string)
+ ("ȓ" "9" :string)
+ ("ò" "9" :string)
+ ("ȗ" "9" :string)
+ ("š" "9" :string)
+ ("ȇ" "9" :string)
+ ("ì" "9" :string)
+ ("ǵ" "9" :string)
+ ("à" "9" :string)
+ ("è" "9" :string)
+ ("ȉ" "9" :string)
+ ("ȑ" "9" :string)
+ ("ȕ" "9" :string)
+ ("ć" "9" :string)
+ ("ž" "9" :string)
+ ("dž" "99" :string)
+ ("dz" "99" :string)
+ ("lj" "99" :string)
+ ("nj" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "hr-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "hr-resolve-special"
+
+ :rules (("dž" "" :string)
+ ("ḱ" "" :string)
+ ("Ḱ" "" :string)
+ ("Dž" "" :string)
+ ("DŽ" "" :string)
+ ("ù" "" :string)
+ ("Ȉ" "" :string)
+ ("ȋ" "" :string)
+ ("ȏ" "" :string)
+ ("Ž" "" :string)
+ ("Ȅ" "" :string)
+ ("LJ" "" :string)
+ ("ȃ" "" :string)
+ ("Ò" "" :string)
+ ("NJ" "" :string)
+ ("Ȇ" "" :string)
+ ("nj" "" :string)
+ ("ȁ" "" :string)
+ ("ȍ" "" :string)
+ ("č" "" :string)
+ ("lj" "" :string)
+ ("Ȑ" "" :string)
+ ("Ù" "" :string)
+ ("ȅ" "" :string)
+ ("Ȏ" "" :string)
+ ("đ" "" :string)
+ ("ȓ" "" :string)
+ ("Š" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("ȗ" "" :string)
+ ("š" "" :string)
+ ("Nj" "" :string)
+ ("Ȗ" "" :string)
+ ("Ȓ" "" :string)
+ ("Ȍ" "" :string)
+ ("ȇ" "" :string)
+ ("Ć" "" :string)
+ ("Ǵ" "" :string)
+ ("ì" "" :string)
+ ("ǵ" "" :string)
+ ("à" "" :string)
+ ("Lj" "" :string)
+ ("Ȕ" "" :string)
+ ("Ȋ" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("Č" "" :string)
+ ("ȉ" "" :string)
+ ("ȑ" "" :string)
+ ("Ì" "" :string)
+ ("ȕ" "" :string)
+ ("Ȃ" "" :string)
+ ("Đ" "" :string)
+ ("ć" "" :string)
+ ("Ȁ" "" :string)
+ ("ž" "" :string)
+ ("dž" "" :string)
+ ("DŽ" "" :string)
+ ("Dž" "" :string)
+ ("dz" "" :string)
+ ("NJ" "" :string)
+ ("Nj" "" :string)
+ ("lj" "" :string)
+ ("Lj" "" :string)
+ ("DZ" "" :string)
+ ("Dz" "" :string)
+ ("LJ" "" :string)
+ ("nj" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/czech/cp1250-lang.xdy b/Master/texmf/xindy/modules/lang/czech/cp1250-lang.xdy
new file mode 100644
index 00000000000..e0f587dbf37
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/czech/cp1250-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/czech/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("cs-alphabetize" "cs-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("cs-resolve-diacritics" "cs-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("cs-resolve-case" "cs-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("cs-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/czech/cp1250-test.xdy b/Master/texmf/xindy/modules/lang/czech/cp1250-test.xdy
new file mode 100644
index 00000000000..f07eda92b19
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/czech/cp1250-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/czech/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("cs-alphabetize" "cs-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("cs-resolve-diacritics" "cs-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("cs-resolve-case" "cs-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("cs-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/czech/cp1250.xdy b/Master/texmf/xindy/modules/lang/czech/cp1250.xdy
new file mode 100644
index 00000000000..444788566ad
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/czech/cp1250.xdy
@@ -0,0 +1,433 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Czech
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "" :after "R" :prefixes (""))
+(define-letter-group "S" :after "" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "cs-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "cs-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "cs-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "cs-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "cs-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/czech/latin2-lang.xdy b/Master/texmf/xindy/modules/lang/czech/latin2-lang.xdy
new file mode 100644
index 00000000000..29a54427bec
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/czech/latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/czech/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("cs-alphabetize" "cs-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("cs-resolve-diacritics" "cs-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("cs-resolve-case" "cs-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("cs-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/czech/latin2-test.xdy b/Master/texmf/xindy/modules/lang/czech/latin2-test.xdy
new file mode 100644
index 00000000000..7f619b47b16
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/czech/latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/czech/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("cs-alphabetize" "cs-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("cs-resolve-diacritics" "cs-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("cs-resolve-case" "cs-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("cs-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/czech/latin2.xdy b/Master/texmf/xindy/modules/lang/czech/latin2.xdy
new file mode 100644
index 00000000000..625907dc1e5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/czech/latin2.xdy
@@ -0,0 +1,433 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Czech
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "" :after "R" :prefixes (""))
+(define-letter-group "S" :after "" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "cs-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "cs-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "cs-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "cs-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "cs-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/czech/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/czech/utf8-lang.xdy
new file mode 100644
index 00000000000..b1973bd8fe2
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/czech/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/czech/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("cs-alphabetize" "cs-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("cs-resolve-diacritics" "cs-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("cs-resolve-case" "cs-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("cs-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/czech/utf8-test.xdy b/Master/texmf/xindy/modules/lang/czech/utf8-test.xdy
new file mode 100644
index 00000000000..e3f1721903c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/czech/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/czech/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("cs-alphabetize" "cs-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("cs-resolve-diacritics" "cs-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("cs-resolve-case" "cs-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("cs-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/czech/utf8.xdy b/Master/texmf/xindy/modules/lang/czech/utf8.xdy
new file mode 100644
index 00000000000..92e36997d5a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/czech/utf8.xdy
@@ -0,0 +1,433 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Czech
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Č" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Č" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "Ř" :after "R" :prefixes (""))
+(define-letter-group "S" :after "Ř" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Š" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+
+(define-rule-set "cs-alphabetize"
+
+ :rules (("Á" "" :string)
+ ("Ä" "" :string)
+ ("á" "" :string)
+ ("ä" "" :string)
+ ("č" "" :string)
+ ("Č" "" :string)
+ ("ď" "" :string)
+ ("Ď" "" :string)
+ ("Ě" "" :string)
+ ("É" "" :string)
+ ("ě" "" :string)
+ ("é" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("Í" "" :string)
+ ("í" "" :string)
+ ("Ň" "" :string)
+ ("ň" "" :string)
+ ("Ö" "" :string)
+ ("Ó" "" :string)
+ ("ö" "" :string)
+ ("ó" "" :string)
+ ("Ř" "" :string)
+ ("ř" "" :string)
+ ("ß" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ť" "" :string)
+ ("ť" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("ů" "" :string)
+ ("Ů" "" :string)
+ ("ü" "" :string)
+ ("Ý" "" :string)
+ ("ý" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "cs-resolve-diacritics"
+
+ :rules (("Ž" "" :string)
+ ("Ch" "" :string)
+ ("Ř" "" :string)
+ ("č" "" :string)
+ ("ch" "" :string)
+ ("Š" "" :string)
+ ("ř" "" :string)
+ ("š" "" :string)
+ ("CH" "" :string)
+ ("Č" "" :string)
+ ("ž" "" :string)
+ ("Ý" "" :string)
+ ("Á" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("Ú" "" :string)
+ ("Ň" "" :string)
+ ("ú" "" :string)
+ ("ď" "" :string)
+ ("á" "" :string)
+ ("í" "" :string)
+ ("Ď" "" :string)
+ ("ó" "" :string)
+ ("é" "" :string)
+ ("Ť" "" :string)
+ ("ň" "" :string)
+ ("ť" "" :string)
+ ("Ě" "" :string)
+ ("Ö" "" :string)
+ ("Ä" "" :string)
+ ("ě" "" :string)
+ ("ö" "" :string)
+ ("ä" "" :string)
+ ("ů" "" :string)
+ ("Ů" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "cs-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ý" "8" :string)
+ ("Ě" "8" :string)
+ ("Ö" "8" :string)
+ ("Á" "8" :string)
+ ("Ž" "8" :string)
+ ("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Í" "8" :string)
+ ("Ch" "8" :string)
+ ("Ú" "8" :string)
+ ("Ř" "8" :string)
+ ("Ň" "8" :string)
+ ("Ä" "8" :string)
+ ("Ü" "8" :string)
+ ("Š" "8" :string)
+ ("Ů" "8" :string)
+ ("Ď" "8" :string)
+ ("Č" "8" :string)
+ ("Ť" "8" :string)
+ ("ý" "9" :string)
+ ("č" "9" :string)
+ ("ch" "9" :string)
+ ("ú" "9" :string)
+ ("ě" "9" :string)
+ ("ď" "9" :string)
+ ("á" "9" :string)
+ ("ö" "9" :string)
+ ("ř" "9" :string)
+ ("ä" "9" :string)
+ ("š" "9" :string)
+ ("ů" "9" :string)
+ ("í" "9" :string)
+ ("ó" "9" :string)
+ ("é" "9" :string)
+ ("ü" "9" :string)
+ ("ž" "9" :string)
+ ("ň" "9" :string)
+ ("ť" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "cs-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "cs-resolve-special"
+
+ :rules (("Ý" "" :string)
+ ("Ě" "" :string)
+ ("Ö" "" :string)
+ ("Á" "" :string)
+ ("Ž" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("Ch" "" :string)
+ ("Ú" "" :string)
+ ("Ř" "" :string)
+ ("Ň" "" :string)
+ ("č" "" :string)
+ ("Ä" "" :string)
+ ("ch" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("ě" "" :string)
+ ("ď" "" :string)
+ ("á" "" :string)
+ ("ö" "" :string)
+ ("Š" "" :string)
+ ("ř" "" :string)
+ ("ä" "" :string)
+ ("š" "" :string)
+ ("ů" "" :string)
+ ("Ů" "" :string)
+ ("CH" "" :string)
+ ("í" "" :string)
+ ("Ď" "" :string)
+ ("ó" "" :string)
+ ("Č" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("ž" "" :string)
+ ("Ť" "" :string)
+ ("ň" "" :string)
+ ("ť" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/danish/cp1252-lang.xdy b/Master/texmf/xindy/modules/lang/danish/cp1252-lang.xdy
new file mode 100644
index 00000000000..7101834b7bf
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/danish/cp1252-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/danish/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("da-alphabetize" "da-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("da-resolve-diacritics" "da-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("da-resolve-case" "da-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("da-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/danish/cp1252-test.xdy b/Master/texmf/xindy/modules/lang/danish/cp1252-test.xdy
new file mode 100644
index 00000000000..e830b686891
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/danish/cp1252-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/danish/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("da-alphabetize" "da-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("da-resolve-diacritics" "da-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("da-resolve-case" "da-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("da-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/danish/cp1252.xdy b/Master/texmf/xindy/modules/lang/danish/cp1252.xdy
new file mode 100644
index 00000000000..937f481a9c7
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/danish/cp1252.xdy
@@ -0,0 +1,451 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Danish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "da-alphabetize"
+
+ :rules (("aa" "" :string)
+ ("AA" "" :string)
+ ("Aa" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "ڤ" :string)
+ ("" "ڤ" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "da-resolve-diacritics"
+
+ :rules (("aa" "" :string)
+ ("AA" "" :string)
+ ("Aa" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "da-resolve-case"
+
+ :rules (("AA" "7" :string)
+ ("Aa" "8" :string)
+ ("aa" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("d" "9" :string)
+ ("" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "da-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "da-resolve-special"
+
+ :rules (("aa" "" :string)
+ ("AA" "" :string)
+ ("Aa" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/danish/latin9-lang.xdy b/Master/texmf/xindy/modules/lang/danish/latin9-lang.xdy
new file mode 100644
index 00000000000..27f3ba83726
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/danish/latin9-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/danish/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("da-alphabetize" "da-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("da-resolve-diacritics" "da-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("da-resolve-case" "da-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("da-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/danish/latin9-test.xdy b/Master/texmf/xindy/modules/lang/danish/latin9-test.xdy
new file mode 100644
index 00000000000..55c1de2b186
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/danish/latin9-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/danish/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("da-alphabetize" "da-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("da-resolve-diacritics" "da-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("da-resolve-case" "da-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("da-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/danish/latin9.xdy b/Master/texmf/xindy/modules/lang/danish/latin9.xdy
new file mode 100644
index 00000000000..d0e6afe7292
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/danish/latin9.xdy
@@ -0,0 +1,451 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Danish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "da-alphabetize"
+
+ :rules (("aa" "" :string)
+ ("AA" "" :string)
+ ("Aa" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "ڤ" :string)
+ ("" "ڤ" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "da-resolve-diacritics"
+
+ :rules (("aa" "" :string)
+ ("AA" "" :string)
+ ("Aa" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "da-resolve-case"
+
+ :rules (("AA" "7" :string)
+ ("Aa" "8" :string)
+ ("aa" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "da-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "da-resolve-special"
+
+ :rules (("aa" "" :string)
+ ("AA" "" :string)
+ ("Aa" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/danish/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/danish/utf8-lang.xdy
new file mode 100644
index 00000000000..13954a330f0
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/danish/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/danish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("da-alphabetize" "da-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("da-resolve-diacritics" "da-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("da-resolve-case" "da-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("da-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/danish/utf8-test.xdy b/Master/texmf/xindy/modules/lang/danish/utf8-test.xdy
new file mode 100644
index 00000000000..36ea83643d6
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/danish/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/danish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("da-alphabetize" "da-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("da-resolve-diacritics" "da-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("da-resolve-case" "da-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("da-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/danish/utf8.xdy b/Master/texmf/xindy/modules/lang/danish/utf8.xdy
new file mode 100644
index 00000000000..9cfbba1a394
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/danish/utf8.xdy
@@ -0,0 +1,475 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Danish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Æ" :after "Z" :prefixes (""))
+(define-letter-group "Ø" :after "Æ" :prefixes (""))
+(define-letter-group "Å" :after "Ø" :prefixes (""))
+
+(define-rule-set "da-alphabetize"
+
+ :rules (("Á" "" :string)
+ ("Â" "" :string)
+ ("á" "" :string)
+ ("â" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("Ç" "" :string)
+ ("ç" "" :string)
+ ("ð" "" :string)
+ ("Ð" "" :string)
+ ("É" "" :string)
+ ("Ê" "" :string)
+ ("È" "" :string)
+ ("Ë" "" :string)
+ ("è" "" :string)
+ ("ë" "" :string)
+ ("ê" "" :string)
+ ("é" "" :string)
+ ("Í" "" :string)
+ ("í" "" :string)
+ ("Ô" "" :string)
+ ("Ó" "" :string)
+ ("ô" "" :string)
+ ("ó" "" :string)
+ ("þ" "ڤ" :string)
+ ("Þ" "ڤ" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ý" "" :string)
+ ("ý" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("Æ" "" :string)
+ ("æ" "" :string)
+ ("Ǽ" "" :string)
+ ("ǽ" "" :string)
+ ("Ö" "" :string)
+ ("ǿ" "" :string)
+ ("ø" "" :string)
+ ("œ" "" :string)
+ ("ö" "" :string)
+ ("Œ" "" :string)
+ ("Ø" "" :string)
+ ("Ǿ" "" :string)
+ ("Ǻ" "" :string)
+ ("ǻ" "" :string)
+ ("aa" "" :string)
+ ("AA" "" :string)
+ ("Å" "" :string)
+ ("å" "" :string)
+ ("Aa" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "da-resolve-diacritics"
+
+ :rules (("ø" "" :string)
+ ("Æ" "" :string)
+ ("Å" "" :string)
+ ("å" "" :string)
+ ("Ø" "" :string)
+ ("æ" "" :string)
+ ("Ý" "" :string)
+ ("Á" "" :string)
+ ("ð" "" :string)
+ ("ǿ" "" :string)
+ ("aa" "" :string)
+ ("Ç" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("Ú" "" :string)
+ ("AA" "" :string)
+ ("ú" "" :string)
+ ("á" "" :string)
+ ("ç" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("Ǽ" "" :string)
+ ("é" "" :string)
+ ("ǽ" "" :string)
+ ("Ǿ" "" :string)
+ ("Ð" "" :string)
+ ("Aa" "" :string)
+ ("Ǻ" "" :string)
+ ("Ö" "" :string)
+ ("ǻ" "" :string)
+ ("Ô" "" :string)
+ ("ô" "" :string)
+ ("Ü" "" :string)
+ ("ö" "" :string)
+ ("È" "" :string)
+ ("à" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("ü" "" :string)
+ ("Â" "" :string)
+ ("œ" "" :string)
+ ("Ê" "" :string)
+ ("Œ" "" :string)
+ ("â" "" :string)
+ ("ê" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("þ" "" :string)
+ ("Þ" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "da-resolve-case"
+
+ :rules (("AA" "7" :string)
+ ("Ý" "8" :string)
+ ("Ǻ" "8" :string)
+ ("Ö" "8" :string)
+ ("Á" "8" :string)
+ ("Â" "8" :string)
+ ("Ô" "8" :string)
+ ("Ç" "8" :string)
+ ("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Í" "8" :string)
+ ("Ú" "8" :string)
+ ("Ü" "8" :string)
+ ("Æ" "8" :string)
+ ("Ê" "8" :string)
+ ("Å" "8" :string)
+ ("È" "8" :string)
+ ("Œ" "8" :string)
+ ("Ë" "8" :string)
+ ("Ø" "8" :string)
+ ("À" "8" :string)
+ ("Ǽ" "8" :string)
+ ("Ǿ" "8" :string)
+ ("Ð" "8" :string)
+ ("Aa" "8" :string)
+ ("Þ" "89" :string)
+ ("ǻ" "9" :string)
+ ("ð" "9" :string)
+ ("ǿ" "9" :string)
+ ("aa" "9" :string)
+ ("ý" "9" :string)
+ ("ô" "9" :string)
+ ("ø" "9" :string)
+ ("ú" "9" :string)
+ ("œ" "9" :string)
+ ("á" "9" :string)
+ ("ö" "9" :string)
+ ("å" "9" :string)
+ ("ç" "9" :string)
+ ("â" "9" :string)
+ ("à" "9" :string)
+ ("í" "9" :string)
+ ("æ" "9" :string)
+ ("ó" "9" :string)
+ ("è" "9" :string)
+ ("ë" "9" :string)
+ ("ê" "9" :string)
+ ("é" "9" :string)
+ ("ǽ" "9" :string)
+ ("ü" "9" :string)
+ ("þ" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "da-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "da-resolve-special"
+
+ :rules (("Ý" "" :string)
+ ("Ǻ" "" :string)
+ ("Ö" "" :string)
+ ("ǻ" "" :string)
+ ("Á" "" :string)
+ ("Â" "" :string)
+ ("ð" "" :string)
+ ("ǿ" "" :string)
+ ("aa" "" :string)
+ ("Ô" "" :string)
+ ("Ç" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("ô" "" :string)
+ ("Ú" "" :string)
+ ("ø" "" :string)
+ ("AA" "" :string)
+ ("ú" "" :string)
+ ("œ" "" :string)
+ ("Ü" "" :string)
+ ("Æ" "" :string)
+ ("Ê" "" :string)
+ ("á" "" :string)
+ ("Å" "" :string)
+ ("ö" "" :string)
+ ("È" "" :string)
+ ("Œ" "" :string)
+ ("å" "" :string)
+ ("ç" "" :string)
+ ("â" "" :string)
+ ("Ë" "" :string)
+ ("à" "" :string)
+ ("í" "" :string)
+ ("Ø" "" :string)
+ ("æ" "" :string)
+ ("ó" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("ë" "" :string)
+ ("ê" "" :string)
+ ("Ǽ" "" :string)
+ ("é" "" :string)
+ ("ǽ" "" :string)
+ ("ü" "" :string)
+ ("Ǿ" "" :string)
+ ("Ð" "" :string)
+ ("Aa" "" :string)
+ ("þ" "" :string)
+ ("Þ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1-lang.xdy b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1-lang.xdy
new file mode 100644
index 00000000000..0d1861efbd3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/dutch/ij-as-ij-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("nl-alphabetize" "nl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("nl-resolve-diacritics" "nl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("nl-resolve-case" "nl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("nl-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1-test.xdy b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1-test.xdy
new file mode 100644
index 00000000000..1a517f60951
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/dutch/ij-as-ij-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("nl-alphabetize" "nl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("nl-resolve-diacritics" "nl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("nl-resolve-case" "nl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("nl-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1.xdy b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1.xdy
new file mode 100644
index 00000000000..6858675fe34
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-latin1.xdy
@@ -0,0 +1,320 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Dutch
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "nl-alphabetize"
+
+ :rules (("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "nl-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "nl-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "nl-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "nl-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8-lang.xdy
new file mode 100644
index 00000000000..1b236d936d9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/dutch/ij-as-ij-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("nl-alphabetize" "nl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("nl-resolve-diacritics" "nl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("nl-resolve-case" "nl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("nl-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8-test.xdy b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8-test.xdy
new file mode 100644
index 00000000000..fd7fcbff524
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/dutch/ij-as-ij-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("nl-alphabetize" "nl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("nl-resolve-diacritics" "nl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("nl-resolve-case" "nl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("nl-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8.xdy b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8.xdy
new file mode 100644
index 00000000000..6592ae8c54a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/dutch/ij-as-ij-utf8.xdy
@@ -0,0 +1,328 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Dutch
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "nl-alphabetize"
+
+ :rules (("Ä" "" :string)
+ ("ä" "" :string)
+ ("É" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("é" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("IJ" "" :string)
+ ("ij" "" :string)
+ ("Ö" "" :string)
+ ("ö" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "nl-resolve-diacritics"
+
+ :rules (("Ö" "" :string)
+ ("Ï" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("ï" "" :string)
+ ("ö" "" :string)
+ ("ä" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("ü" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("IJ" "" :string)
+ ("ij" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "nl-resolve-case"
+
+ :rules (("Ö" "8" :string)
+ ("É" "8" :string)
+ ("Ï" "8" :string)
+ ("Ä" "8" :string)
+ ("Ü" "8" :string)
+ ("Ë" "8" :string)
+ ("IJ" "89" :string)
+ ("ï" "9" :string)
+ ("ö" "9" :string)
+ ("ä" "9" :string)
+ ("ë" "9" :string)
+ ("é" "9" :string)
+ ("ü" "9" :string)
+ ("ij" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "nl-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "nl-resolve-special"
+
+ :rules (("Ö" "" :string)
+ ("É" "" :string)
+ ("Ï" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("ï" "" :string)
+ ("ö" "" :string)
+ ("ä" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("IJ" "" :string)
+ ("ij" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8-lang.xdy
new file mode 100644
index 00000000000..0241d23ca58
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/dutch/ij-as-y-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("nl-alphabetize" "nl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("nl-resolve-diacritics" "nl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("nl-resolve-case" "nl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("nl-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8-test.xdy b/Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8-test.xdy
new file mode 100644
index 00000000000..2dbd0b92a1c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/dutch/ij-as-y-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("nl-alphabetize" "nl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("nl-resolve-diacritics" "nl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("nl-resolve-case" "nl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("nl-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8.xdy b/Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8.xdy
new file mode 100644
index 00000000000..272e2b6a568
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/dutch/ij-as-y-utf8.xdy
@@ -0,0 +1,332 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Dutch
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "nl-alphabetize"
+
+ :rules (("Ä" "" :string)
+ ("ä" "" :string)
+ ("É" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("é" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("Ö" "" :string)
+ ("ö" "" :string)
+ ("ß" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("IJ" "" :string)
+ ("ij" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "nl-resolve-diacritics"
+
+ :rules (("Ö" "" :string)
+ ("Ï" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("ï" "" :string)
+ ("ö" "" :string)
+ ("IJ" "" :string)
+ ("ij" "" :string)
+ ("ä" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("ü" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "nl-resolve-case"
+
+ :rules (("Ö" "8" :string)
+ ("É" "8" :string)
+ ("Ï" "8" :string)
+ ("Ä" "8" :string)
+ ("Ü" "8" :string)
+ ("IJ" "8" :string)
+ ("Ë" "8" :string)
+ ("ï" "9" :string)
+ ("ö" "9" :string)
+ ("ij" "9" :string)
+ ("ä" "9" :string)
+ ("ë" "9" :string)
+ ("é" "9" :string)
+ ("ü" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "nl-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "nl-resolve-special"
+
+ :rules (("Ö" "" :string)
+ ("É" "" :string)
+ ("Ï" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("ï" "" :string)
+ ("ö" "" :string)
+ ("IJ" "" :string)
+ ("ij" "" :string)
+ ("ä" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/english/cp1252-lang.xdy b/Master/texmf/xindy/modules/lang/english/cp1252-lang.xdy
new file mode 100644
index 00000000000..429ce62bf57
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/english/cp1252-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/english/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("en-alphabetize" "en-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("en-resolve-diacritics" "en-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("en-resolve-case" "en-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("en-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/english/cp1252-test.xdy b/Master/texmf/xindy/modules/lang/english/cp1252-test.xdy
new file mode 100644
index 00000000000..3bf77fb7d44
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/english/cp1252-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/english/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("en-alphabetize" "en-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("en-resolve-diacritics" "en-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("en-resolve-case" "en-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("en-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/english/cp1252.xdy b/Master/texmf/xindy/modules/lang/english/cp1252.xdy
new file mode 100644
index 00000000000..39ffc349e17
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/english/cp1252.xdy
@@ -0,0 +1,385 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: English
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "en-alphabetize"
+
+ :rules (("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "×" :string)
+ ("" "×" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "en-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "en-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("" "89" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "en-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "en-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/english/latin9-lang.xdy b/Master/texmf/xindy/modules/lang/english/latin9-lang.xdy
new file mode 100644
index 00000000000..eb48dd5cd79
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/english/latin9-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/english/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("en-alphabetize" "en-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("en-resolve-diacritics" "en-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("en-resolve-case" "en-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("en-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/english/latin9-test.xdy b/Master/texmf/xindy/modules/lang/english/latin9-test.xdy
new file mode 100644
index 00000000000..c875c821bc9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/english/latin9-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/english/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("en-alphabetize" "en-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("en-resolve-diacritics" "en-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("en-resolve-case" "en-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("en-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/english/latin9.xdy b/Master/texmf/xindy/modules/lang/english/latin9.xdy
new file mode 100644
index 00000000000..9a923bfebb2
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/english/latin9.xdy
@@ -0,0 +1,385 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: English
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "en-alphabetize"
+
+ :rules (("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "×" :string)
+ ("" "×" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "en-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "en-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("" "89" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "en-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "en-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/english/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/english/utf8-lang.xdy
new file mode 100644
index 00000000000..d46c4f512e1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/english/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/english/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("en-alphabetize" "en-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("en-resolve-diacritics" "en-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("en-resolve-case" "en-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("en-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/english/utf8-test.xdy b/Master/texmf/xindy/modules/lang/english/utf8-test.xdy
new file mode 100644
index 00000000000..40fee4f4f63
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/english/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/english/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("en-alphabetize" "en-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("en-resolve-diacritics" "en-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("en-resolve-case" "en-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("en-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/english/utf8.xdy b/Master/texmf/xindy/modules/lang/english/utf8.xdy
new file mode 100644
index 00000000000..f81a3e235ab
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/english/utf8.xdy
@@ -0,0 +1,403 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: English
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Ȝ" :after "Y" :prefixes (""))
+(define-letter-group "Z" :after "Ȝ" :prefixes (""))
+(define-letter-group "Þ" :after "Z" :prefixes (""))
+(define-letter-group "ƿ" :after "Þ" :prefixes (""))
+
+(define-rule-set "en-alphabetize"
+
+ :rules (("à" "" :string)
+ ("À" "" :string)
+ ("Æ" "" :string)
+ ("æ" "" :string)
+ ("Ç" "" :string)
+ ("ç" "" :string)
+ ("ð" "" :string)
+ ("Ð" "" :string)
+ ("É" "" :string)
+ ("Ê" "" :string)
+ ("È" "" :string)
+ ("Ë" "" :string)
+ ("è" "" :string)
+ ("ë" "" :string)
+ ("ê" "" :string)
+ ("é" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("Ñ" "" :string)
+ ("ñ" "" :string)
+ ("Ö" "" :string)
+ ("Ô" "" :string)
+ ("ô" "" :string)
+ ("ö" "" :string)
+ ("œ" "×" :string)
+ ("Œ" "×" :string)
+ ("ȝ" "" :string)
+ ("Ȝ" "" :string)
+ ("þ" "" :string)
+ ("Þ" "" :string)
+ ("Ƿ" "" :string)
+ ("ƿ" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "en-resolve-diacritics"
+
+ :rules (("ȝ" "" :string)
+ ("þ" "" :string)
+ ("Ƿ" "" :string)
+ ("Þ" "" :string)
+ ("Ȝ" "" :string)
+ ("ƿ" "" :string)
+ ("Ö" "" :string)
+ ("Ñ" "" :string)
+ ("ð" "" :string)
+ ("Ç" "" :string)
+ ("É" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("ö" "" :string)
+ ("ñ" "" :string)
+ ("ç" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("é" "" :string)
+ ("Ð" "" :string)
+ ("Ô" "" :string)
+ ("ô" "" :string)
+ ("È" "" :string)
+ ("è" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("Ê" "" :string)
+ ("ê" "" :string)
+ ("œ" "" :string)
+ ("Æ" "" :string)
+ ("Œ" "" :string)
+ ("æ" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "en-resolve-case"
+
+ :rules (("Ö" "8" :string)
+ ("Ñ" "8" :string)
+ ("Ô" "8" :string)
+ ("Ç" "8" :string)
+ ("É" "8" :string)
+ ("Ï" "8" :string)
+ ("Ê" "8" :string)
+ ("È" "8" :string)
+ ("Ë" "8" :string)
+ ("Ƿ" "8" :string)
+ ("À" "8" :string)
+ ("Þ" "8" :string)
+ ("Ȝ" "8" :string)
+ ("Ð" "8" :string)
+ ("Æ" "89" :string)
+ ("Œ" "89" :string)
+ ("ð" "9" :string)
+ ("ô" "9" :string)
+ ("ȝ" "9" :string)
+ ("ï" "9" :string)
+ ("ö" "9" :string)
+ ("ñ" "9" :string)
+ ("ç" "9" :string)
+ ("à" "9" :string)
+ ("þ" "9" :string)
+ ("è" "9" :string)
+ ("ë" "9" :string)
+ ("ê" "9" :string)
+ ("é" "9" :string)
+ ("ƿ" "9" :string)
+ ("œ" "99" :string)
+ ("æ" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "en-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "en-resolve-special"
+
+ :rules (("Ö" "" :string)
+ ("Ñ" "" :string)
+ ("ð" "" :string)
+ ("Ô" "" :string)
+ ("Ç" "" :string)
+ ("É" "" :string)
+ ("ô" "" :string)
+ ("Ï" "" :string)
+ ("ȝ" "" :string)
+ ("ï" "" :string)
+ ("Ê" "" :string)
+ ("ö" "" :string)
+ ("ñ" "" :string)
+ ("È" "" :string)
+ ("ç" "" :string)
+ ("Ë" "" :string)
+ ("à" "" :string)
+ ("þ" "" :string)
+ ("Ƿ" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("ë" "" :string)
+ ("Þ" "" :string)
+ ("ê" "" :string)
+ ("é" "" :string)
+ ("Ȝ" "" :string)
+ ("ƿ" "" :string)
+ ("Ð" "" :string)
+ ("œ" "" :string)
+ ("Æ" "" :string)
+ ("Œ" "" :string)
+ ("æ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/esperanto/latin3-lang.xdy b/Master/texmf/xindy/modules/lang/esperanto/latin3-lang.xdy
new file mode 100644
index 00000000000..9c2f37a3e38
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/esperanto/latin3-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/esperanto/latin3.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("eo-alphabetize" "eo-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("eo-resolve-diacritics" "eo-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("eo-resolve-case" "eo-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("eo-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/esperanto/latin3-test.xdy b/Master/texmf/xindy/modules/lang/esperanto/latin3-test.xdy
new file mode 100644
index 00000000000..53aa94c38b1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/esperanto/latin3-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/esperanto/latin3.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("eo-alphabetize" "eo-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("eo-resolve-diacritics" "eo-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("eo-resolve-case" "eo-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("eo-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/esperanto/latin3.xdy b/Master/texmf/xindy/modules/lang/esperanto/latin3.xdy
new file mode 100644
index 00000000000..003dea41889
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/esperanto/latin3.xdy
@@ -0,0 +1,326 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Esperanto
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "" :after "G" :prefixes (""))
+(define-letter-group "H" :after "" :prefixes (""))
+(define-letter-group "" :after "H" :prefixes (""))
+(define-letter-group "I" :after "" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "" :after "J" :prefixes (""))
+(define-letter-group "K" :after "" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "" :after "U" :prefixes (""))
+(define-letter-group "V" :after "" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "eo-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "eo-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "eo-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "eo-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "eo-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/esperanto/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/esperanto/utf8-lang.xdy
new file mode 100644
index 00000000000..34c4d019bc8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/esperanto/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/esperanto/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("eo-alphabetize" "eo-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("eo-resolve-diacritics" "eo-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("eo-resolve-case" "eo-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("eo-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/esperanto/utf8-test.xdy b/Master/texmf/xindy/modules/lang/esperanto/utf8-test.xdy
new file mode 100644
index 00000000000..87be50aca09
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/esperanto/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/esperanto/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("eo-alphabetize" "eo-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("eo-resolve-diacritics" "eo-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("eo-resolve-case" "eo-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("eo-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/esperanto/utf8.xdy b/Master/texmf/xindy/modules/lang/esperanto/utf8.xdy
new file mode 100644
index 00000000000..985f93ea3c5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/esperanto/utf8.xdy
@@ -0,0 +1,326 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Esperanto
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Ĉ" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Ĉ" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "Ĝ" :after "G" :prefixes (""))
+(define-letter-group "H" :after "Ĝ" :prefixes (""))
+(define-letter-group "Ĥ" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ĥ" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "Ĵ" :after "J" :prefixes (""))
+(define-letter-group "K" :after "Ĵ" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Ŝ" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Ŝ" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "Ŭ" :after "U" :prefixes (""))
+(define-letter-group "V" :after "Ŭ" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "eo-alphabetize"
+
+ :rules (("Ĉ" "" :string)
+ ("ĉ" "" :string)
+ ("ĝ" "" :string)
+ ("Ĝ" "" :string)
+ ("ĥ" "" :string)
+ ("Ĥ" "" :string)
+ ("Ĵ" "" :string)
+ ("ĵ" "" :string)
+ ("ß" "" :string)
+ ("ŝ" "" :string)
+ ("Ŝ" "" :string)
+ ("ŭ" "" :string)
+ ("Ŭ" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "eo-resolve-diacritics"
+
+ :rules (("ĥ" "" :string)
+ ("ŝ" "" :string)
+ ("Ĉ" "" :string)
+ ("Ŝ" "" :string)
+ ("ŭ" "" :string)
+ ("Ĵ" "" :string)
+ ("Ŭ" "" :string)
+ ("ĝ" "" :string)
+ ("ĉ" "" :string)
+ ("Ĥ" "" :string)
+ ("ĵ" "" :string)
+ ("Ĝ" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "eo-resolve-case"
+
+ :rules (("Ĉ" "8" :string)
+ ("Ŝ" "8" :string)
+ ("Ĵ" "8" :string)
+ ("Ŭ" "8" :string)
+ ("Ĥ" "8" :string)
+ ("Ĝ" "8" :string)
+ ("ĥ" "9" :string)
+ ("ŝ" "9" :string)
+ ("ŭ" "9" :string)
+ ("ĝ" "9" :string)
+ ("ĉ" "9" :string)
+ ("ĵ" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "eo-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "eo-resolve-special"
+
+ :rules (("ĥ" "" :string)
+ ("ŝ" "" :string)
+ ("Ĉ" "" :string)
+ ("Ŝ" "" :string)
+ ("ŭ" "" :string)
+ ("Ĵ" "" :string)
+ ("Ŭ" "" :string)
+ ("ĝ" "" :string)
+ ("ĉ" "" :string)
+ ("Ĥ" "" :string)
+ ("ĵ" "" :string)
+ ("Ĝ" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/estonian/cp1252-lang.xdy b/Master/texmf/xindy/modules/lang/estonian/cp1252-lang.xdy
new file mode 100644
index 00000000000..233a4028e08
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/estonian/cp1252-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/estonian/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("et-alphabetize" "et-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("et-resolve-diacritics" "et-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("et-resolve-case" "et-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("et-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/estonian/cp1252-test.xdy b/Master/texmf/xindy/modules/lang/estonian/cp1252-test.xdy
new file mode 100644
index 00000000000..81b0eec4b97
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/estonian/cp1252-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/estonian/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("et-alphabetize" "et-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("et-resolve-diacritics" "et-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("et-resolve-case" "et-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("et-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/estonian/cp1252.xdy b/Master/texmf/xindy/modules/lang/estonian/cp1252.xdy
new file mode 100644
index 00000000000..8666bb0138f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/estonian/cp1252.xdy
@@ -0,0 +1,321 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Estonian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "Z" :after "" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "" :after "V" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "X" :after "" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+
+(define-rule-set "et-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ))
+
+(define-rule-set "et-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ))
+
+(define-rule-set "et-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "9" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "et-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "et-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/estonian/latin9-lang.xdy b/Master/texmf/xindy/modules/lang/estonian/latin9-lang.xdy
new file mode 100644
index 00000000000..905b72f6fa5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/estonian/latin9-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/estonian/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("et-alphabetize" "et-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("et-resolve-diacritics" "et-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("et-resolve-case" "et-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("et-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/estonian/latin9-test.xdy b/Master/texmf/xindy/modules/lang/estonian/latin9-test.xdy
new file mode 100644
index 00000000000..2b75b33d169
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/estonian/latin9-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/estonian/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("et-alphabetize" "et-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("et-resolve-diacritics" "et-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("et-resolve-case" "et-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("et-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/estonian/latin9.xdy b/Master/texmf/xindy/modules/lang/estonian/latin9.xdy
new file mode 100644
index 00000000000..ef5fe5b9180
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/estonian/latin9.xdy
@@ -0,0 +1,321 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Estonian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "Z" :after "" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "" :after "V" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "X" :after "" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+
+(define-rule-set "et-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ))
+
+(define-rule-set "et-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ))
+
+(define-rule-set "et-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "et-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "et-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/estonian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/estonian/utf8-lang.xdy
new file mode 100644
index 00000000000..535d6731705
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/estonian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/estonian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("et-alphabetize" "et-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("et-resolve-diacritics" "et-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("et-resolve-case" "et-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("et-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/estonian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/estonian/utf8-test.xdy
new file mode 100644
index 00000000000..356e611a0a1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/estonian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/estonian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("et-alphabetize" "et-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("et-resolve-diacritics" "et-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("et-resolve-case" "et-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("et-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/estonian/utf8.xdy b/Master/texmf/xindy/modules/lang/estonian/utf8.xdy
new file mode 100644
index 00000000000..a10579ecc45
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/estonian/utf8.xdy
@@ -0,0 +1,321 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Estonian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "Z" :after "Š" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+(define-letter-group "T" :after "Ž" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "Õ" :after "V" :prefixes (""))
+(define-letter-group "Ä" :after "Õ" :prefixes (""))
+(define-letter-group "Ö" :after "Ä" :prefixes (""))
+(define-letter-group "Ü" :after "Ö" :prefixes (""))
+(define-letter-group "X" :after "Ü" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+
+(define-rule-set "et-alphabetize"
+
+ :rules (("Š" "" :string)
+ ("š" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("Õ" "" :string)
+ ("õ" "" :string)
+ ("Ä" "" :string)
+ ("ä" "" :string)
+ ("Ö" "" :string)
+ ("ö" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ))
+
+(define-rule-set "et-resolve-diacritics"
+
+ :rules (("Ö" "" :string)
+ ("Ž" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("Õ" "" :string)
+ ("ö" "" :string)
+ ("Š" "" :string)
+ ("ä" "" :string)
+ ("š" "" :string)
+ ("õ" "" :string)
+ ("ü" "" :string)
+ ("ž" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ))
+
+(define-rule-set "et-resolve-case"
+
+ :rules (("Ö" "8" :string)
+ ("Ž" "8" :string)
+ ("Ä" "8" :string)
+ ("Ü" "8" :string)
+ ("Õ" "8" :string)
+ ("Š" "8" :string)
+ ("ö" "9" :string)
+ ("ä" "9" :string)
+ ("š" "9" :string)
+ ("õ" "9" :string)
+ ("ü" "9" :string)
+ ("ž" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "et-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "et-resolve-special"
+
+ :rules (("Ö" "" :string)
+ ("Ž" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("Õ" "" :string)
+ ("ö" "" :string)
+ ("Š" "" :string)
+ ("ä" "" :string)
+ ("š" "" :string)
+ ("õ" "" :string)
+ ("ü" "" :string)
+ ("ž" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/finnish/cp1252-lang.xdy b/Master/texmf/xindy/modules/lang/finnish/cp1252-lang.xdy
new file mode 100644
index 00000000000..1147e97b570
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/finnish/cp1252-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/finnish/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fi-alphabetize" "fi-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fi-resolve-diacritics" "fi-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fi-resolve-case" "fi-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fi-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/finnish/cp1252-test.xdy b/Master/texmf/xindy/modules/lang/finnish/cp1252-test.xdy
new file mode 100644
index 00000000000..941f6e56118
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/finnish/cp1252-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/finnish/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fi-alphabetize" "fi-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fi-resolve-diacritics" "fi-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fi-resolve-case" "fi-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fi-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/finnish/cp1252.xdy b/Master/texmf/xindy/modules/lang/finnish/cp1252.xdy
new file mode 100644
index 00000000000..3483bd40346
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/finnish/cp1252.xdy
@@ -0,0 +1,358 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Finnish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "X" :after "V" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "fi-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "fi-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "fi-resolve-case"
+
+ :rules (("" "0" :string)
+ ("d" "0" :string)
+ ("y" "0" :string)
+ ("g" "0" :string)
+ ("e" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("w" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("a" "0" :string)
+ ("j" "0" :string)
+ ("" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("" "0" :string)
+ ("t" "0" :string)
+ ("v" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("s" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("" "0" :string)
+ ("x" "0" :string)
+ ("" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("o" "0" :string)
+ ("" "00" :string)
+ ("S" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("E" "1" :string)
+ ("" "1" :string)
+ ("J" "1" :string)
+ ("D" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("F" "1" :string)
+ ("V" "1" :string)
+ ("" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "fi-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "fi-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/finnish/latin9-lang.xdy b/Master/texmf/xindy/modules/lang/finnish/latin9-lang.xdy
new file mode 100644
index 00000000000..0ed86924f0f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/finnish/latin9-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/finnish/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fi-alphabetize" "fi-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fi-resolve-diacritics" "fi-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fi-resolve-case" "fi-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fi-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/finnish/latin9-test.xdy b/Master/texmf/xindy/modules/lang/finnish/latin9-test.xdy
new file mode 100644
index 00000000000..4698138b067
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/finnish/latin9-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/finnish/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fi-alphabetize" "fi-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fi-resolve-diacritics" "fi-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fi-resolve-case" "fi-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fi-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/finnish/latin9.xdy b/Master/texmf/xindy/modules/lang/finnish/latin9.xdy
new file mode 100644
index 00000000000..dd8e9924fd4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/finnish/latin9.xdy
@@ -0,0 +1,358 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Finnish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "X" :after "V" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "fi-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "fi-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "fi-resolve-case"
+
+ :rules (("" "0" :string)
+ ("" "0" :string)
+ ("d" "0" :string)
+ ("y" "0" :string)
+ ("g" "0" :string)
+ ("e" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("w" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("a" "0" :string)
+ ("j" "0" :string)
+ ("" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("" "0" :string)
+ ("t" "0" :string)
+ ("v" "0" :string)
+ ("" "0" :string)
+ ("s" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("x" "0" :string)
+ ("" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("o" "0" :string)
+ ("" "00" :string)
+ ("S" "1" :string)
+ ("" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("E" "1" :string)
+ ("" "1" :string)
+ ("J" "1" :string)
+ ("D" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("F" "1" :string)
+ ("V" "1" :string)
+ ("" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "fi-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "fi-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/finnish/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/finnish/utf8-lang.xdy
new file mode 100644
index 00000000000..75bde5ff996
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/finnish/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/finnish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fi-alphabetize" "fi-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fi-resolve-diacritics" "fi-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fi-resolve-case" "fi-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fi-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/finnish/utf8-test.xdy b/Master/texmf/xindy/modules/lang/finnish/utf8-test.xdy
new file mode 100644
index 00000000000..3e82a6f0427
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/finnish/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/finnish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fi-alphabetize" "fi-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fi-resolve-diacritics" "fi-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fi-resolve-case" "fi-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fi-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/finnish/utf8.xdy b/Master/texmf/xindy/modules/lang/finnish/utf8.xdy
new file mode 100644
index 00000000000..08e00fa4ddf
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/finnish/utf8.xdy
@@ -0,0 +1,358 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Finnish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "X" :after "V" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Å" :after "Z" :prefixes (""))
+(define-letter-group "Ä" :after "Å" :prefixes (""))
+(define-letter-group "Ö" :after "Ä" :prefixes (""))
+
+(define-rule-set "fi-alphabetize"
+
+ :rules (("É" "" :string)
+ ("é" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("ß" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("Å" "" :string)
+ ("å" "" :string)
+ ("Ä" "" :string)
+ ("Æ" "" :string)
+ ("ä" "" :string)
+ ("æ" "" :string)
+ ("Ö" "" :string)
+ ("ø" "" :string)
+ ("Õ" "" :string)
+ ("ö" "" :string)
+ ("Ø" "" :string)
+ ("õ" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "fi-resolve-diacritics"
+
+ :rules (("Ö" "" :string)
+ ("Ä" "" :string)
+ ("Å" "" :string)
+ ("ö" "" :string)
+ ("ä" "" :string)
+ ("å" "" :string)
+ ("Ž" "" :string)
+ ("É" "" :string)
+ ("ø" "" :string)
+ ("Ü" "" :string)
+ ("Æ" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ø" "" :string)
+ ("æ" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("ž" "" :string)
+ ("Õ" "" :string)
+ ("õ" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ))
+
+(define-rule-set "fi-resolve-case"
+
+ :rules (("ø" "0" :string)
+ ("ö" "0" :string)
+ ("ä" "0" :string)
+ ("š" "0" :string)
+ ("å" "0" :string)
+ ("æ" "0" :string)
+ ("õ" "0" :string)
+ ("é" "0" :string)
+ ("ü" "0" :string)
+ ("ž" "0" :string)
+ ("ß" "00" :string)
+ ("Ö" "1" :string)
+ ("Ž" "1" :string)
+ ("É" "1" :string)
+ ("Ä" "1" :string)
+ ("Ü" "1" :string)
+ ("Æ" "1" :string)
+ ("Õ" "1" :string)
+ ("Å" "1" :string)
+ ("Š" "1" :string)
+ ("Ø" "1" :string)
+ ("d" "0" :string)
+ ("y" "0" :string)
+ ("g" "0" :string)
+ ("e" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("w" "0" :string)
+ ("a" "0" :string)
+ ("j" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("t" "0" :string)
+ ("v" "0" :string)
+ ("s" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("x" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("o" "0" :string)
+ ("S" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("E" "1" :string)
+ ("J" "1" :string)
+ ("D" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("F" "1" :string)
+ ("V" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "fi-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "fi-resolve-special"
+
+ :rules (("Ö" "" :string)
+ ("Ž" "" :string)
+ ("É" "" :string)
+ ("ø" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("Æ" "" :string)
+ ("Õ" "" :string)
+ ("Å" "" :string)
+ ("ö" "" :string)
+ ("Š" "" :string)
+ ("ä" "" :string)
+ ("š" "" :string)
+ ("å" "" :string)
+ ("Ø" "" :string)
+ ("æ" "" :string)
+ ("õ" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("ž" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/french/cp1252-lang.xdy b/Master/texmf/xindy/modules/lang/french/cp1252-lang.xdy
new file mode 100644
index 00000000000..f9cf0e0b3b3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/french/cp1252-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/french/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fr-alphabetize" "fr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fr-resolve-diacritics" "fr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fr-resolve-case" "fr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/french/cp1252-test.xdy b/Master/texmf/xindy/modules/lang/french/cp1252-test.xdy
new file mode 100644
index 00000000000..f3ee76449b8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/french/cp1252-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/french/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fr-alphabetize" "fr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fr-resolve-diacritics" "fr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fr-resolve-case" "fr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/french/cp1252.xdy b/Master/texmf/xindy/modules/lang/french/cp1252.xdy
new file mode 100644
index 00000000000..5d06f4b33fe
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/french/cp1252.xdy
@@ -0,0 +1,420 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: French
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "fr-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "×" :string)
+ ("" "×" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "fr-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "fr-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("" "89" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "fr-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "fr-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/french/latin9-lang.xdy b/Master/texmf/xindy/modules/lang/french/latin9-lang.xdy
new file mode 100644
index 00000000000..db71375f37a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/french/latin9-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/french/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fr-alphabetize" "fr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fr-resolve-diacritics" "fr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fr-resolve-case" "fr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/french/latin9-test.xdy b/Master/texmf/xindy/modules/lang/french/latin9-test.xdy
new file mode 100644
index 00000000000..226f096468f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/french/latin9-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/french/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fr-alphabetize" "fr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fr-resolve-diacritics" "fr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fr-resolve-case" "fr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/french/latin9.xdy b/Master/texmf/xindy/modules/lang/french/latin9.xdy
new file mode 100644
index 00000000000..81ae6881d0c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/french/latin9.xdy
@@ -0,0 +1,420 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: French
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "fr-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "×" :string)
+ ("" "×" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "fr-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "fr-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("" "89" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "fr-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "fr-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/french/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/french/utf8-lang.xdy
new file mode 100644
index 00000000000..7c0ea355309
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/french/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/french/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fr-alphabetize" "fr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fr-resolve-diacritics" "fr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fr-resolve-case" "fr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/french/utf8-test.xdy b/Master/texmf/xindy/modules/lang/french/utf8-test.xdy
new file mode 100644
index 00000000000..2f874ddcdbb
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/french/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/french/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("fr-alphabetize" "fr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("fr-resolve-diacritics" "fr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("fr-resolve-case" "fr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("fr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/french/utf8.xdy b/Master/texmf/xindy/modules/lang/french/utf8.xdy
new file mode 100644
index 00000000000..65a15d7f882
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/french/utf8.xdy
@@ -0,0 +1,420 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: French
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "fr-alphabetize"
+
+ :rules (("Â" "" :string)
+ ("Ä" "" :string)
+ ("ä" "" :string)
+ ("â" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("Æ" "" :string)
+ ("æ" "" :string)
+ ("Ç" "" :string)
+ ("ç" "" :string)
+ ("É" "" :string)
+ ("Ê" "" :string)
+ ("È" "" :string)
+ ("Ë" "" :string)
+ ("è" "" :string)
+ ("ë" "" :string)
+ ("ê" "" :string)
+ ("é" "" :string)
+ ("Î" "" :string)
+ ("Ï" "" :string)
+ ("î" "" :string)
+ ("ï" "" :string)
+ ("Ñ" "" :string)
+ ("ñ" "" :string)
+ ("Ö" "" :string)
+ ("Ô" "" :string)
+ ("ô" "" :string)
+ ("ö" "" :string)
+ ("œ" "×" :string)
+ ("Œ" "×" :string)
+ ("ù" "" :string)
+ ("Û" "" :string)
+ ("Ü" "" :string)
+ ("Ù" "" :string)
+ ("û" "" :string)
+ ("ü" "" :string)
+ ("Ÿ" "" :string)
+ ("ÿ" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "fr-resolve-diacritics"
+
+ :rules (("Î" "" :string)
+ ("Â" "" :string)
+ ("Ñ" "" :string)
+ ("Ô" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("É" "" :string)
+ ("ô" "" :string)
+ ("î" "" :string)
+ ("ñ" "" :string)
+ ("û" "" :string)
+ ("Ÿ" "" :string)
+ ("ç" "" :string)
+ ("â" "" :string)
+ ("ÿ" "" :string)
+ ("é" "" :string)
+ ("ù" "" :string)
+ ("Ö" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("Ê" "" :string)
+ ("Ù" "" :string)
+ ("ö" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("ê" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("È" "" :string)
+ ("ä" "" :string)
+ ("è" "" :string)
+ ("ü" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("œ" "" :string)
+ ("Æ" "" :string)
+ ("Œ" "" :string)
+ ("æ" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "fr-resolve-case"
+
+ :rules (("Ö" "8" :string)
+ ("Î" "8" :string)
+ ("Â" "8" :string)
+ ("Ñ" "8" :string)
+ ("Ô" "8" :string)
+ ("Û" "8" :string)
+ ("Ç" "8" :string)
+ ("É" "8" :string)
+ ("Ï" "8" :string)
+ ("Ä" "8" :string)
+ ("Ü" "8" :string)
+ ("Ê" "8" :string)
+ ("Ù" "8" :string)
+ ("È" "8" :string)
+ ("Ÿ" "8" :string)
+ ("Ë" "8" :string)
+ ("À" "8" :string)
+ ("Æ" "89" :string)
+ ("Œ" "89" :string)
+ ("ù" "9" :string)
+ ("ô" "9" :string)
+ ("î" "9" :string)
+ ("ï" "9" :string)
+ ("ö" "9" :string)
+ ("ñ" "9" :string)
+ ("û" "9" :string)
+ ("ä" "9" :string)
+ ("ç" "9" :string)
+ ("â" "9" :string)
+ ("à" "9" :string)
+ ("è" "9" :string)
+ ("ë" "9" :string)
+ ("ê" "9" :string)
+ ("ÿ" "9" :string)
+ ("é" "9" :string)
+ ("ü" "9" :string)
+ ("œ" "99" :string)
+ ("æ" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "fr-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "fr-resolve-special"
+
+ :rules (("ù" "" :string)
+ ("Ö" "" :string)
+ ("Î" "" :string)
+ ("Â" "" :string)
+ ("Ñ" "" :string)
+ ("Ô" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("É" "" :string)
+ ("ô" "" :string)
+ ("Ï" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("î" "" :string)
+ ("ï" "" :string)
+ ("Ê" "" :string)
+ ("Ù" "" :string)
+ ("ö" "" :string)
+ ("ñ" "" :string)
+ ("û" "" :string)
+ ("È" "" :string)
+ ("ä" "" :string)
+ ("Ÿ" "" :string)
+ ("ç" "" :string)
+ ("â" "" :string)
+ ("Ë" "" :string)
+ ("à" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("ë" "" :string)
+ ("ê" "" :string)
+ ("ÿ" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("œ" "" :string)
+ ("Æ" "" :string)
+ ("Œ" "" :string)
+ ("æ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/general/cp1252-lang.xdy b/Master/texmf/xindy/modules/lang/general/cp1252-lang.xdy
new file mode 100644
index 00000000000..8c6da52c4c7
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/cp1252-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/general/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("xy-alphabetize" "xy-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("xy-resolve-diacritics" "xy-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("xy-resolve-case" "xy-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("xy-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/general/cp1252-test.xdy b/Master/texmf/xindy/modules/lang/general/cp1252-test.xdy
new file mode 100644
index 00000000000..243eca35d9f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/cp1252-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/general/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("xy-alphabetize" "xy-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("xy-resolve-diacritics" "xy-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("xy-resolve-case" "xy-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("xy-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/general/cp1252.xdy b/Master/texmf/xindy/modules/lang/general/cp1252.xdy
new file mode 100644
index 00000000000..c47afe2aaa1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/cp1252.xdy
@@ -0,0 +1,528 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: A general sorting order for Western European languages
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "xy-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "×" :string)
+ ("" "×" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "xy-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "xy-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("" "89" :string)
+ ("" "9" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "xy-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "xy-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/general/cp850-lang.xdy b/Master/texmf/xindy/modules/lang/general/cp850-lang.xdy
new file mode 100644
index 00000000000..212063c3668
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/cp850-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/general/cp850.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("xy-alphabetize" "xy-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("xy-resolve-diacritics" "xy-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("xy-resolve-case" "xy-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("xy-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/general/cp850-test.xdy b/Master/texmf/xindy/modules/lang/general/cp850-test.xdy
new file mode 100644
index 00000000000..38a1a0e5ef5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/cp850-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/general/cp850.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("xy-alphabetize" "xy-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("xy-resolve-diacritics" "xy-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("xy-resolve-case" "xy-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("xy-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/general/cp850.xdy b/Master/texmf/xindy/modules/lang/general/cp850.xdy
new file mode 100644
index 00000000000..87d39050d7a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/cp850.xdy
@@ -0,0 +1,500 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: A general sorting order for Western European languages
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "xy-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "xy-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "xy-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "8" :string)
+ ("" "89" :string)
+ ("" "9" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "xy-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "xy-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/general/latin9-lang.xdy b/Master/texmf/xindy/modules/lang/general/latin9-lang.xdy
new file mode 100644
index 00000000000..4c69a208f01
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/latin9-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/general/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("xy-alphabetize" "xy-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("xy-resolve-diacritics" "xy-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("xy-resolve-case" "xy-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("xy-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/general/latin9-test.xdy b/Master/texmf/xindy/modules/lang/general/latin9-test.xdy
new file mode 100644
index 00000000000..057018eac6e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/latin9-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/general/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("xy-alphabetize" "xy-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("xy-resolve-diacritics" "xy-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("xy-resolve-case" "xy-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("xy-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/general/latin9.xdy b/Master/texmf/xindy/modules/lang/general/latin9.xdy
new file mode 100644
index 00000000000..8c7be5a0559
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/latin9.xdy
@@ -0,0 +1,528 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: A general sorting order for Western European languages
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "xy-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "×" :string)
+ ("" "×" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "xy-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "xy-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("" "89" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "xy-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "xy-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/general/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/general/utf8-lang.xdy
new file mode 100644
index 00000000000..780e717026b
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/general/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("xy-alphabetize" "xy-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("xy-resolve-diacritics" "xy-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("xy-resolve-case" "xy-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("xy-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/general/utf8-test.xdy b/Master/texmf/xindy/modules/lang/general/utf8-test.xdy
new file mode 100644
index 00000000000..41d3f5f846c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/general/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("xy-alphabetize" "xy-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("xy-resolve-diacritics" "xy-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("xy-resolve-case" "xy-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("xy-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/general/utf8.xdy b/Master/texmf/xindy/modules/lang/general/utf8.xdy
new file mode 100644
index 00000000000..f2915853839
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/general/utf8.xdy
@@ -0,0 +1,784 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: A general sorting order for Western European languages
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "xy-alphabetize"
+
+ :rules (("Â" "" :string)
+ ("Ă" "" :string)
+ ("á" "" :string)
+ ("Å" "" :string)
+ ("å" "" :string)
+ ("ã" "" :string)
+ ("ă" "" :string)
+ ("Ã" "" :string)
+ ("Á" "" :string)
+ ("ą" "" :string)
+ ("Ä" "" :string)
+ ("Ą" "" :string)
+ ("ä" "" :string)
+ ("â" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("Æ" "" :string)
+ ("æ" "" :string)
+ ("Ç" "" :string)
+ ("č" "" :string)
+ ("ç" "" :string)
+ ("ć" "" :string)
+ ("Ĉ" "" :string)
+ ("Ć" "" :string)
+ ("ĉ" "" :string)
+ ("Č" "" :string)
+ ("đ" "" :string)
+ ("ď" "" :string)
+ ("Ď" "" :string)
+ ("Đ" "" :string)
+ ("ě" "" :string)
+ ("Ê" "" :string)
+ ("È" "" :string)
+ ("Ę" "" :string)
+ ("è" "" :string)
+ ("ê" "" :string)
+ ("Ě" "" :string)
+ ("É" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("é" "" :string)
+ ("ę" "" :string)
+ ("ĝ" "" :string)
+ ("ğ" "" :string)
+ ("Ğ" "" :string)
+ ("Ĝ" "" :string)
+ ("ĥ" "" :string)
+ ("Ĥ" "" :string)
+ ("Í" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("ì" "" :string)
+ ("Ì" "" :string)
+ ("İ" "" :string)
+ ("Î" "" :string)
+ ("î" "" :string)
+ ("ı" "" :string)
+ ("í" "" :string)
+ ("Ĵ" "" :string)
+ ("ĵ" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ľ" "" :string)
+ ("ľ" "" :string)
+ ("Ñ" "" :string)
+ ("Ň" "" :string)
+ ("ñ" "" :string)
+ ("Ń" "" :string)
+ ("ń" "" :string)
+ ("ň" "" :string)
+ ("Ő" "" :string)
+ ("Ó" "" :string)
+ ("ô" "" :string)
+ ("ø" "" :string)
+ ("Õ" "" :string)
+ ("ö" "" :string)
+ ("ò" "" :string)
+ ("Ø" "" :string)
+ ("õ" "" :string)
+ ("ő" "" :string)
+ ("Ö" "" :string)
+ ("Ô" "" :string)
+ ("Ò" "" :string)
+ ("ó" "" :string)
+ ("œ" "×" :string)
+ ("Œ" "×" :string)
+ ("ŕ" "" :string)
+ ("ř" "" :string)
+ ("Ř" "" :string)
+ ("Ŕ" "" :string)
+ ("Ŝ" "" :string)
+ ("ș" "" :string)
+ ("Ş" "" :string)
+ ("ś" "" :string)
+ ("ŝ" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("ş" "" :string)
+ ("Ș" "" :string)
+ ("Ś" "" :string)
+ ("ß" "" :string)
+ ("ț" "" :string)
+ ("ť" "" :string)
+ ("Ț" "" :string)
+ ("Ť" "" :string)
+ ("Û" "" :string)
+ ("ŭ" "" :string)
+ ("Ù" "" :string)
+ ("Ŭ" "" :string)
+ ("Ů" "" :string)
+ ("Ű" "" :string)
+ ("ü" "" :string)
+ ("ù" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("û" "" :string)
+ ("ů" "" :string)
+ ("ű" "" :string)
+ ("Ý" "" :string)
+ ("Ÿ" "" :string)
+ ("ý" "" :string)
+ ("ÿ" "" :string)
+ ("Ž" "" :string)
+ ("ż" "" :string)
+ ("ž" "" :string)
+ ("Ż" "" :string)
+ ("Ź" "" :string)
+ ("ź" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("d" "" :string)
+ ("e" "" :string)
+ ("E" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("i" "" :string)
+ ("I" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("k" "" :string)
+ ("K" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("o" "" :string)
+ ("O" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("Q" "" :string)
+ ("q" "" :string)
+ ("R" "" :string)
+ ("r" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("V" "" :string)
+ ("v" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("y" "" :string)
+ ("Y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "xy-resolve-diacritics"
+
+ :rules (("Ý" "" :string)
+ ("Ž" "" :string)
+ ("ĥ" "" :string)
+ ("Ó" "" :string)
+ ("č" "" :string)
+ ("ě" "" :string)
+ ("Ĵ" "" :string)
+ ("á" "" :string)
+ ("ř" "" :string)
+ ("ĝ" "" :string)
+ ("Ĥ" "" :string)
+ ("ĵ" "" :string)
+ ("ž" "" :string)
+ ("ť" "" :string)
+ ("Ľ" "" :string)
+ ("Ě" "" :string)
+ ("Á" "" :string)
+ ("ľ" "" :string)
+ ("ý" "" :string)
+ ("Ú" "" :string)
+ ("Ř" "" :string)
+ ("Ň" "" :string)
+ ("ú" "" :string)
+ ("ď" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("ı" "" :string)
+ ("Ď" "" :string)
+ ("ó" "" :string)
+ ("Č" "" :string)
+ ("Ĝ" "" :string)
+ ("Ť" "" :string)
+ ("ň" "" :string)
+ ("ŕ" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ù" "" :string)
+ ("đ" "" :string)
+ ("ț" "" :string)
+ ("ò" "" :string)
+ ("Ÿ" "" :string)
+ ("ś" "" :string)
+ ("ć" "" :string)
+ ("İ" "" :string)
+ ("ù" "" :string)
+ ("Ț" "" :string)
+ ("É" "" :string)
+ ("Ò" "" :string)
+ ("Ŕ" "" :string)
+ ("ğ" "" :string)
+ ("Ć" "" :string)
+ ("Ğ" "" :string)
+ ("à" "" :string)
+ ("Ź" "" :string)
+ ("À" "" :string)
+ ("Ń" "" :string)
+ ("ź" "" :string)
+ ("ń" "" :string)
+ ("ÿ" "" :string)
+ ("é" "" :string)
+ ("Đ" "" :string)
+ ("Ś" "" :string)
+ ("Ñ" "" :string)
+ ("Í" "" :string)
+ ("Ă" "" :string)
+ ("ô" "" :string)
+ ("Ŝ" "" :string)
+ ("ŭ" "" :string)
+ ("È" "" :string)
+ ("Ŭ" "" :string)
+ ("è" "" :string)
+ ("ă" "" :string)
+ ("ż" "" :string)
+ ("Ż" "" :string)
+ ("Ô" "" :string)
+ ("ŝ" "" :string)
+ ("Ĉ" "" :string)
+ ("ñ" "" :string)
+ ("ĉ" "" :string)
+ ("í" "" :string)
+ ("Â" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("Õ" "" :string)
+ ("Ê" "" :string)
+ ("ș" "" :string)
+ ("ç" "" :string)
+ ("ì" "" :string)
+ ("õ" "" :string)
+ ("ê" "" :string)
+ ("Ì" "" :string)
+ ("û" "" :string)
+ ("â" "" :string)
+ ("Ș" "" :string)
+ ("ö" "" :string)
+ ("Ů" "" :string)
+ ("Ş" "" :string)
+ ("ã" "" :string)
+ ("Ã" "" :string)
+ ("Ö" "" :string)
+ ("Î" "" :string)
+ ("î" "" :string)
+ ("ş" "" :string)
+ ("ů" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("Ő" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("Å" "" :string)
+ ("Ę" "" :string)
+ ("å" "" :string)
+ ("ü" "" :string)
+ ("ő" "" :string)
+ ("Ü" "" :string)
+ ("ę" "" :string)
+ ("ø" "" :string)
+ ("Ű" "" :string)
+ ("Ø" "" :string)
+ ("Ä" "" :string)
+ ("ä" "" :string)
+ ("ű" "" :string)
+ ("ą" "" :string)
+ ("Ą" "" :string)
+ ("œ" "" :string)
+ ("ß" "" :string)
+ ("Æ" "" :string)
+ ("Œ" "" :string)
+ ("æ" "" :string)
+ ("S" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("D" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("X" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("V" "" :string)
+ ("i" "" :string)
+ ("m" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("q" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("L" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("j" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ))
+
+(define-rule-set "xy-resolve-case"
+
+ :rules (("Ý" "8" :string)
+ ("Ő" "8" :string)
+ ("Â" "8" :string)
+ ("Ñ" "8" :string)
+ ("Ž" "8" :string)
+ ("Û" "8" :string)
+ ("Ç" "8" :string)
+ ("Ó" "8" :string)
+ ("Í" "8" :string)
+ ("Ă" "8" :string)
+ ("Ł" "8" :string)
+ ("Ï" "8" :string)
+ ("Ŝ" "8" :string)
+ ("Ĵ" "8" :string)
+ ("Õ" "8" :string)
+ ("Ê" "8" :string)
+ ("Å" "8" :string)
+ ("Ù" "8" :string)
+ ("È" "8" :string)
+ ("Ę" "8" :string)
+ ("Ÿ" "8" :string)
+ ("Ŭ" "8" :string)
+ ("Ů" "8" :string)
+ ("Ş" "8" :string)
+ ("Ű" "8" :string)
+ ("Ø" "8" :string)
+ ("Ĥ" "8" :string)
+ ("Ì" "8" :string)
+ ("Ã" "8" :string)
+ ("Ľ" "8" :string)
+ ("Ż" "8" :string)
+ ("İ" "8" :string)
+ ("Ě" "8" :string)
+ ("Ö" "8" :string)
+ ("Î" "8" :string)
+ ("Á" "8" :string)
+ ("Ț" "8" :string)
+ ("Ô" "8" :string)
+ ("É" "8" :string)
+ ("Ò" "8" :string)
+ ("Ĉ" "8" :string)
+ ("Ú" "8" :string)
+ ("Ř" "8" :string)
+ ("Ň" "8" :string)
+ ("Ä" "8" :string)
+ ("Ü" "8" :string)
+ ("Ŕ" "8" :string)
+ ("Š" "8" :string)
+ ("Ą" "8" :string)
+ ("Ć" "8" :string)
+ ("Ğ" "8" :string)
+ ("Ë" "8" :string)
+ ("Ź" "8" :string)
+ ("Ď" "8" :string)
+ ("À" "8" :string)
+ ("Č" "8" :string)
+ ("Ń" "8" :string)
+ ("Ș" "8" :string)
+ ("Đ" "8" :string)
+ ("Ĝ" "8" :string)
+ ("Ť" "8" :string)
+ ("Ś" "8" :string)
+ ("Æ" "89" :string)
+ ("Œ" "89" :string)
+ ("ĥ" "9" :string)
+ ("ŕ" "9" :string)
+ ("ô" "9" :string)
+ ("ł" "9" :string)
+ ("ø" "9" :string)
+ ("č" "9" :string)
+ ("ě" "9" :string)
+ ("ŭ" "9" :string)
+ ("ï" "9" :string)
+ ("á" "9" :string)
+ ("ö" "9" :string)
+ ("đ" "9" :string)
+ ("ș" "9" :string)
+ ("ț" "9" :string)
+ ("ř" "9" :string)
+ ("ò" "9" :string)
+ ("å" "9" :string)
+ ("ç" "9" :string)
+ ("ĝ" "9" :string)
+ ("ì" "9" :string)
+ ("ã" "9" :string)
+ ("õ" "9" :string)
+ ("ĵ" "9" :string)
+ ("è" "9" :string)
+ ("ă" "9" :string)
+ ("ś" "9" :string)
+ ("ê" "9" :string)
+ ("ü" "9" :string)
+ ("ć" "9" :string)
+ ("ż" "9" :string)
+ ("ő" "9" :string)
+ ("ž" "9" :string)
+ ("ť" "9" :string)
+ ("ù" "9" :string)
+ ("ľ" "9" :string)
+ ("ý" "9" :string)
+ ("ŝ" "9" :string)
+ ("ą" "9" :string)
+ ("ú" "9" :string)
+ ("ď" "9" :string)
+ ("î" "9" :string)
+ ("ñ" "9" :string)
+ ("û" "9" :string)
+ ("ğ" "9" :string)
+ ("ä" "9" :string)
+ ("š" "9" :string)
+ ("ş" "9" :string)
+ ("ı" "9" :string)
+ ("â" "9" :string)
+ ("ů" "9" :string)
+ ("ĉ" "9" :string)
+ ("à" "9" :string)
+ ("í" "9" :string)
+ ("ó" "9" :string)
+ ("ë" "9" :string)
+ ("ź" "9" :string)
+ ("ű" "9" :string)
+ ("ń" "9" :string)
+ ("ÿ" "9" :string)
+ ("é" "9" :string)
+ ("ň" "9" :string)
+ ("ę" "9" :string)
+ ("œ" "99" :string)
+ ("ß" "99" :string)
+ ("æ" "99" :string)
+ ("S" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("X" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("R" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("L" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("W" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("i" "9" :string)
+ ("m" "9" :string)
+ ("o" "9" :string)
+ ("d" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("j" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("n" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ))
+
+(define-rule-set "xy-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("?" "" :string)
+ ("'" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "xy-resolve-special"
+
+ :rules (("Ý" "" :string)
+ ("Ő" "" :string)
+ ("Â" "" :string)
+ ("Ñ" "" :string)
+ ("Ž" "" :string)
+ ("ĥ" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("ŕ" "" :string)
+ ("Ó" "" :string)
+ ("Í" "" :string)
+ ("Ă" "" :string)
+ ("ô" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ï" "" :string)
+ ("ø" "" :string)
+ ("č" "" :string)
+ ("Ŝ" "" :string)
+ ("ě" "" :string)
+ ("ŭ" "" :string)
+ ("Ĵ" "" :string)
+ ("ï" "" :string)
+ ("Õ" "" :string)
+ ("Ê" "" :string)
+ ("á" "" :string)
+ ("Å" "" :string)
+ ("Ù" "" :string)
+ ("ö" "" :string)
+ ("đ" "" :string)
+ ("ș" "" :string)
+ ("ț" "" :string)
+ ("È" "" :string)
+ ("ř" "" :string)
+ ("ò" "" :string)
+ ("Ę" "" :string)
+ ("å" "" :string)
+ ("Ÿ" "" :string)
+ ("Ŭ" "" :string)
+ ("ç" "" :string)
+ ("Ů" "" :string)
+ ("ĝ" "" :string)
+ ("ì" "" :string)
+ ("Ş" "" :string)
+ ("Ű" "" :string)
+ ("ã" "" :string)
+ ("Ø" "" :string)
+ ("Ĥ" "" :string)
+ ("õ" "" :string)
+ ("ĵ" "" :string)
+ ("è" "" :string)
+ ("ă" "" :string)
+ ("ś" "" :string)
+ ("ê" "" :string)
+ ("Ì" "" :string)
+ ("ü" "" :string)
+ ("ć" "" :string)
+ ("ż" "" :string)
+ ("ő" "" :string)
+ ("Ã" "" :string)
+ ("ž" "" :string)
+ ("ť" "" :string)
+ ("Ľ" "" :string)
+ ("Ż" "" :string)
+ ("İ" "" :string)
+ ("Ě" "" :string)
+ ("ù" "" :string)
+ ("Ö" "" :string)
+ ("Î" "" :string)
+ ("Á" "" :string)
+ ("Ț" "" :string)
+ ("ľ" "" :string)
+ ("Ô" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("ŝ" "" :string)
+ ("Ò" "" :string)
+ ("Ĉ" "" :string)
+ ("ą" "" :string)
+ ("Ú" "" :string)
+ ("Ř" "" :string)
+ ("Ň" "" :string)
+ ("Ä" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("ď" "" :string)
+ ("î" "" :string)
+ ("Ŕ" "" :string)
+ ("ñ" "" :string)
+ ("û" "" :string)
+ ("ğ" "" :string)
+ ("Š" "" :string)
+ ("Ą" "" :string)
+ ("ä" "" :string)
+ ("š" "" :string)
+ ("ş" "" :string)
+ ("ı" "" :string)
+ ("Ć" "" :string)
+ ("â" "" :string)
+ ("ů" "" :string)
+ ("Ğ" "" :string)
+ ("ĉ" "" :string)
+ ("Ë" "" :string)
+ ("à" "" :string)
+ ("Ź" "" :string)
+ ("í" "" :string)
+ ("Ď" "" :string)
+ ("ó" "" :string)
+ ("À" "" :string)
+ ("ë" "" :string)
+ ("Č" "" :string)
+ ("Ń" "" :string)
+ ("ź" "" :string)
+ ("ű" "" :string)
+ ("ń" "" :string)
+ ("Ș" "" :string)
+ ("ÿ" "" :string)
+ ("é" "" :string)
+ ("Đ" "" :string)
+ ("Ĝ" "" :string)
+ ("Ť" "" :string)
+ ("Ś" "" :string)
+ ("ň" "" :string)
+ ("ę" "" :string)
+ ("œ" "" :string)
+ ("ß" "" :string)
+ ("Æ" "" :string)
+ ("Œ" "" :string)
+ ("æ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("D" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("X" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("V" "" :string)
+ ("i" "" :string)
+ ("m" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("q" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("L" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("j" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/georgian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/georgian/utf8-lang.xdy
new file mode 100644
index 00000000000..67df9ecb650
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/georgian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/georgian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ka-alphabetize" "ka-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ka-resolve-diacritics" "ka-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ka-resolve-case" "ka-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ka-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/georgian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/georgian/utf8-test.xdy
new file mode 100644
index 00000000000..34eea594b95
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/georgian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/georgian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ka-alphabetize" "ka-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ka-resolve-diacritics" "ka-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ka-resolve-case" "ka-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ka-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/georgian/utf8.xdy b/Master/texmf/xindy/modules/lang/georgian/utf8.xdy
new file mode 100644
index 00000000000..7dbc60012a6
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/georgian/utf8.xdy
@@ -0,0 +1,230 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Georgian
+
+(define-letter-group "ა" :prefixes (""))
+(define-letter-group "ბ" :after "ა" :prefixes (""))
+(define-letter-group "გ" :after "ბ" :prefixes (""))
+(define-letter-group "დ" :after "გ" :prefixes (""))
+(define-letter-group "ე" :after "დ" :prefixes (""))
+(define-letter-group "ვ" :after "ე" :prefixes (""))
+(define-letter-group "ზ" :after "ვ" :prefixes (""))
+(define-letter-group "ჱ" :after "ზ" :prefixes (""))
+(define-letter-group "თ" :after "ჱ" :prefixes (""))
+(define-letter-group "ი" :after "თ" :prefixes (""))
+(define-letter-group "კ" :after "ი" :prefixes (""))
+(define-letter-group "ლ" :after "კ" :prefixes (""))
+(define-letter-group "მ" :after "ლ" :prefixes (""))
+(define-letter-group "ნ" :after "მ" :prefixes (""))
+(define-letter-group "ჲ" :after "ნ" :prefixes (""))
+(define-letter-group "ო" :after "ჲ" :prefixes (""))
+(define-letter-group "პ" :after "ო" :prefixes (""))
+(define-letter-group "ჟ" :after "პ" :prefixes (""))
+(define-letter-group "რ" :after "ჟ" :prefixes (""))
+(define-letter-group "ს" :after "რ" :prefixes (""))
+(define-letter-group "ტ" :after "ს" :prefixes (""))
+(define-letter-group "ჳ" :after "ტ" :prefixes (""))
+(define-letter-group "უ" :after "ჳ" :prefixes (""))
+(define-letter-group "ფ" :after "უ" :prefixes (""))
+(define-letter-group "ქ" :after "ფ" :prefixes (""))
+(define-letter-group "ღ" :after "ქ" :prefixes (""))
+(define-letter-group "ყ" :after "ღ" :prefixes (""))
+(define-letter-group "შ" :after "ყ" :prefixes (""))
+(define-letter-group "ჩ" :after "შ" :prefixes (""))
+(define-letter-group "ც" :after "ჩ" :prefixes (""))
+(define-letter-group "ძ" :after "ც" :prefixes (""))
+(define-letter-group "წ" :after "ძ" :prefixes (""))
+(define-letter-group "ჭ" :after "წ" :prefixes (""))
+(define-letter-group "ხ" :after "ჭ" :prefixes (""))
+(define-letter-group "ჴ" :after "ხ" :prefixes (""))
+(define-letter-group "ჯ" :after "ჴ" :prefixes (""))
+(define-letter-group "ჰ" :after "ჯ" :prefixes (""))
+(define-letter-group "ჵ" :after "ჰ" :prefixes (""))
+
+(define-rule-set "ka-alphabetize"
+
+ :rules (("ა" "" :string)
+ ("ბ" "" :string)
+ ("გ" "" :string)
+ ("დ" "" :string)
+ ("ე" "" :string)
+ ("ვ" "" :string)
+ ("ზ" "" :string)
+ ("ჱ" "" :string)
+ ("თ" "" :string)
+ ("ი" "" :string)
+ ("კ" "" :string)
+ ("ლ" "" :string)
+ ("მ" "" :string)
+ ("ნ" "" :string)
+ ("ჲ" "" :string)
+ ("ო" "" :string)
+ ("პ" "" :string)
+ ("ჟ" "" :string)
+ ("რ" "" :string)
+ ("ს" "" :string)
+ ("ტ" "" :string)
+ ("ჳ" "" :string)
+ ("უ" "" :string)
+ ("ფ" "" :string)
+ ("ქ" "" :string)
+ ("ღ" "" :string)
+ ("ყ" "" :string)
+ ("შ" "" :string)
+ ("ჩ" "" :string)
+ ("ც" "" :string)
+ ("ძ" "" :string)
+ ("წ" "" :string)
+ ("ჭ" "" :string)
+ ("ხ" "" :string)
+ ("ჴ" "" :string)
+ ("ჯ" "" :string)
+ ("ჰ" "" :string)
+ ("ჵ" "" :string)
+ ))
+
+(define-rule-set "ka-resolve-diacritics"
+
+ :rules (("ჰ" "" :string)
+ ("ჴ" "" :string)
+ ("ვ" "" :string)
+ ("ჟ" "" :string)
+ ("ს" "" :string)
+ ("ნ" "" :string)
+ ("ჯ" "" :string)
+ ("ჲ" "" :string)
+ ("ხ" "" :string)
+ ("ბ" "" :string)
+ ("ზ" "" :string)
+ ("ც" "" :string)
+ ("პ" "" :string)
+ ("თ" "" :string)
+ ("ჳ" "" :string)
+ ("შ" "" :string)
+ ("ლ" "" :string)
+ ("დ" "" :string)
+ ("ქ" "" :string)
+ ("გ" "" :string)
+ ("ი" "" :string)
+ ("ძ" "" :string)
+ ("ჩ" "" :string)
+ ("ყ" "" :string)
+ ("ტ" "" :string)
+ ("ო" "" :string)
+ ("ღ" "" :string)
+ ("ე" "" :string)
+ ("ჭ" "" :string)
+ ("უ" "" :string)
+ ("მ" "" :string)
+ ("რ" "" :string)
+ ("ჵ" "" :string)
+ ("ფ" "" :string)
+ ("კ" "" :string)
+ ("წ" "" :string)
+ ("ჱ" "" :string)
+ ("ა" "" :string)
+ ))
+
+(define-rule-set "ka-resolve-case"
+
+ :rules (("ჰ" "9" :string)
+ ("ჴ" "9" :string)
+ ("ვ" "9" :string)
+ ("ჟ" "9" :string)
+ ("ს" "9" :string)
+ ("ნ" "9" :string)
+ ("ჯ" "9" :string)
+ ("ჲ" "9" :string)
+ ("ხ" "9" :string)
+ ("ბ" "9" :string)
+ ("ზ" "9" :string)
+ ("ც" "9" :string)
+ ("პ" "9" :string)
+ ("თ" "9" :string)
+ ("ჳ" "9" :string)
+ ("შ" "9" :string)
+ ("ლ" "9" :string)
+ ("დ" "9" :string)
+ ("ქ" "9" :string)
+ ("გ" "9" :string)
+ ("ი" "9" :string)
+ ("ძ" "9" :string)
+ ("ჩ" "9" :string)
+ ("ყ" "9" :string)
+ ("ტ" "9" :string)
+ ("ო" "9" :string)
+ ("ღ" "9" :string)
+ ("ე" "9" :string)
+ ("ჭ" "9" :string)
+ ("უ" "9" :string)
+ ("მ" "9" :string)
+ ("რ" "9" :string)
+ ("ჵ" "9" :string)
+ ("ფ" "9" :string)
+ ("კ" "9" :string)
+ ("წ" "9" :string)
+ ("ჱ" "9" :string)
+ ("ა" "9" :string)
+ ))
+
+(define-rule-set "ka-ignore-special"
+
+ :rules (("·" "" :string)
+ ("\/" "" :string)
+ ("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "ka-resolve-special"
+
+ :rules (("ჰ" "" :string)
+ ("ჴ" "" :string)
+ ("ვ" "" :string)
+ ("ჟ" "" :string)
+ ("ს" "" :string)
+ ("ნ" "" :string)
+ ("ჯ" "" :string)
+ ("ჲ" "" :string)
+ ("ხ" "" :string)
+ ("ბ" "" :string)
+ ("ზ" "" :string)
+ ("ც" "" :string)
+ ("პ" "" :string)
+ ("თ" "" :string)
+ ("ჳ" "" :string)
+ ("შ" "" :string)
+ ("ლ" "" :string)
+ ("დ" "" :string)
+ ("ქ" "" :string)
+ ("გ" "" :string)
+ ("ი" "" :string)
+ ("ძ" "" :string)
+ ("ჩ" "" :string)
+ ("ყ" "" :string)
+ ("ტ" "" :string)
+ ("ო" "" :string)
+ ("ღ" "" :string)
+ ("ე" "" :string)
+ ("ჭ" "" :string)
+ ("უ" "" :string)
+ ("მ" "" :string)
+ ("რ" "" :string)
+ ("ჵ" "" :string)
+ ("ფ" "" :string)
+ ("კ" "" :string)
+ ("წ" "" :string)
+ ("ჱ" "" :string)
+ ("ა" "" :string)
+ ("·" "" :string)
+ ("\/" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/german/braille-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/german/braille-utf8-lang.xdy
new file mode 100644
index 00000000000..71876bd3c19
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/braille-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/german/braille-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/german/braille-utf8-test.xdy b/Master/texmf/xindy/modules/lang/german/braille-utf8-test.xdy
new file mode 100644
index 00000000000..8ab89b02089
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/braille-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/german/braille-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/german/braille-utf8.xdy b/Master/texmf/xindy/modules/lang/german/braille-utf8.xdy
new file mode 100644
index 00000000000..e4686416ebd
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/braille-utf8.xdy
@@ -0,0 +1,238 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: German
+
+(define-letter-group "⠁" :prefixes (""))
+(define-letter-group "⠃" :after "⠁" :prefixes (""))
+(define-letter-group "⠉" :after "⠃" :prefixes (""))
+(define-letter-group "⠙" :after "⠉" :prefixes (""))
+(define-letter-group "⠑" :after "⠙" :prefixes (""))
+(define-letter-group "⠋" :after "⠑" :prefixes (""))
+(define-letter-group "⠛" :after "⠋" :prefixes (""))
+(define-letter-group "⠓" :after "⠛" :prefixes (""))
+(define-letter-group "⠊" :after "⠓" :prefixes (""))
+(define-letter-group "⠚" :after "⠊" :prefixes (""))
+(define-letter-group "⠅" :after "⠚" :prefixes (""))
+(define-letter-group "⠇" :after "⠅" :prefixes (""))
+(define-letter-group "⠍" :after "⠇" :prefixes (""))
+(define-letter-group "⠝" :after "⠍" :prefixes (""))
+(define-letter-group "⠕" :after "⠝" :prefixes (""))
+(define-letter-group "⠏" :after "⠕" :prefixes (""))
+(define-letter-group "⠟" :after "⠏" :prefixes (""))
+(define-letter-group "⠗" :after "⠟" :prefixes (""))
+(define-letter-group "⠎" :after "⠗" :prefixes (""))
+(define-letter-group "⠞" :after "⠎" :prefixes (""))
+(define-letter-group "⠥" :after "⠞" :prefixes (""))
+(define-letter-group "⠧" :after "⠥" :prefixes (""))
+(define-letter-group "⠺" :after "⠧" :prefixes (""))
+(define-letter-group "⠭" :after "⠺" :prefixes (""))
+(define-letter-group "⠽" :after "⠭" :prefixes (""))
+(define-letter-group "⠵" :after "⠽" :prefixes (""))
+
+(define-rule-set "de-alphabetize"
+
+ :rules (("⠁" "" :string)
+ ("⠜" "" :string)
+ ("⠡" "" :string)
+ ("⠌" "" :string)
+ ("⠃" "" :string)
+ ("⠉" "" :string)
+ ("⠹" "" :string)
+ ("⠙" "" :string)
+ ("⠑" "" :string)
+ ("⠩" "" :string)
+ ("⠣" "" :string)
+ ("⠋" "" :string)
+ ("⠛" "" :string)
+ ("⠓" "" :string)
+ ("⠊" "" :string)
+ ("⠬" "" :string)
+ ("⠚" "" :string)
+ ("⠅" "" :string)
+ ("⠇" "" :string)
+ ("⠍" "" :string)
+ ("⠝" "" :string)
+ ("⠕" "" :string)
+ ("⠪" "" :string)
+ ("⠏" "" :string)
+ ("⠟" "" :string)
+ ("⠗" "" :string)
+ ("⠎" "" :string)
+ ("⠱" "І" :string)
+ ("⠮" "" :string)
+ ("⠾" "" :string)
+ ("⠞" "" :string)
+ ("⠥" "" :string)
+ ("⠳" "" :string)
+ ("⠧" "" :string)
+ ("⠺" "" :string)
+ ("⠭" "" :string)
+ ("⠽" "" :string)
+ ("⠵" "" :string)
+ ))
+
+(define-rule-set "de-resolve-diacritics"
+
+ :rules (("⠞" "" :string)
+ ("⠋" "" :string)
+ ("⠍" "" :string)
+ ("⠁" "" :string)
+ ("⠵" "" :string)
+ ("⠚" "" :string)
+ ("⠽" "" :string)
+ ("⠓" "" :string)
+ ("⠟" "" :string)
+ ("⠛" "" :string)
+ ("⠥" "" :string)
+ ("⠑" "" :string)
+ ("⠕" "" :string)
+ ("⠉" "" :string)
+ ("⠏" "" :string)
+ ("⠗" "" :string)
+ ("⠊" "" :string)
+ ("⠅" "" :string)
+ ("⠙" "" :string)
+ ("⠎" "" :string)
+ ("⠇" "" :string)
+ ("⠝" "" :string)
+ ("⠧" "" :string)
+ ("⠃" "" :string)
+ ("⠭" "" :string)
+ ("⠺" "" :string)
+ ("⠳" "" :string)
+ ("⠜" "" :string)
+ ("⠪" "" :string)
+ ("⠱" "" :string)
+ ("⠾" "" :string)
+ ("⠩" "" :string)
+ ("⠡" "" :string)
+ ("⠮" "" :string)
+ ("⠌" "" :string)
+ ("⠹" "" :string)
+ ("⠬" "" :string)
+ ("⠣" "" :string)
+ ))
+
+(define-rule-set "de-resolve-case"
+
+ :rules (("⠞" "9" :string)
+ ("⠋" "9" :string)
+ ("⠍" "9" :string)
+ ("⠁" "9" :string)
+ ("⠵" "9" :string)
+ ("⠚" "9" :string)
+ ("⠽" "9" :string)
+ ("⠓" "9" :string)
+ ("⠟" "9" :string)
+ ("⠛" "9" :string)
+ ("⠥" "9" :string)
+ ("⠑" "9" :string)
+ ("⠕" "9" :string)
+ ("⠉" "9" :string)
+ ("⠳" "9" :string)
+ ("⠜" "9" :string)
+ ("⠏" "9" :string)
+ ("⠗" "9" :string)
+ ("⠊" "9" :string)
+ ("⠅" "9" :string)
+ ("⠙" "9" :string)
+ ("⠎" "9" :string)
+ ("⠪" "9" :string)
+ ("⠇" "9" :string)
+ ("⠝" "9" :string)
+ ("⠧" "9" :string)
+ ("⠃" "9" :string)
+ ("⠭" "9" :string)
+ ("⠺" "9" :string)
+ ("⠾" "99" :string)
+ ("⠩" "99" :string)
+ ("⠡" "99" :string)
+ ("⠮" "99" :string)
+ ("⠌" "99" :string)
+ ("⠹" "99" :string)
+ ("⠬" "99" :string)
+ ("⠣" "99" :string)
+ ("⠱" "999" :string)
+ ))
+
+(define-rule-set "de-ignore-special"
+
+ :rules (("⠐⠂" "" :string)
+ ("⠂" "" :string)
+ ("⠄" "" :string)
+ ("⠠" "" :string)
+ ("⠴" "" :string)
+ ("⠢" "" :string)
+ ("⠆" "" :string)
+ ("⠨" "" :string)
+ ("⠖" "" :string)
+ ("⠦" "" :string)
+ ("⠶" "" :string)
+ ("⠔" "" :string)
+ ("⠈" "" :string)
+ ("⠤" "" :string)
+ ("⠘" "" :string)
+ ("⠼" "" :string)
+ ("⠒" "" :string)
+ ("⠸" "" :string)
+ ))
+
+(define-rule-set "de-resolve-special"
+
+ :rules (("⠐⠂" "" :string)
+ ("⠂" "" :string)
+ ("⠆" "" :string)
+ ("⠒" "" :string)
+ ("⠢" "" :string)
+ ("⠖" "" :string)
+ ("⠶" "" :string)
+ ("⠦" "" :string)
+ ("⠔" "" :string)
+ ("⠴" "" :string)
+ ("⠄" "" :string)
+ ("⠤" "" :string)
+ ("⠞" "" :string)
+ ("⠋" "" :string)
+ ("⠍" "" :string)
+ ("⠁" "" :string)
+ ("⠵" "" :string)
+ ("⠚" "" :string)
+ ("⠽" "" :string)
+ ("⠓" "" :string)
+ ("⠟" "" :string)
+ ("⠛" "" :string)
+ ("⠥" "" :string)
+ ("⠑" "" :string)
+ ("⠕" "" :string)
+ ("⠉" "" :string)
+ ("⠳" "" :string)
+ ("⠜" "" :string)
+ ("⠏" "" :string)
+ ("⠗" "" :string)
+ ("⠊" "" :string)
+ ("⠅" "" :string)
+ ("⠙" "" :string)
+ ("⠎" "" :string)
+ ("⠪" "" :string)
+ ("⠇" "" :string)
+ ("⠝" "" :string)
+ ("⠧" "" :string)
+ ("⠃" "" :string)
+ ("⠭" "" :string)
+ ("⠺" "" :string)
+ ("⠾" "" :string)
+ ("⠩" "" :string)
+ ("⠡" "" :string)
+ ("⠮" "" :string)
+ ("⠌" "" :string)
+ ("⠹" "" :string)
+ ("⠬" "" :string)
+ ("⠣" "" :string)
+ ("⠱" "" :string)
+ ("⠈" "" :string)
+ ("⠘" "" :string)
+ ("⠸" "" :string)
+ ("⠨" "" :string)
+ ("⠠" "" :string)
+ ("⠼" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/german/din5007-latin1-lang.xdy b/Master/texmf/xindy/modules/lang/german/din5007-latin1-lang.xdy
new file mode 100644
index 00000000000..36bd2968dc3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/din5007-latin1-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/german/din5007-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/german/din5007-latin1-test.xdy b/Master/texmf/xindy/modules/lang/german/din5007-latin1-test.xdy
new file mode 100644
index 00000000000..165e2dbe244
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/din5007-latin1-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/german/din5007-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/german/din5007-latin1.xdy b/Master/texmf/xindy/modules/lang/german/din5007-latin1.xdy
new file mode 100644
index 00000000000..691deb29a66
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/din5007-latin1.xdy
@@ -0,0 +1,308 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: German
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "de-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "×" :string)
+ ("" "×" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "de-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "de-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("" "89" :string)
+ ("" "89" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "de-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ))
+
+(define-rule-set "de-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("a" "" :string)
+ ("T" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("B" "" :string)
+ ("s" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/german/din5007-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/german/din5007-utf8-lang.xdy
new file mode 100644
index 00000000000..de9bd35bba8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/din5007-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/german/din5007-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/german/din5007-utf8-test.xdy b/Master/texmf/xindy/modules/lang/german/din5007-utf8-test.xdy
new file mode 100644
index 00000000000..c90cdc77220
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/din5007-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/german/din5007-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/german/din5007-utf8.xdy b/Master/texmf/xindy/modules/lang/german/din5007-utf8.xdy
new file mode 100644
index 00000000000..592bea19d33
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/din5007-utf8.xdy
@@ -0,0 +1,308 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: German
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "de-alphabetize"
+
+ :rules (("ä" "" :string)
+ ("Ä" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("Ö" "×" :string)
+ ("ö" "×" :string)
+ ("ß" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "de-resolve-diacritics"
+
+ :rules (("É" "" :string)
+ ("é" "" :string)
+ ("ä" "" :string)
+ ("Ö" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("ö" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "de-resolve-case"
+
+ :rules (("É" "8" :string)
+ ("Ö" "89" :string)
+ ("Ä" "89" :string)
+ ("Ü" "89" :string)
+ ("é" "9" :string)
+ ("ä" "99" :string)
+ ("ü" "99" :string)
+ ("ö" "99" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "de-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ))
+
+(define-rule-set "de-resolve-special"
+
+ :rules (("É" "" :string)
+ ("é" "" :string)
+ ("Ö" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("ö" "" :string)
+ ("ä" "" :string)
+ ("ü" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("a" "" :string)
+ ("T" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("B" "" :string)
+ ("s" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/german/din5007.xdy b/Master/texmf/xindy/modules/lang/german/din5007.xdy
new file mode 100644
index 00000000000..74d58ac7b5e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/din5007.xdy
@@ -0,0 +1,20 @@
+;; $Id: din5007.xdy,v 1.1 1996/07/03 18:44:46 kehr Exp $
+;;
+;; This file contains the basic sort-rules that are necessary to sort
+;; a german index.
+
+;; Die folgenden Regeln entsprechen der DIN 5007.
+
+(sort-rule "" "ae")
+(sort-rule "" "oe")
+(sort-rule "" "ue")
+
+(sort-rule "" "ae")
+(sort-rule "" "oe")
+(sort-rule "" "ue")
+
+(sort-rule "" "ss")
+
+(require "lang/latin/caseisrt.xdy")
+
+;; End
diff --git a/Master/texmf/xindy/modules/lang/german/duden-latin1-lang.xdy b/Master/texmf/xindy/modules/lang/german/duden-latin1-lang.xdy
new file mode 100644
index 00000000000..4fdcbb9769e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/duden-latin1-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/german/duden-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/german/duden-latin1-test.xdy b/Master/texmf/xindy/modules/lang/german/duden-latin1-test.xdy
new file mode 100644
index 00000000000..aa56edbdab6
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/duden-latin1-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/german/duden-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/german/duden-latin1.xdy b/Master/texmf/xindy/modules/lang/german/duden-latin1.xdy
new file mode 100644
index 00000000000..8f296aad042
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/duden-latin1.xdy
@@ -0,0 +1,308 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: German
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "de-alphabetize"
+
+ :rules (("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "de-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "de-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "de-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ))
+
+(define-rule-set "de-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("T" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("B" "" :string)
+ ("s" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/german/duden-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/german/duden-utf8-lang.xdy
new file mode 100644
index 00000000000..7f01dd68678
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/duden-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/german/duden-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/german/duden-utf8-test.xdy b/Master/texmf/xindy/modules/lang/german/duden-utf8-test.xdy
new file mode 100644
index 00000000000..fd1dd10c172
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/duden-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/german/duden-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("de-alphabetize" "de-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("de-resolve-diacritics" "de-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("de-resolve-case" "de-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("de-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/german/duden-utf8.xdy b/Master/texmf/xindy/modules/lang/german/duden-utf8.xdy
new file mode 100644
index 00000000000..4d3972148c9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/duden-utf8.xdy
@@ -0,0 +1,308 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: German
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "de-alphabetize"
+
+ :rules (("ä" "" :string)
+ ("Ä" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("Ö" "" :string)
+ ("ö" "" :string)
+ ("ß" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "de-resolve-diacritics"
+
+ :rules (("É" "" :string)
+ ("é" "" :string)
+ ("ä" "" :string)
+ ("Ö" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("ö" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "de-resolve-case"
+
+ :rules (("Ö" "8" :string)
+ ("É" "8" :string)
+ ("Ä" "8" :string)
+ ("Ü" "8" :string)
+ ("ä" "9" :string)
+ ("é" "9" :string)
+ ("ü" "9" :string)
+ ("ö" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "de-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ))
+
+(define-rule-set "de-resolve-special"
+
+ :rules (("Ö" "" :string)
+ ("É" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("ö" "" :string)
+ ("ä" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("a" "" :string)
+ ("T" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("B" "" :string)
+ ("s" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/german/duden.xdy b/Master/texmf/xindy/modules/lang/german/duden.xdy
new file mode 100644
index 00000000000..0ec6e895080
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/duden.xdy
@@ -0,0 +1,37 @@
+;; $Id: duden.xdy,v 1.1 1996/07/03 18:44:46 kehr Exp $
+;;
+;; This file contains the basic sort-rules that are necessary to sort
+;; a german index.
+
+;; Dieses Modul definiert die Regeln zum Sortieren eines Wrterbuchs.
+;; Die folgenden Regeln wurden dem Duden entnommen und bilden die
+;; Sortierregeln des Dudens selbst.
+;;
+;; (1) wird wie a, wie o, wie u und u wie au einsortiert.
+
+(sort-rule "" "a")
+(sort-rule "" "o")
+(sort-rule "" "u")
+
+;; (2) Die Schreibungen ae, oe und ue (in Namen) werden nach ad usw.
+;; eingeordnet. [Dies k"onnen wir nicht leisten, da das Programm
+;; nicht wei, was ein Name ist.]
+;; (3) Der Buchstabe (es-zett) wird wie ss (i), bei gleichnamigen
+;; Wrtern vor ss (ii) eigeordnet. Punkt (ii) ist ebenfalls
+;; nicht spezifizierbar, daher hier nur Regel (3i).
+
+(sort-rule "" "ss")
+
+;; Da beim Index die Gro- und Kleinschreibung ohne Bedeutung ist,
+;; bilden wir beim Sort-Mapping die Grobuchstaben auf die
+;; Kleinbuchstaben ab.
+
+(require "lang/latin/caseisrt.xdy")
+
+;; Analog bilden wir noch die Grobuchtaben-Umlaute ab.
+
+(sort-rule "" "a")
+(sort-rule "" "o")
+(sort-rule "" "u")
+
+;; End
diff --git a/Master/texmf/xindy/modules/lang/german/tex.xdy b/Master/texmf/xindy/modules/lang/german/tex.xdy
new file mode 100644
index 00000000000..59b1332b370
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/german/tex.xdy
@@ -0,0 +1,21 @@
+;; $Id: tex.xdy,v 1.2 1996/07/18 16:03:55 kehr Exp $
+;;
+;; This file contains some rules to process TeX-letters with xindy.
+;;
+;; It should be used in conjunction with the `din5007' or the `duden'
+;; modules.
+;;
+
+;; We first map them to the ISO-Latin counterpart and then use the
+;; mappings in on of the two other modules to map them to the actual
+;; postition.
+
+(sort-rule "\\\"a" "" :again)
+(sort-rule "\\\"o" "" :again)
+(sort-rule "\\\"u" "" :again)
+(sort-rule "\\\"A" "" :again)
+(sort-rule "\\\"O" "" :again)
+(sort-rule "\\\"U" "" :again)
+(sort-rule "\\ss({})?" "" :again)
+
+;; End
diff --git a/Master/texmf/xindy/modules/lang/greek/iso88597-lang.xdy b/Master/texmf/xindy/modules/lang/greek/iso88597-lang.xdy
new file mode 100644
index 00000000000..ca1f1ff07b8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/iso88597-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/greek/iso88597.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/greek/iso88597-test.xdy b/Master/texmf/xindy/modules/lang/greek/iso88597-test.xdy
new file mode 100644
index 00000000000..83cff319015
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/iso88597-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/greek/iso88597.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/greek/iso88597.xdy b/Master/texmf/xindy/modules/lang/greek/iso88597.xdy
new file mode 100644
index 00000000000..331f84f4724
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/iso88597.xdy
@@ -0,0 +1,340 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Greek
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "el-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "el-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "el-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "el-ignore-special"
+
+ :rules (("\/" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ))
+
+(define-rule-set "el-resolve-special"
+
+ :rules (("\/" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/greek/polytonic-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/greek/polytonic-utf8-lang.xdy
new file mode 100644
index 00000000000..da8d41fd417
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/polytonic-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/greek/polytonic-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/greek/polytonic-utf8-test.xdy b/Master/texmf/xindy/modules/lang/greek/polytonic-utf8-test.xdy
new file mode 100644
index 00000000000..b05222afeb4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/polytonic-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/greek/polytonic-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/greek/polytonic-utf8.xdy b/Master/texmf/xindy/modules/lang/greek/polytonic-utf8.xdy
new file mode 100644
index 00000000000..aa53ac8cdfe
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/polytonic-utf8.xdy
@@ -0,0 +1,646 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Greek
+
+(define-letter-group "Α" :prefixes (""))
+(define-letter-group "Β" :after "Α" :prefixes (""))
+(define-letter-group "Γ" :after "Β" :prefixes (""))
+(define-letter-group "Δ" :after "Γ" :prefixes (""))
+(define-letter-group "Ε" :after "Δ" :prefixes (""))
+(define-letter-group "Ζ" :after "Ε" :prefixes (""))
+(define-letter-group "Ϝ" :after "Ζ" :prefixes (""))
+(define-letter-group "Η" :after "Ϝ" :prefixes (""))
+(define-letter-group "Θ" :after "Η" :prefixes (""))
+(define-letter-group "Ι" :after "Θ" :prefixes (""))
+(define-letter-group "ϳ" :after "Ι" :prefixes (""))
+(define-letter-group "Κ" :after "ϳ" :prefixes (""))
+(define-letter-group "Λ" :after "Κ" :prefixes (""))
+(define-letter-group "Μ" :after "Λ" :prefixes (""))
+(define-letter-group "Ν" :after "Μ" :prefixes (""))
+(define-letter-group "Ξ" :after "Ν" :prefixes (""))
+(define-letter-group "Ο" :after "Ξ" :prefixes (""))
+(define-letter-group "Π" :after "Ο" :prefixes (""))
+(define-letter-group "Ρ" :after "Π" :prefixes (""))
+(define-letter-group "Σ" :after "Ρ" :prefixes (""))
+(define-letter-group "Τ" :after "Σ" :prefixes (""))
+(define-letter-group "Υ" :after "Τ" :prefixes (""))
+(define-letter-group "Φ" :after "Υ" :prefixes (""))
+(define-letter-group "Χ" :after "Φ" :prefixes (""))
+(define-letter-group "Ψ" :after "Χ" :prefixes (""))
+(define-letter-group "Ω" :after "Ψ" :prefixes (""))
+
+(define-rule-set "el-alphabetize"
+
+ :rules (("ᾼ" "" :string)
+ ("ἆ" "" :string)
+ ("Ᾱ" "" :string)
+ ("ἂ" "" :string)
+ ("ᾉ" "" :string)
+ ("ᾏ" "" :string)
+ ("Ἄ" "" :string)
+ ("ᾳ" "" :string)
+ ("ᾅ" "" :string)
+ ("ᾍ" "" :string)
+ ("ᾷ" "" :string)
+ ("ᾋ" "" :string)
+ ("ᾄ" "" :string)
+ ("Ἃ" "" :string)
+ ("Ἇ" "" :string)
+ ("ἄ" "" :string)
+ ("Ά" "" :string)
+ ("Ἀ" "" :string)
+ ("ᾰ" "" :string)
+ ("ᾃ" "" :string)
+ ("Ᾰ" "" :string)
+ ("ἇ" "" :string)
+ ("ά" "" :string)
+ ("ᾇ" "" :string)
+ ("ᾁ" "" :string)
+ ("ᾆ" "" :string)
+ ("ἅ" "" :string)
+ ("ᾶ" "" :string)
+ ("ᾱ" "" :string)
+ ("Ἆ" "" :string)
+ ("ᾈ" "" :string)
+ ("ᾊ" "" :string)
+ ("ἃ" "" :string)
+ ("Ἅ" "" :string)
+ ("ἀ" "" :string)
+ ("ᾎ" "" :string)
+ ("ᾂ" "" :string)
+ ("ἁ" "" :string)
+ ("Ὰ" "" :string)
+ ("ᾲ" "" :string)
+ ("Ἁ" "" :string)
+ ("ᾌ" "" :string)
+ ("ὰ" "" :string)
+ ("ᾴ" "" :string)
+ ("ᾀ" "" :string)
+ ("Ἂ" "" :string)
+ ("Ἒ" "" :string)
+ ("Ἑ" "" :string)
+ ("ὲ" "" :string)
+ ("Ὲ" "" :string)
+ ("Ἕ" "" :string)
+ ("ἔ" "" :string)
+ ("ἐ" "" :string)
+ ("έ" "" :string)
+ ("Ἐ" "" :string)
+ ("ἓ" "" :string)
+ ("Ἓ" "" :string)
+ ("Ἔ" "" :string)
+ ("ἕ" "" :string)
+ ("Έ" "" :string)
+ ("ἒ" "" :string)
+ ("ἑ" "" :string)
+ ("ὴ" "" :string)
+ ("Ἣ" "" :string)
+ ("ἣ" "" :string)
+ ("ἤ" "" :string)
+ ("Ὴ" "" :string)
+ ("ἡ" "" :string)
+ ("Ἠ" "" :string)
+ ("Ἥ" "" :string)
+ ("Ή" "" :string)
+ ("ἠ" "" :string)
+ ("ἢ" "" :string)
+ ("ἥ" "" :string)
+ ("Ἢ" "" :string)
+ ("Ἡ" "" :string)
+ ("ή" "" :string)
+ ("Ἤ" "" :string)
+ ("Α" "" :string)
+ ("α" "" :string)
+ ("β" "" :string)
+ ("Β" "" :string)
+ ("ϐ" "" :string)
+ ("γ" "" :string)
+ ("Γ" "" :string)
+ ("Δ" "" :string)
+ ("δ" "" :string)
+ ("ε" "" :string)
+ ("Ε" "" :string)
+ ("Ζ" "" :string)
+ ("ζ" "" :string)
+ ("Ϝ" "" :string)
+ ("ϝ" "" :string)
+ ("Η" "" :string)
+ ("η" "" :string)
+ ("Θ" "" :string)
+ ("θ" "" :string)
+ ("ΐ" "" :string)
+ ("Ι" "" :string)
+ ("ι" "" :string)
+ ("Ί" "" :string)
+ ("ί" "" :string)
+ ("Ϊ" "" :string)
+ ("ϊ" "" :string)
+ ("ϳ" "" :string)
+ ("Κ" "" :string)
+ ("κ" "" :string)
+ ("λ" "" :string)
+ ("Λ" "" :string)
+ ("Μ" "" :string)
+ ("μ" "" :string)
+ ("Ν" "" :string)
+ ("ν" "" :string)
+ ("Ξ" "" :string)
+ ("ξ" "" :string)
+ ("ο" "" :string)
+ ("ό" "" :string)
+ ("Ό" "" :string)
+ ("Ο" "" :string)
+ ("Π" "" :string)
+ ("π" "" :string)
+ ("ρ" "" :string)
+ ("Ρ" "" :string)
+ ("ς" "" :string)
+ ("σ" "" :string)
+ ("Σ" "" :string)
+ ("Τ" "" :string)
+ ("τ" "" :string)
+ ("Ύ" "" :string)
+ ("Ϋ" "" :string)
+ ("υ" "" :string)
+ ("ϋ" "" :string)
+ ("ύ" "" :string)
+ ("ΰ" "" :string)
+ ("Υ" "" :string)
+ ("Φ" "" :string)
+ ("φ" "" :string)
+ ("Χ" "" :string)
+ ("χ" "" :string)
+ ("Ψ" "" :string)
+ ("ψ" "" :string)
+ ("ώ" "" :string)
+ ("ω" "" :string)
+ ("Ω" "" :string)
+ ("Ώ" "" :string)
+ ))
+
+(define-rule-set "el-resolve-diacritics"
+
+ :rules (("ὴ" "" :string)
+ ("ὲ" "" :string)
+ ("Ὲ" "" :string)
+ ("ᾰ" "" :string)
+ ("Ὴ" "" :string)
+ ("Ᾰ" "" :string)
+ ("Ᾱ" "" :string)
+ ("έ" "" :string)
+ ("Ή" "" :string)
+ ("ᾱ" "" :string)
+ ("Έ" "" :string)
+ ("ή" "" :string)
+ ("Ἠ" "" :string)
+ ("ἐ" "" :string)
+ ("ἠ" "" :string)
+ ("Ἐ" "" :string)
+ ("Ὰ" "" :string)
+ ("ὰ" "" :string)
+ ("Ἑ" "" :string)
+ ("Ά" "" :string)
+ ("ἡ" "" :string)
+ ("ά" "" :string)
+ ("ἑ" "" :string)
+ ("Ἡ" "" :string)
+ ("Ἒ" "" :string)
+ ("Ἀ" "" :string)
+ ("ἢ" "" :string)
+ ("ἀ" "" :string)
+ ("Ἢ" "" :string)
+ ("ἒ" "" :string)
+ ("Ἣ" "" :string)
+ ("ἣ" "" :string)
+ ("ἓ" "" :string)
+ ("Ἓ" "" :string)
+ ("ἁ" "" :string)
+ ("Ἁ" "" :string)
+ ("ἂ" "" :string)
+ ("ἤ" "" :string)
+ ("ἔ" "" :string)
+ ("Ἔ" "" :string)
+ ("Ἤ" "" :string)
+ ("Ἂ" "" :string)
+ ("Ἃ" "" :string)
+ ("Ἕ" "" :string)
+ ("Ἥ" "" :string)
+ ("ἃ" "" :string)
+ ("ἥ" "" :string)
+ ("ἕ" "" :string)
+ ("Ἄ" "" :string)
+ ("ἄ" "" :string)
+ ("ἅ" "" :string)
+ ("Ἅ" "" :string)
+ ("ἆ" "" :string)
+ ("Ἆ" "" :string)
+ ("Ἇ" "" :string)
+ ("ἇ" "" :string)
+ ("ᾼ" "" :string)
+ ("ᾳ" "" :string)
+ ("ᾲ" "" :string)
+ ("ᾴ" "" :string)
+ ("ᾶ" "" :string)
+ ("ᾷ" "" :string)
+ ("ᾈ" "" :string)
+ ("ᾀ" "" :string)
+ ("ᾉ" "" :string)
+ ("ᾁ" "" :string)
+ ("ᾊ" "" :string)
+ ("ᾂ" "" :string)
+ ("ᾋ" "" :string)
+ ("ᾃ" "" :string)
+ ("ᾄ" "" :string)
+ ("ᾌ" "" :string)
+ ("ᾅ" "" :string)
+ ("ᾍ" "" :string)
+ ("ᾆ" "" :string)
+ ("ᾎ" "" :string)
+ ("ᾏ" "" :string)
+ ("ᾇ" "" :string)
+ ("ο" "" :string)
+ ("Τ" "" :string)
+ ("Π" "" :string)
+ ("Κ" "" :string)
+ ("Ι" "" :string)
+ ("Ν" "" :string)
+ ("Ψ" "" :string)
+ ("ι" "" :string)
+ ("ε" "" :string)
+ ("Δ" "" :string)
+ ("ρ" "" :string)
+ ("Ϝ" "" :string)
+ ("Η" "" :string)
+ ("Α" "" :string)
+ ("ν" "" :string)
+ ("Μ" "" :string)
+ ("β" "" :string)
+ ("γ" "" :string)
+ ("α" "" :string)
+ ("Χ" "" :string)
+ ("Ξ" "" :string)
+ ("Β" "" :string)
+ ("υ" "" :string)
+ ("χ" "" :string)
+ ("Ζ" "" :string)
+ ("ϳ" "" :string)
+ ("δ" "" :string)
+ ("ω" "" :string)
+ ("ϝ" "" :string)
+ ("Ω" "" :string)
+ ("Θ" "" :string)
+ ("Ε" "" :string)
+ ("σ" "" :string)
+ ("ζ" "" :string)
+ ("θ" "" :string)
+ ("Ο" "" :string)
+ ("Γ" "" :string)
+ ("Ρ" "" :string)
+ ("Φ" "" :string)
+ ("Σ" "" :string)
+ ("λ" "" :string)
+ ("τ" "" :string)
+ ("ξ" "" :string)
+ ("Λ" "" :string)
+ ("Υ" "" :string)
+ ("μ" "" :string)
+ ("φ" "" :string)
+ ("π" "" :string)
+ ("κ" "" :string)
+ ("ψ" "" :string)
+ ("η" "" :string)
+ ("ό" "" :string)
+ ("ώ" "" :string)
+ ("Ύ" "" :string)
+ ("ς" "" :string)
+ ("Ό" "" :string)
+ ("Ί" "" :string)
+ ("ί" "" :string)
+ ("ύ" "" :string)
+ ("Ώ" "" :string)
+ ("ϐ" "" :string)
+ ("Ϋ" "" :string)
+ ("ϋ" "" :string)
+ ("Ϊ" "" :string)
+ ("ϊ" "" :string)
+ ("ΐ" "" :string)
+ ("ΰ" "" :string)
+ ))
+
+(define-rule-set "el-resolve-case"
+
+ :rules (("Ἒ" "8" :string)
+ ("ᾼ" "8" :string)
+ ("Ἑ" "8" :string)
+ ("Ᾱ" "8" :string)
+ ("Ἣ" "8" :string)
+ ("ᾉ" "8" :string)
+ ("ᾏ" "8" :string)
+ ("Ἄ" "8" :string)
+ ("ᾍ" "8" :string)
+ ("Ὲ" "8" :string)
+ ("ᾋ" "8" :string)
+ ("Ἇ" "8" :string)
+ ("Ἃ" "8" :string)
+ ("Ά" "8" :string)
+ ("Ἀ" "8" :string)
+ ("Ἕ" "8" :string)
+ ("Ὴ" "8" :string)
+ ("Ᾰ" "8" :string)
+ ("Ἠ" "8" :string)
+ ("Ἥ" "8" :string)
+ ("Ή" "8" :string)
+ ("Ἐ" "8" :string)
+ ("Ἆ" "8" :string)
+ ("ᾈ" "8" :string)
+ ("ᾊ" "8" :string)
+ ("Ἅ" "8" :string)
+ ("ᾎ" "8" :string)
+ ("Ἓ" "8" :string)
+ ("Ὰ" "8" :string)
+ ("Ἔ" "8" :string)
+ ("Ἁ" "8" :string)
+ ("ᾌ" "8" :string)
+ ("Ἢ" "8" :string)
+ ("Έ" "8" :string)
+ ("Ἡ" "8" :string)
+ ("Ἤ" "8" :string)
+ ("Ἂ" "8" :string)
+ ("ἆ" "9" :string)
+ ("ὴ" "9" :string)
+ ("ἂ" "9" :string)
+ ("ὲ" "9" :string)
+ ("ᾳ" "9" :string)
+ ("ᾅ" "9" :string)
+ ("ᾷ" "9" :string)
+ ("ἣ" "9" :string)
+ ("ᾄ" "9" :string)
+ ("ἄ" "9" :string)
+ ("ᾰ" "9" :string)
+ ("ἤ" "9" :string)
+ ("ᾃ" "9" :string)
+ ("ἡ" "9" :string)
+ ("ἇ" "9" :string)
+ ("ά" "9" :string)
+ ("ἔ" "9" :string)
+ ("ἐ" "9" :string)
+ ("ᾇ" "9" :string)
+ ("ᾁ" "9" :string)
+ ("έ" "9" :string)
+ ("ᾆ" "9" :string)
+ ("ἠ" "9" :string)
+ ("ἅ" "9" :string)
+ ("ἓ" "9" :string)
+ ("ᾶ" "9" :string)
+ ("ᾱ" "9" :string)
+ ("ἢ" "9" :string)
+ ("ἃ" "9" :string)
+ ("ἀ" "9" :string)
+ ("ᾂ" "9" :string)
+ ("ἁ" "9" :string)
+ ("ᾲ" "9" :string)
+ ("ἥ" "9" :string)
+ ("ὰ" "9" :string)
+ ("ἕ" "9" :string)
+ ("ἒ" "9" :string)
+ ("ᾴ" "9" :string)
+ ("ἑ" "9" :string)
+ ("ᾀ" "9" :string)
+ ("ή" "9" :string)
+ ("Τ" "8" :string)
+ ("Π" "8" :string)
+ ("Κ" "8" :string)
+ ("Ι" "8" :string)
+ ("Ύ" "8" :string)
+ ("Ν" "8" :string)
+ ("Ψ" "8" :string)
+ ("Δ" "8" :string)
+ ("Ϝ" "8" :string)
+ ("Η" "8" :string)
+ ("Α" "8" :string)
+ ("Ό" "8" :string)
+ ("Μ" "8" :string)
+ ("Χ" "8" :string)
+ ("Ξ" "8" :string)
+ ("Ϋ" "8" :string)
+ ("Ί" "8" :string)
+ ("Β" "8" :string)
+ ("Ζ" "8" :string)
+ ("Ω" "8" :string)
+ ("Θ" "8" :string)
+ ("Ε" "8" :string)
+ ("Ο" "8" :string)
+ ("Γ" "8" :string)
+ ("Ώ" "8" :string)
+ ("Ϊ" "8" :string)
+ ("Ρ" "8" :string)
+ ("Φ" "8" :string)
+ ("Σ" "8" :string)
+ ("Λ" "8" :string)
+ ("Υ" "8" :string)
+ ("ο" "9" :string)
+ ("ΐ" "9" :string)
+ ("ό" "9" :string)
+ ("ώ" "9" :string)
+ ("ς" "9" :string)
+ ("ι" "9" :string)
+ ("ε" "9" :string)
+ ("ρ" "9" :string)
+ ("ν" "9" :string)
+ ("β" "9" :string)
+ ("γ" "9" :string)
+ ("α" "9" :string)
+ ("υ" "9" :string)
+ ("χ" "9" :string)
+ ("ί" "9" :string)
+ ("ϳ" "9" :string)
+ ("δ" "9" :string)
+ ("ω" "9" :string)
+ ("ϋ" "9" :string)
+ ("ϝ" "9" :string)
+ ("ύ" "9" :string)
+ ("σ" "9" :string)
+ ("ζ" "9" :string)
+ ("θ" "9" :string)
+ ("λ" "9" :string)
+ ("τ" "9" :string)
+ ("ξ" "9" :string)
+ ("ΰ" "9" :string)
+ ("μ" "9" :string)
+ ("φ" "9" :string)
+ ("ϐ" "9" :string)
+ ("π" "9" :string)
+ ("ϊ" "9" :string)
+ ("κ" "9" :string)
+ ("ψ" "9" :string)
+ ("η" "9" :string)
+ ))
+
+(define-rule-set "el-ignore-special"
+
+ :rules (("·" "" :string)
+ ("\/" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("?" "" :string)
+ ("'" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ))
+
+(define-rule-set "el-resolve-special"
+
+ :rules (("Ἒ" "" :string)
+ ("ᾼ" "" :string)
+ ("Ἑ" "" :string)
+ ("ἆ" "" :string)
+ ("Ᾱ" "" :string)
+ ("ὴ" "" :string)
+ ("Ἣ" "" :string)
+ ("ἂ" "" :string)
+ ("ᾉ" "" :string)
+ ("ὲ" "" :string)
+ ("ᾏ" "" :string)
+ ("Ἄ" "" :string)
+ ("ᾳ" "" :string)
+ ("ᾅ" "" :string)
+ ("ᾍ" "" :string)
+ ("ᾷ" "" :string)
+ ("Ὲ" "" :string)
+ ("ᾋ" "" :string)
+ ("ἣ" "" :string)
+ ("ᾄ" "" :string)
+ ("Ἇ" "" :string)
+ ("Ἃ" "" :string)
+ ("ἄ" "" :string)
+ ("Ά" "" :string)
+ ("Ἀ" "" :string)
+ ("ᾰ" "" :string)
+ ("ἤ" "" :string)
+ ("Ἕ" "" :string)
+ ("Ὴ" "" :string)
+ ("ᾃ" "" :string)
+ ("ἡ" "" :string)
+ ("Ᾰ" "" :string)
+ ("ἇ" "" :string)
+ ("Ἠ" "" :string)
+ ("ά" "" :string)
+ ("ἔ" "" :string)
+ ("ἐ" "" :string)
+ ("ᾇ" "" :string)
+ ("Ἥ" "" :string)
+ ("ᾁ" "" :string)
+ ("έ" "" :string)
+ ("ᾆ" "" :string)
+ ("ἠ" "" :string)
+ ("Ή" "" :string)
+ ("Ἐ" "" :string)
+ ("ἅ" "" :string)
+ ("ἓ" "" :string)
+ ("ᾶ" "" :string)
+ ("ᾱ" "" :string)
+ ("Ἆ" "" :string)
+ ("ᾈ" "" :string)
+ ("ᾊ" "" :string)
+ ("ἢ" "" :string)
+ ("ἃ" "" :string)
+ ("Ἅ" "" :string)
+ ("ᾎ" "" :string)
+ ("ἀ" "" :string)
+ ("Ἓ" "" :string)
+ ("ᾂ" "" :string)
+ ("ἁ" "" :string)
+ ("Ὰ" "" :string)
+ ("ᾲ" "" :string)
+ ("Ἔ" "" :string)
+ ("Ἁ" "" :string)
+ ("ᾌ" "" :string)
+ ("ἥ" "" :string)
+ ("ὰ" "" :string)
+ ("ἕ" "" :string)
+ ("Ἢ" "" :string)
+ ("Έ" "" :string)
+ ("ἒ" "" :string)
+ ("ᾴ" "" :string)
+ ("ἑ" "" :string)
+ ("Ἡ" "" :string)
+ ("ᾀ" "" :string)
+ ("Ἤ" "" :string)
+ ("ή" "" :string)
+ ("Ἂ" "" :string)
+ ("·" "" :string)
+ ("ο" "" :string)
+ ("Τ" "" :string)
+ ("Π" "" :string)
+ ("ΐ" "" :string)
+ ("Κ" "" :string)
+ ("ό" "" :string)
+ ("ώ" "" :string)
+ ("Ι" "" :string)
+ ("Ύ" "" :string)
+ ("Ν" "" :string)
+ ("ς" "" :string)
+ ("Ψ" "" :string)
+ ("ι" "" :string)
+ ("ε" "" :string)
+ ("Δ" "" :string)
+ ("ρ" "" :string)
+ ("Ϝ" "" :string)
+ ("Η" "" :string)
+ ("Α" "" :string)
+ ("ν" "" :string)
+ ("Ό" "" :string)
+ ("Μ" "" :string)
+ ("β" "" :string)
+ ("γ" "" :string)
+ ("α" "" :string)
+ ("Χ" "" :string)
+ ("Ξ" "" :string)
+ ("Ϋ" "" :string)
+ ("Ί" "" :string)
+ ("Β" "" :string)
+ ("υ" "" :string)
+ ("χ" "" :string)
+ ("ί" "" :string)
+ ("Ζ" "" :string)
+ ("ϳ" "" :string)
+ ("δ" "" :string)
+ ("ω" "" :string)
+ ("ϋ" "" :string)
+ ("ϝ" "" :string)
+ ("Ω" "" :string)
+ ("ύ" "" :string)
+ ("Θ" "" :string)
+ ("Ε" "" :string)
+ ("σ" "" :string)
+ ("ζ" "" :string)
+ ("θ" "" :string)
+ ("Ο" "" :string)
+ ("Γ" "" :string)
+ ("Ώ" "" :string)
+ ("Ϊ" "" :string)
+ ("Ρ" "" :string)
+ ("Φ" "" :string)
+ ("Σ" "" :string)
+ ("λ" "" :string)
+ ("τ" "" :string)
+ ("ξ" "" :string)
+ ("Λ" "" :string)
+ ("ΰ" "" :string)
+ ("Υ" "" :string)
+ ("μ" "" :string)
+ ("φ" "" :string)
+ ("ϐ" "" :string)
+ ("π" "" :string)
+ ("ϊ" "" :string)
+ ("κ" "" :string)
+ ("ψ" "" :string)
+ ("η" "" :string)
+ ("\/" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/greek/translit-latin4-lang.xdy b/Master/texmf/xindy/modules/lang/greek/translit-latin4-lang.xdy
new file mode 100644
index 00000000000..b762963ad9f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/translit-latin4-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/greek/translit-latin4.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/greek/translit-latin4-test.xdy b/Master/texmf/xindy/modules/lang/greek/translit-latin4-test.xdy
new file mode 100644
index 00000000000..401e123b367
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/translit-latin4-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/greek/translit-latin4.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/greek/translit-latin4.xdy b/Master/texmf/xindy/modules/lang/greek/translit-latin4.xdy
new file mode 100644
index 00000000000..674d546747c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/translit-latin4.xdy
@@ -0,0 +1,230 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Greek
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "D" :after "B" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "K" :after "I" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "R" :after "P" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "X" :after "U" :prefixes (""))
+(define-letter-group "Z" :after "X" :prefixes (""))
+
+(define-rule-set "el-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "el-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("E" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "el-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("M" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "el-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "el-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("E" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/greek/translit-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/greek/translit-utf8-lang.xdy
new file mode 100644
index 00000000000..6c3cf9505d4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/translit-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/greek/translit-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/greek/translit-utf8-test.xdy b/Master/texmf/xindy/modules/lang/greek/translit-utf8-test.xdy
new file mode 100644
index 00000000000..b7d6144eb05
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/translit-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/greek/translit-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/greek/translit-utf8.xdy b/Master/texmf/xindy/modules/lang/greek/translit-utf8.xdy
new file mode 100644
index 00000000000..83a13c8f162
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/translit-utf8.xdy
@@ -0,0 +1,230 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Greek
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "D" :after "B" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "K" :after "I" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "R" :after "P" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "X" :after "U" :prefixes (""))
+(define-letter-group "Z" :after "X" :prefixes (""))
+
+(define-rule-set "el-alphabetize"
+
+ :rules (("ē" "" :string)
+ ("Ē" "" :string)
+ ("Ō" "" :string)
+ ("ō" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "el-resolve-diacritics"
+
+ :rules (("Ō" "" :string)
+ ("ē" "" :string)
+ ("ō" "" :string)
+ ("Ē" "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("E" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "el-resolve-case"
+
+ :rules (("Ō" "8" :string)
+ ("Ē" "8" :string)
+ ("ē" "9" :string)
+ ("ō" "9" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("M" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("s" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "el-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "el-resolve-special"
+
+ :rules (("Ō" "" :string)
+ ("ē" "" :string)
+ ("ō" "" :string)
+ ("Ē" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("E" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/greek/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/greek/utf8-lang.xdy
new file mode 100644
index 00000000000..ee5540a3283
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/greek/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/greek/utf8-test.xdy b/Master/texmf/xindy/modules/lang/greek/utf8-test.xdy
new file mode 100644
index 00000000000..d22142233f1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/greek/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("el-alphabetize" "el-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("el-resolve-diacritics" "el-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("el-resolve-case" "el-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("el-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/greek/utf8.xdy b/Master/texmf/xindy/modules/lang/greek/utf8.xdy
new file mode 100644
index 00000000000..68f073ca7dc
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/greek/utf8.xdy
@@ -0,0 +1,340 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Greek
+
+(define-letter-group "Α" :prefixes (""))
+(define-letter-group "Β" :after "Α" :prefixes (""))
+(define-letter-group "Γ" :after "Β" :prefixes (""))
+(define-letter-group "Δ" :after "Γ" :prefixes (""))
+(define-letter-group "Ε" :after "Δ" :prefixes (""))
+(define-letter-group "Ζ" :after "Ε" :prefixes (""))
+(define-letter-group "Η" :after "Ζ" :prefixes (""))
+(define-letter-group "Θ" :after "Η" :prefixes (""))
+(define-letter-group "Ι" :after "Θ" :prefixes (""))
+(define-letter-group "Κ" :after "Ι" :prefixes (""))
+(define-letter-group "Λ" :after "Κ" :prefixes (""))
+(define-letter-group "Μ" :after "Λ" :prefixes (""))
+(define-letter-group "Ν" :after "Μ" :prefixes (""))
+(define-letter-group "Ξ" :after "Ν" :prefixes (""))
+(define-letter-group "Ο" :after "Ξ" :prefixes (""))
+(define-letter-group "Π" :after "Ο" :prefixes (""))
+(define-letter-group "Ρ" :after "Π" :prefixes (""))
+(define-letter-group "Σ" :after "Ρ" :prefixes (""))
+(define-letter-group "Τ" :after "Σ" :prefixes (""))
+(define-letter-group "Υ" :after "Τ" :prefixes (""))
+(define-letter-group "Φ" :after "Υ" :prefixes (""))
+(define-letter-group "Χ" :after "Φ" :prefixes (""))
+(define-letter-group "Ψ" :after "Χ" :prefixes (""))
+(define-letter-group "Ω" :after "Ψ" :prefixes (""))
+
+(define-rule-set "el-alphabetize"
+
+ :rules (("Ά" "" :string)
+ ("Α" "" :string)
+ ("α" "" :string)
+ ("ά" "" :string)
+ ("β" "" :string)
+ ("Β" "" :string)
+ ("Γ" "" :string)
+ ("γ" "" :string)
+ ("δ" "" :string)
+ ("Δ" "" :string)
+ ("έ" "" :string)
+ ("Ε" "" :string)
+ ("Έ" "" :string)
+ ("ε" "" :string)
+ ("ζ" "" :string)
+ ("Ζ" "" :string)
+ ("ή" "" :string)
+ ("Η" "" :string)
+ ("Ή" "" :string)
+ ("η" "" :string)
+ ("Θ" "" :string)
+ ("θ" "" :string)
+ ("ΐ" "" :string)
+ ("Ι" "" :string)
+ ("ι" "" :string)
+ ("Ϊ" "" :string)
+ ("Ί" "" :string)
+ ("ϊ" "" :string)
+ ("ί" "" :string)
+ ("Κ" "" :string)
+ ("κ" "" :string)
+ ("λ" "" :string)
+ ("Λ" "" :string)
+ ("Μ" "" :string)
+ ("μ" "" :string)
+ ("Ν" "" :string)
+ ("ν" "" :string)
+ ("ξ" "" :string)
+ ("Ξ" "" :string)
+ ("ο" "" :string)
+ ("ό" "" :string)
+ ("Ο" "" :string)
+ ("Ό" "" :string)
+ ("Π" "" :string)
+ ("π" "" :string)
+ ("Ρ" "" :string)
+ ("ρ" "" :string)
+ ("ς" "" :string)
+ ("σ" "" :string)
+ ("Σ" "" :string)
+ ("Τ" "" :string)
+ ("τ" "" :string)
+ ("ϋ" "" :string)
+ ("ύ" "" :string)
+ ("Ύ" "" :string)
+ ("ΰ" "" :string)
+ ("Υ" "" :string)
+ ("Ϋ" "" :string)
+ ("υ" "" :string)
+ ("Φ" "" :string)
+ ("φ" "" :string)
+ ("Χ" "" :string)
+ ("χ" "" :string)
+ ("Ψ" "" :string)
+ ("ψ" "" :string)
+ ("ω" "" :string)
+ ("ώ" "" :string)
+ ("Ω" "" :string)
+ ("Ώ" "" :string)
+ ))
+
+(define-rule-set "el-resolve-diacritics"
+
+ :rules (("ο" "" :string)
+ ("Τ" "" :string)
+ ("Π" "" :string)
+ ("δ" "" :string)
+ ("Κ" "" :string)
+ ("ω" "" :string)
+ ("Ω" "" :string)
+ ("Θ" "" :string)
+ ("Ι" "" :string)
+ ("Ν" "" :string)
+ ("Ε" "" :string)
+ ("Ψ" "" :string)
+ ("σ" "" :string)
+ ("ζ" "" :string)
+ ("θ" "" :string)
+ ("Ο" "" :string)
+ ("Γ" "" :string)
+ ("ι" "" :string)
+ ("Ρ" "" :string)
+ ("ε" "" :string)
+ ("Δ" "" :string)
+ ("ρ" "" :string)
+ ("Φ" "" :string)
+ ("Σ" "" :string)
+ ("Η" "" :string)
+ ("Α" "" :string)
+ ("λ" "" :string)
+ ("τ" "" :string)
+ ("ν" "" :string)
+ ("ξ" "" :string)
+ ("Μ" "" :string)
+ ("β" "" :string)
+ ("Λ" "" :string)
+ ("Υ" "" :string)
+ ("γ" "" :string)
+ ("α" "" :string)
+ ("Χ" "" :string)
+ ("Ξ" "" :string)
+ ("μ" "" :string)
+ ("φ" "" :string)
+ ("Β" "" :string)
+ ("π" "" :string)
+ ("υ" "" :string)
+ ("χ" "" :string)
+ ("κ" "" :string)
+ ("ψ" "" :string)
+ ("η" "" :string)
+ ("Ζ" "" :string)
+ ("έ" "" :string)
+ ("ό" "" :string)
+ ("ώ" "" :string)
+ ("ύ" "" :string)
+ ("ή" "" :string)
+ ("Ύ" "" :string)
+ ("ς" "" :string)
+ ("Ώ" "" :string)
+ ("Έ" "" :string)
+ ("Ά" "" :string)
+ ("Ό" "" :string)
+ ("Ή" "" :string)
+ ("Ί" "" :string)
+ ("ά" "" :string)
+ ("ί" "" :string)
+ ("ϋ" "" :string)
+ ("Ϊ" "" :string)
+ ("Ϋ" "" :string)
+ ("ϊ" "" :string)
+ ("ΐ" "" :string)
+ ("ΰ" "" :string)
+ ))
+
+(define-rule-set "el-resolve-case"
+
+ :rules (("Τ" "8" :string)
+ ("Π" "8" :string)
+ ("Κ" "8" :string)
+ ("Ω" "8" :string)
+ ("Θ" "8" :string)
+ ("Ι" "8" :string)
+ ("Ύ" "8" :string)
+ ("Ν" "8" :string)
+ ("Ε" "8" :string)
+ ("Ψ" "8" :string)
+ ("Ο" "8" :string)
+ ("Γ" "8" :string)
+ ("Ώ" "8" :string)
+ ("Έ" "8" :string)
+ ("Ϊ" "8" :string)
+ ("Ρ" "8" :string)
+ ("Ά" "8" :string)
+ ("Δ" "8" :string)
+ ("Φ" "8" :string)
+ ("Σ" "8" :string)
+ ("Η" "8" :string)
+ ("Α" "8" :string)
+ ("Ό" "8" :string)
+ ("Μ" "8" :string)
+ ("Ή" "8" :string)
+ ("Λ" "8" :string)
+ ("Υ" "8" :string)
+ ("Χ" "8" :string)
+ ("Ξ" "8" :string)
+ ("Ϋ" "8" :string)
+ ("Ί" "8" :string)
+ ("Β" "8" :string)
+ ("Ζ" "8" :string)
+ ("ο" "9" :string)
+ ("ΐ" "9" :string)
+ ("δ" "9" :string)
+ ("έ" "9" :string)
+ ("ω" "9" :string)
+ ("ό" "9" :string)
+ ("ϋ" "9" :string)
+ ("ώ" "9" :string)
+ ("ύ" "9" :string)
+ ("ή" "9" :string)
+ ("ς" "9" :string)
+ ("σ" "9" :string)
+ ("ζ" "9" :string)
+ ("θ" "9" :string)
+ ("ι" "9" :string)
+ ("ε" "9" :string)
+ ("ρ" "9" :string)
+ ("λ" "9" :string)
+ ("τ" "9" :string)
+ ("ν" "9" :string)
+ ("ξ" "9" :string)
+ ("β" "9" :string)
+ ("ΰ" "9" :string)
+ ("γ" "9" :string)
+ ("α" "9" :string)
+ ("μ" "9" :string)
+ ("φ" "9" :string)
+ ("π" "9" :string)
+ ("ϊ" "9" :string)
+ ("ά" "9" :string)
+ ("υ" "9" :string)
+ ("χ" "9" :string)
+ ("κ" "9" :string)
+ ("ί" "9" :string)
+ ("ψ" "9" :string)
+ ("η" "9" :string)
+ ))
+
+(define-rule-set "el-ignore-special"
+
+ :rules (("·" "" :string)
+ ("\/" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ))
+
+(define-rule-set "el-resolve-special"
+
+ :rules (("·" "" :string)
+ ("ο" "" :string)
+ ("Τ" "" :string)
+ ("Π" "" :string)
+ ("ΐ" "" :string)
+ ("δ" "" :string)
+ ("Κ" "" :string)
+ ("έ" "" :string)
+ ("ω" "" :string)
+ ("ό" "" :string)
+ ("ϋ" "" :string)
+ ("ώ" "" :string)
+ ("Ω" "" :string)
+ ("ύ" "" :string)
+ ("ή" "" :string)
+ ("Θ" "" :string)
+ ("Ι" "" :string)
+ ("Ύ" "" :string)
+ ("Ν" "" :string)
+ ("Ε" "" :string)
+ ("ς" "" :string)
+ ("Ψ" "" :string)
+ ("σ" "" :string)
+ ("ζ" "" :string)
+ ("θ" "" :string)
+ ("Ο" "" :string)
+ ("Γ" "" :string)
+ ("Ώ" "" :string)
+ ("Έ" "" :string)
+ ("Ϊ" "" :string)
+ ("ι" "" :string)
+ ("Ρ" "" :string)
+ ("Ά" "" :string)
+ ("ε" "" :string)
+ ("Δ" "" :string)
+ ("ρ" "" :string)
+ ("Φ" "" :string)
+ ("Σ" "" :string)
+ ("Η" "" :string)
+ ("Α" "" :string)
+ ("λ" "" :string)
+ ("τ" "" :string)
+ ("ν" "" :string)
+ ("ξ" "" :string)
+ ("Ό" "" :string)
+ ("Μ" "" :string)
+ ("Ή" "" :string)
+ ("β" "" :string)
+ ("Λ" "" :string)
+ ("ΰ" "" :string)
+ ("Υ" "" :string)
+ ("γ" "" :string)
+ ("α" "" :string)
+ ("Χ" "" :string)
+ ("Ξ" "" :string)
+ ("μ" "" :string)
+ ("Ϋ" "" :string)
+ ("φ" "" :string)
+ ("Ί" "" :string)
+ ("Β" "" :string)
+ ("π" "" :string)
+ ("ϊ" "" :string)
+ ("ά" "" :string)
+ ("υ" "" :string)
+ ("χ" "" :string)
+ ("κ" "" :string)
+ ("ί" "" :string)
+ ("ψ" "" :string)
+ ("η" "" :string)
+ ("Ζ" "" :string)
+ ("\/" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8-lang.xdy
new file mode 100644
index 00000000000..3554b284d16
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/gypsy/northrussian-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("g1-alphabetize" "g1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("g1-resolve-diacritics" "g1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("g1-resolve-case" "g1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("g1-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8-test.xdy b/Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8-test.xdy
new file mode 100644
index 00000000000..edf6d3f0a7f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/gypsy/northrussian-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("g1-alphabetize" "g1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("g1-resolve-diacritics" "g1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("g1-resolve-case" "g1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("g1-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8.xdy b/Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8.xdy
new file mode 100644
index 00000000000..82706b3dc45
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/gypsy/northrussian-utf8.xdy
@@ -0,0 +1,424 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Gypsy
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Č" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Č" :prefixes (""))
+(define-letter-group "Dz" :after "D" :prefixes (""))
+(define-letter-group "E" :after "Dz" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "Γ" :after "G" :prefixes (""))
+(define-letter-group "H" :after "Γ" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "I̯" :after "I" :prefixes (""))
+(define-letter-group "Ï" :after "I̯" :prefixes (""))
+(define-letter-group "J" :after "Ï" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "Kh" :after "K" :prefixes (""))
+(define-letter-group "X" :after "Kh" :prefixes (""))
+(define-letter-group "L" :after "X" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Ph" :after "P" :prefixes (""))
+(define-letter-group "Q" :after "Ph" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Š" :prefixes (""))
+(define-letter-group "Th" :after "T" :prefixes (""))
+(define-letter-group "U" :after "Th" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "Y" :after "W" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+
+(define-rule-set "g1-alphabetize"
+
+ :rules (("i̯" "" :string)
+ ("I̯" "" :string)
+ ("Ḯ" "" :string)
+ ("ḯ" "" :string)
+ ("Á" "" :string)
+ ("á" "" :string)
+ ("č" "" :string)
+ ("Č" "" :string)
+ ("Dz" "" :string)
+ ("DZ" "" :string)
+ ("dz" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("Γ" "" :string)
+ ("γ" "" :string)
+ ("Í" "" :string)
+ ("í" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("KH" "" :string)
+ ("kh" "" :string)
+ ("Kh" "" :string)
+ ("Ó" "" :string)
+ ("ó" "" :string)
+ ("PH" "" :string)
+ ("ph" "" :string)
+ ("Ph" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("TH" "" :string)
+ ("Th" "" :string)
+ ("th" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "g1-resolve-diacritics"
+
+ :rules (("i̯" "" :string)
+ ("I̯" "" :string)
+ ("Ḯ" "" :string)
+ ("ḯ" "" :string)
+ ("KH" "" :string)
+ ("Dz" "" :string)
+ ("Ž" "" :string)
+ ("kh" "" :string)
+ ("Ï" "" :string)
+ ("č" "" :string)
+ ("ï" "" :string)
+ ("Γ" "" :string)
+ ("TH" "" :string)
+ ("Š" "" :string)
+ ("PH" "" :string)
+ ("š" "" :string)
+ ("ph" "" :string)
+ ("Ph" "" :string)
+ ("Th" "" :string)
+ ("th" "" :string)
+ ("DZ" "" :string)
+ ("γ" "" :string)
+ ("Č" "" :string)
+ ("Kh" "" :string)
+ ("dz" "" :string)
+ ("ž" "" :string)
+ ("Á" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Í" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("á" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("é" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "g1-resolve-case"
+
+ :rules (("Ḯ" "8" :string)
+ ("I̯" "8" :string)
+ ("i̯" "9" :string)
+ ("ḯ" "9" :string)
+ ("KH" "7" :string)
+ ("TH" "7" :string)
+ ("PH" "7" :string)
+ ("DZ" "7" :string)
+ ("Á" "8" :string)
+ ("Dz" "8" :string)
+ ("Ž" "8" :string)
+ ("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Í" "8" :string)
+ ("Ï" "8" :string)
+ ("Ú" "8" :string)
+ ("Γ" "8" :string)
+ ("Š" "8" :string)
+ ("Ph" "8" :string)
+ ("Th" "8" :string)
+ ("Č" "8" :string)
+ ("Kh" "8" :string)
+ ("kh" "9" :string)
+ ("č" "9" :string)
+ ("ú" "9" :string)
+ ("ï" "9" :string)
+ ("á" "9" :string)
+ ("š" "9" :string)
+ ("ph" "9" :string)
+ ("th" "9" :string)
+ ("í" "9" :string)
+ ("ó" "9" :string)
+ ("γ" "9" :string)
+ ("é" "9" :string)
+ ("dz" "9" :string)
+ ("ž" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "g1-ignore-special"
+
+ :rules (("ˈ" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "g1-resolve-special"
+
+ :rules (("i̯" "" :string)
+ ("Ḯ" "" :string)
+ ("I̯" "" :string)
+ ("ḯ" "" :string)
+ ("KH" "" :string)
+ ("Á" "" :string)
+ ("Dz" "" :string)
+ ("Ž" "" :string)
+ ("kh" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Í" "" :string)
+ ("Ï" "" :string)
+ ("Ú" "" :string)
+ ("č" "" :string)
+ ("ú" "" :string)
+ ("ï" "" :string)
+ ("Γ" "" :string)
+ ("á" "" :string)
+ ("TH" "" :string)
+ ("Š" "" :string)
+ ("PH" "" :string)
+ ("š" "" :string)
+ ("ph" "" :string)
+ ("Ph" "" :string)
+ ("Th" "" :string)
+ ("th" "" :string)
+ ("í" "" :string)
+ ("DZ" "" :string)
+ ("ó" "" :string)
+ ("γ" "" :string)
+ ("Č" "" :string)
+ ("Kh" "" :string)
+ ("é" "" :string)
+ ("dz" "" :string)
+ ("ž" "" :string)
+ ("ˈ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/hausa/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/hausa/utf8-lang.xdy
new file mode 100644
index 00000000000..978a1611a4c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hausa/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/hausa/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ha-alphabetize" "ha-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ha-resolve-diacritics" "ha-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ha-resolve-case" "ha-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ha-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/hausa/utf8-test.xdy b/Master/texmf/xindy/modules/lang/hausa/utf8-test.xdy
new file mode 100644
index 00000000000..33a1c7e418a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hausa/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/hausa/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ha-alphabetize" "ha-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ha-resolve-diacritics" "ha-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ha-resolve-case" "ha-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ha-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/hausa/utf8.xdy b/Master/texmf/xindy/modules/lang/hausa/utf8.xdy
new file mode 100644
index 00000000000..4cd9ef11f52
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hausa/utf8.xdy
@@ -0,0 +1,514 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Hausa
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "Ɓ" :after "B" :prefixes (""))
+(define-letter-group "C" :after "Ɓ" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "Ɗ" :after "D" :prefixes (""))
+(define-letter-group "E" :after "Ɗ" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "Ƙ" :after "K" :prefixes (""))
+(define-letter-group "L" :after "Ƙ" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "ʼY" :after "Y" :prefixes (""))
+(define-letter-group "Z" :after "ʼY" :prefixes (""))
+
+(define-rule-set "ha-alphabetize"
+
+ :rules (("Ā̱" "" :string)
+ ("ā̱" "" :string)
+ ("ā̀" "" :string)
+ ("Ā̀" "" :string)
+ ("Ḕ" "" :string)
+ ("Ē̱" "" :string)
+ ("ḕ" "" :string)
+ ("ē̱" "" :string)
+ ("Ī̱" "" :string)
+ ("ī̀" "" :string)
+ ("Ī̀" "" :string)
+ ("ī̱" "" :string)
+ ("ṑ" "" :string)
+ ("Ṑ" "" :string)
+ ("Ō̱" "" :string)
+ ("ō̱" "" :string)
+ ("ū̱" "" :string)
+ ("Ū̱" "" :string)
+ ("ū̀" "" :string)
+ ("Ū̀" "" :string)
+ ("a̱" "" :string)
+ ("A̱" "" :string)
+ ("E̱" "" :string)
+ ("e̱" "" :string)
+ ("i̱" "" :string)
+ ("I̱" "" :string)
+ ("O̱" "" :string)
+ ("o̱" "" :string)
+ ("U̱" "" :string)
+ ("u̱" "" :string)
+ ("ʼy" "" :string)
+ ("ʼY" "" :string)
+ ("Ā" "" :string)
+ ("à" "" :string)
+ ("ā" "" :string)
+ ("À" "" :string)
+ ("ɓ" "" :string)
+ ("Ɓ" "" :string)
+ ("Ɗ" "" :string)
+ ("ɗ" "" :string)
+ ("Ē" "" :string)
+ ("È" "" :string)
+ ("ē" "" :string)
+ ("è" "" :string)
+ ("ì" "" :string)
+ ("ī" "" :string)
+ ("Ī" "" :string)
+ ("Ì" "" :string)
+ ("ƙ" "" :string)
+ ("Ƙ" "" :string)
+ ("Ò" "" :string)
+ ("ò" "" :string)
+ ("Ō" "" :string)
+ ("ō" "" :string)
+ ("ß" "" :string)
+ ("ù" "" :string)
+ ("ū" "" :string)
+ ("Ù" "" :string)
+ ("Ū" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "ha-resolve-diacritics"
+
+ :rules (("ū̱" "" :string)
+ ("Ē̱" "" :string)
+ ("Ī̱" "" :string)
+ ("Ā̱" "" :string)
+ ("Ō̱" "" :string)
+ ("ā̱" "" :string)
+ ("Ū̱" "" :string)
+ ("ō̱" "" :string)
+ ("ē̱" "" :string)
+ ("ī̱" "" :string)
+ ("ṑ" "" :string)
+ ("Ḕ" "" :string)
+ ("Ṑ" "" :string)
+ ("ī̀" "" :string)
+ ("ā̀" "" :string)
+ ("ḕ" "" :string)
+ ("Ā̀" "" :string)
+ ("ū̀" "" :string)
+ ("Ī̀" "" :string)
+ ("Ū̀" "" :string)
+ ("ʼy" "" :string)
+ ("ʼY" "" :string)
+ ("O̱" "" :string)
+ ("a̱" "" :string)
+ ("E̱" "" :string)
+ ("i̱" "" :string)
+ ("I̱" "" :string)
+ ("o̱" "" :string)
+ ("U̱" "" :string)
+ ("A̱" "" :string)
+ ("e̱" "" :string)
+ ("u̱" "" :string)
+ ("Ɗ" "" :string)
+ ("ƙ" "" :string)
+ ("ɗ" "" :string)
+ ("ɓ" "" :string)
+ ("Ɓ" "" :string)
+ ("Ƙ" "" :string)
+ ("ū" "" :string)
+ ("Ē" "" :string)
+ ("Ā" "" :string)
+ ("Ū" "" :string)
+ ("Ō" "" :string)
+ ("ī" "" :string)
+ ("ē" "" :string)
+ ("Ī" "" :string)
+ ("ā" "" :string)
+ ("ō" "" :string)
+ ("ù" "" :string)
+ ("Ò" "" :string)
+ ("Ù" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("ì" "" :string)
+ ("à" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("Ì" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "ha-resolve-case"
+
+ :rules (("Ḕ" "8" :string)
+ ("Ē̱" "8" :string)
+ ("Ī̱" "8" :string)
+ ("Ṑ" "8" :string)
+ ("Ā̱" "8" :string)
+ ("Ō̱" "8" :string)
+ ("Ū̱" "8" :string)
+ ("Ā̀" "8" :string)
+ ("Ī̀" "8" :string)
+ ("Ū̀" "8" :string)
+ ("ū̱" "9" :string)
+ ("ṑ" "9" :string)
+ ("ī̀" "9" :string)
+ ("ā̱" "9" :string)
+ ("ā̀" "9" :string)
+ ("ḕ" "9" :string)
+ ("ō̱" "9" :string)
+ ("ē̱" "9" :string)
+ ("ū̀" "9" :string)
+ ("ī̱" "9" :string)
+ ("O̱" "8" :string)
+ ("ʼY" "8" :string)
+ ("E̱" "8" :string)
+ ("I̱" "8" :string)
+ ("U̱" "8" :string)
+ ("A̱" "8" :string)
+ ("ʼy" "9" :string)
+ ("a̱" "9" :string)
+ ("i̱" "9" :string)
+ ("o̱" "9" :string)
+ ("e̱" "9" :string)
+ ("u̱" "9" :string)
+ ("Ò" "8" :string)
+ ("Ɗ" "8" :string)
+ ("Ē" "8" :string)
+ ("Ù" "8" :string)
+ ("Ā" "8" :string)
+ ("Ū" "8" :string)
+ ("È" "8" :string)
+ ("Ō" "8" :string)
+ ("Ī" "8" :string)
+ ("À" "8" :string)
+ ("Ì" "8" :string)
+ ("Ɓ" "8" :string)
+ ("Ƙ" "8" :string)
+ ("ù" "9" :string)
+ ("ū" "9" :string)
+ ("ƙ" "9" :string)
+ ("ò" "9" :string)
+ ("ì" "9" :string)
+ ("ɗ" "9" :string)
+ ("ī" "9" :string)
+ ("à" "9" :string)
+ ("ē" "9" :string)
+ ("ɓ" "9" :string)
+ ("è" "9" :string)
+ ("ā" "9" :string)
+ ("ō" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "ha-ignore-special"
+
+ :rules (("ʼ" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("'" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "ha-resolve-special"
+
+ :rules (("ū̱" "" :string)
+ ("ṑ" "" :string)
+ ("Ḕ" "" :string)
+ ("Ē̱" "" :string)
+ ("Ī̱" "" :string)
+ ("Ṑ" "" :string)
+ ("Ā̱" "" :string)
+ ("ī̀" "" :string)
+ ("Ō̱" "" :string)
+ ("ā̱" "" :string)
+ ("ā̀" "" :string)
+ ("Ū̱" "" :string)
+ ("ḕ" "" :string)
+ ("ō̱" "" :string)
+ ("ē̱" "" :string)
+ ("Ā̀" "" :string)
+ ("ū̀" "" :string)
+ ("Ī̀" "" :string)
+ ("Ū̀" "" :string)
+ ("ī̱" "" :string)
+ ("O̱" "" :string)
+ ("ʼy" "" :string)
+ ("a̱" "" :string)
+ ("ʼY" "" :string)
+ ("E̱" "" :string)
+ ("i̱" "" :string)
+ ("I̱" "" :string)
+ ("o̱" "" :string)
+ ("U̱" "" :string)
+ ("A̱" "" :string)
+ ("e̱" "" :string)
+ ("u̱" "" :string)
+ ("ù" "" :string)
+ ("Ò" "" :string)
+ ("ū" "" :string)
+ ("Ɗ" "" :string)
+ ("Ē" "" :string)
+ ("Ù" "" :string)
+ ("Ā" "" :string)
+ ("Ū" "" :string)
+ ("È" "" :string)
+ ("ƙ" "" :string)
+ ("ò" "" :string)
+ ("Ō" "" :string)
+ ("ì" "" :string)
+ ("ɗ" "" :string)
+ ("ī" "" :string)
+ ("à" "" :string)
+ ("ē" "" :string)
+ ("Ī" "" :string)
+ ("ɓ" "" :string)
+ ("è" "" :string)
+ ("ā" "" :string)
+ ("À" "" :string)
+ ("ō" "" :string)
+ ("Ì" "" :string)
+ ("Ɓ" "" :string)
+ ("Ƙ" "" :string)
+ ("ß" "" :string)
+ ("ʼ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/hebrew/iso88598-lang.xdy b/Master/texmf/xindy/modules/lang/hebrew/iso88598-lang.xdy
new file mode 100644
index 00000000000..e5e40f727cd
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hebrew/iso88598-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/hebrew/iso88598.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("iw-alphabetize" "iw-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("iw-resolve-diacritics" "iw-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("iw-resolve-case" "iw-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("iw-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/hebrew/iso88598-test.xdy b/Master/texmf/xindy/modules/lang/hebrew/iso88598-test.xdy
new file mode 100644
index 00000000000..901349a7dff
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hebrew/iso88598-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/hebrew/iso88598.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("iw-alphabetize" "iw-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("iw-resolve-diacritics" "iw-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("iw-resolve-case" "iw-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("iw-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/hebrew/iso88598.xdy b/Master/texmf/xindy/modules/lang/hebrew/iso88598.xdy
new file mode 100644
index 00000000000..ca033c93982
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hebrew/iso88598.xdy
@@ -0,0 +1,166 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Hebrew
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "iw-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "iw-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "iw-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "iw-ignore-special"
+
+ :rules (("-" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ("!" "" :string)
+ ("?" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "iw-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/hebrew/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/hebrew/utf8-lang.xdy
new file mode 100644
index 00000000000..ffea0a31742
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hebrew/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/hebrew/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("iw-alphabetize" "iw-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("iw-resolve-diacritics" "iw-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("iw-resolve-case" "iw-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("iw-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/hebrew/utf8-test.xdy b/Master/texmf/xindy/modules/lang/hebrew/utf8-test.xdy
new file mode 100644
index 00000000000..e2a1998696f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hebrew/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/hebrew/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("iw-alphabetize" "iw-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("iw-resolve-diacritics" "iw-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("iw-resolve-case" "iw-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("iw-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/hebrew/utf8.xdy b/Master/texmf/xindy/modules/lang/hebrew/utf8.xdy
new file mode 100644
index 00000000000..a2a3e28ee58
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hebrew/utf8.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Hebrew
+
+(define-letter-group "א" :prefixes (""))
+(define-letter-group "ב" :after "א" :prefixes (""))
+(define-letter-group "ג" :after "ב" :prefixes (""))
+(define-letter-group "ד" :after "ג" :prefixes (""))
+(define-letter-group "ה" :after "ד" :prefixes (""))
+(define-letter-group "ו" :after "ה" :prefixes (""))
+(define-letter-group "ז" :after "ו" :prefixes (""))
+(define-letter-group "ח" :after "ז" :prefixes (""))
+(define-letter-group "ט" :after "ח" :prefixes (""))
+(define-letter-group "י" :after "ט" :prefixes (""))
+(define-letter-group "כ" :after "י" :prefixes (""))
+(define-letter-group "ל" :after "כ" :prefixes (""))
+(define-letter-group "מ" :after "ל" :prefixes (""))
+(define-letter-group "נ" :after "מ" :prefixes (""))
+(define-letter-group "ס" :after "נ" :prefixes (""))
+(define-letter-group "ע" :after "ס" :prefixes (""))
+(define-letter-group "פ" :after "ע" :prefixes (""))
+(define-letter-group "צ" :after "פ" :prefixes (""))
+(define-letter-group "ק" :after "צ" :prefixes (""))
+(define-letter-group "ר" :after "ק" :prefixes (""))
+(define-letter-group "ש" :after "ר" :prefixes (""))
+(define-letter-group "ת" :after "ש" :prefixes (""))
+
+(define-rule-set "iw-alphabetize"
+
+ :rules (("בֵּ" "" :string)
+ ("אֻ" "" :string)
+ ("אֶ" "" :string)
+ ("בָ" "" :string)
+ ("בַ" "" :string)
+ ("אּ" "" :string)
+ ("אָ" "" :string)
+ ("אַ" "" :string)
+ ("בּ" "" :string)
+ ("גּ" "" :string)
+ ("דּ" "" :string)
+ ("הּ" "" :string)
+ ("וּ" "" :string)
+ ("זּ" "" :string)
+ ("טּ" "" :string)
+ ("יּ" "" :string)
+ ("כּ" "" :string)
+ ("ךּ" "" :string)
+ ("לּ" "" :string)
+ ("מּ" "" :string)
+ ("נּ" "" :string)
+ ("סּ" "" :string)
+ ("ףּ" "" :string)
+ ("פּ" "" :string)
+ ("צּ" "" :string)
+ ("קּ" "" :string)
+ ("רּ" "" :string)
+ ("שּׁ" "" :string)
+ ("שׂ" "" :string)
+ ("שׁ" "" :string)
+ ("תּ" "" :string)
+ ("א" "" :string)
+ ("ב" "" :string)
+ ("ג" "" :string)
+ ("ד" "" :string)
+ ("ה" "" :string)
+ ("ו" "" :string)
+ ("װ" "" :string)
+ ("ױ" "" :string)
+ ("ז" "" :string)
+ ("ח" "" :string)
+ ("ט" "" :string)
+ ("י" "" :string)
+ ("ײ" "" :string)
+ ("כ" "" :string)
+ ("ך" "" :string)
+ ("ל" "" :string)
+ ("ם" "" :string)
+ ("מ" "" :string)
+ ("נ" "" :string)
+ ("ן" "" :string)
+ ("ס" "" :string)
+ ("ע" "" :string)
+ ("פ" "" :string)
+ ("ף" "" :string)
+ ("צ" "" :string)
+ ("ץ" "" :string)
+ ("ק" "" :string)
+ ("ר" "" :string)
+ ("ש" "" :string)
+ ("ת" "" :string)
+ ))
+
+(define-rule-set "iw-resolve-diacritics"
+
+ :rules (("בֵּ" "" :string)
+ ("בַ" "" :string)
+ ("אֶ" "" :string)
+ ("בָ" "" :string)
+ ("אֻ" "" :string)
+ ("תּ" "" :string)
+ ("סּ" "" :string)
+ ("יּ" "" :string)
+ ("זּ" "" :string)
+ ("כּ" "" :string)
+ ("מּ" "" :string)
+ ("קּ" "" :string)
+ ("ךּ" "" :string)
+ ("וּ" "" :string)
+ ("רּ" "" :string)
+ ("ףּ" "" :string)
+ ("פּ" "" :string)
+ ("שׂ" "" :string)
+ ("גּ" "" :string)
+ ("לּ" "" :string)
+ ("הּ" "" :string)
+ ("צּ" "" :string)
+ ("טּ" "" :string)
+ ("נּ" "" :string)
+ ("דּ" "" :string)
+ ("אַ" "" :string)
+ ("שׁ" "" :string)
+ ("שּׁ" "" :string)
+ ("בּ" "" :string)
+ ("אּ" "" :string)
+ ("אָ" "" :string)
+ ("ד" "" :string)
+ ("ר" "" :string)
+ ("נ" "" :string)
+ ("ם" "" :string)
+ ("צ" "" :string)
+ ("ז" "" :string)
+ ("ו" "" :string)
+ ("כ" "" :string)
+ ("ה" "" :string)
+ ("ן" "" :string)
+ ("מ" "" :string)
+ ("ש" "" :string)
+ ("ל" "" :string)
+ ("ץ" "" :string)
+ ("ע" "" :string)
+ ("פ" "" :string)
+ ("ף" "" :string)
+ ("א" "" :string)
+ ("י" "" :string)
+ ("ח" "" :string)
+ ("ך" "" :string)
+ ("ב" "" :string)
+ ("ת" "" :string)
+ ("ג" "" :string)
+ ("ט" "" :string)
+ ("ק" "" :string)
+ ("ס" "" :string)
+ ("װ" "" :string)
+ ("ױ" "" :string)
+ ("ײ" "" :string)
+ ))
+
+(define-rule-set "iw-resolve-case"
+
+ :rules (("בֵּ" "9" :string)
+ ("אֻ" "9" :string)
+ ("אֶ" "9" :string)
+ ("בָ" "9" :string)
+ ("בַ" "9" :string)
+ ("ךּ" "8" :string)
+ ("ףּ" "8" :string)
+ ("תּ" "9" :string)
+ ("סּ" "9" :string)
+ ("יּ" "9" :string)
+ ("זּ" "9" :string)
+ ("כּ" "9" :string)
+ ("מּ" "9" :string)
+ ("קּ" "9" :string)
+ ("שּׁ" "9" :string)
+ ("וּ" "9" :string)
+ ("רּ" "9" :string)
+ ("פּ" "9" :string)
+ ("בּ" "9" :string)
+ ("שׂ" "9" :string)
+ ("אּ" "9" :string)
+ ("גּ" "9" :string)
+ ("אָ" "9" :string)
+ ("לּ" "9" :string)
+ ("הּ" "9" :string)
+ ("צּ" "9" :string)
+ ("טּ" "9" :string)
+ ("נּ" "9" :string)
+ ("שׁ" "9" :string)
+ ("דּ" "9" :string)
+ ("אַ" "9" :string)
+ ("ם" "8" :string)
+ ("ן" "8" :string)
+ ("ץ" "8" :string)
+ ("ף" "8" :string)
+ ("ך" "8" :string)
+ ("ד" "9" :string)
+ ("ר" "9" :string)
+ ("נ" "9" :string)
+ ("צ" "9" :string)
+ ("ז" "9" :string)
+ ("ו" "9" :string)
+ ("כ" "9" :string)
+ ("ה" "9" :string)
+ ("מ" "9" :string)
+ ("ש" "9" :string)
+ ("ל" "9" :string)
+ ("ע" "9" :string)
+ ("פ" "9" :string)
+ ("א" "9" :string)
+ ("י" "9" :string)
+ ("ח" "9" :string)
+ ("ב" "9" :string)
+ ("ת" "9" :string)
+ ("ג" "9" :string)
+ ("ט" "9" :string)
+ ("ק" "9" :string)
+ ("ס" "9" :string)
+ ("װ" "99" :string)
+ ("ױ" "99" :string)
+ ("ײ" "99" :string)
+ ))
+
+(define-rule-set "iw-ignore-special"
+
+ :rules (("וֹ" "" :string)
+ ("·" "" :string)
+ ("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ("!" "" :string)
+ ))
+
+(define-rule-set "iw-resolve-special"
+
+ :rules (("בֵּ" "" :string)
+ ("אֶ" "" :string)
+ ("אֻ" "" :string)
+ ("בָ" "" :string)
+ ("בַ" "" :string)
+ ("תּ" "" :string)
+ ("מּ" "" :string)
+ ("שּׁ" "" :string)
+ ("ףּ" "" :string)
+ ("שׂ" "" :string)
+ ("אּ" "" :string)
+ ("אָ" "" :string)
+ ("צּ" "" :string)
+ ("טּ" "" :string)
+ ("נּ" "" :string)
+ ("אַ" "" :string)
+ ("סּ" "" :string)
+ ("יּ" "" :string)
+ ("זּ" "" :string)
+ ("כּ" "" :string)
+ ("קּ" "" :string)
+ ("ךּ" "" :string)
+ ("וּ" "" :string)
+ ("רּ" "" :string)
+ ("פּ" "" :string)
+ ("בּ" "" :string)
+ ("גּ" "" :string)
+ ("לּ" "" :string)
+ ("הּ" "" :string)
+ ("שׁ" "" :string)
+ ("דּ" "" :string)
+ ("וֹ" "" :string)
+ ("·" "" :string)
+ ("ר" "" :string)
+ ("כ" "" :string)
+ ("ן" "" :string)
+ ("מ" "" :string)
+ ("ש" "" :string)
+ ("א" "" :string)
+ ("ב" "" :string)
+ ("ג" "" :string)
+ ("ק" "" :string)
+ ("ס" "" :string)
+ ("ד" "" :string)
+ ("ם" "" :string)
+ ("נ" "" :string)
+ ("ו" "" :string)
+ ("ז" "" :string)
+ ("צ" "" :string)
+ ("ה" "" :string)
+ ("ל" "" :string)
+ ("ע" "" :string)
+ ("ץ" "" :string)
+ ("פ" "" :string)
+ ("ף" "" :string)
+ ("ח" "" :string)
+ ("י" "" :string)
+ ("ך" "" :string)
+ ("ת" "" :string)
+ ("ט" "" :string)
+ ("װ" "" :string)
+ ("ײ" "" :string)
+ ("ױ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ (";" "" :string)
+ ("-" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/hungarian/cp1250-lang.xdy b/Master/texmf/xindy/modules/lang/hungarian/cp1250-lang.xdy
new file mode 100644
index 00000000000..65fda775584
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hungarian/cp1250-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/hungarian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hu-alphabetize" "hu-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hu-resolve-diacritics" "hu-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hu-resolve-case" "hu-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hu-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/hungarian/cp1250-test.xdy b/Master/texmf/xindy/modules/lang/hungarian/cp1250-test.xdy
new file mode 100644
index 00000000000..0360b196a25
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hungarian/cp1250-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/hungarian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hu-alphabetize" "hu-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hu-resolve-diacritics" "hu-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hu-resolve-case" "hu-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hu-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/hungarian/cp1250.xdy b/Master/texmf/xindy/modules/lang/hungarian/cp1250.xdy
new file mode 100644
index 00000000000..b65db49a7c5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hungarian/cp1250.xdy
@@ -0,0 +1,458 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Hungarian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Cs" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Cs" :prefixes ("" "" ""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes ("" ""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes ("" ""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ny" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ny" :prefixes (""))
+(define-letter-group "" :after "O" :prefixes (""))
+(define-letter-group "P" :after "" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Sz" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Sz" :prefixes ("" ""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "" :after "U" :prefixes (""))
+(define-letter-group "V" :after "" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Zs" :after "Z" :prefixes (""))
+
+(define-rule-set "hu-alphabetize"
+
+ :rules (("Dzs" "" :string)
+ ("DZS" "" :string)
+ ("dzs" "" :string)
+ ("DZs" "" :string)
+ ("cs" "" :string)
+ ("Cs" "" :string)
+ ("CS" "" :string)
+ ("Dz" "" :string)
+ ("DZ" "" :string)
+ ("dz" "" :string)
+ ("gy" "" :string)
+ ("Gy" "" :string)
+ ("GY" "" :string)
+ ("Ly" "" :string)
+ ("ly" "" :string)
+ ("LY" "" :string)
+ ("NY" "" :string)
+ ("Ny" "" :string)
+ ("ny" "" :string)
+ ("SZ" "" :string)
+ ("Sz" "" :string)
+ ("sz" "" :string)
+ ("TY" "" :string)
+ ("ty" "" :string)
+ ("Ty" "" :string)
+ ("Zs" "" :string)
+ ("zs" "" :string)
+ ("ZS" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "hu-resolve-diacritics"
+
+ :rules (("Dzs" "" :string)
+ ("DZS" "" :string)
+ ("dzs" "" :string)
+ ("DZs" "" :string)
+ ("NY" "" :string)
+ ("SZ" "" :string)
+ ("Dz" "" :string)
+ ("Sz" "" :string)
+ ("Ly" "" :string)
+ ("cs" "" :string)
+ ("TY" "" :string)
+ ("Zs" "" :string)
+ ("gy" "" :string)
+ ("ly" "" :string)
+ ("ty" "" :string)
+ ("Gy" "" :string)
+ ("zs" "" :string)
+ ("Ty" "" :string)
+ ("Cs" "" :string)
+ ("ZS" "" :string)
+ ("DZ" "" :string)
+ ("sz" "" :string)
+ ("LY" "" :string)
+ ("GY" "" :string)
+ ("dz" "" :string)
+ ("Ny" "" :string)
+ ("CS" "" :string)
+ ("ny" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "hu-resolve-case"
+
+ :rules (("DZS" "6" :string)
+ ("DZs" "7" :string)
+ ("Dzs" "8" :string)
+ ("dzs" "9" :string)
+ ("NY" "7" :string)
+ ("SZ" "7" :string)
+ ("TY" "7" :string)
+ ("ZS" "7" :string)
+ ("DZ" "7" :string)
+ ("LY" "7" :string)
+ ("GY" "7" :string)
+ ("CS" "7" :string)
+ ("Dz" "8" :string)
+ ("Sz" "8" :string)
+ ("Ly" "8" :string)
+ ("Zs" "8" :string)
+ ("Gy" "8" :string)
+ ("Ty" "8" :string)
+ ("Cs" "8" :string)
+ ("Ny" "8" :string)
+ ("cs" "9" :string)
+ ("gy" "9" :string)
+ ("ly" "9" :string)
+ ("ty" "9" :string)
+ ("zs" "9" :string)
+ ("sz" "9" :string)
+ ("dz" "9" :string)
+ ("ny" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "9" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "hu-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "hu-resolve-special"
+
+ :rules (("Dzs" "" :string)
+ ("DZS" "" :string)
+ ("dzs" "" :string)
+ ("DZs" "" :string)
+ ("NY" "" :string)
+ ("SZ" "" :string)
+ ("Dz" "" :string)
+ ("Sz" "" :string)
+ ("Ly" "" :string)
+ ("cs" "" :string)
+ ("TY" "" :string)
+ ("Zs" "" :string)
+ ("gy" "" :string)
+ ("ly" "" :string)
+ ("ty" "" :string)
+ ("Gy" "" :string)
+ ("zs" "" :string)
+ ("Ty" "" :string)
+ ("Cs" "" :string)
+ ("ZS" "" :string)
+ ("DZ" "" :string)
+ ("sz" "" :string)
+ ("LY" "" :string)
+ ("GY" "" :string)
+ ("dz" "" :string)
+ ("Ny" "" :string)
+ ("CS" "" :string)
+ ("ny" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/hungarian/latin2-lang.xdy b/Master/texmf/xindy/modules/lang/hungarian/latin2-lang.xdy
new file mode 100644
index 00000000000..c8e1872165a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hungarian/latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/hungarian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hu-alphabetize" "hu-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hu-resolve-diacritics" "hu-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hu-resolve-case" "hu-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hu-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/hungarian/latin2-test.xdy b/Master/texmf/xindy/modules/lang/hungarian/latin2-test.xdy
new file mode 100644
index 00000000000..6176f57bd17
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hungarian/latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/hungarian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hu-alphabetize" "hu-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hu-resolve-diacritics" "hu-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hu-resolve-case" "hu-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hu-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/hungarian/latin2.xdy b/Master/texmf/xindy/modules/lang/hungarian/latin2.xdy
new file mode 100644
index 00000000000..b65db49a7c5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hungarian/latin2.xdy
@@ -0,0 +1,458 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Hungarian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Cs" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Cs" :prefixes ("" "" ""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes ("" ""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes ("" ""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ny" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ny" :prefixes (""))
+(define-letter-group "" :after "O" :prefixes (""))
+(define-letter-group "P" :after "" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Sz" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Sz" :prefixes ("" ""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "" :after "U" :prefixes (""))
+(define-letter-group "V" :after "" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Zs" :after "Z" :prefixes (""))
+
+(define-rule-set "hu-alphabetize"
+
+ :rules (("Dzs" "" :string)
+ ("DZS" "" :string)
+ ("dzs" "" :string)
+ ("DZs" "" :string)
+ ("cs" "" :string)
+ ("Cs" "" :string)
+ ("CS" "" :string)
+ ("Dz" "" :string)
+ ("DZ" "" :string)
+ ("dz" "" :string)
+ ("gy" "" :string)
+ ("Gy" "" :string)
+ ("GY" "" :string)
+ ("Ly" "" :string)
+ ("ly" "" :string)
+ ("LY" "" :string)
+ ("NY" "" :string)
+ ("Ny" "" :string)
+ ("ny" "" :string)
+ ("SZ" "" :string)
+ ("Sz" "" :string)
+ ("sz" "" :string)
+ ("TY" "" :string)
+ ("ty" "" :string)
+ ("Ty" "" :string)
+ ("Zs" "" :string)
+ ("zs" "" :string)
+ ("ZS" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "hu-resolve-diacritics"
+
+ :rules (("Dzs" "" :string)
+ ("DZS" "" :string)
+ ("dzs" "" :string)
+ ("DZs" "" :string)
+ ("NY" "" :string)
+ ("SZ" "" :string)
+ ("Dz" "" :string)
+ ("Sz" "" :string)
+ ("Ly" "" :string)
+ ("cs" "" :string)
+ ("TY" "" :string)
+ ("Zs" "" :string)
+ ("gy" "" :string)
+ ("ly" "" :string)
+ ("ty" "" :string)
+ ("Gy" "" :string)
+ ("zs" "" :string)
+ ("Ty" "" :string)
+ ("Cs" "" :string)
+ ("ZS" "" :string)
+ ("DZ" "" :string)
+ ("sz" "" :string)
+ ("LY" "" :string)
+ ("GY" "" :string)
+ ("dz" "" :string)
+ ("Ny" "" :string)
+ ("CS" "" :string)
+ ("ny" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "hu-resolve-case"
+
+ :rules (("DZS" "6" :string)
+ ("DZs" "7" :string)
+ ("Dzs" "8" :string)
+ ("dzs" "9" :string)
+ ("NY" "7" :string)
+ ("SZ" "7" :string)
+ ("TY" "7" :string)
+ ("ZS" "7" :string)
+ ("DZ" "7" :string)
+ ("LY" "7" :string)
+ ("GY" "7" :string)
+ ("CS" "7" :string)
+ ("Dz" "8" :string)
+ ("Sz" "8" :string)
+ ("Ly" "8" :string)
+ ("Zs" "8" :string)
+ ("Gy" "8" :string)
+ ("Ty" "8" :string)
+ ("Cs" "8" :string)
+ ("Ny" "8" :string)
+ ("cs" "9" :string)
+ ("gy" "9" :string)
+ ("ly" "9" :string)
+ ("ty" "9" :string)
+ ("zs" "9" :string)
+ ("sz" "9" :string)
+ ("dz" "9" :string)
+ ("ny" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "9" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "hu-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "hu-resolve-special"
+
+ :rules (("Dzs" "" :string)
+ ("DZS" "" :string)
+ ("dzs" "" :string)
+ ("DZs" "" :string)
+ ("NY" "" :string)
+ ("SZ" "" :string)
+ ("Dz" "" :string)
+ ("Sz" "" :string)
+ ("Ly" "" :string)
+ ("cs" "" :string)
+ ("TY" "" :string)
+ ("Zs" "" :string)
+ ("gy" "" :string)
+ ("ly" "" :string)
+ ("ty" "" :string)
+ ("Gy" "" :string)
+ ("zs" "" :string)
+ ("Ty" "" :string)
+ ("Cs" "" :string)
+ ("ZS" "" :string)
+ ("DZ" "" :string)
+ ("sz" "" :string)
+ ("LY" "" :string)
+ ("GY" "" :string)
+ ("dz" "" :string)
+ ("Ny" "" :string)
+ ("CS" "" :string)
+ ("ny" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/hungarian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/hungarian/utf8-lang.xdy
new file mode 100644
index 00000000000..6cc10effd06
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hungarian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/hungarian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hu-alphabetize" "hu-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hu-resolve-diacritics" "hu-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hu-resolve-case" "hu-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hu-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/hungarian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/hungarian/utf8-test.xdy
new file mode 100644
index 00000000000..3bcc5f2ecea
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hungarian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/hungarian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("hu-alphabetize" "hu-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("hu-resolve-diacritics" "hu-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("hu-resolve-case" "hu-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("hu-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/hungarian/utf8.xdy b/Master/texmf/xindy/modules/lang/hungarian/utf8.xdy
new file mode 100644
index 00000000000..8d8dc9b3388
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/hungarian/utf8.xdy
@@ -0,0 +1,466 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Hungarian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Cs" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Cs" :prefixes ("" "" ""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes ("" ""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes ("" ""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ny" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ny" :prefixes (""))
+(define-letter-group "Ö" :after "O" :prefixes (""))
+(define-letter-group "P" :after "Ö" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Sz" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Sz" :prefixes ("" ""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "Ü" :after "U" :prefixes (""))
+(define-letter-group "V" :after "Ü" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Zs" :after "Z" :prefixes (""))
+
+(define-rule-set "hu-alphabetize"
+
+ :rules (("Dzs" "" :string)
+ ("DZS" "" :string)
+ ("dzs" "" :string)
+ ("DZs" "" :string)
+ ("Á" "" :string)
+ ("á" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("cs" "" :string)
+ ("Cs" "" :string)
+ ("CS" "" :string)
+ ("Dz" "" :string)
+ ("DZ" "" :string)
+ ("dz" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("gy" "" :string)
+ ("Gy" "" :string)
+ ("GY" "" :string)
+ ("Í" "" :string)
+ ("í" "" :string)
+ ("Ly" "" :string)
+ ("ly" "" :string)
+ ("LY" "" :string)
+ ("NY" "" :string)
+ ("Ny" "" :string)
+ ("ny" "" :string)
+ ("Ó" "" :string)
+ ("ó" "" :string)
+ ("Ö" "" :string)
+ ("Ő" "" :string)
+ ("ö" "" :string)
+ ("ő" "" :string)
+ ("SZ" "" :string)
+ ("Sz" "" :string)
+ ("sz" "" :string)
+ ("TY" "" :string)
+ ("ty" "" :string)
+ ("Ty" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("Ű" "" :string)
+ ("ű" "" :string)
+ ("ü" "" :string)
+ ("Zs" "" :string)
+ ("zs" "" :string)
+ ("ZS" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "hu-resolve-diacritics"
+
+ :rules (("Dzs" "" :string)
+ ("DZS" "" :string)
+ ("dzs" "" :string)
+ ("DZs" "" :string)
+ ("Ö" "" :string)
+ ("NY" "" :string)
+ ("SZ" "" :string)
+ ("Dz" "" :string)
+ ("Sz" "" :string)
+ ("Ly" "" :string)
+ ("cs" "" :string)
+ ("TY" "" :string)
+ ("Zs" "" :string)
+ ("Ü" "" :string)
+ ("gy" "" :string)
+ ("ly" "" :string)
+ ("ö" "" :string)
+ ("ty" "" :string)
+ ("Gy" "" :string)
+ ("zs" "" :string)
+ ("Ty" "" :string)
+ ("Cs" "" :string)
+ ("ZS" "" :string)
+ ("DZ" "" :string)
+ ("sz" "" :string)
+ ("LY" "" :string)
+ ("ü" "" :string)
+ ("GY" "" :string)
+ ("dz" "" :string)
+ ("Ny" "" :string)
+ ("CS" "" :string)
+ ("ny" "" :string)
+ ("Ő" "" :string)
+ ("Á" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Í" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("á" "" :string)
+ ("Ű" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("ű" "" :string)
+ ("é" "" :string)
+ ("ő" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "hu-resolve-case"
+
+ :rules (("DZS" "6" :string)
+ ("DZs" "7" :string)
+ ("Dzs" "8" :string)
+ ("dzs" "9" :string)
+ ("NY" "7" :string)
+ ("SZ" "7" :string)
+ ("TY" "7" :string)
+ ("ZS" "7" :string)
+ ("DZ" "7" :string)
+ ("LY" "7" :string)
+ ("GY" "7" :string)
+ ("CS" "7" :string)
+ ("Ö" "8" :string)
+ ("Ő" "8" :string)
+ ("Á" "8" :string)
+ ("Dz" "8" :string)
+ ("Sz" "8" :string)
+ ("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Ly" "8" :string)
+ ("Í" "8" :string)
+ ("Ú" "8" :string)
+ ("Zs" "8" :string)
+ ("Ü" "8" :string)
+ ("Gy" "8" :string)
+ ("Ty" "8" :string)
+ ("Cs" "8" :string)
+ ("Ű" "8" :string)
+ ("À" "8" :string)
+ ("Ny" "8" :string)
+ ("cs" "9" :string)
+ ("ú" "9" :string)
+ ("á" "9" :string)
+ ("gy" "9" :string)
+ ("ly" "9" :string)
+ ("ö" "9" :string)
+ ("ty" "9" :string)
+ ("zs" "9" :string)
+ ("à" "9" :string)
+ ("í" "9" :string)
+ ("ó" "9" :string)
+ ("ű" "9" :string)
+ ("sz" "9" :string)
+ ("é" "9" :string)
+ ("ü" "9" :string)
+ ("dz" "9" :string)
+ ("ny" "9" :string)
+ ("ő" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "hu-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "hu-resolve-special"
+
+ :rules (("Dzs" "" :string)
+ ("DZS" "" :string)
+ ("dzs" "" :string)
+ ("DZs" "" :string)
+ ("Ö" "" :string)
+ ("NY" "" :string)
+ ("SZ" "" :string)
+ ("Ő" "" :string)
+ ("Á" "" :string)
+ ("Dz" "" :string)
+ ("Sz" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Ly" "" :string)
+ ("Í" "" :string)
+ ("cs" "" :string)
+ ("Ú" "" :string)
+ ("TY" "" :string)
+ ("Zs" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("á" "" :string)
+ ("gy" "" :string)
+ ("ly" "" :string)
+ ("ö" "" :string)
+ ("ty" "" :string)
+ ("Gy" "" :string)
+ ("zs" "" :string)
+ ("Ty" "" :string)
+ ("Cs" "" :string)
+ ("à" "" :string)
+ ("Ű" "" :string)
+ ("ZS" "" :string)
+ ("í" "" :string)
+ ("DZ" "" :string)
+ ("ó" "" :string)
+ ("À" "" :string)
+ ("ű" "" :string)
+ ("sz" "" :string)
+ ("LY" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("GY" "" :string)
+ ("dz" "" :string)
+ ("Ny" "" :string)
+ ("CS" "" :string)
+ ("ny" "" :string)
+ ("ő" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/icelandic/cp1252-lang.xdy b/Master/texmf/xindy/modules/lang/icelandic/cp1252-lang.xdy
new file mode 100644
index 00000000000..d69a4d588ea
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/icelandic/cp1252-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/icelandic/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("is-alphabetize" "is-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("is-resolve-diacritics" "is-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("is-resolve-case" "is-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("is-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/icelandic/cp1252-test.xdy b/Master/texmf/xindy/modules/lang/icelandic/cp1252-test.xdy
new file mode 100644
index 00000000000..a3274f3d627
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/icelandic/cp1252-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/icelandic/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("is-alphabetize" "is-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("is-resolve-diacritics" "is-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("is-resolve-case" "is-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("is-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/icelandic/cp1252.xdy b/Master/texmf/xindy/modules/lang/icelandic/cp1252.xdy
new file mode 100644
index 00000000000..2ce24a8a714
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/icelandic/cp1252.xdy
@@ -0,0 +1,405 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Icelandic
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "" :after "D" :prefixes (""))
+(define-letter-group "E" :after "" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "is-alphabetize"
+
+ :rules (("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "is-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "is-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "is-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "is-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/icelandic/latin9-lang.xdy b/Master/texmf/xindy/modules/lang/icelandic/latin9-lang.xdy
new file mode 100644
index 00000000000..cfd2254cff2
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/icelandic/latin9-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/icelandic/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("is-alphabetize" "is-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("is-resolve-diacritics" "is-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("is-resolve-case" "is-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("is-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/icelandic/latin9-test.xdy b/Master/texmf/xindy/modules/lang/icelandic/latin9-test.xdy
new file mode 100644
index 00000000000..04214cf19a5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/icelandic/latin9-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/icelandic/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("is-alphabetize" "is-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("is-resolve-diacritics" "is-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("is-resolve-case" "is-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("is-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/icelandic/latin9.xdy b/Master/texmf/xindy/modules/lang/icelandic/latin9.xdy
new file mode 100644
index 00000000000..c907c0e46c9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/icelandic/latin9.xdy
@@ -0,0 +1,405 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Icelandic
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "" :after "D" :prefixes (""))
+(define-letter-group "E" :after "" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "is-alphabetize"
+
+ :rules (("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "is-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "is-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "is-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "is-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/icelandic/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/icelandic/utf8-lang.xdy
new file mode 100644
index 00000000000..cfb86d87605
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/icelandic/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/icelandic/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("is-alphabetize" "is-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("is-resolve-diacritics" "is-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("is-resolve-case" "is-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("is-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/icelandic/utf8-test.xdy b/Master/texmf/xindy/modules/lang/icelandic/utf8-test.xdy
new file mode 100644
index 00000000000..67e30287891
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/icelandic/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/icelandic/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("is-alphabetize" "is-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("is-resolve-diacritics" "is-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("is-resolve-case" "is-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("is-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/icelandic/utf8.xdy b/Master/texmf/xindy/modules/lang/icelandic/utf8.xdy
new file mode 100644
index 00000000000..944bf46a421
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/icelandic/utf8.xdy
@@ -0,0 +1,453 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Icelandic
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "ð" :after "D" :prefixes (""))
+(define-letter-group "E" :after "ð" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Þ" :after "Z" :prefixes (""))
+(define-letter-group "Æ" :after "Þ" :prefixes (""))
+(define-letter-group "Ö" :after "Æ" :prefixes (""))
+(define-letter-group "Å" :after "Ö" :prefixes (""))
+
+(define-rule-set "is-alphabetize"
+
+ :rules (("ǫ́" "" :string)
+ ("Ǫ́" "" :string)
+ ("ę́" "" :string)
+ ("Ę́" "" :string)
+ ("Á" "" :string)
+ ("á" "" :string)
+ ("ð" "" :string)
+ ("Ð" "" :string)
+ ("É" "" :string)
+ ("Ę" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("é" "" :string)
+ ("ę" "" :string)
+ ("Í" "" :string)
+ ("í" "" :string)
+ ("Ó" "" :string)
+ ("ó" "" :string)
+ ("ß" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("Ý" "" :string)
+ ("ý" "" :string)
+ ("þ" "" :string)
+ ("Þ" "" :string)
+ ("ǿ" "" :string)
+ ("Ä" "" :string)
+ ("œ" "" :string)
+ ("Æ" "" :string)
+ ("Œ" "" :string)
+ ("ä" "" :string)
+ ("æ" "" :string)
+ ("Ǽ" "" :string)
+ ("ǽ" "" :string)
+ ("Ǿ" "" :string)
+ ("Ö" "" :string)
+ ("ø" "" :string)
+ ("Ǫ" "" :string)
+ ("ö" "" :string)
+ ("Ø" "" :string)
+ ("ǫ" "" :string)
+ ("Å" "" :string)
+ ("å" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "is-resolve-diacritics"
+
+ :rules (("ǫ́" "" :string)
+ ("ę́" "" :string)
+ ("Ę́" "" :string)
+ ("Ǫ́" "" :string)
+ ("Ö" "" :string)
+ ("ð" "" :string)
+ ("Æ" "" :string)
+ ("Å" "" :string)
+ ("ö" "" :string)
+ ("å" "" :string)
+ ("þ" "" :string)
+ ("æ" "" :string)
+ ("Þ" "" :string)
+ ("Ð" "" :string)
+ ("Ý" "" :string)
+ ("Á" "" :string)
+ ("Ó" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("ø" "" :string)
+ ("Ü" "" :string)
+ ("á" "" :string)
+ ("Ę" "" :string)
+ ("í" "" :string)
+ ("Ø" "" :string)
+ ("ó" "" :string)
+ ("Ǽ" "" :string)
+ ("ǽ" "" :string)
+ ("ü" "" :string)
+ ("ę" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ǫ" "" :string)
+ ("Ë" "" :string)
+ ("ǫ" "" :string)
+ ("ë" "" :string)
+ ("ǿ" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("Ǿ" "" :string)
+ ("œ" "" :string)
+ ("Œ" "" :string)
+ ("Ä" "" :string)
+ ("ä" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "is-resolve-case"
+
+ :rules (("Ę́" "8" :string)
+ ("Ǫ́" "8" :string)
+ ("ǫ́" "9" :string)
+ ("ę́" "9" :string)
+ ("Ý" "8" :string)
+ ("Ö" "8" :string)
+ ("Á" "8" :string)
+ ("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Í" "8" :string)
+ ("Ú" "8" :string)
+ ("Ä" "8" :string)
+ ("Ü" "8" :string)
+ ("Æ" "8" :string)
+ ("Ǫ" "8" :string)
+ ("Å" "8" :string)
+ ("Œ" "8" :string)
+ ("Ę" "8" :string)
+ ("Ë" "8" :string)
+ ("Ø" "8" :string)
+ ("Þ" "8" :string)
+ ("Ǽ" "8" :string)
+ ("Ǿ" "8" :string)
+ ("Ð" "8" :string)
+ ("ð" "9" :string)
+ ("ǿ" "9" :string)
+ ("ý" "9" :string)
+ ("ø" "9" :string)
+ ("ú" "9" :string)
+ ("œ" "9" :string)
+ ("á" "9" :string)
+ ("ö" "9" :string)
+ ("ä" "9" :string)
+ ("å" "9" :string)
+ ("í" "9" :string)
+ ("þ" "9" :string)
+ ("æ" "9" :string)
+ ("ó" "9" :string)
+ ("ǫ" "9" :string)
+ ("ë" "9" :string)
+ ("é" "9" :string)
+ ("ǽ" "9" :string)
+ ("ü" "9" :string)
+ ("ę" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "is-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "is-resolve-special"
+
+ :rules (("ǫ́" "" :string)
+ ("ę́" "" :string)
+ ("Ę́" "" :string)
+ ("Ǫ́" "" :string)
+ ("Ý" "" :string)
+ ("Ö" "" :string)
+ ("Á" "" :string)
+ ("ð" "" :string)
+ ("ǿ" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("Ú" "" :string)
+ ("ø" "" :string)
+ ("Ä" "" :string)
+ ("ú" "" :string)
+ ("œ" "" :string)
+ ("Ü" "" :string)
+ ("Æ" "" :string)
+ ("Ǫ" "" :string)
+ ("á" "" :string)
+ ("Å" "" :string)
+ ("ö" "" :string)
+ ("Œ" "" :string)
+ ("ä" "" :string)
+ ("Ę" "" :string)
+ ("å" "" :string)
+ ("Ë" "" :string)
+ ("í" "" :string)
+ ("Ø" "" :string)
+ ("þ" "" :string)
+ ("æ" "" :string)
+ ("ó" "" :string)
+ ("ǫ" "" :string)
+ ("ë" "" :string)
+ ("Þ" "" :string)
+ ("Ǽ" "" :string)
+ ("é" "" :string)
+ ("ǽ" "" :string)
+ ("ü" "" :string)
+ ("Ǿ" "" :string)
+ ("Ð" "" :string)
+ ("ę" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/italian/latin1-lang.xdy b/Master/texmf/xindy/modules/lang/italian/latin1-lang.xdy
new file mode 100644
index 00000000000..49adebf17b4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/italian/latin1-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/italian/latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("it-alphabetize" "it-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("it-resolve-diacritics" "it-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("it-resolve-case" "it-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("it-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/italian/latin1-test.xdy b/Master/texmf/xindy/modules/lang/italian/latin1-test.xdy
new file mode 100644
index 00000000000..8b2643dd0ed
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/italian/latin1-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/italian/latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("it-alphabetize" "it-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("it-resolve-diacritics" "it-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("it-resolve-case" "it-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("it-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/italian/latin1.xdy b/Master/texmf/xindy/modules/lang/italian/latin1.xdy
new file mode 100644
index 00000000000..f5f5628966d
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/italian/latin1.xdy
@@ -0,0 +1,352 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Italian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "it-alphabetize"
+
+ :rules (("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "it-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "it-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "it-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "it-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/italian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/italian/utf8-lang.xdy
new file mode 100644
index 00000000000..ec45196c2f1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/italian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/italian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("it-alphabetize" "it-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("it-resolve-diacritics" "it-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("it-resolve-case" "it-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("it-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/italian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/italian/utf8-test.xdy
new file mode 100644
index 00000000000..0f80e6da9b3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/italian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/italian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("it-alphabetize" "it-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("it-resolve-diacritics" "it-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("it-resolve-case" "it-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("it-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/italian/utf8.xdy b/Master/texmf/xindy/modules/lang/italian/utf8.xdy
new file mode 100644
index 00000000000..35eeb5ff2ee
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/italian/utf8.xdy
@@ -0,0 +1,352 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Italian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "it-alphabetize"
+
+ :rules (("à" "" :string)
+ ("À" "" :string)
+ ("É" "" :string)
+ ("È" "" :string)
+ ("è" "" :string)
+ ("é" "" :string)
+ ("Í" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("ì" "" :string)
+ ("í" "" :string)
+ ("Ì" "" :string)
+ ("Ó" "" :string)
+ ("Ò" "" :string)
+ ("ò" "" :string)
+ ("ó" "" :string)
+ ("ß" "" :string)
+ ("ù" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ù" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "it-resolve-diacritics"
+
+ :rules (("Í" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("í" "" :string)
+ ("ù" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Ù" "" :string)
+ ("ì" "" :string)
+ ("ó" "" :string)
+ ("Ì" "" :string)
+ ("é" "" :string)
+ ("Ò" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("à" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "it-resolve-case"
+
+ :rules (("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Ò" "8" :string)
+ ("Í" "8" :string)
+ ("Ï" "8" :string)
+ ("Ú" "8" :string)
+ ("Ù" "8" :string)
+ ("È" "8" :string)
+ ("À" "8" :string)
+ ("Ì" "8" :string)
+ ("ù" "9" :string)
+ ("ú" "9" :string)
+ ("ï" "9" :string)
+ ("ò" "9" :string)
+ ("ì" "9" :string)
+ ("à" "9" :string)
+ ("í" "9" :string)
+ ("ó" "9" :string)
+ ("è" "9" :string)
+ ("é" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "it-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "it-resolve-special"
+
+ :rules (("ù" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Ò" "" :string)
+ ("Í" "" :string)
+ ("Ï" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("ï" "" :string)
+ ("Ù" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("ì" "" :string)
+ ("à" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("Ì" "" :string)
+ ("é" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/klingon/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/klingon/utf8-lang.xdy
new file mode 100644
index 00000000000..7ca9f2f7305
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/klingon/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/klingon/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("k1-alphabetize" "k1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("k1-resolve-diacritics" "k1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("k1-resolve-case" "k1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("k1-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/klingon/utf8-test.xdy b/Master/texmf/xindy/modules/lang/klingon/utf8-test.xdy
new file mode 100644
index 00000000000..42b53835298
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/klingon/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/klingon/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("k1-alphabetize" "k1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("k1-resolve-diacritics" "k1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("k1-resolve-case" "k1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("k1-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/klingon/utf8.xdy b/Master/texmf/xindy/modules/lang/klingon/utf8.xdy
new file mode 100644
index 00000000000..78aa2bbc9e4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/klingon/utf8.xdy
@@ -0,0 +1,166 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Klingon
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "k1-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "k1-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "k1-resolve-case"
+
+ :rules (("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ))
+
+(define-rule-set "k1-ignore-special"
+
+ :rules (("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("{" "" :string)
+ ("?" "" :string)
+ ("}" "" :string)
+ ))
+
+(define-rule-set "k1-resolve-special"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5-lang.xdy b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5-lang.xdy
new file mode 100644
index 00000000000..92fa7d15186
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/kurdish/bedirxan-latin5.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ku-alphabetize" "ku-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ku-resolve-diacritics" "ku-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ku-resolve-case" "ku-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ku-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5-test.xdy b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5-test.xdy
new file mode 100644
index 00000000000..19c9b07dcc8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/kurdish/bedirxan-latin5.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ku-alphabetize" "ku-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ku-resolve-diacritics" "ku-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ku-resolve-case" "ku-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ku-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5.xdy b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5.xdy
new file mode 100644
index 00000000000..cae28b5cd2c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-latin5.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Kurdish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "" :after "E" :prefixes (""))
+(define-letter-group "F" :after "" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "" :after "I" :prefixes (""))
+(define-letter-group "J" :after "" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "R" :after "P" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "" :after "U" :prefixes (""))
+(define-letter-group "V" :after "" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "ku-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "ku-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8-lang.xdy
new file mode 100644
index 00000000000..25ebe6614d3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/kurdish/bedirxan-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ku-alphabetize" "ku-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ku-resolve-diacritics" "ku-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ku-resolve-case" "ku-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ku-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8-test.xdy b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8-test.xdy
new file mode 100644
index 00000000000..3a0f31f537a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/kurdish/bedirxan-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ku-alphabetize" "ku-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ku-resolve-diacritics" "ku-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ku-resolve-case" "ku-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ku-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8.xdy b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8.xdy
new file mode 100644
index 00000000000..fa007d79f55
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/bedirxan-utf8.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Kurdish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Ç" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Ç" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "Ê" :after "E" :prefixes (""))
+(define-letter-group "F" :after "Ê" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "Î" :after "I" :prefixes (""))
+(define-letter-group "J" :after "Î" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "R" :after "P" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Ş" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Ş" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "Û" :after "U" :prefixes (""))
+(define-letter-group "V" :after "Û" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "ku-alphabetize"
+
+ :rules (("ç" "" :string)
+ ("Ç" "" :string)
+ ("ê" "" :string)
+ ("Ê" "" :string)
+ ("Î" "" :string)
+ ("î" "" :string)
+ ("ş" "" :string)
+ ("Ş" "" :string)
+ ("Û" "" :string)
+ ("û" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-diacritics"
+
+ :rules (("Î" "" :string)
+ ("ş" "" :string)
+ ("ç" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("Ş" "" :string)
+ ("ê" "" :string)
+ ("î" "" :string)
+ ("Ê" "" :string)
+ ("û" "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-case"
+
+ :rules (("Î" "8" :string)
+ ("Û" "8" :string)
+ ("Ç" "8" :string)
+ ("Ş" "8" :string)
+ ("Ê" "8" :string)
+ ("ş" "9" :string)
+ ("ç" "9" :string)
+ ("ê" "9" :string)
+ ("î" "9" :string)
+ ("û" "9" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "ku-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-special"
+
+ :rules (("Î" "" :string)
+ ("ş" "" :string)
+ ("ç" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("Ş" "" :string)
+ ("ê" "" :string)
+ ("î" "" :string)
+ ("Ê" "" :string)
+ ("û" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5-lang.xdy b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5-lang.xdy
new file mode 100644
index 00000000000..c6b6132f635
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/kurdish/turkish-i-latin5.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ku-alphabetize" "ku-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ku-resolve-diacritics" "ku-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ku-resolve-case" "ku-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ku-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5-test.xdy b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5-test.xdy
new file mode 100644
index 00000000000..3d0b1f2feb2
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/kurdish/turkish-i-latin5.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ku-alphabetize" "ku-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ku-resolve-diacritics" "ku-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ku-resolve-case" "ku-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ku-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5.xdy b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5.xdy
new file mode 100644
index 00000000000..d91103386de
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-latin5.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Kurdish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "" :after "E" :prefixes (""))
+(define-letter-group "F" :after "" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "" :after "I" :prefixes (""))
+(define-letter-group "J" :after "" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "R" :after "P" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "" :after "U" :prefixes (""))
+(define-letter-group "V" :after "" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "ku-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "ku-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8-lang.xdy
new file mode 100644
index 00000000000..397332cae69
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/kurdish/turkish-i-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ku-alphabetize" "ku-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ku-resolve-diacritics" "ku-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ku-resolve-case" "ku-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ku-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8-test.xdy b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8-test.xdy
new file mode 100644
index 00000000000..fb0733d41e5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/kurdish/turkish-i-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ku-alphabetize" "ku-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ku-resolve-diacritics" "ku-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ku-resolve-case" "ku-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ku-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8.xdy b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8.xdy
new file mode 100644
index 00000000000..0e2898eb6ac
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/kurdish/turkish-i-utf8.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Kurdish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Ç" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Ç" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "Ê" :after "E" :prefixes (""))
+(define-letter-group "F" :after "Ê" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "İ" :after "I" :prefixes (""))
+(define-letter-group "J" :after "İ" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "R" :after "P" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Ş" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Ş" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "Û" :after "U" :prefixes (""))
+(define-letter-group "V" :after "Û" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "ku-alphabetize"
+
+ :rules (("ç" "" :string)
+ ("Ç" "" :string)
+ ("ê" "" :string)
+ ("Ê" "" :string)
+ ("ı" "" :string)
+ ("İ" "" :string)
+ ("ş" "" :string)
+ ("Ş" "" :string)
+ ("Û" "" :string)
+ ("û" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-diacritics"
+
+ :rules (("İ" "" :string)
+ ("ş" "" :string)
+ ("ı" "" :string)
+ ("ç" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("Ş" "" :string)
+ ("ê" "" :string)
+ ("Ê" "" :string)
+ ("û" "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-case"
+
+ :rules (("İ" "8" :string)
+ ("Û" "8" :string)
+ ("Ç" "8" :string)
+ ("Ş" "8" :string)
+ ("Ê" "8" :string)
+ ("ş" "9" :string)
+ ("ı" "9" :string)
+ ("ç" "9" :string)
+ ("ê" "9" :string)
+ ("û" "9" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "ku-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-special"
+
+ :rules (("İ" "" :string)
+ ("ş" "" :string)
+ ("ı" "" :string)
+ ("ç" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("Ş" "" :string)
+ ("ê" "" :string)
+ ("Ê" "" :string)
+ ("û" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/latin/caseisrt.xdy b/Master/texmf/xindy/modules/lang/latin/caseisrt.xdy
new file mode 100644
index 00000000000..8b17010338e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latin/caseisrt.xdy
@@ -0,0 +1,34 @@
+;; $Id: caseisrt.xdy,v 1.1 1996/07/03 18:44:47 kehr Exp $
+;;
+;; These are the sort-rules for a latin-based alphabet. Usually in an
+;; index lower- and uppercase letters appear intermixed. Therefore, we
+;; map all uppercase-letters to their lowercase counterpart.
+
+(sort-rule "A" "a")
+(sort-rule "B" "b")
+(sort-rule "C" "c")
+(sort-rule "D" "d")
+(sort-rule "E" "e")
+(sort-rule "F" "f")
+(sort-rule "G" "g")
+(sort-rule "H" "h")
+(sort-rule "I" "i")
+(sort-rule "J" "j")
+(sort-rule "K" "k")
+(sort-rule "L" "l")
+(sort-rule "M" "m")
+(sort-rule "N" "n")
+(sort-rule "O" "o")
+(sort-rule "P" "p")
+(sort-rule "Q" "q")
+(sort-rule "R" "r")
+(sort-rule "S" "s")
+(sort-rule "T" "t")
+(sort-rule "U" "u")
+(sort-rule "V" "v")
+(sort-rule "W" "w")
+(sort-rule "X" "x")
+(sort-rule "Y" "y")
+(sort-rule "Z" "z")
+
+;; End
diff --git a/Master/texmf/xindy/modules/lang/latin/letgroup.xdy b/Master/texmf/xindy/modules/lang/latin/letgroup.xdy
new file mode 100644
index 00000000000..f02680bd9e3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latin/letgroup.xdy
@@ -0,0 +1,10 @@
+;; $Id: letgroup.xdy,v 1.3 1996/07/18 16:04:18 kehr Exp $
+;;
+;; This file contains the standard letter groups used in latin-based
+;; languages.
+
+(define-letter-groups
+ ("a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
+ "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"))
+
+;; End
diff --git a/Master/texmf/xindy/modules/lang/latin/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/latin/utf8-lang.xdy
new file mode 100644
index 00000000000..f5e47c2cf15
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latin/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/latin/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("la-alphabetize" "la-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("la-resolve-diacritics" "la-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("la-resolve-case" "la-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("la-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/latin/utf8-test.xdy b/Master/texmf/xindy/modules/lang/latin/utf8-test.xdy
new file mode 100644
index 00000000000..3191aa8f423
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latin/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/latin/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("la-alphabetize" "la-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("la-resolve-diacritics" "la-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("la-resolve-case" "la-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("la-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/latin/utf8.xdy b/Master/texmf/xindy/modules/lang/latin/utf8.xdy
new file mode 100644
index 00000000000..0c240a531d5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latin/utf8.xdy
@@ -0,0 +1,352 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Latin
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "la-alphabetize"
+
+ :rules (("Ă" "" :string)
+ ("Ā" "" :string)
+ ("ā" "" :string)
+ ("ă" "" :string)
+ ("Ĕ" "" :string)
+ ("Ē" "" :string)
+ ("ē" "" :string)
+ ("ĕ" "" :string)
+ ("Ĭ" "" :string)
+ ("ī" "" :string)
+ ("Ī" "" :string)
+ ("ĭ" "" :string)
+ ("Ō" "" :string)
+ ("ŏ" "" :string)
+ ("ō" "" :string)
+ ("Ŏ" "" :string)
+ ("ß" "" :string)
+ ("ū" "" :string)
+ ("ŭ" "" :string)
+ ("Ū" "" :string)
+ ("Ŭ" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "la-resolve-diacritics"
+
+ :rules (("ū" "" :string)
+ ("Ē" "" :string)
+ ("Ā" "" :string)
+ ("Ū" "" :string)
+ ("Ō" "" :string)
+ ("ī" "" :string)
+ ("ē" "" :string)
+ ("Ī" "" :string)
+ ("ā" "" :string)
+ ("ō" "" :string)
+ ("Ĕ" "" :string)
+ ("Ă" "" :string)
+ ("ŭ" "" :string)
+ ("Ĭ" "" :string)
+ ("Ŭ" "" :string)
+ ("ŏ" "" :string)
+ ("ă" "" :string)
+ ("ĕ" "" :string)
+ ("ĭ" "" :string)
+ ("Ŏ" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "la-resolve-case"
+
+ :rules (("Ĕ" "8" :string)
+ ("Ă" "8" :string)
+ ("Ē" "8" :string)
+ ("Ĭ" "8" :string)
+ ("Ā" "8" :string)
+ ("Ū" "8" :string)
+ ("Ŭ" "8" :string)
+ ("Ō" "8" :string)
+ ("Ī" "8" :string)
+ ("Ŏ" "8" :string)
+ ("ū" "9" :string)
+ ("ŭ" "9" :string)
+ ("ī" "9" :string)
+ ("ē" "9" :string)
+ ("ā" "9" :string)
+ ("ŏ" "9" :string)
+ ("ă" "9" :string)
+ ("ō" "9" :string)
+ ("ĕ" "9" :string)
+ ("ĭ" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "la-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "la-resolve-special"
+
+ :rules (("Ĕ" "" :string)
+ ("Ă" "" :string)
+ ("ū" "" :string)
+ ("Ē" "" :string)
+ ("ŭ" "" :string)
+ ("Ĭ" "" :string)
+ ("Ā" "" :string)
+ ("Ū" "" :string)
+ ("Ŭ" "" :string)
+ ("Ō" "" :string)
+ ("ī" "" :string)
+ ("ē" "" :string)
+ ("Ī" "" :string)
+ ("ā" "" :string)
+ ("ŏ" "" :string)
+ ("ă" "" :string)
+ ("ō" "" :string)
+ ("ĕ" "" :string)
+ ("ĭ" "" :string)
+ ("Ŏ" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/latvian/latin4-lang.xdy b/Master/texmf/xindy/modules/lang/latvian/latin4-lang.xdy
new file mode 100644
index 00000000000..0c6aa43c84f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latvian/latin4-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/latvian/latin4.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("lv-alphabetize" "lv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("lv-resolve-diacritics" "lv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("lv-resolve-case" "lv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("lv-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/latvian/latin4-test.xdy b/Master/texmf/xindy/modules/lang/latvian/latin4-test.xdy
new file mode 100644
index 00000000000..3891a7b1d5b
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latvian/latin4-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/latvian/latin4.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("lv-alphabetize" "lv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("lv-resolve-diacritics" "lv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("lv-resolve-case" "lv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("lv-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/latvian/latin4.xdy b/Master/texmf/xindy/modules/lang/latvian/latin4.xdy
new file mode 100644
index 00000000000..2c321d26e2d
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latvian/latin4.xdy
@@ -0,0 +1,383 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Latvian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "" :after "G" :prefixes (""))
+(define-letter-group "H" :after "" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "" :after "K" :prefixes (""))
+(define-letter-group "L" :after "" :prefixes (""))
+(define-letter-group "" :after "L" :prefixes (""))
+(define-letter-group "M" :after "" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "" :after "R" :prefixes (""))
+(define-letter-group "S" :after "" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Z" :after "X" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "lv-alphabetize"
+
+ :rules (("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "lv-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("E" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "lv-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "lv-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "lv-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/latvian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/latvian/utf8-lang.xdy
new file mode 100644
index 00000000000..9d10cae5921
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latvian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/latvian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("lv-alphabetize" "lv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("lv-resolve-diacritics" "lv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("lv-resolve-case" "lv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("lv-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/latvian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/latvian/utf8-test.xdy
new file mode 100644
index 00000000000..7e36114e10d
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latvian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/latvian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("lv-alphabetize" "lv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("lv-resolve-diacritics" "lv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("lv-resolve-case" "lv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("lv-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/latvian/utf8.xdy b/Master/texmf/xindy/modules/lang/latvian/utf8.xdy
new file mode 100644
index 00000000000..933adf0c915
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/latvian/utf8.xdy
@@ -0,0 +1,383 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Latvian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Č" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Č" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "Ģ" :after "G" :prefixes (""))
+(define-letter-group "H" :after "Ģ" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "Ķ" :after "K" :prefixes (""))
+(define-letter-group "L" :after "Ķ" :prefixes (""))
+(define-letter-group "Ļ" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Ļ" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ņ" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ņ" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "Ŗ" :after "R" :prefixes (""))
+(define-letter-group "S" :after "Ŗ" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Š" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Z" :after "X" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+
+(define-rule-set "lv-alphabetize"
+
+ :rules (("Ā" "" :string)
+ ("ā" "" :string)
+ ("č" "" :string)
+ ("Č" "" :string)
+ ("Ē" "" :string)
+ ("ē" "" :string)
+ ("ģ" "" :string)
+ ("Ģ" "" :string)
+ ("ī" "" :string)
+ ("Ī" "" :string)
+ ("ķ" "" :string)
+ ("Ķ" "" :string)
+ ("ļ" "" :string)
+ ("Ļ" "" :string)
+ ("ņ" "" :string)
+ ("Ņ" "" :string)
+ ("Ō" "" :string)
+ ("ō" "" :string)
+ ("Ŗ" "" :string)
+ ("ŗ" "" :string)
+ ("ß" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("ū" "" :string)
+ ("Ū" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "lv-resolve-diacritics"
+
+ :rules (("Ž" "" :string)
+ ("ķ" "" :string)
+ ("ļ" "" :string)
+ ("ņ" "" :string)
+ ("č" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ņ" "" :string)
+ ("Č" "" :string)
+ ("Ŗ" "" :string)
+ ("Ķ" "" :string)
+ ("Ļ" "" :string)
+ ("ģ" "" :string)
+ ("Ģ" "" :string)
+ ("ž" "" :string)
+ ("ŗ" "" :string)
+ ("ū" "" :string)
+ ("Ē" "" :string)
+ ("Ā" "" :string)
+ ("Ū" "" :string)
+ ("Ō" "" :string)
+ ("ē" "" :string)
+ ("ā" "" :string)
+ ("ō" "" :string)
+ ("ī" "" :string)
+ ("Ī" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("E" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ))
+
+(define-rule-set "lv-resolve-case"
+
+ :rules (("Ž" "8" :string)
+ ("Ē" "8" :string)
+ ("Ā" "8" :string)
+ ("Ū" "8" :string)
+ ("Š" "8" :string)
+ ("Ō" "8" :string)
+ ("Ņ" "8" :string)
+ ("Ī" "8" :string)
+ ("Č" "8" :string)
+ ("Ŗ" "8" :string)
+ ("Ķ" "8" :string)
+ ("Ļ" "8" :string)
+ ("Ģ" "8" :string)
+ ("ķ" "9" :string)
+ ("ļ" "9" :string)
+ ("ū" "9" :string)
+ ("ņ" "9" :string)
+ ("č" "9" :string)
+ ("š" "9" :string)
+ ("ī" "9" :string)
+ ("ē" "9" :string)
+ ("ā" "9" :string)
+ ("ō" "9" :string)
+ ("ģ" "9" :string)
+ ("ž" "9" :string)
+ ("ŗ" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "lv-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "lv-resolve-special"
+
+ :rules (("Ž" "" :string)
+ ("ķ" "" :string)
+ ("ļ" "" :string)
+ ("ū" "" :string)
+ ("ņ" "" :string)
+ ("č" "" :string)
+ ("Ē" "" :string)
+ ("Ā" "" :string)
+ ("Ū" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ō" "" :string)
+ ("ī" "" :string)
+ ("ē" "" :string)
+ ("Ņ" "" :string)
+ ("Ī" "" :string)
+ ("ā" "" :string)
+ ("Č" "" :string)
+ ("Ŗ" "" :string)
+ ("ō" "" :string)
+ ("Ķ" "" :string)
+ ("Ļ" "" :string)
+ ("ģ" "" :string)
+ ("Ģ" "" :string)
+ ("ž" "" :string)
+ ("ŗ" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/lithuanian/latin4-lang.xdy b/Master/texmf/xindy/modules/lang/lithuanian/latin4-lang.xdy
new file mode 100644
index 00000000000..b030976c4f3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lithuanian/latin4-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/lithuanian/latin4.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("lt-alphabetize" "lt-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("lt-resolve-diacritics" "lt-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("lt-resolve-case" "lt-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("lt-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/lithuanian/latin4-test.xdy b/Master/texmf/xindy/modules/lang/lithuanian/latin4-test.xdy
new file mode 100644
index 00000000000..bccb9bd1a3b
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lithuanian/latin4-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/lithuanian/latin4.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("lt-alphabetize" "lt-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("lt-resolve-diacritics" "lt-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("lt-resolve-case" "lt-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("lt-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/lithuanian/latin4.xdy b/Master/texmf/xindy/modules/lang/lithuanian/latin4.xdy
new file mode 100644
index 00000000000..5acf43cefd9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lithuanian/latin4.xdy
@@ -0,0 +1,354 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Lithuanian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Z" :after "X" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "lt-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "lt-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("E" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "lt-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "lt-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "lt-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/lithuanian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/lithuanian/utf8-lang.xdy
new file mode 100644
index 00000000000..4125ac510d4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lithuanian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/lithuanian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("lt-alphabetize" "lt-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("lt-resolve-diacritics" "lt-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("lt-resolve-case" "lt-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("lt-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/lithuanian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/lithuanian/utf8-test.xdy
new file mode 100644
index 00000000000..32feaafb063
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lithuanian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/lithuanian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("lt-alphabetize" "lt-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("lt-resolve-diacritics" "lt-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("lt-resolve-case" "lt-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("lt-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/lithuanian/utf8.xdy b/Master/texmf/xindy/modules/lang/lithuanian/utf8.xdy
new file mode 100644
index 00000000000..0c42cb70dc9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lithuanian/utf8.xdy
@@ -0,0 +1,354 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Lithuanian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Č" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Č" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Š" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Z" :after "X" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+
+(define-rule-set "lt-alphabetize"
+
+ :rules (("ą" "" :string)
+ ("Ą" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("č" "" :string)
+ ("Č" "" :string)
+ ("ė" "" :string)
+ ("Ė" "" :string)
+ ("Ę" "" :string)
+ ("ę" "" :string)
+ ("į" "" :string)
+ ("Į" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("ū" "" :string)
+ ("Ū" "" :string)
+ ("ų" "" :string)
+ ("Ų" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "lt-resolve-diacritics"
+
+ :rules (("Ž" "" :string)
+ ("č" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Č" "" :string)
+ ("ž" "" :string)
+ ("į" "" :string)
+ ("Į" "" :string)
+ ("ą" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("Ą" "" :string)
+ ("Ę" "" :string)
+ ("ų" "" :string)
+ ("CH" "" :string)
+ ("Ų" "" :string)
+ ("ę" "" :string)
+ ("ė" "" :string)
+ ("ū" "" :string)
+ ("Ė" "" :string)
+ ("Ū" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("E" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ))
+
+(define-rule-set "lt-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ž" "8" :string)
+ ("Į" "8" :string)
+ ("Ch" "8" :string)
+ ("Ė" "8" :string)
+ ("Ū" "8" :string)
+ ("Š" "8" :string)
+ ("Ą" "8" :string)
+ ("Ę" "8" :string)
+ ("Ų" "8" :string)
+ ("Č" "8" :string)
+ ("į" "9" :string)
+ ("ė" "9" :string)
+ ("ą" "9" :string)
+ ("ū" "9" :string)
+ ("č" "9" :string)
+ ("ch" "9" :string)
+ ("š" "9" :string)
+ ("ų" "9" :string)
+ ("ž" "9" :string)
+ ("ę" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "lt-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "lt-resolve-special"
+
+ :rules (("į" "" :string)
+ ("Ž" "" :string)
+ ("Į" "" :string)
+ ("ė" "" :string)
+ ("ą" "" :string)
+ ("Ch" "" :string)
+ ("ū" "" :string)
+ ("č" "" :string)
+ ("ch" "" :string)
+ ("Ė" "" :string)
+ ("Ū" "" :string)
+ ("Š" "" :string)
+ ("Ą" "" :string)
+ ("š" "" :string)
+ ("Ę" "" :string)
+ ("ų" "" :string)
+ ("CH" "" :string)
+ ("Ų" "" :string)
+ ("Č" "" :string)
+ ("ž" "" :string)
+ ("ę" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/lower-sorbian/cp1250-lang.xdy b/Master/texmf/xindy/modules/lang/lower-sorbian/cp1250-lang.xdy
new file mode 100644
index 00000000000..8d29cc8f3a1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lower-sorbian/cp1250-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/lower-sorbian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s1-alphabetize" "s1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s1-resolve-diacritics" "s1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s1-resolve-case" "s1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s1-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/lower-sorbian/cp1250-test.xdy b/Master/texmf/xindy/modules/lang/lower-sorbian/cp1250-test.xdy
new file mode 100644
index 00000000000..c92979a89bd
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lower-sorbian/cp1250-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/lower-sorbian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s1-alphabetize" "s1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s1-resolve-diacritics" "s1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s1-resolve-case" "s1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s1-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/lower-sorbian/cp1250.xdy b/Master/texmf/xindy/modules/lang/lower-sorbian/cp1250.xdy
new file mode 100644
index 00000000000..0c4188d4119
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lower-sorbian/cp1250.xdy
@@ -0,0 +1,375 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Lower Sorbian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "" :after "E" :prefixes (""))
+(define-letter-group "F" :after "" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "" :after "K" :prefixes (""))
+(define-letter-group "L" :after "" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "" :after "R" :prefixes (""))
+(define-letter-group "S" :after "" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "s1-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "s1-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "s1-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "s1-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "s1-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/lower-sorbian/latin2-lang.xdy b/Master/texmf/xindy/modules/lang/lower-sorbian/latin2-lang.xdy
new file mode 100644
index 00000000000..50fa742eea6
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lower-sorbian/latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/lower-sorbian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s1-alphabetize" "s1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s1-resolve-diacritics" "s1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s1-resolve-case" "s1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s1-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/lower-sorbian/latin2-test.xdy b/Master/texmf/xindy/modules/lang/lower-sorbian/latin2-test.xdy
new file mode 100644
index 00000000000..bb8b45820fe
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lower-sorbian/latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/lower-sorbian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s1-alphabetize" "s1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s1-resolve-diacritics" "s1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s1-resolve-case" "s1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s1-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/lower-sorbian/latin2.xdy b/Master/texmf/xindy/modules/lang/lower-sorbian/latin2.xdy
new file mode 100644
index 00000000000..c12614753f6
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lower-sorbian/latin2.xdy
@@ -0,0 +1,375 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Lower Sorbian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "" :after "E" :prefixes (""))
+(define-letter-group "F" :after "" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "" :after "K" :prefixes (""))
+(define-letter-group "L" :after "" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "" :after "R" :prefixes (""))
+(define-letter-group "S" :after "" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "s1-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "s1-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "s1-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "s1-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "s1-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/lower-sorbian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/lower-sorbian/utf8-lang.xdy
new file mode 100644
index 00000000000..bc03542d653
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lower-sorbian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/lower-sorbian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s1-alphabetize" "s1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s1-resolve-diacritics" "s1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s1-resolve-case" "s1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s1-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/lower-sorbian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/lower-sorbian/utf8-test.xdy
new file mode 100644
index 00000000000..3b857082cb0
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lower-sorbian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/lower-sorbian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s1-alphabetize" "s1-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s1-resolve-diacritics" "s1-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s1-resolve-case" "s1-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s1-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/lower-sorbian/utf8.xdy b/Master/texmf/xindy/modules/lang/lower-sorbian/utf8.xdy
new file mode 100644
index 00000000000..e2967909483
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/lower-sorbian/utf8.xdy
@@ -0,0 +1,375 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Lower Sorbian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Č" :after "C" :prefixes (""))
+(define-letter-group "Ć" :after "Č" :prefixes (""))
+(define-letter-group "D" :after "Ć" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "Ě" :after "E" :prefixes (""))
+(define-letter-group "F" :after "Ě" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "Ł" :after "K" :prefixes (""))
+(define-letter-group "L" :after "Ł" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ń" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ń" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "Ŕ" :after "R" :prefixes (""))
+(define-letter-group "S" :after "Ŕ" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "Ś" :after "Š" :prefixes (""))
+(define-letter-group "T" :after "Ś" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+(define-letter-group "Ź" :after "Ž" :prefixes (""))
+
+(define-rule-set "s1-alphabetize"
+
+ :rules (("č" "" :string)
+ ("Č" "" :string)
+ ("Ć" "" :string)
+ ("ć" "" :string)
+ ("Ě" "" :string)
+ ("ě" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ń" "" :string)
+ ("ń" "" :string)
+ ("ŕ" "" :string)
+ ("Ŕ" "" :string)
+ ("ß" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("ś" "" :string)
+ ("Ś" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("Ź" "" :string)
+ ("ź" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "s1-resolve-diacritics"
+
+ :rules (("Ě" "" :string)
+ ("Ž" "" :string)
+ ("ŕ" "" :string)
+ ("Ch" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("č" "" :string)
+ ("ch" "" :string)
+ ("ě" "" :string)
+ ("Ŕ" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ć" "" :string)
+ ("CH" "" :string)
+ ("Ź" "" :string)
+ ("Č" "" :string)
+ ("ś" "" :string)
+ ("Ń" "" :string)
+ ("ź" "" :string)
+ ("ń" "" :string)
+ ("ć" "" :string)
+ ("ž" "" :string)
+ ("Ś" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "s1-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ě" "8" :string)
+ ("Ž" "8" :string)
+ ("Ch" "8" :string)
+ ("Ł" "8" :string)
+ ("Ŕ" "8" :string)
+ ("Š" "8" :string)
+ ("Ć" "8" :string)
+ ("Ź" "8" :string)
+ ("Č" "8" :string)
+ ("Ń" "8" :string)
+ ("Ś" "8" :string)
+ ("ŕ" "9" :string)
+ ("ł" "9" :string)
+ ("č" "9" :string)
+ ("ch" "9" :string)
+ ("ě" "9" :string)
+ ("š" "9" :string)
+ ("ś" "9" :string)
+ ("ź" "9" :string)
+ ("ń" "9" :string)
+ ("ć" "9" :string)
+ ("ž" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "s1-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "s1-resolve-special"
+
+ :rules (("Ě" "" :string)
+ ("Ž" "" :string)
+ ("ŕ" "" :string)
+ ("Ch" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("č" "" :string)
+ ("ch" "" :string)
+ ("ě" "" :string)
+ ("Ŕ" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ć" "" :string)
+ ("CH" "" :string)
+ ("Ź" "" :string)
+ ("Č" "" :string)
+ ("ś" "" :string)
+ ("Ń" "" :string)
+ ("ź" "" :string)
+ ("ń" "" :string)
+ ("ć" "" :string)
+ ("ž" "" :string)
+ ("Ś" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/macedonian/cp1251-lang.xdy b/Master/texmf/xindy/modules/lang/macedonian/cp1251-lang.xdy
new file mode 100644
index 00000000000..9fe7ef7d118
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/cp1251-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/macedonian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mk-alphabetize" "mk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mk-resolve-diacritics" "mk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mk-resolve-case" "mk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/macedonian/cp1251-test.xdy b/Master/texmf/xindy/modules/lang/macedonian/cp1251-test.xdy
new file mode 100644
index 00000000000..1a93bafa8c7
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/cp1251-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/macedonian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mk-alphabetize" "mk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mk-resolve-diacritics" "mk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mk-resolve-case" "mk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/macedonian/cp1251.xdy b/Master/texmf/xindy/modules/lang/macedonian/cp1251.xdy
new file mode 100644
index 00000000000..eea8f857817
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/cp1251.xdy
@@ -0,0 +1,313 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Macedonian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "mk-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "mk-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/macedonian/iso88595-lang.xdy b/Master/texmf/xindy/modules/lang/macedonian/iso88595-lang.xdy
new file mode 100644
index 00000000000..a2c1f9794c7
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/iso88595-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/macedonian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mk-alphabetize" "mk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mk-resolve-diacritics" "mk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mk-resolve-case" "mk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/macedonian/iso88595-test.xdy b/Master/texmf/xindy/modules/lang/macedonian/iso88595-test.xdy
new file mode 100644
index 00000000000..64a917e97e3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/iso88595-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/macedonian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mk-alphabetize" "mk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mk-resolve-diacritics" "mk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mk-resolve-case" "mk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/macedonian/iso88595.xdy b/Master/texmf/xindy/modules/lang/macedonian/iso88595.xdy
new file mode 100644
index 00000000000..45dd2b4660d
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/iso88595.xdy
@@ -0,0 +1,313 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Macedonian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "mk-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "mk-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/macedonian/isoir111-lang.xdy b/Master/texmf/xindy/modules/lang/macedonian/isoir111-lang.xdy
new file mode 100644
index 00000000000..d2a40df6436
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/isoir111-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/macedonian/isoir111.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mk-alphabetize" "mk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mk-resolve-diacritics" "mk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mk-resolve-case" "mk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/macedonian/isoir111-test.xdy b/Master/texmf/xindy/modules/lang/macedonian/isoir111-test.xdy
new file mode 100644
index 00000000000..8b95f772983
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/isoir111-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/macedonian/isoir111.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mk-alphabetize" "mk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mk-resolve-diacritics" "mk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mk-resolve-case" "mk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/macedonian/isoir111.xdy b/Master/texmf/xindy/modules/lang/macedonian/isoir111.xdy
new file mode 100644
index 00000000000..e4f3e220272
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/isoir111.xdy
@@ -0,0 +1,313 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Macedonian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "mk-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "mk-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/macedonian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/macedonian/utf8-lang.xdy
new file mode 100644
index 00000000000..219fc301bc1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/macedonian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mk-alphabetize" "mk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mk-resolve-diacritics" "mk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mk-resolve-case" "mk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/macedonian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/macedonian/utf8-test.xdy
new file mode 100644
index 00000000000..b402825b387
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/macedonian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mk-alphabetize" "mk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mk-resolve-diacritics" "mk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mk-resolve-case" "mk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/macedonian/utf8.xdy b/Master/texmf/xindy/modules/lang/macedonian/utf8.xdy
new file mode 100644
index 00000000000..d3ebfebddb3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/macedonian/utf8.xdy
@@ -0,0 +1,329 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Macedonian
+
+(define-letter-group "А" :prefixes (""))
+(define-letter-group "Б" :after "А" :prefixes (""))
+(define-letter-group "В" :after "Б" :prefixes (""))
+(define-letter-group "Г" :after "В" :prefixes (""))
+(define-letter-group "Д" :after "Г" :prefixes (""))
+(define-letter-group "Ѓ" :after "Д" :prefixes (""))
+(define-letter-group "Е" :after "Ѓ" :prefixes (""))
+(define-letter-group "Ж" :after "Е" :prefixes (""))
+(define-letter-group "З" :after "Ж" :prefixes (""))
+(define-letter-group "Ѕ" :after "З" :prefixes (""))
+(define-letter-group "И" :after "Ѕ" :prefixes (""))
+(define-letter-group "Ј" :after "И" :prefixes (""))
+(define-letter-group "К" :after "Ј" :prefixes (""))
+(define-letter-group "Л" :after "К" :prefixes (""))
+(define-letter-group "Љ" :after "Л" :prefixes (""))
+(define-letter-group "М" :after "Љ" :prefixes (""))
+(define-letter-group "Н" :after "М" :prefixes (""))
+(define-letter-group "Њ" :after "Н" :prefixes (""))
+(define-letter-group "О" :after "Њ" :prefixes (""))
+(define-letter-group "П" :after "О" :prefixes (""))
+(define-letter-group "Р" :after "П" :prefixes (""))
+(define-letter-group "С" :after "Р" :prefixes (""))
+(define-letter-group "Т" :after "С" :prefixes (""))
+(define-letter-group "Ќ" :after "Т" :prefixes (""))
+(define-letter-group "У" :after "Ќ" :prefixes (""))
+(define-letter-group "Ф" :after "У" :prefixes (""))
+(define-letter-group "Х" :after "Ф" :prefixes (""))
+(define-letter-group "Ц" :after "Х" :prefixes (""))
+(define-letter-group "Ч" :after "Ц" :prefixes (""))
+(define-letter-group "Џ" :after "Ч" :prefixes (""))
+(define-letter-group "Ш" :after "Џ" :prefixes (""))
+
+(define-rule-set "mk-alphabetize"
+
+ :rules (("а" "" :string)
+ ("А" "" :string)
+ ("б" "" :string)
+ ("Б" "" :string)
+ ("в" "" :string)
+ ("В" "" :string)
+ ("г" "" :string)
+ ("Г" "" :string)
+ ("Д" "" :string)
+ ("д" "" :string)
+ ("Ѓ" "" :string)
+ ("ѓ" "" :string)
+ ("е" "" :string)
+ ("ѐ" "" :string)
+ ("Е" "" :string)
+ ("Ѐ" "" :string)
+ ("Ж" "" :string)
+ ("ж" "" :string)
+ ("З" "" :string)
+ ("з" "" :string)
+ ("Ѕ" "" :string)
+ ("ѕ" "" :string)
+ ("И" "" :string)
+ ("и" "" :string)
+ ("Ѝ" "" :string)
+ ("ѝ" "" :string)
+ ("Ј" "" :string)
+ ("ј" "" :string)
+ ("к" "" :string)
+ ("К" "" :string)
+ ("Л" "" :string)
+ ("л" "" :string)
+ ("љ" "" :string)
+ ("Љ" "" :string)
+ ("М" "" :string)
+ ("м" "" :string)
+ ("Н" "" :string)
+ ("н" "" :string)
+ ("Њ" "" :string)
+ ("њ" "" :string)
+ ("о" "" :string)
+ ("О" "" :string)
+ ("п" "" :string)
+ ("П" "" :string)
+ ("р" "" :string)
+ ("Р" "" :string)
+ ("С" "" :string)
+ ("с" "" :string)
+ ("т" "" :string)
+ ("Т" "" :string)
+ ("Ќ" "" :string)
+ ("ќ" "" :string)
+ ("у" "" :string)
+ ("У" "" :string)
+ ("ф" "" :string)
+ ("Ф" "" :string)
+ ("х" "" :string)
+ ("Х" "" :string)
+ ("ц" "" :string)
+ ("Ц" "" :string)
+ ("ч" "" :string)
+ ("Ч" "" :string)
+ ("џ" "" :string)
+ ("Џ" "" :string)
+ ("Ш" "" :string)
+ ("ш" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-diacritics"
+
+ :rules (("Ѕ" "" :string)
+ ("п" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("Ј" "" :string)
+ ("џ" "" :string)
+ ("љ" "" :string)
+ ("И" "" :string)
+ ("Ѓ" "" :string)
+ ("Љ" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("ѕ" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("ј" "" :string)
+ ("К" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("Џ" "" :string)
+ ("х" "" :string)
+ ("ѓ" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("Њ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("њ" "" :string)
+ ("а" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("Ќ" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("Г" "" :string)
+ ("ќ" "" :string)
+ ("А" "" :string)
+ ("Е" "" :string)
+ ("ѐ" "" :string)
+ ("Ѝ" "" :string)
+ ("ѝ" "" :string)
+ ("Ѐ" "" :string)
+ ))
+
+(define-rule-set "mk-resolve-case"
+
+ :rules (("Ѕ" "8" :string)
+ ("Ј" "8" :string)
+ ("И" "8" :string)
+ ("Ѓ" "8" :string)
+ ("Љ" "8" :string)
+ ("П" "8" :string)
+ ("Л" "8" :string)
+ ("Ж" "8" :string)
+ ("Д" "8" :string)
+ ("Н" "8" :string)
+ ("Ш" "8" :string)
+ ("К" "8" :string)
+ ("Б" "8" :string)
+ ("Џ" "8" :string)
+ ("Ч" "8" :string)
+ ("Р" "8" :string)
+ ("Њ" "8" :string)
+ ("М" "8" :string)
+ ("Т" "8" :string)
+ ("З" "8" :string)
+ ("Ц" "8" :string)
+ ("С" "8" :string)
+ ("Ф" "8" :string)
+ ("В" "8" :string)
+ ("О" "8" :string)
+ ("Х" "8" :string)
+ ("Ѝ" "8" :string)
+ ("Ќ" "8" :string)
+ ("У" "8" :string)
+ ("Г" "8" :string)
+ ("А" "8" :string)
+ ("Е" "8" :string)
+ ("Ѐ" "8" :string)
+ ("п" "9" :string)
+ ("ч" "9" :string)
+ ("е" "9" :string)
+ ("б" "9" :string)
+ ("у" "9" :string)
+ ("џ" "9" :string)
+ ("љ" "9" :string)
+ ("р" "9" :string)
+ ("к" "9" :string)
+ ("т" "9" :string)
+ ("ц" "9" :string)
+ ("о" "9" :string)
+ ("и" "9" :string)
+ ("ф" "9" :string)
+ ("ѕ" "9" :string)
+ ("л" "9" :string)
+ ("ј" "9" :string)
+ ("г" "9" :string)
+ ("х" "9" :string)
+ ("ѓ" "9" :string)
+ ("ш" "9" :string)
+ ("д" "9" :string)
+ ("в" "9" :string)
+ ("њ" "9" :string)
+ ("а" "9" :string)
+ ("ѐ" "9" :string)
+ ("н" "9" :string)
+ ("м" "9" :string)
+ ("з" "9" :string)
+ ("ж" "9" :string)
+ ("с" "9" :string)
+ ("ќ" "9" :string)
+ ("ѝ" "9" :string)
+ ))
+
+(define-rule-set "mk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "mk-resolve-special"
+
+ :rules (("Ѕ" "" :string)
+ ("п" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("Ј" "" :string)
+ ("џ" "" :string)
+ ("љ" "" :string)
+ ("И" "" :string)
+ ("Ѓ" "" :string)
+ ("Љ" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("ѕ" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("ј" "" :string)
+ ("К" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("Џ" "" :string)
+ ("х" "" :string)
+ ("ѓ" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("Њ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("њ" "" :string)
+ ("а" "" :string)
+ ("ѐ" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("Ѝ" "" :string)
+ ("Ќ" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("Г" "" :string)
+ ("ќ" "" :string)
+ ("А" "" :string)
+ ("ѝ" "" :string)
+ ("Е" "" :string)
+ ("Ѐ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8-lang.xdy
new file mode 100644
index 00000000000..63a8461ad3f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/mongolian/cyrillic-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mn-alphabetize" "mn-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mn-resolve-diacritics" "mn-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mn-resolve-case" "mn-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mn-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8-test.xdy b/Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8-test.xdy
new file mode 100644
index 00000000000..b92db716d01
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/mongolian/cyrillic-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("mn-alphabetize" "mn-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("mn-resolve-diacritics" "mn-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("mn-resolve-case" "mn-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("mn-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8.xdy b/Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8.xdy
new file mode 100644
index 00000000000..0933c3c9690
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/mongolian/cyrillic-utf8.xdy
@@ -0,0 +1,455 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Mongolian
+
+(define-letter-group "А" :prefixes (""))
+(define-letter-group "Б" :after "А" :prefixes (""))
+(define-letter-group "В" :after "Б" :prefixes (""))
+(define-letter-group "Г" :after "В" :prefixes (""))
+(define-letter-group "Д" :after "Г" :prefixes (""))
+(define-letter-group "Е" :after "Д" :prefixes (""))
+(define-letter-group "Ё" :after "Е" :prefixes (""))
+(define-letter-group "Ж" :after "Ё" :prefixes (""))
+(define-letter-group "З" :after "Ж" :prefixes (""))
+(define-letter-group "И" :after "З" :prefixes (""))
+(define-letter-group "Й" :after "И" :prefixes (""))
+(define-letter-group "К" :after "Й" :prefixes (""))
+(define-letter-group "Л" :after "К" :prefixes (""))
+(define-letter-group "М" :after "Л" :prefixes (""))
+(define-letter-group "Н" :after "М" :prefixes (""))
+(define-letter-group "О" :after "Н" :prefixes (""))
+(define-letter-group "Ө" :after "О" :prefixes (""))
+(define-letter-group "П" :after "Ө" :prefixes (""))
+(define-letter-group "Р" :after "П" :prefixes (""))
+(define-letter-group "С" :after "Р" :prefixes (""))
+(define-letter-group "Т" :after "С" :prefixes (""))
+(define-letter-group "У" :after "Т" :prefixes (""))
+(define-letter-group "Ү" :after "У" :prefixes (""))
+(define-letter-group "Ф" :after "Ү" :prefixes (""))
+(define-letter-group "Х" :after "Ф" :prefixes (""))
+(define-letter-group "Ц" :after "Х" :prefixes (""))
+(define-letter-group "Ч" :after "Ц" :prefixes (""))
+(define-letter-group "Ш" :after "Ч" :prefixes (""))
+(define-letter-group "Щ" :after "Ш" :prefixes (""))
+(define-letter-group "Ъ" :after "Щ" :prefixes (""))
+(define-letter-group "Ы" :after "Ъ" :prefixes (""))
+(define-letter-group "Ь" :after "Ы" :prefixes (""))
+(define-letter-group "Э" :after "Ь" :prefixes (""))
+(define-letter-group "Ю" :after "Э" :prefixes (""))
+(define-letter-group "Я" :after "Ю" :prefixes (""))
+
+(define-rule-set "mn-alphabetize"
+
+ :rules (("А́" "" :string)
+ ("а́" "" :string)
+ ("Е́" "" :string)
+ ("е́" "" :string)
+ ("ё́" "" :string)
+ ("Ё́" "" :string)
+ ("и́" "" :string)
+ ("И́" "" :string)
+ ("Й́" "" :string)
+ ("й́" "" :string)
+ ("О́" "" :string)
+ ("о́" "" :string)
+ ("Ө́" "" :string)
+ ("ө́" "" :string)
+ ("У́" "" :string)
+ ("у́" "" :string)
+ ("Ү́" "" :string)
+ ("ү́" "" :string)
+ ("ы́" "" :string)
+ ("Ы́" "" :string)
+ ("Э́" "" :string)
+ ("э́" "" :string)
+ ("ю́" "" :string)
+ ("Ю́" "" :string)
+ ("Я́" "" :string)
+ ("я́" "" :string)
+ ("а" "" :string)
+ ("А" "" :string)
+ ("б" "" :string)
+ ("Б" "" :string)
+ ("в" "" :string)
+ ("В" "" :string)
+ ("г" "" :string)
+ ("Г" "" :string)
+ ("Д" "" :string)
+ ("д" "" :string)
+ ("е" "" :string)
+ ("Е" "" :string)
+ ("Ё" "" :string)
+ ("ё" "" :string)
+ ("Ж" "" :string)
+ ("ж" "" :string)
+ ("З" "" :string)
+ ("з" "" :string)
+ ("И" "" :string)
+ ("и" "" :string)
+ ("й" "" :string)
+ ("Й" "" :string)
+ ("к" "" :string)
+ ("К" "" :string)
+ ("Л" "" :string)
+ ("л" "" :string)
+ ("М" "" :string)
+ ("м" "" :string)
+ ("Н" "" :string)
+ ("н" "" :string)
+ ("о" "" :string)
+ ("О" "" :string)
+ ("Ө" "" :string)
+ ("ө" "" :string)
+ ("п" "" :string)
+ ("П" "" :string)
+ ("р" "" :string)
+ ("Р" "" :string)
+ ("С" "" :string)
+ ("с" "" :string)
+ ("т" "" :string)
+ ("Т" "" :string)
+ ("у" "" :string)
+ ("У" "" :string)
+ ("Ү" "" :string)
+ ("ү" "" :string)
+ ("ф" "" :string)
+ ("Ф" "" :string)
+ ("х" "" :string)
+ ("Х" "" :string)
+ ("ц" "" :string)
+ ("Ц" "" :string)
+ ("ч" "" :string)
+ ("Ч" "" :string)
+ ("Ш" "" :string)
+ ("ш" "" :string)
+ ("Щ" "" :string)
+ ("щ" "" :string)
+ ("ъ" "" :string)
+ ("Ъ" "" :string)
+ ("ы" "" :string)
+ ("Ы" "" :string)
+ ("ь" "" :string)
+ ("Ь" "" :string)
+ ("э" "" :string)
+ ("Э" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("Я" "" :string)
+ ("я" "" :string)
+ ))
+
+(define-rule-set "mn-resolve-diacritics"
+
+ :rules (("и́" "" :string)
+ ("У́" "" :string)
+ ("у́" "" :string)
+ ("ю́" "" :string)
+ ("Э́" "" :string)
+ ("Ө́" "" :string)
+ ("Ю́" "" :string)
+ ("ы́" "" :string)
+ ("Ү́" "" :string)
+ ("О́" "" :string)
+ ("А́" "" :string)
+ ("ё́" "" :string)
+ ("Е́" "" :string)
+ ("Я́" "" :string)
+ ("о́" "" :string)
+ ("а́" "" :string)
+ ("ө́" "" :string)
+ ("ү́" "" :string)
+ ("Й́" "" :string)
+ ("я́" "" :string)
+ ("Ы́" "" :string)
+ ("й́" "" :string)
+ ("И́" "" :string)
+ ("е́" "" :string)
+ ("э́" "" :string)
+ ("Ё́" "" :string)
+ ("п" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("Ө" "" :string)
+ ("И" "" :string)
+ ("й" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("Щ" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("э" "" :string)
+ ("х" "" :string)
+ ("ы" "" :string)
+ ("Я" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("щ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("Ү" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("а" "" :string)
+ ("ө" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("я" "" :string)
+ ("Ё" "" :string)
+ ("ү" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("ё" "" :string)
+ ("А" "" :string)
+ ("Ы" "" :string)
+ ("Е" "" :string)
+ ("Э" "" :string)
+ ("Ъ" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ))
+
+(define-rule-set "mn-resolve-case"
+
+ :rules (("У́" "8" :string)
+ ("Э́" "8" :string)
+ ("Ө́" "8" :string)
+ ("Ю́" "8" :string)
+ ("Ү́" "8" :string)
+ ("О́" "8" :string)
+ ("А́" "8" :string)
+ ("Е́" "8" :string)
+ ("Я́" "8" :string)
+ ("Й́" "8" :string)
+ ("Ы́" "8" :string)
+ ("И́" "8" :string)
+ ("Ё́" "8" :string)
+ ("и́" "9" :string)
+ ("у́" "9" :string)
+ ("ю́" "9" :string)
+ ("ы́" "9" :string)
+ ("ё́" "9" :string)
+ ("о́" "9" :string)
+ ("а́" "9" :string)
+ ("ө́" "9" :string)
+ ("ү́" "9" :string)
+ ("я́" "9" :string)
+ ("й́" "9" :string)
+ ("е́" "9" :string)
+ ("э́" "9" :string)
+ ("Ө" "8" :string)
+ ("И" "8" :string)
+ ("П" "8" :string)
+ ("Л" "8" :string)
+ ("Ж" "8" :string)
+ ("Д" "8" :string)
+ ("Н" "8" :string)
+ ("Ш" "8" :string)
+ ("Щ" "8" :string)
+ ("К" "8" :string)
+ ("Й" "8" :string)
+ ("Б" "8" :string)
+ ("Я" "8" :string)
+ ("Ч" "8" :string)
+ ("Р" "8" :string)
+ ("М" "8" :string)
+ ("Т" "8" :string)
+ ("З" "8" :string)
+ ("Ц" "8" :string)
+ ("Ү" "8" :string)
+ ("С" "8" :string)
+ ("Ф" "8" :string)
+ ("В" "8" :string)
+ ("О" "8" :string)
+ ("Х" "8" :string)
+ ("У" "8" :string)
+ ("Ё" "8" :string)
+ ("Г" "8" :string)
+ ("Ь" "8" :string)
+ ("А" "8" :string)
+ ("Ы" "8" :string)
+ ("Е" "8" :string)
+ ("Э" "8" :string)
+ ("Ъ" "8" :string)
+ ("Ю" "8" :string)
+ ("п" "9" :string)
+ ("ч" "9" :string)
+ ("е" "9" :string)
+ ("б" "9" :string)
+ ("у" "9" :string)
+ ("й" "9" :string)
+ ("р" "9" :string)
+ ("к" "9" :string)
+ ("т" "9" :string)
+ ("ц" "9" :string)
+ ("о" "9" :string)
+ ("ъ" "9" :string)
+ ("и" "9" :string)
+ ("ф" "9" :string)
+ ("л" "9" :string)
+ ("г" "9" :string)
+ ("э" "9" :string)
+ ("х" "9" :string)
+ ("ы" "9" :string)
+ ("ш" "9" :string)
+ ("щ" "9" :string)
+ ("д" "9" :string)
+ ("ь" "9" :string)
+ ("в" "9" :string)
+ ("а" "9" :string)
+ ("ө" "9" :string)
+ ("н" "9" :string)
+ ("м" "9" :string)
+ ("з" "9" :string)
+ ("ж" "9" :string)
+ ("с" "9" :string)
+ ("я" "9" :string)
+ ("ү" "9" :string)
+ ("ё" "9" :string)
+ ("ю" "9" :string)
+ ))
+
+(define-rule-set "mn-ignore-special"
+
+ :rules (("́" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "mn-resolve-special"
+
+ :rules (("и́" "" :string)
+ ("У́" "" :string)
+ ("у́" "" :string)
+ ("ю́" "" :string)
+ ("Э́" "" :string)
+ ("Ө́" "" :string)
+ ("Ю́" "" :string)
+ ("ы́" "" :string)
+ ("Ү́" "" :string)
+ ("О́" "" :string)
+ ("А́" "" :string)
+ ("ё́" "" :string)
+ ("Е́" "" :string)
+ ("Я́" "" :string)
+ ("о́" "" :string)
+ ("а́" "" :string)
+ ("ө́" "" :string)
+ ("ү́" "" :string)
+ ("Й́" "" :string)
+ ("я́" "" :string)
+ ("Ы́" "" :string)
+ ("й́" "" :string)
+ ("И́" "" :string)
+ ("е́" "" :string)
+ ("э́" "" :string)
+ ("Ё́" "" :string)
+ ("п" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("Ө" "" :string)
+ ("И" "" :string)
+ ("й" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("Щ" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("э" "" :string)
+ ("х" "" :string)
+ ("ы" "" :string)
+ ("Я" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("щ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("Ү" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("а" "" :string)
+ ("ө" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("я" "" :string)
+ ("Ё" "" :string)
+ ("ү" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("ё" "" :string)
+ ("А" "" :string)
+ ("Ы" "" :string)
+ ("Е" "" :string)
+ ("Э" "" :string)
+ ("Ъ" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("́" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/norwegian/latin1-lang.xdy b/Master/texmf/xindy/modules/lang/norwegian/latin1-lang.xdy
new file mode 100644
index 00000000000..d311572e588
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/norwegian/latin1-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/norwegian/latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("no-alphabetize" "no-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("no-resolve-diacritics" "no-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("no-resolve-case" "no-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("no-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/norwegian/latin1-test.xdy b/Master/texmf/xindy/modules/lang/norwegian/latin1-test.xdy
new file mode 100644
index 00000000000..c0d98199f87
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/norwegian/latin1-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/norwegian/latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("no-alphabetize" "no-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("no-resolve-diacritics" "no-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("no-resolve-case" "no-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("no-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/norwegian/latin1.xdy b/Master/texmf/xindy/modules/lang/norwegian/latin1.xdy
new file mode 100644
index 00000000000..57da189515f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/norwegian/latin1.xdy
@@ -0,0 +1,411 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Norwegian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "no-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "no-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "no-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "no-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "no-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/norwegian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/norwegian/utf8-lang.xdy
new file mode 100644
index 00000000000..7615ebcecd4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/norwegian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/norwegian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("no-alphabetize" "no-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("no-resolve-diacritics" "no-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("no-resolve-case" "no-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("no-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/norwegian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/norwegian/utf8-test.xdy
new file mode 100644
index 00000000000..44591bf8159
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/norwegian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/norwegian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("no-alphabetize" "no-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("no-resolve-diacritics" "no-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("no-resolve-case" "no-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("no-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/norwegian/utf8.xdy b/Master/texmf/xindy/modules/lang/norwegian/utf8.xdy
new file mode 100644
index 00000000000..07dfa186496
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/norwegian/utf8.xdy
@@ -0,0 +1,411 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Norwegian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Æ" :after "Z" :prefixes (""))
+(define-letter-group "Ø" :after "Æ" :prefixes (""))
+(define-letter-group "Å" :after "Ø" :prefixes (""))
+
+(define-rule-set "no-alphabetize"
+
+ :rules (("Á" "" :string)
+ ("Â" "" :string)
+ ("á" "" :string)
+ ("â" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("Ç" "" :string)
+ ("ç" "" :string)
+ ("É" "" :string)
+ ("Ê" "" :string)
+ ("È" "" :string)
+ ("Ë" "" :string)
+ ("è" "" :string)
+ ("ë" "" :string)
+ ("ê" "" :string)
+ ("é" "" :string)
+ ("Ô" "" :string)
+ ("Ó" "" :string)
+ ("Ò" "" :string)
+ ("ô" "" :string)
+ ("ò" "" :string)
+ ("ó" "" :string)
+ ("ß" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("Ä" "" :string)
+ ("Æ" "" :string)
+ ("ä" "" :string)
+ ("æ" "" :string)
+ ("Ö" "" :string)
+ ("ø" "" :string)
+ ("ö" "" :string)
+ ("Ø" "" :string)
+ ("Å" "" :string)
+ ("å" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "no-resolve-diacritics"
+
+ :rules (("ø" "" :string)
+ ("Æ" "" :string)
+ ("Å" "" :string)
+ ("å" "" :string)
+ ("Ø" "" :string)
+ ("æ" "" :string)
+ ("Ö" "" :string)
+ ("Á" "" :string)
+ ("Ç" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("á" "" :string)
+ ("ö" "" :string)
+ ("ä" "" :string)
+ ("ç" "" :string)
+ ("ó" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("Ò" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("à" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("Â" "" :string)
+ ("Ô" "" :string)
+ ("ô" "" :string)
+ ("Ê" "" :string)
+ ("â" "" :string)
+ ("ê" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "no-resolve-case"
+
+ :rules (("Ö" "8" :string)
+ ("Á" "8" :string)
+ ("Â" "8" :string)
+ ("Ô" "8" :string)
+ ("Ç" "8" :string)
+ ("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Ò" "8" :string)
+ ("Ä" "8" :string)
+ ("Ü" "8" :string)
+ ("Æ" "8" :string)
+ ("Ê" "8" :string)
+ ("Å" "8" :string)
+ ("È" "8" :string)
+ ("Ë" "8" :string)
+ ("Ø" "8" :string)
+ ("À" "8" :string)
+ ("ô" "9" :string)
+ ("ø" "9" :string)
+ ("á" "9" :string)
+ ("ö" "9" :string)
+ ("ä" "9" :string)
+ ("ò" "9" :string)
+ ("å" "9" :string)
+ ("ç" "9" :string)
+ ("â" "9" :string)
+ ("à" "9" :string)
+ ("æ" "9" :string)
+ ("ó" "9" :string)
+ ("è" "9" :string)
+ ("ë" "9" :string)
+ ("ê" "9" :string)
+ ("é" "9" :string)
+ ("ü" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "no-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "no-resolve-special"
+
+ :rules (("Ö" "" :string)
+ ("Á" "" :string)
+ ("Â" "" :string)
+ ("Ô" "" :string)
+ ("Ç" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Ò" "" :string)
+ ("ô" "" :string)
+ ("ø" "" :string)
+ ("Ä" "" :string)
+ ("Ü" "" :string)
+ ("Æ" "" :string)
+ ("Ê" "" :string)
+ ("á" "" :string)
+ ("Å" "" :string)
+ ("ö" "" :string)
+ ("È" "" :string)
+ ("ä" "" :string)
+ ("ò" "" :string)
+ ("å" "" :string)
+ ("ç" "" :string)
+ ("â" "" :string)
+ ("Ë" "" :string)
+ ("à" "" :string)
+ ("Ø" "" :string)
+ ("æ" "" :string)
+ ("ó" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("ë" "" :string)
+ ("ê" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/polish/cp1250-lang.xdy b/Master/texmf/xindy/modules/lang/polish/cp1250-lang.xdy
new file mode 100644
index 00000000000..3e9ddbb7c1d
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/polish/cp1250-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/polish/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pl-alphabetize" "pl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pl-resolve-diacritics" "pl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pl-resolve-case" "pl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pl-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/polish/cp1250-test.xdy b/Master/texmf/xindy/modules/lang/polish/cp1250-test.xdy
new file mode 100644
index 00000000000..2a4a3dc5f73
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/polish/cp1250-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/polish/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pl-alphabetize" "pl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pl-resolve-diacritics" "pl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pl-resolve-case" "pl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pl-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/polish/cp1250.xdy b/Master/texmf/xindy/modules/lang/polish/cp1250.xdy
new file mode 100644
index 00000000000..d67b9389444
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/polish/cp1250.xdy
@@ -0,0 +1,353 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Polish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "" :after "A" :prefixes (""))
+(define-letter-group "B" :after "" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "" :after "E" :prefixes (""))
+(define-letter-group "F" :after "" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "" :after "L" :prefixes (""))
+(define-letter-group "M" :after "" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "" :after "O" :prefixes (""))
+(define-letter-group "P" :after "" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "pl-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "pl-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "pl-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "pl-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "pl-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/polish/latin2-lang.xdy b/Master/texmf/xindy/modules/lang/polish/latin2-lang.xdy
new file mode 100644
index 00000000000..2157cb50233
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/polish/latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/polish/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pl-alphabetize" "pl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pl-resolve-diacritics" "pl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pl-resolve-case" "pl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pl-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/polish/latin2-test.xdy b/Master/texmf/xindy/modules/lang/polish/latin2-test.xdy
new file mode 100644
index 00000000000..661f99232ee
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/polish/latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/polish/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pl-alphabetize" "pl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pl-resolve-diacritics" "pl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pl-resolve-case" "pl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pl-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/polish/latin2.xdy b/Master/texmf/xindy/modules/lang/polish/latin2.xdy
new file mode 100644
index 00000000000..857c89591fb
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/polish/latin2.xdy
@@ -0,0 +1,353 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Polish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "" :after "A" :prefixes (""))
+(define-letter-group "B" :after "" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "" :after "E" :prefixes (""))
+(define-letter-group "F" :after "" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "" :after "L" :prefixes (""))
+(define-letter-group "M" :after "" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "" :after "O" :prefixes (""))
+(define-letter-group "P" :after "" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "pl-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "pl-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "pl-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "pl-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "pl-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/polish/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/polish/utf8-lang.xdy
new file mode 100644
index 00000000000..da964921136
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/polish/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/polish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pl-alphabetize" "pl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pl-resolve-diacritics" "pl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pl-resolve-case" "pl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pl-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/polish/utf8-test.xdy b/Master/texmf/xindy/modules/lang/polish/utf8-test.xdy
new file mode 100644
index 00000000000..b83e3e3ee5c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/polish/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/polish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pl-alphabetize" "pl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pl-resolve-diacritics" "pl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pl-resolve-case" "pl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pl-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/polish/utf8.xdy b/Master/texmf/xindy/modules/lang/polish/utf8.xdy
new file mode 100644
index 00000000000..a0625089095
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/polish/utf8.xdy
@@ -0,0 +1,353 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Polish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "Ą" :after "A" :prefixes (""))
+(define-letter-group "B" :after "Ą" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Ć" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Ć" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "Ę" :after "E" :prefixes (""))
+(define-letter-group "F" :after "Ę" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "Ł" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Ł" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ń" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ń" :prefixes (""))
+(define-letter-group "Ó" :after "O" :prefixes (""))
+(define-letter-group "P" :after "Ó" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Ś" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Ś" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Ź" :after "Z" :prefixes (""))
+(define-letter-group "Ż" :after "Ź" :prefixes (""))
+
+(define-rule-set "pl-alphabetize"
+
+ :rules (("ą" "" :string)
+ ("Ą" "" :string)
+ ("Ć" "" :string)
+ ("ć" "" :string)
+ ("Ę" "" :string)
+ ("ę" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ń" "" :string)
+ ("ń" "" :string)
+ ("Ó" "" :string)
+ ("ó" "" :string)
+ ("ß" "" :string)
+ ("ś" "" :string)
+ ("Ś" "" :string)
+ ("Ź" "" :string)
+ ("ź" "" :string)
+ ("ż" "" :string)
+ ("Ż" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "pl-resolve-diacritics"
+
+ :rules (("Ó" "" :string)
+ ("ą" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ą" "" :string)
+ ("Ę" "" :string)
+ ("Ć" "" :string)
+ ("Ź" "" :string)
+ ("ó" "" :string)
+ ("ś" "" :string)
+ ("Ń" "" :string)
+ ("ź" "" :string)
+ ("ń" "" :string)
+ ("ć" "" :string)
+ ("ż" "" :string)
+ ("Ś" "" :string)
+ ("Ż" "" :string)
+ ("ę" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "pl-resolve-case"
+
+ :rules (("Ó" "8" :string)
+ ("Ł" "8" :string)
+ ("Ą" "8" :string)
+ ("Ę" "8" :string)
+ ("Ć" "8" :string)
+ ("Ź" "8" :string)
+ ("Ń" "8" :string)
+ ("Ś" "8" :string)
+ ("Ż" "8" :string)
+ ("ą" "9" :string)
+ ("ł" "9" :string)
+ ("ó" "9" :string)
+ ("ś" "9" :string)
+ ("ź" "9" :string)
+ ("ń" "9" :string)
+ ("ć" "9" :string)
+ ("ż" "9" :string)
+ ("ę" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "pl-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "pl-resolve-special"
+
+ :rules (("Ó" "" :string)
+ ("ą" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ą" "" :string)
+ ("Ę" "" :string)
+ ("Ć" "" :string)
+ ("Ź" "" :string)
+ ("ó" "" :string)
+ ("ś" "" :string)
+ ("Ń" "" :string)
+ ("ź" "" :string)
+ ("ń" "" :string)
+ ("ć" "" :string)
+ ("ż" "" :string)
+ ("Ś" "" :string)
+ ("Ż" "" :string)
+ ("ę" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/portuguese/latin1-lang.xdy b/Master/texmf/xindy/modules/lang/portuguese/latin1-lang.xdy
new file mode 100644
index 00000000000..77b84b09a82
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/portuguese/latin1-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/portuguese/latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pt-alphabetize" "pt-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pt-resolve-diacritics" "pt-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pt-resolve-case" "pt-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pt-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/portuguese/latin1-test.xdy b/Master/texmf/xindy/modules/lang/portuguese/latin1-test.xdy
new file mode 100644
index 00000000000..0fac48b7bcb
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/portuguese/latin1-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/portuguese/latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pt-alphabetize" "pt-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pt-resolve-diacritics" "pt-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pt-resolve-case" "pt-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pt-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/portuguese/latin1.xdy b/Master/texmf/xindy/modules/lang/portuguese/latin1.xdy
new file mode 100644
index 00000000000..1a6bfdf2650
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/portuguese/latin1.xdy
@@ -0,0 +1,416 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Portuguese
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "pt-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "pt-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "pt-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "89" :string)
+ ("" "9" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "pt-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "pt-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/portuguese/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/portuguese/utf8-lang.xdy
new file mode 100644
index 00000000000..42787a21bb1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/portuguese/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/portuguese/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pt-alphabetize" "pt-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pt-resolve-diacritics" "pt-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pt-resolve-case" "pt-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pt-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/portuguese/utf8-test.xdy b/Master/texmf/xindy/modules/lang/portuguese/utf8-test.xdy
new file mode 100644
index 00000000000..d39bf06184f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/portuguese/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/portuguese/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("pt-alphabetize" "pt-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("pt-resolve-diacritics" "pt-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("pt-resolve-case" "pt-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("pt-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/portuguese/utf8.xdy b/Master/texmf/xindy/modules/lang/portuguese/utf8.xdy
new file mode 100644
index 00000000000..a263b0e5d4f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/portuguese/utf8.xdy
@@ -0,0 +1,416 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Portuguese
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "pt-alphabetize"
+
+ :rules (("Á" "" :string)
+ ("Â" "" :string)
+ ("á" "" :string)
+ ("â" "" :string)
+ ("à" "" :string)
+ ("ã" "" :string)
+ ("À" "" :string)
+ ("Ã" "" :string)
+ ("Æ" "" :string)
+ ("æ" "" :string)
+ ("Ç" "" :string)
+ ("ç" "" :string)
+ ("É" "" :string)
+ ("Ê" "" :string)
+ ("È" "" :string)
+ ("è" "" :string)
+ ("ê" "" :string)
+ ("é" "" :string)
+ ("Í" "" :string)
+ ("ì" "" :string)
+ ("í" "" :string)
+ ("Ì" "" :string)
+ ("Ô" "" :string)
+ ("Ó" "" :string)
+ ("Ò" "" :string)
+ ("ô" "" :string)
+ ("Õ" "" :string)
+ ("ò" "" :string)
+ ("ó" "" :string)
+ ("õ" "" :string)
+ ("ß" "" :string)
+ ("ù" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("Ù" "" :string)
+ ("ü" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "pt-resolve-diacritics"
+
+ :rules (("Á" "" :string)
+ ("Ç" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Í" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("á" "" :string)
+ ("ç" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("é" "" :string)
+ ("ù" "" :string)
+ ("Ò" "" :string)
+ ("Ù" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("ì" "" :string)
+ ("à" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("Ì" "" :string)
+ ("Â" "" :string)
+ ("Ô" "" :string)
+ ("ô" "" :string)
+ ("Ü" "" :string)
+ ("Ê" "" :string)
+ ("â" "" :string)
+ ("ê" "" :string)
+ ("ü" "" :string)
+ ("Õ" "" :string)
+ ("ã" "" :string)
+ ("õ" "" :string)
+ ("Ã" "" :string)
+ ("Æ" "" :string)
+ ("æ" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "pt-resolve-case"
+
+ :rules (("Á" "8" :string)
+ ("Â" "8" :string)
+ ("Ô" "8" :string)
+ ("Ç" "8" :string)
+ ("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Ò" "8" :string)
+ ("Í" "8" :string)
+ ("Ú" "8" :string)
+ ("Ü" "8" :string)
+ ("Õ" "8" :string)
+ ("Ê" "8" :string)
+ ("Ù" "8" :string)
+ ("È" "8" :string)
+ ("À" "8" :string)
+ ("Ì" "8" :string)
+ ("Ã" "8" :string)
+ ("Æ" "89" :string)
+ ("ù" "9" :string)
+ ("ô" "9" :string)
+ ("ú" "9" :string)
+ ("á" "9" :string)
+ ("ò" "9" :string)
+ ("ç" "9" :string)
+ ("â" "9" :string)
+ ("ì" "9" :string)
+ ("à" "9" :string)
+ ("ã" "9" :string)
+ ("í" "9" :string)
+ ("ó" "9" :string)
+ ("õ" "9" :string)
+ ("è" "9" :string)
+ ("ê" "9" :string)
+ ("é" "9" :string)
+ ("ü" "9" :string)
+ ("æ" "99" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "pt-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "pt-resolve-special"
+
+ :rules (("ù" "" :string)
+ ("Á" "" :string)
+ ("Â" "" :string)
+ ("Ô" "" :string)
+ ("Ç" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Ò" "" :string)
+ ("Í" "" :string)
+ ("ô" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("Õ" "" :string)
+ ("Ê" "" :string)
+ ("á" "" :string)
+ ("Ù" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("ç" "" :string)
+ ("â" "" :string)
+ ("ì" "" :string)
+ ("à" "" :string)
+ ("ã" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("õ" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("ê" "" :string)
+ ("Ì" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("Ã" "" :string)
+ ("Æ" "" :string)
+ ("æ" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/romanian/latin2-lang.xdy b/Master/texmf/xindy/modules/lang/romanian/latin2-lang.xdy
new file mode 100644
index 00000000000..8bff314cfdb
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/romanian/latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/romanian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ro-alphabetize" "ro-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ro-resolve-diacritics" "ro-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ro-resolve-case" "ro-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ro-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/romanian/latin2-test.xdy b/Master/texmf/xindy/modules/lang/romanian/latin2-test.xdy
new file mode 100644
index 00000000000..300a703cf87
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/romanian/latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/romanian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ro-alphabetize" "ro-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ro-resolve-diacritics" "ro-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ro-resolve-case" "ro-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ro-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/romanian/latin2.xdy b/Master/texmf/xindy/modules/lang/romanian/latin2.xdy
new file mode 100644
index 00000000000..3b6c32a2202
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/romanian/latin2.xdy
@@ -0,0 +1,313 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Romanian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "" :after "A" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "B" :after "" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "" :after "I" :prefixes (""))
+(define-letter-group "J" :after "" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "" :after "T" :prefixes (""))
+(define-letter-group "U" :after "" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "ro-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "ro-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "ro-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "ro-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "ro-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("T" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("B" "" :string)
+ ("s" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/romanian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/romanian/utf8-lang.xdy
new file mode 100644
index 00000000000..b0e50ceb0a7
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/romanian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/romanian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ro-alphabetize" "ro-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ro-resolve-diacritics" "ro-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ro-resolve-case" "ro-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ro-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/romanian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/romanian/utf8-test.xdy
new file mode 100644
index 00000000000..2970a262f25
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/romanian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/romanian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ro-alphabetize" "ro-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ro-resolve-diacritics" "ro-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ro-resolve-case" "ro-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ro-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/romanian/utf8.xdy b/Master/texmf/xindy/modules/lang/romanian/utf8.xdy
new file mode 100644
index 00000000000..77afae75665
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/romanian/utf8.xdy
@@ -0,0 +1,313 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Romanian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "Ă" :after "A" :prefixes (""))
+(define-letter-group "Â" :after "Ă" :prefixes (""))
+(define-letter-group "B" :after "Â" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "Î" :after "I" :prefixes (""))
+(define-letter-group "J" :after "Î" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Ș" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Ș" :prefixes (""))
+(define-letter-group "Ț" :after "T" :prefixes (""))
+(define-letter-group "U" :after "Ț" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "ro-alphabetize"
+
+ :rules (("Ă" "" :string)
+ ("ă" "" :string)
+ ("Â" "" :string)
+ ("â" "" :string)
+ ("Î" "" :string)
+ ("î" "" :string)
+ ("Ș" "" :string)
+ ("ș" "" :string)
+ ("Ț" "" :string)
+ ("ț" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "ro-resolve-diacritics"
+
+ :rules (("Î" "" :string)
+ ("Â" "" :string)
+ ("Ț" "" :string)
+ ("â" "" :string)
+ ("Ă" "" :string)
+ ("ă" "" :string)
+ ("Ș" "" :string)
+ ("î" "" :string)
+ ("ș" "" :string)
+ ("ț" "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "ro-resolve-case"
+
+ :rules (("Î" "8" :string)
+ ("Â" "8" :string)
+ ("Ț" "8" :string)
+ ("Ă" "8" :string)
+ ("Ș" "8" :string)
+ ("â" "9" :string)
+ ("ă" "9" :string)
+ ("î" "9" :string)
+ ("ș" "9" :string)
+ ("ț" "9" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "ro-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "ro-resolve-special"
+
+ :rules (("Î" "" :string)
+ ("Â" "" :string)
+ ("Ț" "" :string)
+ ("Ă" "" :string)
+ ("î" "" :string)
+ ("ș" "" :string)
+ ("ț" "" :string)
+ ("â" "" :string)
+ ("ă" "" :string)
+ ("Ș" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("a" "" :string)
+ ("T" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("B" "" :string)
+ ("s" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/russian/cp1251-lang.xdy b/Master/texmf/xindy/modules/lang/russian/cp1251-lang.xdy
new file mode 100644
index 00000000000..47d6f0721dd
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/cp1251-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/russian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/russian/cp1251-test.xdy b/Master/texmf/xindy/modules/lang/russian/cp1251-test.xdy
new file mode 100644
index 00000000000..ff9aa0ade6b
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/cp1251-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/russian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/russian/cp1251.xdy b/Master/texmf/xindy/modules/lang/russian/cp1251.xdy
new file mode 100644
index 00000000000..036da0bebd8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/cp1251.xdy
@@ -0,0 +1,330 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Russian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "ru-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "ru-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "ru-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/russian/iso88595-lang.xdy b/Master/texmf/xindy/modules/lang/russian/iso88595-lang.xdy
new file mode 100644
index 00000000000..4394ad203fb
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/iso88595-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/russian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/russian/iso88595-test.xdy b/Master/texmf/xindy/modules/lang/russian/iso88595-test.xdy
new file mode 100644
index 00000000000..22bfa460ba5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/iso88595-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/russian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/russian/iso88595.xdy b/Master/texmf/xindy/modules/lang/russian/iso88595.xdy
new file mode 100644
index 00000000000..59d95bad28a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/iso88595.xdy
@@ -0,0 +1,330 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Russian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "ru-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "ru-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "ru-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/russian/koi8-r-lang.xdy b/Master/texmf/xindy/modules/lang/russian/koi8-r-lang.xdy
new file mode 100644
index 00000000000..530057f8fdc
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/koi8-r-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/russian/koi8-r.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/russian/koi8-r-test.xdy b/Master/texmf/xindy/modules/lang/russian/koi8-r-test.xdy
new file mode 100644
index 00000000000..8f4e106b529
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/koi8-r-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/russian/koi8-r.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/russian/koi8-r.xdy b/Master/texmf/xindy/modules/lang/russian/koi8-r.xdy
new file mode 100644
index 00000000000..c456a2e01e4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/koi8-r.xdy
@@ -0,0 +1,330 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Russian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "ru-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "ru-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "ru-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/russian/translit-iso-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/russian/translit-iso-utf8-lang.xdy
new file mode 100644
index 00000000000..6cc5fc29031
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/translit-iso-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/russian/translit-iso-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/russian/translit-iso-utf8-test.xdy b/Master/texmf/xindy/modules/lang/russian/translit-iso-utf8-test.xdy
new file mode 100644
index 00000000000..d102665dc2a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/translit-iso-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/russian/translit-iso-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/russian/translit-iso-utf8.xdy b/Master/texmf/xindy/modules/lang/russian/translit-iso-utf8.xdy
new file mode 100644
index 00000000000..11321d02b28
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/translit-iso-utf8.xdy
@@ -0,0 +1,307 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Russian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "R" :after "P" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "Y" :after "V" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "ru-alphabetize"
+
+ :rules (("Â" "" :string)
+ ("â" "" :string)
+ ("Č" "" :string)
+ ("č" "" :string)
+ ("Ë" "" :string)
+ ("è" "" :string)
+ ("ë" "" :string)
+ ("È" "" :string)
+ ("š" "" :string)
+ ("ŝ" "" :string)
+ ("Ŝ" "" :string)
+ ("Š" "" :string)
+ ("Û" "" :string)
+ ("û" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-diacritics"
+
+ :rules (("š" "" :string)
+ ("Â" "" :string)
+ ("Ž" "" :string)
+ ("â" "" :string)
+ ("Û" "" :string)
+ ("è" "" :string)
+ ("Č" "" :string)
+ ("č" "" :string)
+ ("û" "" :string)
+ ("ž" "" :string)
+ ("Š" "" :string)
+ ("È" "" :string)
+ ("ŝ" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("Ŝ" "" :string)
+ ("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("V" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-case"
+
+ :rules (("Â" "8" :string)
+ ("Ž" "8" :string)
+ ("Û" "8" :string)
+ ("Ë" "8" :string)
+ ("Č" "8" :string)
+ ("Ŝ" "8" :string)
+ ("Š" "8" :string)
+ ("È" "8" :string)
+ ("š" "9" :string)
+ ("â" "9" :string)
+ ("ŝ" "9" :string)
+ ("è" "9" :string)
+ ("ë" "9" :string)
+ ("č" "9" :string)
+ ("û" "9" :string)
+ ("ž" "9" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("r" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "ru-ignore-special"
+
+ :rules (("ʺ" "" :string)
+ ("ʹ" "" :string)
+ ("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-special"
+
+ :rules (("Â" "" :string)
+ ("Ž" "" :string)
+ ("Û" "" :string)
+ ("ŝ" "" :string)
+ ("č" "" :string)
+ ("Ŝ" "" :string)
+ ("û" "" :string)
+ ("Š" "" :string)
+ ("È" "" :string)
+ ("š" "" :string)
+ ("â" "" :string)
+ ("Ë" "" :string)
+ ("è" "" :string)
+ ("Č" "" :string)
+ ("ë" "" :string)
+ ("ž" "" :string)
+ ("ʺ" "" :string)
+ ("ʹ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("P" "" :string)
+ ("a" "" :string)
+ ("T" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("B" "" :string)
+ ("s" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/russian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/russian/utf8-lang.xdy
new file mode 100644
index 00000000000..7cfdd57bac8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/russian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/russian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/russian/utf8-test.xdy
new file mode 100644
index 00000000000..4462ef3977c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/russian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("ru-alphabetize" "ru-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("ru-resolve-diacritics" "ru-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("ru-resolve-case" "ru-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("ru-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/russian/utf8.xdy b/Master/texmf/xindy/modules/lang/russian/utf8.xdy
new file mode 100644
index 00000000000..c6c8ea7ca5c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/russian/utf8.xdy
@@ -0,0 +1,464 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Russian
+
+(define-letter-group "А" :prefixes (""))
+(define-letter-group "Б" :after "А" :prefixes (""))
+(define-letter-group "В" :after "Б" :prefixes (""))
+(define-letter-group "Г" :after "В" :prefixes (""))
+(define-letter-group "Д" :after "Г" :prefixes (""))
+(define-letter-group "Е" :after "Д" :prefixes (""))
+(define-letter-group "Ж" :after "Е" :prefixes (""))
+(define-letter-group "З" :after "Ж" :prefixes (""))
+(define-letter-group "И" :after "З" :prefixes (""))
+(define-letter-group "І" :after "И" :prefixes (""))
+(define-letter-group "Й" :after "І" :prefixes (""))
+(define-letter-group "К" :after "Й" :prefixes (""))
+(define-letter-group "Л" :after "К" :prefixes (""))
+(define-letter-group "М" :after "Л" :prefixes (""))
+(define-letter-group "Н" :after "М" :prefixes (""))
+(define-letter-group "О" :after "Н" :prefixes (""))
+(define-letter-group "П" :after "О" :prefixes (""))
+(define-letter-group "Р" :after "П" :prefixes (""))
+(define-letter-group "С" :after "Р" :prefixes (""))
+(define-letter-group "Т" :after "С" :prefixes (""))
+(define-letter-group "У" :after "Т" :prefixes (""))
+(define-letter-group "Ф" :after "У" :prefixes (""))
+(define-letter-group "Х" :after "Ф" :prefixes (""))
+(define-letter-group "Ц" :after "Х" :prefixes (""))
+(define-letter-group "Ч" :after "Ц" :prefixes (""))
+(define-letter-group "Ш" :after "Ч" :prefixes (""))
+(define-letter-group "Щ" :after "Ш" :prefixes (""))
+(define-letter-group "Ъ" :after "Щ" :prefixes (""))
+(define-letter-group "Ы" :after "Ъ" :prefixes (""))
+(define-letter-group "Ь" :after "Ы" :prefixes (""))
+(define-letter-group "Ѣ" :after "Ь" :prefixes (""))
+(define-letter-group "Э" :after "Ѣ" :prefixes (""))
+(define-letter-group "Ю" :after "Э" :prefixes (""))
+(define-letter-group "Я" :after "Ю" :prefixes (""))
+(define-letter-group "Ѳ" :after "Я" :prefixes (""))
+(define-letter-group "Ѵ" :after "Ѳ" :prefixes (""))
+
+(define-rule-set "ru-alphabetize"
+
+ :rules (("А́" "" :string)
+ ("а́" "" :string)
+ ("Е́" "" :string)
+ ("ё́" "" :string)
+ ("е́" "" :string)
+ ("Ё́" "" :string)
+ ("и́" "" :string)
+ ("И́" "" :string)
+ ("і́" "" :string)
+ ("І́" "" :string)
+ ("Й́" "" :string)
+ ("й́" "" :string)
+ ("О́" "" :string)
+ ("о́" "" :string)
+ ("У́" "" :string)
+ ("у́" "" :string)
+ ("ы́" "" :string)
+ ("Ы́" "" :string)
+ ("Э́" "" :string)
+ ("э́" "" :string)
+ ("ю́" "" :string)
+ ("Ю́" "" :string)
+ ("Я́" "" :string)
+ ("я́" "" :string)
+ ("а" "" :string)
+ ("А" "" :string)
+ ("б" "" :string)
+ ("Б" "" :string)
+ ("в" "" :string)
+ ("В" "" :string)
+ ("г" "" :string)
+ ("Г" "" :string)
+ ("Д" "" :string)
+ ("д" "" :string)
+ ("е" "" :string)
+ ("Ё" "" :string)
+ ("ё" "" :string)
+ ("Е" "" :string)
+ ("Ж" "" :string)
+ ("ж" "" :string)
+ ("З" "" :string)
+ ("з" "" :string)
+ ("И" "" :string)
+ ("и" "" :string)
+ ("І" "" :string)
+ ("і" "" :string)
+ ("й" "" :string)
+ ("Й" "" :string)
+ ("к" "" :string)
+ ("К" "" :string)
+ ("Л" "" :string)
+ ("л" "" :string)
+ ("М" "" :string)
+ ("м" "" :string)
+ ("Н" "" :string)
+ ("н" "" :string)
+ ("о" "" :string)
+ ("О" "" :string)
+ ("п" "" :string)
+ ("П" "" :string)
+ ("р" "" :string)
+ ("Р" "" :string)
+ ("С" "" :string)
+ ("с" "" :string)
+ ("т" "" :string)
+ ("Т" "" :string)
+ ("у" "" :string)
+ ("У" "" :string)
+ ("ф" "" :string)
+ ("Ф" "" :string)
+ ("х" "" :string)
+ ("Х" "" :string)
+ ("ц" "" :string)
+ ("Ц" "" :string)
+ ("ч" "" :string)
+ ("Ч" "" :string)
+ ("Ш" "" :string)
+ ("ш" "" :string)
+ ("Щ" "" :string)
+ ("щ" "" :string)
+ ("ъ" "" :string)
+ ("Ъ" "" :string)
+ ("ы" "" :string)
+ ("Ы" "" :string)
+ ("ь" "" :string)
+ ("Ь" "" :string)
+ ("Ѣ" "" :string)
+ ("ѣ" "" :string)
+ ("э" "" :string)
+ ("Э" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("Я" "" :string)
+ ("я" "" :string)
+ ("ѳ" "" :string)
+ ("Ѳ" "" :string)
+ ("ѵ" "" :string)
+ ("Ѵ" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-diacritics"
+
+ :rules (("и́" "" :string)
+ ("У́" "" :string)
+ ("у́" "" :string)
+ ("ю́" "" :string)
+ ("Э́" "" :string)
+ ("Ю́" "" :string)
+ ("ы́" "" :string)
+ ("О́" "" :string)
+ ("А́" "" :string)
+ ("Е́" "" :string)
+ ("і́" "" :string)
+ ("Я́" "" :string)
+ ("о́" "" :string)
+ ("а́" "" :string)
+ ("Й́" "" :string)
+ ("я́" "" :string)
+ ("І́" "" :string)
+ ("Ы́" "" :string)
+ ("й́" "" :string)
+ ("И́" "" :string)
+ ("е́" "" :string)
+ ("э́" "" :string)
+ ("ё́" "" :string)
+ ("Ё́" "" :string)
+ ("Ѣ" "" :string)
+ ("п" "" :string)
+ ("ѣ" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("И" "" :string)
+ ("й" "" :string)
+ ("ѵ" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("Щ" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("ѳ" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("э" "" :string)
+ ("х" "" :string)
+ ("ы" "" :string)
+ ("Ѵ" "" :string)
+ ("Я" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("щ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("а" "" :string)
+ ("І" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("і" "" :string)
+ ("Ѳ" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("я" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("А" "" :string)
+ ("Ы" "" :string)
+ ("Е" "" :string)
+ ("Э" "" :string)
+ ("Ъ" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("Ё" "" :string)
+ ("ё" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-case"
+
+ :rules (("У́" "8" :string)
+ ("Э́" "8" :string)
+ ("Ю́" "8" :string)
+ ("О́" "8" :string)
+ ("А́" "8" :string)
+ ("Е́" "8" :string)
+ ("Я́" "8" :string)
+ ("Й́" "8" :string)
+ ("І́" "8" :string)
+ ("Ы́" "8" :string)
+ ("И́" "8" :string)
+ ("Ё́" "8" :string)
+ ("и́" "9" :string)
+ ("у́" "9" :string)
+ ("ю́" "9" :string)
+ ("ы́" "9" :string)
+ ("ё́" "9" :string)
+ ("і́" "9" :string)
+ ("о́" "9" :string)
+ ("а́" "9" :string)
+ ("я́" "9" :string)
+ ("й́" "9" :string)
+ ("е́" "9" :string)
+ ("э́" "9" :string)
+ ("Ѣ" "8" :string)
+ ("И" "8" :string)
+ ("П" "8" :string)
+ ("Л" "8" :string)
+ ("Ж" "8" :string)
+ ("Д" "8" :string)
+ ("Н" "8" :string)
+ ("Ш" "8" :string)
+ ("Щ" "8" :string)
+ ("К" "8" :string)
+ ("Й" "8" :string)
+ ("Б" "8" :string)
+ ("Ѵ" "8" :string)
+ ("Я" "8" :string)
+ ("Ч" "8" :string)
+ ("Р" "8" :string)
+ ("М" "8" :string)
+ ("Т" "8" :string)
+ ("З" "8" :string)
+ ("Ц" "8" :string)
+ ("С" "8" :string)
+ ("Ф" "8" :string)
+ ("І" "8" :string)
+ ("В" "8" :string)
+ ("О" "8" :string)
+ ("Х" "8" :string)
+ ("Ѳ" "8" :string)
+ ("У" "8" :string)
+ ("Ё" "8" :string)
+ ("Г" "8" :string)
+ ("Ь" "8" :string)
+ ("А" "8" :string)
+ ("Ы" "8" :string)
+ ("Е" "8" :string)
+ ("Э" "8" :string)
+ ("Ъ" "8" :string)
+ ("Ю" "8" :string)
+ ("п" "9" :string)
+ ("ѣ" "9" :string)
+ ("ч" "9" :string)
+ ("е" "9" :string)
+ ("б" "9" :string)
+ ("у" "9" :string)
+ ("й" "9" :string)
+ ("ѵ" "9" :string)
+ ("р" "9" :string)
+ ("к" "9" :string)
+ ("т" "9" :string)
+ ("ц" "9" :string)
+ ("о" "9" :string)
+ ("ъ" "9" :string)
+ ("и" "9" :string)
+ ("ф" "9" :string)
+ ("л" "9" :string)
+ ("ѳ" "9" :string)
+ ("г" "9" :string)
+ ("э" "9" :string)
+ ("х" "9" :string)
+ ("ы" "9" :string)
+ ("ш" "9" :string)
+ ("щ" "9" :string)
+ ("д" "9" :string)
+ ("ь" "9" :string)
+ ("в" "9" :string)
+ ("а" "9" :string)
+ ("н" "9" :string)
+ ("м" "9" :string)
+ ("з" "9" :string)
+ ("ж" "9" :string)
+ ("і" "9" :string)
+ ("с" "9" :string)
+ ("я" "9" :string)
+ ("ё" "9" :string)
+ ("ю" "9" :string)
+ ))
+
+(define-rule-set "ru-ignore-special"
+
+ :rules (("́" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "ru-resolve-special"
+
+ :rules (("и́" "" :string)
+ ("У́" "" :string)
+ ("у́" "" :string)
+ ("ю́" "" :string)
+ ("Э́" "" :string)
+ ("Ю́" "" :string)
+ ("ы́" "" :string)
+ ("О́" "" :string)
+ ("А́" "" :string)
+ ("ё́" "" :string)
+ ("Е́" "" :string)
+ ("і́" "" :string)
+ ("Я́" "" :string)
+ ("о́" "" :string)
+ ("а́" "" :string)
+ ("Й́" "" :string)
+ ("я́" "" :string)
+ ("І́" "" :string)
+ ("Ы́" "" :string)
+ ("й́" "" :string)
+ ("И́" "" :string)
+ ("е́" "" :string)
+ ("э́" "" :string)
+ ("Ё́" "" :string)
+ ("Ѣ" "" :string)
+ ("п" "" :string)
+ ("ѣ" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("И" "" :string)
+ ("й" "" :string)
+ ("ѵ" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("Щ" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("ѳ" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("э" "" :string)
+ ("х" "" :string)
+ ("ы" "" :string)
+ ("Ѵ" "" :string)
+ ("Я" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("щ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("а" "" :string)
+ ("І" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("і" "" :string)
+ ("Ѳ" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("я" "" :string)
+ ("Ё" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("ё" "" :string)
+ ("А" "" :string)
+ ("Ы" "" :string)
+ ("Е" "" :string)
+ ("Э" "" :string)
+ ("Ъ" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("́" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/serbian/cp1251-lang.xdy b/Master/texmf/xindy/modules/lang/serbian/cp1251-lang.xdy
new file mode 100644
index 00000000000..c9a5c06f2bd
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/cp1251-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/serbian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sr-alphabetize" "sr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sr-resolve-diacritics" "sr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sr-resolve-case" "sr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/serbian/cp1251-test.xdy b/Master/texmf/xindy/modules/lang/serbian/cp1251-test.xdy
new file mode 100644
index 00000000000..995b7261a56
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/cp1251-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/serbian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sr-alphabetize" "sr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sr-resolve-diacritics" "sr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sr-resolve-case" "sr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/serbian/cp1251.xdy b/Master/texmf/xindy/modules/lang/serbian/cp1251.xdy
new file mode 100644
index 00000000000..987a2aaa665
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/cp1251.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Serbian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "sr-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "sr-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/serbian/iso88595-lang.xdy b/Master/texmf/xindy/modules/lang/serbian/iso88595-lang.xdy
new file mode 100644
index 00000000000..72f1fcb66fa
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/iso88595-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/serbian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sr-alphabetize" "sr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sr-resolve-diacritics" "sr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sr-resolve-case" "sr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/serbian/iso88595-test.xdy b/Master/texmf/xindy/modules/lang/serbian/iso88595-test.xdy
new file mode 100644
index 00000000000..b79a6154a27
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/iso88595-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/serbian/iso88595.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sr-alphabetize" "sr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sr-resolve-diacritics" "sr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sr-resolve-case" "sr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/serbian/iso88595.xdy b/Master/texmf/xindy/modules/lang/serbian/iso88595.xdy
new file mode 100644
index 00000000000..f2cf2f16597
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/iso88595.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Serbian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "sr-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "sr-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/serbian/isoir111-lang.xdy b/Master/texmf/xindy/modules/lang/serbian/isoir111-lang.xdy
new file mode 100644
index 00000000000..c50b2dff004
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/isoir111-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/serbian/isoir111.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sr-alphabetize" "sr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sr-resolve-diacritics" "sr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sr-resolve-case" "sr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/serbian/isoir111-test.xdy b/Master/texmf/xindy/modules/lang/serbian/isoir111-test.xdy
new file mode 100644
index 00000000000..bca897af0a6
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/isoir111-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/serbian/isoir111.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sr-alphabetize" "sr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sr-resolve-diacritics" "sr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sr-resolve-case" "sr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/serbian/isoir111.xdy b/Master/texmf/xindy/modules/lang/serbian/isoir111.xdy
new file mode 100644
index 00000000000..35085be16cb
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/isoir111.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Serbian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "sr-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "sr-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/serbian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/serbian/utf8-lang.xdy
new file mode 100644
index 00000000000..61b9b43d353
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/serbian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sr-alphabetize" "sr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sr-resolve-diacritics" "sr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sr-resolve-case" "sr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/serbian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/serbian/utf8-test.xdy
new file mode 100644
index 00000000000..586375c85f4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/serbian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sr-alphabetize" "sr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sr-resolve-diacritics" "sr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sr-resolve-case" "sr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/serbian/utf8.xdy b/Master/texmf/xindy/modules/lang/serbian/utf8.xdy
new file mode 100644
index 00000000000..3838ca072e6
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/serbian/utf8.xdy
@@ -0,0 +1,404 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Serbian
+
+(define-letter-group "А" :prefixes (""))
+(define-letter-group "Б" :after "А" :prefixes (""))
+(define-letter-group "В" :after "Б" :prefixes (""))
+(define-letter-group "Г" :after "В" :prefixes (""))
+(define-letter-group "Д" :after "Г" :prefixes (""))
+(define-letter-group "Ђ" :after "Д" :prefixes (""))
+(define-letter-group "Е" :after "Ђ" :prefixes (""))
+(define-letter-group "Ж" :after "Е" :prefixes (""))
+(define-letter-group "З" :after "Ж" :prefixes (""))
+(define-letter-group "И" :after "З" :prefixes (""))
+(define-letter-group "Ј" :after "И" :prefixes (""))
+(define-letter-group "К" :after "Ј" :prefixes (""))
+(define-letter-group "Л" :after "К" :prefixes (""))
+(define-letter-group "Љ" :after "Л" :prefixes (""))
+(define-letter-group "М" :after "Љ" :prefixes (""))
+(define-letter-group "Н" :after "М" :prefixes (""))
+(define-letter-group "Њ" :after "Н" :prefixes (""))
+(define-letter-group "О" :after "Њ" :prefixes (""))
+(define-letter-group "П" :after "О" :prefixes (""))
+(define-letter-group "Р" :after "П" :prefixes (""))
+(define-letter-group "С" :after "Р" :prefixes (""))
+(define-letter-group "Т" :after "С" :prefixes (""))
+(define-letter-group "Ћ" :after "Т" :prefixes (""))
+(define-letter-group "У" :after "Ћ" :prefixes (""))
+(define-letter-group "Ф" :after "У" :prefixes (""))
+(define-letter-group "Х" :after "Ф" :prefixes (""))
+(define-letter-group "Ц" :after "Х" :prefixes (""))
+(define-letter-group "Ч" :after "Ц" :prefixes (""))
+(define-letter-group "Џ" :after "Ч" :prefixes (""))
+(define-letter-group "Ш" :after "Џ" :prefixes (""))
+
+(define-rule-set "sr-alphabetize"
+
+ :rules (("А̑" "" :string)
+ ("а̏" "" :string)
+ ("А̏" "" :string)
+ ("а̑" "" :string)
+ ("е̑" "" :string)
+ ("Е̑" "" :string)
+ ("е̏" "" :string)
+ ("Е̏" "" :string)
+ ("и̑" "" :string)
+ ("и̏" "" :string)
+ ("И̑" "" :string)
+ ("И̏" "" :string)
+ ("О̑" "" :string)
+ ("о̏" "" :string)
+ ("о̑" "" :string)
+ ("О̏" "" :string)
+ ("р̑" "" :string)
+ ("Р̑" "" :string)
+ ("р̏" "" :string)
+ ("Р̏" "" :string)
+ ("у̏" "" :string)
+ ("У̏" "" :string)
+ ("у̑" "" :string)
+ ("У̑" "" :string)
+ ("а" "" :string)
+ ("А" "" :string)
+ ("б" "" :string)
+ ("Б" "" :string)
+ ("в" "" :string)
+ ("В" "" :string)
+ ("г" "" :string)
+ ("Г" "" :string)
+ ("Д" "" :string)
+ ("д" "" :string)
+ ("ђ" "" :string)
+ ("Ђ" "" :string)
+ ("е" "" :string)
+ ("Е" "" :string)
+ ("Ж" "" :string)
+ ("ж" "" :string)
+ ("З" "" :string)
+ ("з" "" :string)
+ ("И" "" :string)
+ ("и" "" :string)
+ ("Ј" "" :string)
+ ("ј" "" :string)
+ ("к" "" :string)
+ ("К" "" :string)
+ ("Л" "" :string)
+ ("л" "" :string)
+ ("љ" "" :string)
+ ("Љ" "" :string)
+ ("М" "" :string)
+ ("м" "" :string)
+ ("Н" "" :string)
+ ("н" "" :string)
+ ("Њ" "" :string)
+ ("њ" "" :string)
+ ("о" "" :string)
+ ("О" "" :string)
+ ("п" "" :string)
+ ("П" "" :string)
+ ("р" "" :string)
+ ("Р" "" :string)
+ ("С" "" :string)
+ ("с" "" :string)
+ ("т" "" :string)
+ ("Т" "" :string)
+ ("Ћ" "" :string)
+ ("ћ" "" :string)
+ ("у" "" :string)
+ ("У" "" :string)
+ ("ф" "" :string)
+ ("Ф" "" :string)
+ ("х" "" :string)
+ ("Х" "" :string)
+ ("ц" "" :string)
+ ("Ц" "" :string)
+ ("ч" "" :string)
+ ("Ч" "" :string)
+ ("џ" "" :string)
+ ("Џ" "" :string)
+ ("Ш" "" :string)
+ ("ш" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-diacritics"
+
+ :rules (("у̏" "" :string)
+ ("о̏" "" :string)
+ ("р̏" "" :string)
+ ("и̏" "" :string)
+ ("Р̏" "" :string)
+ ("а̏" "" :string)
+ ("У̏" "" :string)
+ ("е̏" "" :string)
+ ("О̏" "" :string)
+ ("Е̏" "" :string)
+ ("И̏" "" :string)
+ ("А̏" "" :string)
+ ("р̑" "" :string)
+ ("и̑" "" :string)
+ ("О̑" "" :string)
+ ("Р̑" "" :string)
+ ("е̑" "" :string)
+ ("А̑" "" :string)
+ ("Е̑" "" :string)
+ ("у̑" "" :string)
+ ("о̑" "" :string)
+ ("И̑" "" :string)
+ ("У̑" "" :string)
+ ("а̑" "" :string)
+ ("п" "" :string)
+ ("ђ" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("Ј" "" :string)
+ ("џ" "" :string)
+ ("љ" "" :string)
+ ("И" "" :string)
+ ("Љ" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("ј" "" :string)
+ ("К" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("Џ" "" :string)
+ ("х" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("Њ" "" :string)
+ ("Ћ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ћ" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("њ" "" :string)
+ ("а" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("Ђ" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("Г" "" :string)
+ ("А" "" :string)
+ ("Е" "" :string)
+ ))
+
+(define-rule-set "sr-resolve-case"
+
+ :rules (("О̑" "8" :string)
+ ("Р̑" "8" :string)
+ ("А̑" "8" :string)
+ ("Е̑" "8" :string)
+ ("Р̏" "8" :string)
+ ("У̏" "8" :string)
+ ("И̑" "8" :string)
+ ("О̏" "8" :string)
+ ("У̑" "8" :string)
+ ("Е̏" "8" :string)
+ ("И̏" "8" :string)
+ ("А̏" "8" :string)
+ ("у̏" "9" :string)
+ ("р̑" "9" :string)
+ ("и̑" "9" :string)
+ ("о̏" "9" :string)
+ ("р̏" "9" :string)
+ ("е̑" "9" :string)
+ ("и̏" "9" :string)
+ ("а̏" "9" :string)
+ ("у̑" "9" :string)
+ ("о̑" "9" :string)
+ ("е̏" "9" :string)
+ ("а̑" "9" :string)
+ ("Ј" "8" :string)
+ ("И" "8" :string)
+ ("Љ" "8" :string)
+ ("П" "8" :string)
+ ("Л" "8" :string)
+ ("Ж" "8" :string)
+ ("Д" "8" :string)
+ ("Н" "8" :string)
+ ("Ш" "8" :string)
+ ("К" "8" :string)
+ ("Б" "8" :string)
+ ("Џ" "8" :string)
+ ("Ч" "8" :string)
+ ("Р" "8" :string)
+ ("Њ" "8" :string)
+ ("Ћ" "8" :string)
+ ("М" "8" :string)
+ ("Т" "8" :string)
+ ("З" "8" :string)
+ ("Ц" "8" :string)
+ ("С" "8" :string)
+ ("Ф" "8" :string)
+ ("В" "8" :string)
+ ("О" "8" :string)
+ ("Х" "8" :string)
+ ("Ђ" "8" :string)
+ ("У" "8" :string)
+ ("Г" "8" :string)
+ ("А" "8" :string)
+ ("Е" "8" :string)
+ ("п" "9" :string)
+ ("ђ" "9" :string)
+ ("ч" "9" :string)
+ ("е" "9" :string)
+ ("б" "9" :string)
+ ("у" "9" :string)
+ ("џ" "9" :string)
+ ("љ" "9" :string)
+ ("р" "9" :string)
+ ("к" "9" :string)
+ ("т" "9" :string)
+ ("ц" "9" :string)
+ ("о" "9" :string)
+ ("и" "9" :string)
+ ("ф" "9" :string)
+ ("л" "9" :string)
+ ("ј" "9" :string)
+ ("г" "9" :string)
+ ("х" "9" :string)
+ ("ш" "9" :string)
+ ("д" "9" :string)
+ ("ћ" "9" :string)
+ ("в" "9" :string)
+ ("њ" "9" :string)
+ ("а" "9" :string)
+ ("н" "9" :string)
+ ("м" "9" :string)
+ ("з" "9" :string)
+ ("ж" "9" :string)
+ ("с" "9" :string)
+ ))
+
+(define-rule-set "sr-ignore-special"
+
+ :rules (("̏" "" :string)
+ ("̑" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sr-resolve-special"
+
+ :rules (("у̏" "" :string)
+ ("р̑" "" :string)
+ ("и̑" "" :string)
+ ("О̑" "" :string)
+ ("Р̑" "" :string)
+ ("о̏" "" :string)
+ ("р̏" "" :string)
+ ("е̑" "" :string)
+ ("и̏" "" :string)
+ ("А̑" "" :string)
+ ("Е̑" "" :string)
+ ("Р̏" "" :string)
+ ("а̏" "" :string)
+ ("У̏" "" :string)
+ ("у̑" "" :string)
+ ("о̑" "" :string)
+ ("И̑" "" :string)
+ ("е̏" "" :string)
+ ("О̏" "" :string)
+ ("У̑" "" :string)
+ ("Е̏" "" :string)
+ ("И̏" "" :string)
+ ("А̏" "" :string)
+ ("а̑" "" :string)
+ ("п" "" :string)
+ ("ђ" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("Ј" "" :string)
+ ("џ" "" :string)
+ ("љ" "" :string)
+ ("И" "" :string)
+ ("Љ" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("ј" "" :string)
+ ("К" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("Џ" "" :string)
+ ("х" "" :string)
+ ("ш" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("Њ" "" :string)
+ ("Ћ" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ћ" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("њ" "" :string)
+ ("а" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("Ђ" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("Г" "" :string)
+ ("А" "" :string)
+ ("Е" "" :string)
+ ("̏" "" :string)
+ ("̑" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/slovak/large-cp1250-lang.xdy b/Master/texmf/xindy/modules/lang/slovak/large-cp1250-lang.xdy
new file mode 100644
index 00000000000..a62563e6b8c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/large-cp1250-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/slovak/large-cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/slovak/large-cp1250-test.xdy b/Master/texmf/xindy/modules/lang/slovak/large-cp1250-test.xdy
new file mode 100644
index 00000000000..f6c3df809c9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/large-cp1250-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/slovak/large-cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/slovak/large-cp1250.xdy b/Master/texmf/xindy/modules/lang/slovak/large-cp1250.xdy
new file mode 100644
index 00000000000..88bace997ad
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/large-cp1250.xdy
@@ -0,0 +1,437 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Slovak
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "" :after "D" :prefixes (""))
+(define-letter-group "E" :after "" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "" :after "L" :prefixes (""))
+(define-letter-group "M" :after "" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "" :after "R" :prefixes (""))
+(define-letter-group "S" :after "" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "" :after "T" :prefixes (""))
+(define-letter-group "U" :after "" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "sk-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("l" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "sk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sk-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/slovak/large-latin2-lang.xdy b/Master/texmf/xindy/modules/lang/slovak/large-latin2-lang.xdy
new file mode 100644
index 00000000000..2afc7f51c58
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/large-latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/slovak/large-latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/slovak/large-latin2-test.xdy b/Master/texmf/xindy/modules/lang/slovak/large-latin2-test.xdy
new file mode 100644
index 00000000000..34678d235c5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/large-latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/slovak/large-latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/slovak/large-latin2.xdy b/Master/texmf/xindy/modules/lang/slovak/large-latin2.xdy
new file mode 100644
index 00000000000..4f1e1bb26b8
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/large-latin2.xdy
@@ -0,0 +1,437 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Slovak
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "" :after "D" :prefixes (""))
+(define-letter-group "E" :after "" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "" :after "L" :prefixes (""))
+(define-letter-group "M" :after "" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "" :after "R" :prefixes (""))
+(define-letter-group "S" :after "" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "" :after "T" :prefixes (""))
+(define-letter-group "U" :after "" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "sk-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("l" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "sk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sk-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/slovak/large-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/slovak/large-utf8-lang.xdy
new file mode 100644
index 00000000000..77b1bf8b143
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/large-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/slovak/large-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/slovak/large-utf8-test.xdy b/Master/texmf/xindy/modules/lang/slovak/large-utf8-test.xdy
new file mode 100644
index 00000000000..72a1d679c4e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/large-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/slovak/large-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/slovak/large-utf8.xdy b/Master/texmf/xindy/modules/lang/slovak/large-utf8.xdy
new file mode 100644
index 00000000000..22fcb245b5d
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/large-utf8.xdy
@@ -0,0 +1,437 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Slovak
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Č" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Č" :prefixes (""))
+(define-letter-group "Ď" :after "D" :prefixes (""))
+(define-letter-group "E" :after "Ď" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "Ľ" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Ľ" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ň" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ň" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "Ř" :after "R" :prefixes (""))
+(define-letter-group "S" :after "Ř" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Š" :prefixes (""))
+(define-letter-group "Ť" :after "T" :prefixes (""))
+(define-letter-group "U" :after "Ť" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+
+(define-rule-set "sk-alphabetize"
+
+ :rules (("Á" "" :string)
+ ("Ä" "" :string)
+ ("á" "" :string)
+ ("ä" "" :string)
+ ("č" "" :string)
+ ("Č" "" :string)
+ ("ď" "" :string)
+ ("Ď" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("Í" "" :string)
+ ("í" "" :string)
+ ("ĺ" "" :string)
+ ("Ĺ" "" :string)
+ ("ľ" "" :string)
+ ("Ľ" "" :string)
+ ("Ň" "" :string)
+ ("ň" "" :string)
+ ("Ô" "" :string)
+ ("Ó" "" :string)
+ ("ô" "" :string)
+ ("ó" "" :string)
+ ("ŕ" "" :string)
+ ("Ŕ" "" :string)
+ ("Ř" "" :string)
+ ("ř" "" :string)
+ ("ß" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ť" "" :string)
+ ("ť" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ý" "" :string)
+ ("ý" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-diacritics"
+
+ :rules (("Ž" "" :string)
+ ("ľ" "" :string)
+ ("Ch" "" :string)
+ ("Ř" "" :string)
+ ("Ň" "" :string)
+ ("č" "" :string)
+ ("ch" "" :string)
+ ("ď" "" :string)
+ ("Š" "" :string)
+ ("ř" "" :string)
+ ("š" "" :string)
+ ("CH" "" :string)
+ ("Ď" "" :string)
+ ("Č" "" :string)
+ ("ž" "" :string)
+ ("Ť" "" :string)
+ ("ň" "" :string)
+ ("ť" "" :string)
+ ("Ľ" "" :string)
+ ("Ý" "" :string)
+ ("Á" "" :string)
+ ("ŕ" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("ĺ" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("á" "" :string)
+ ("Ŕ" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("Ĺ" "" :string)
+ ("é" "" :string)
+ ("Ô" "" :string)
+ ("ô" "" :string)
+ ("Ä" "" :string)
+ ("ä" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ý" "8" :string)
+ ("Á" "8" :string)
+ ("Ž" "8" :string)
+ ("Ô" "8" :string)
+ ("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Í" "8" :string)
+ ("Ch" "8" :string)
+ ("Ú" "8" :string)
+ ("Ř" "8" :string)
+ ("Ň" "8" :string)
+ ("Ä" "8" :string)
+ ("Ŕ" "8" :string)
+ ("Š" "8" :string)
+ ("Ď" "8" :string)
+ ("Ĺ" "8" :string)
+ ("Č" "8" :string)
+ ("Ť" "8" :string)
+ ("Ľ" "8" :string)
+ ("ľ" "9" :string)
+ ("ŕ" "9" :string)
+ ("ý" "9" :string)
+ ("ô" "9" :string)
+ ("ĺ" "9" :string)
+ ("č" "9" :string)
+ ("ch" "9" :string)
+ ("ú" "9" :string)
+ ("ď" "9" :string)
+ ("á" "9" :string)
+ ("ř" "9" :string)
+ ("ä" "9" :string)
+ ("š" "9" :string)
+ ("í" "9" :string)
+ ("ó" "9" :string)
+ ("é" "9" :string)
+ ("ž" "9" :string)
+ ("ň" "9" :string)
+ ("ť" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "sk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sk-resolve-special"
+
+ :rules (("Ý" "" :string)
+ ("Á" "" :string)
+ ("Ž" "" :string)
+ ("ľ" "" :string)
+ ("Ô" "" :string)
+ ("ŕ" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("ô" "" :string)
+ ("Ch" "" :string)
+ ("ĺ" "" :string)
+ ("Ú" "" :string)
+ ("Ř" "" :string)
+ ("Ň" "" :string)
+ ("č" "" :string)
+ ("Ä" "" :string)
+ ("ch" "" :string)
+ ("ú" "" :string)
+ ("ď" "" :string)
+ ("á" "" :string)
+ ("Ŕ" "" :string)
+ ("Š" "" :string)
+ ("ř" "" :string)
+ ("ä" "" :string)
+ ("š" "" :string)
+ ("CH" "" :string)
+ ("í" "" :string)
+ ("Ď" "" :string)
+ ("ó" "" :string)
+ ("Ĺ" "" :string)
+ ("Č" "" :string)
+ ("é" "" :string)
+ ("ž" "" :string)
+ ("Ť" "" :string)
+ ("ň" "" :string)
+ ("ť" "" :string)
+ ("Ľ" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/slovak/small-cp1250-lang.xdy b/Master/texmf/xindy/modules/lang/slovak/small-cp1250-lang.xdy
new file mode 100644
index 00000000000..96a36e2c466
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/small-cp1250-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/slovak/small-cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/slovak/small-cp1250-test.xdy b/Master/texmf/xindy/modules/lang/slovak/small-cp1250-test.xdy
new file mode 100644
index 00000000000..34abe1cc5fb
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/small-cp1250-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/slovak/small-cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/slovak/small-cp1250.xdy b/Master/texmf/xindy/modules/lang/slovak/small-cp1250.xdy
new file mode 100644
index 00000000000..6c8384a67d1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/small-cp1250.xdy
@@ -0,0 +1,429 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Slovak
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "sk-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "sk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sk-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/slovak/small-latin2-lang.xdy b/Master/texmf/xindy/modules/lang/slovak/small-latin2-lang.xdy
new file mode 100644
index 00000000000..6ae82bab993
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/small-latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/slovak/small-latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/slovak/small-latin2-test.xdy b/Master/texmf/xindy/modules/lang/slovak/small-latin2-test.xdy
new file mode 100644
index 00000000000..c386edc2e26
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/small-latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/slovak/small-latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/slovak/small-latin2.xdy b/Master/texmf/xindy/modules/lang/slovak/small-latin2.xdy
new file mode 100644
index 00000000000..de3b2d6a2fc
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/small-latin2.xdy
@@ -0,0 +1,429 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Slovak
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "sk-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "sk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sk-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/slovak/small-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/slovak/small-utf8-lang.xdy
new file mode 100644
index 00000000000..51ffd911ecf
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/small-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/slovak/small-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/slovak/small-utf8-test.xdy b/Master/texmf/xindy/modules/lang/slovak/small-utf8-test.xdy
new file mode 100644
index 00000000000..9f8f361e34e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/small-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/slovak/small-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sk-alphabetize" "sk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sk-resolve-diacritics" "sk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sk-resolve-case" "sk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/slovak/small-utf8.xdy b/Master/texmf/xindy/modules/lang/slovak/small-utf8.xdy
new file mode 100644
index 00000000000..48a88ac422a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovak/small-utf8.xdy
@@ -0,0 +1,429 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Slovak
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "sk-alphabetize"
+
+ :rules (("Á" "" :string)
+ ("Ä" "" :string)
+ ("á" "" :string)
+ ("ä" "" :string)
+ ("č" "" :string)
+ ("Č" "" :string)
+ ("ď" "" :string)
+ ("Ď" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("Í" "" :string)
+ ("í" "" :string)
+ ("ľ" "" :string)
+ ("ĺ" "" :string)
+ ("Ĺ" "" :string)
+ ("Ľ" "" :string)
+ ("Ň" "" :string)
+ ("ň" "" :string)
+ ("Ô" "" :string)
+ ("Ó" "" :string)
+ ("ô" "" :string)
+ ("ó" "" :string)
+ ("ŕ" "" :string)
+ ("Ř" "" :string)
+ ("Ŕ" "" :string)
+ ("ř" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("ß" "" :string)
+ ("Ť" "" :string)
+ ("ť" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ý" "" :string)
+ ("ý" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("Ý" "" :string)
+ ("Á" "" :string)
+ ("Ž" "" :string)
+ ("ŕ" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("ĺ" "" :string)
+ ("Ú" "" :string)
+ ("Ň" "" :string)
+ ("č" "" :string)
+ ("ú" "" :string)
+ ("ď" "" :string)
+ ("á" "" :string)
+ ("Ŕ" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("í" "" :string)
+ ("Ď" "" :string)
+ ("ó" "" :string)
+ ("Ĺ" "" :string)
+ ("Č" "" :string)
+ ("é" "" :string)
+ ("ž" "" :string)
+ ("Ť" "" :string)
+ ("ň" "" :string)
+ ("ť" "" :string)
+ ("ľ" "" :string)
+ ("Ô" "" :string)
+ ("ô" "" :string)
+ ("Ř" "" :string)
+ ("Ä" "" :string)
+ ("ř" "" :string)
+ ("ä" "" :string)
+ ("Ľ" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "sk-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("Ý" "8" :string)
+ ("Á" "8" :string)
+ ("Ž" "8" :string)
+ ("Ô" "8" :string)
+ ("Ó" "8" :string)
+ ("É" "8" :string)
+ ("Í" "8" :string)
+ ("Ch" "8" :string)
+ ("Ú" "8" :string)
+ ("Ř" "8" :string)
+ ("Ň" "8" :string)
+ ("Ä" "8" :string)
+ ("Ŕ" "8" :string)
+ ("Š" "8" :string)
+ ("Ď" "8" :string)
+ ("Ĺ" "8" :string)
+ ("Č" "8" :string)
+ ("Ť" "8" :string)
+ ("Ľ" "8" :string)
+ ("ľ" "9" :string)
+ ("ŕ" "9" :string)
+ ("ý" "9" :string)
+ ("ô" "9" :string)
+ ("ĺ" "9" :string)
+ ("č" "9" :string)
+ ("ch" "9" :string)
+ ("ú" "9" :string)
+ ("ď" "9" :string)
+ ("á" "9" :string)
+ ("ř" "9" :string)
+ ("ä" "9" :string)
+ ("š" "9" :string)
+ ("í" "9" :string)
+ ("ó" "9" :string)
+ ("é" "9" :string)
+ ("ž" "9" :string)
+ ("ň" "9" :string)
+ ("ť" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "sk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sk-resolve-special"
+
+ :rules (("Ý" "" :string)
+ ("Á" "" :string)
+ ("Ž" "" :string)
+ ("ľ" "" :string)
+ ("Ô" "" :string)
+ ("ŕ" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("ô" "" :string)
+ ("Ch" "" :string)
+ ("ĺ" "" :string)
+ ("Ú" "" :string)
+ ("Ř" "" :string)
+ ("Ň" "" :string)
+ ("č" "" :string)
+ ("Ä" "" :string)
+ ("ch" "" :string)
+ ("ú" "" :string)
+ ("ď" "" :string)
+ ("á" "" :string)
+ ("Ŕ" "" :string)
+ ("Š" "" :string)
+ ("ř" "" :string)
+ ("ä" "" :string)
+ ("š" "" :string)
+ ("CH" "" :string)
+ ("í" "" :string)
+ ("Ď" "" :string)
+ ("ó" "" :string)
+ ("Ĺ" "" :string)
+ ("Č" "" :string)
+ ("é" "" :string)
+ ("ž" "" :string)
+ ("Ť" "" :string)
+ ("ň" "" :string)
+ ("ť" "" :string)
+ ("Ľ" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/slovenian/cp1250-lang.xdy b/Master/texmf/xindy/modules/lang/slovenian/cp1250-lang.xdy
new file mode 100644
index 00000000000..c3446600d7a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovenian/cp1250-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/slovenian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sl-alphabetize" "sl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sl-resolve-diacritics" "sl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sl-resolve-case" "sl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sl-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/slovenian/cp1250-test.xdy b/Master/texmf/xindy/modules/lang/slovenian/cp1250-test.xdy
new file mode 100644
index 00000000000..6f3f3eb7870
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovenian/cp1250-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/slovenian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sl-alphabetize" "sl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sl-resolve-diacritics" "sl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sl-resolve-case" "sl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sl-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/slovenian/cp1250.xdy b/Master/texmf/xindy/modules/lang/slovenian/cp1250.xdy
new file mode 100644
index 00000000000..fb434cd17bf
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovenian/cp1250.xdy
@@ -0,0 +1,311 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Slovenian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "sl-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sl-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sl-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "sl-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "sl-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("B" "" :string)
+ ("s" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/slovenian/latin2-lang.xdy b/Master/texmf/xindy/modules/lang/slovenian/latin2-lang.xdy
new file mode 100644
index 00000000000..8ba49e4a4d1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovenian/latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/slovenian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sl-alphabetize" "sl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sl-resolve-diacritics" "sl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sl-resolve-case" "sl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sl-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/slovenian/latin2-test.xdy b/Master/texmf/xindy/modules/lang/slovenian/latin2-test.xdy
new file mode 100644
index 00000000000..3c2aa1ec8ec
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovenian/latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/slovenian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sl-alphabetize" "sl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sl-resolve-diacritics" "sl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sl-resolve-case" "sl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sl-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/slovenian/latin2.xdy b/Master/texmf/xindy/modules/lang/slovenian/latin2.xdy
new file mode 100644
index 00000000000..e347aecae2f
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovenian/latin2.xdy
@@ -0,0 +1,311 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Slovenian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "sl-alphabetize"
+
+ :rules (("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("c" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("j" "" :string)
+ ("J" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("W" "" :string)
+ ("w" "" :string)
+ ("x" "" :string)
+ ("X" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sl-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("y" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("z" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("h" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sl-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("Z" "8" :string)
+ ("J" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("" "8" :string)
+ ("H" "8" :string)
+ ("D" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("d" "9" :string)
+ ("j" "9" :string)
+ ("y" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("g" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "sl-ignore-special"
+
+ :rules (("?" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ))
+
+(define-rule-set "sl-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("B" "" :string)
+ ("s" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/slovenian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/slovenian/utf8-lang.xdy
new file mode 100644
index 00000000000..888ea1836aa
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovenian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/slovenian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sl-alphabetize" "sl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sl-resolve-diacritics" "sl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sl-resolve-case" "sl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sl-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/slovenian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/slovenian/utf8-test.xdy
new file mode 100644
index 00000000000..6855c4460a7
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovenian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/slovenian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sl-alphabetize" "sl-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sl-resolve-diacritics" "sl-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sl-resolve-case" "sl-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sl-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/slovenian/utf8.xdy b/Master/texmf/xindy/modules/lang/slovenian/utf8.xdy
new file mode 100644
index 00000000000..fea64b3fcc1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/slovenian/utf8.xdy
@@ -0,0 +1,375 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Slovenian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Č" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Č" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Š" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+
+(define-rule-set "sl-alphabetize"
+
+ :rules (("ḱ" "" :string)
+ ("Ḱ" "" :string)
+ ("č" "" :string)
+ ("Ć" "" :string)
+ ("Č" "" :string)
+ ("ć" "" :string)
+ ("đ" "" :string)
+ ("Đ" "" :string)
+ ("dz" "" :string)
+ ("DZ" "" :string)
+ ("Dz" "" :string)
+ ("dž" "" :string)
+ ("DŽ" "" :string)
+ ("Dž" "" :string)
+ ("Ǵ" "" :string)
+ ("ǵ" "" :string)
+ ("lj" "" :string)
+ ("Lj" "" :string)
+ ("LJ" "" :string)
+ ("NJ" "" :string)
+ ("Nj" "" :string)
+ ("nj" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "sl-resolve-diacritics"
+
+ :rules (("ḱ" "" :string)
+ ("Ḱ" "" :string)
+ ("Ž" "" :string)
+ ("č" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Č" "" :string)
+ ("ž" "" :string)
+ ("đ" "" :string)
+ ("Ć" "" :string)
+ ("Ǵ" "" :string)
+ ("ǵ" "" :string)
+ ("Đ" "" :string)
+ ("ć" "" :string)
+ ("dž" "" :string)
+ ("DŽ" "" :string)
+ ("Dž" "" :string)
+ ("dz" "" :string)
+ ("NJ" "" :string)
+ ("Nj" "" :string)
+ ("lj" "" :string)
+ ("Lj" "" :string)
+ ("DZ" "" :string)
+ ("Dz" "" :string)
+ ("LJ" "" :string)
+ ("nj" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "sl-resolve-case"
+
+ :rules (("Ḱ" "8" :string)
+ ("ḱ" "9" :string)
+ ("Ž" "8" :string)
+ ("Š" "8" :string)
+ ("Ć" "8" :string)
+ ("Ǵ" "8" :string)
+ ("Č" "8" :string)
+ ("Đ" "8" :string)
+ ("DŽ" "88" :string)
+ ("NJ" "88" :string)
+ ("DZ" "88" :string)
+ ("LJ" "88" :string)
+ ("Dž" "89" :string)
+ ("Nj" "89" :string)
+ ("Lj" "89" :string)
+ ("Dz" "89" :string)
+ ("č" "9" :string)
+ ("đ" "9" :string)
+ ("š" "9" :string)
+ ("ǵ" "9" :string)
+ ("ć" "9" :string)
+ ("ž" "9" :string)
+ ("dž" "99" :string)
+ ("dz" "99" :string)
+ ("lj" "99" :string)
+ ("nj" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "sl-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sl-resolve-special"
+
+ :rules (("ḱ" "" :string)
+ ("Ḱ" "" :string)
+ ("Ž" "" :string)
+ ("č" "" :string)
+ ("đ" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ć" "" :string)
+ ("Ǵ" "" :string)
+ ("ǵ" "" :string)
+ ("Č" "" :string)
+ ("Đ" "" :string)
+ ("ć" "" :string)
+ ("ž" "" :string)
+ ("dž" "" :string)
+ ("DŽ" "" :string)
+ ("Dž" "" :string)
+ ("dz" "" :string)
+ ("NJ" "" :string)
+ ("Nj" "" :string)
+ ("lj" "" :string)
+ ("Lj" "" :string)
+ ("DZ" "" :string)
+ ("Dz" "" :string)
+ ("LJ" "" :string)
+ ("nj" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/spanish/modern-latin1-lang.xdy b/Master/texmf/xindy/modules/lang/spanish/modern-latin1-lang.xdy
new file mode 100644
index 00000000000..cf87f232384
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/modern-latin1-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/spanish/modern-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/spanish/modern-latin1-test.xdy b/Master/texmf/xindy/modules/lang/spanish/modern-latin1-test.xdy
new file mode 100644
index 00000000000..4083128245a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/modern-latin1-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/spanish/modern-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/spanish/modern-latin1.xdy b/Master/texmf/xindy/modules/lang/spanish/modern-latin1.xdy
new file mode 100644
index 00000000000..e040c90e6c5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/modern-latin1.xdy
@@ -0,0 +1,333 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Spanish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "es-alphabetize"
+
+ :rules (("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "es-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "es-resolve-case"
+
+ :rules (("d" "0" :string)
+ ("y" "0" :string)
+ ("g" "0" :string)
+ ("e" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("" "0" :string)
+ ("w" "0" :string)
+ ("" "0" :string)
+ ("a" "0" :string)
+ ("" "0" :string)
+ ("j" "0" :string)
+ ("" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("t" "0" :string)
+ ("v" "0" :string)
+ ("" "0" :string)
+ ("s" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("x" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("o" "0" :string)
+ ("" "00" :string)
+ ("S" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("E" "1" :string)
+ ("" "1" :string)
+ ("J" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("D" "1" :string)
+ ("" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("" "1" :string)
+ ("F" "1" :string)
+ ("V" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "es-ignore-special"
+
+ :rules (("-" "" :string)
+ ("" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "es-resolve-special"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("" "" :string)
+ ("?" "" :string)
+ ("" "" :string)
+ ("!" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/spanish/modern-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/spanish/modern-utf8-lang.xdy
new file mode 100644
index 00000000000..0a5ac8d476a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/modern-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/spanish/modern-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/spanish/modern-utf8-test.xdy b/Master/texmf/xindy/modules/lang/spanish/modern-utf8-test.xdy
new file mode 100644
index 00000000000..adce25b2de9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/modern-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/spanish/modern-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/spanish/modern-utf8.xdy b/Master/texmf/xindy/modules/lang/spanish/modern-utf8.xdy
new file mode 100644
index 00000000000..cbb4e7e1d6a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/modern-utf8.xdy
@@ -0,0 +1,333 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Spanish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ñ" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ñ" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "es-alphabetize"
+
+ :rules (("Á" "" :string)
+ ("á" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("Í" "" :string)
+ ("í" "" :string)
+ ("Ñ" "" :string)
+ ("ñ" "" :string)
+ ("Ó" "" :string)
+ ("ó" "" :string)
+ ("ß" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "es-resolve-diacritics"
+
+ :rules (("Ñ" "" :string)
+ ("ñ" "" :string)
+ ("Á" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Í" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("á" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("é" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "es-resolve-case"
+
+ :rules (("ú" "0" :string)
+ ("á" "0" :string)
+ ("ñ" "0" :string)
+ ("í" "0" :string)
+ ("ó" "0" :string)
+ ("é" "0" :string)
+ ("ü" "0" :string)
+ ("ß" "00" :string)
+ ("Á" "1" :string)
+ ("Ñ" "1" :string)
+ ("Ó" "1" :string)
+ ("É" "1" :string)
+ ("Í" "1" :string)
+ ("Ú" "1" :string)
+ ("Ü" "1" :string)
+ ("d" "0" :string)
+ ("y" "0" :string)
+ ("g" "0" :string)
+ ("e" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("w" "0" :string)
+ ("a" "0" :string)
+ ("j" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("t" "0" :string)
+ ("v" "0" :string)
+ ("s" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("x" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("o" "0" :string)
+ ("S" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("E" "1" :string)
+ ("J" "1" :string)
+ ("D" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("F" "1" :string)
+ ("V" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "es-ignore-special"
+
+ :rules (("¡" "" :string)
+ ("¿" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "es-resolve-special"
+
+ :rules (("Á" "" :string)
+ ("Ñ" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Í" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("á" "" :string)
+ ("ñ" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("ß" "" :string)
+ ("¿" "" :string)
+ ("¡" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/spanish/traditional-latin1-lang.xdy b/Master/texmf/xindy/modules/lang/spanish/traditional-latin1-lang.xdy
new file mode 100644
index 00000000000..6f2f1d466a5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/traditional-latin1-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/spanish/traditional-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/spanish/traditional-latin1-test.xdy b/Master/texmf/xindy/modules/lang/spanish/traditional-latin1-test.xdy
new file mode 100644
index 00000000000..f030fe785aa
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/traditional-latin1-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/spanish/traditional-latin1.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/spanish/traditional-latin1.xdy b/Master/texmf/xindy/modules/lang/spanish/traditional-latin1.xdy
new file mode 100644
index 00000000000..4d644ab1942
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/traditional-latin1.xdy
@@ -0,0 +1,359 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Spanish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Ch" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Ch" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "Ll" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Ll" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "es-alphabetize"
+
+ :rules (("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("ll" "" :string)
+ ("LL" "" :string)
+ ("Ll" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "es-resolve-diacritics"
+
+ :rules (("ll" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("LL" "" :string)
+ ("CH" "" :string)
+ ("Ll" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "es-resolve-case"
+
+ :rules (("ll" "0" :string)
+ ("ch" "0" :string)
+ ("Ch" "1" :string)
+ ("Ll" "1" :string)
+ ("LL" "2" :string)
+ ("CH" "2" :string)
+ ("d" "0" :string)
+ ("y" "0" :string)
+ ("g" "0" :string)
+ ("e" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("" "0" :string)
+ ("w" "0" :string)
+ ("" "0" :string)
+ ("a" "0" :string)
+ ("" "0" :string)
+ ("j" "0" :string)
+ ("" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("t" "0" :string)
+ ("v" "0" :string)
+ ("" "0" :string)
+ ("s" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("x" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("o" "0" :string)
+ ("" "00" :string)
+ ("S" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("E" "1" :string)
+ ("" "1" :string)
+ ("J" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("D" "1" :string)
+ ("" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("" "1" :string)
+ ("F" "1" :string)
+ ("V" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "es-ignore-special"
+
+ :rules (("-" "" :string)
+ ("" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "es-resolve-special"
+
+ :rules (("ll" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("LL" "" :string)
+ ("CH" "" :string)
+ ("Ll" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("" "" :string)
+ ("?" "" :string)
+ ("" "" :string)
+ ("!" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/spanish/traditional-utf8-lang.xdy b/Master/texmf/xindy/modules/lang/spanish/traditional-utf8-lang.xdy
new file mode 100644
index 00000000000..81f350887c1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/traditional-utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/spanish/traditional-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/spanish/traditional-utf8-test.xdy b/Master/texmf/xindy/modules/lang/spanish/traditional-utf8-test.xdy
new file mode 100644
index 00000000000..adc1b23050e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/traditional-utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/spanish/traditional-utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/spanish/traditional-utf8.xdy b/Master/texmf/xindy/modules/lang/spanish/traditional-utf8.xdy
new file mode 100644
index 00000000000..04be530db9d
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/spanish/traditional-utf8.xdy
@@ -0,0 +1,359 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Spanish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Ch" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Ch" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "Ll" :after "L" :prefixes (""))
+(define-letter-group "M" :after "Ll" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ñ" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ñ" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "es-alphabetize"
+
+ :rules (("Á" "" :string)
+ ("á" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("Í" "" :string)
+ ("í" "" :string)
+ ("ll" "" :string)
+ ("LL" "" :string)
+ ("Ll" "" :string)
+ ("Ñ" "" :string)
+ ("ñ" "" :string)
+ ("Ó" "" :string)
+ ("ó" "" :string)
+ ("ß" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "es-resolve-diacritics"
+
+ :rules (("Ñ" "" :string)
+ ("ll" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("ñ" "" :string)
+ ("LL" "" :string)
+ ("CH" "" :string)
+ ("Ll" "" :string)
+ ("Á" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Í" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("á" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("é" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "es-resolve-case"
+
+ :rules (("ll" "0" :string)
+ ("ch" "0" :string)
+ ("ú" "0" :string)
+ ("á" "0" :string)
+ ("ñ" "0" :string)
+ ("í" "0" :string)
+ ("ó" "0" :string)
+ ("é" "0" :string)
+ ("ü" "0" :string)
+ ("ß" "00" :string)
+ ("Á" "1" :string)
+ ("Ñ" "1" :string)
+ ("Ó" "1" :string)
+ ("É" "1" :string)
+ ("Í" "1" :string)
+ ("Ch" "1" :string)
+ ("Ú" "1" :string)
+ ("Ü" "1" :string)
+ ("Ll" "1" :string)
+ ("LL" "2" :string)
+ ("CH" "2" :string)
+ ("d" "0" :string)
+ ("y" "0" :string)
+ ("g" "0" :string)
+ ("e" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("w" "0" :string)
+ ("a" "0" :string)
+ ("j" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("t" "0" :string)
+ ("v" "0" :string)
+ ("s" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("x" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("o" "0" :string)
+ ("S" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("E" "1" :string)
+ ("J" "1" :string)
+ ("D" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("F" "1" :string)
+ ("V" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "es-ignore-special"
+
+ :rules (("¡" "" :string)
+ ("¿" "" :string)
+ ("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "es-resolve-special"
+
+ :rules (("Á" "" :string)
+ ("Ñ" "" :string)
+ ("ll" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("Í" "" :string)
+ ("Ch" "" :string)
+ ("Ú" "" :string)
+ ("ch" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("á" "" :string)
+ ("ñ" "" :string)
+ ("LL" "" :string)
+ ("CH" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("Ll" "" :string)
+ ("ß" "" :string)
+ ("¿" "" :string)
+ ("¡" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/swedish/cp1252-lang.xdy b/Master/texmf/xindy/modules/lang/swedish/cp1252-lang.xdy
new file mode 100644
index 00000000000..74426acd236
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/swedish/cp1252-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/swedish/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sv-alphabetize" "sv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sv-resolve-diacritics" "sv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sv-resolve-case" "sv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sv-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/swedish/cp1252-test.xdy b/Master/texmf/xindy/modules/lang/swedish/cp1252-test.xdy
new file mode 100644
index 00000000000..27b171d0234
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/swedish/cp1252-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/swedish/cp1252.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sv-alphabetize" "sv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sv-resolve-diacritics" "sv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sv-resolve-case" "sv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sv-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/swedish/cp1252.xdy b/Master/texmf/xindy/modules/lang/swedish/cp1252.xdy
new file mode 100644
index 00000000000..fd57a53dfe4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/swedish/cp1252.xdy
@@ -0,0 +1,498 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Swedish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "X" :after "V" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "sv-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sv-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sv-resolve-case"
+
+ :rules (("d" "0" :string)
+ ("y" "0" :string)
+ ("" "0" :string)
+ ("g" "0" :string)
+ ("" "0" :string)
+ ("e" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("" "0" :string)
+ ("w" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("a" "0" :string)
+ ("" "0" :string)
+ ("j" "0" :string)
+ ("" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("" "0" :string)
+ ("t" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("v" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("s" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("" "0" :string)
+ ("x" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("o" "0" :string)
+ ("" "00" :string)
+ ("S" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("" "1" :string)
+ ("E" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("J" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("D" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("" "1" :string)
+ ("F" "1" :string)
+ ("" "1" :string)
+ ("V" "1" :string)
+ ("" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "sv-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sv-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/swedish/latin9-lang.xdy b/Master/texmf/xindy/modules/lang/swedish/latin9-lang.xdy
new file mode 100644
index 00000000000..42c7ab85c5c
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/swedish/latin9-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/swedish/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sv-alphabetize" "sv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sv-resolve-diacritics" "sv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sv-resolve-case" "sv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sv-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/swedish/latin9-test.xdy b/Master/texmf/xindy/modules/lang/swedish/latin9-test.xdy
new file mode 100644
index 00000000000..4e61246dcd3
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/swedish/latin9-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/swedish/latin9.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sv-alphabetize" "sv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sv-resolve-diacritics" "sv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sv-resolve-case" "sv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sv-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/swedish/latin9.xdy b/Master/texmf/xindy/modules/lang/swedish/latin9.xdy
new file mode 100644
index 00000000000..36778c76045
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/swedish/latin9.xdy
@@ -0,0 +1,498 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Swedish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "X" :after "V" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "sv-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("C" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sv-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "sv-resolve-case"
+
+ :rules (("" "0" :string)
+ ("d" "0" :string)
+ ("y" "0" :string)
+ ("" "0" :string)
+ ("g" "0" :string)
+ ("" "0" :string)
+ ("e" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("" "0" :string)
+ ("w" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("a" "0" :string)
+ ("" "0" :string)
+ ("j" "0" :string)
+ ("" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("" "0" :string)
+ ("t" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("v" "0" :string)
+ ("" "0" :string)
+ ("s" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("" "0" :string)
+ ("x" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("" "0" :string)
+ ("o" "0" :string)
+ ("" "00" :string)
+ ("S" "1" :string)
+ ("" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("" "1" :string)
+ ("E" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("J" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("D" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("" "1" :string)
+ ("" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("" "1" :string)
+ ("F" "1" :string)
+ ("" "1" :string)
+ ("V" "1" :string)
+ ("" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "sv-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sv-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("" "" :string)
+ ("K" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/swedish/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/swedish/utf8-lang.xdy
new file mode 100644
index 00000000000..3b0fac2397b
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/swedish/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/swedish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sv-alphabetize" "sv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sv-resolve-diacritics" "sv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sv-resolve-case" "sv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sv-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/swedish/utf8-test.xdy b/Master/texmf/xindy/modules/lang/swedish/utf8-test.xdy
new file mode 100644
index 00000000000..08cc1449ef9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/swedish/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/swedish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("sv-alphabetize" "sv-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("sv-resolve-diacritics" "sv-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("sv-resolve-case" "sv-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("sv-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/swedish/utf8.xdy b/Master/texmf/xindy/modules/lang/swedish/utf8.xdy
new file mode 100644
index 00000000000..8b545d0203e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/swedish/utf8.xdy
@@ -0,0 +1,546 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Swedish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "P" :after "O" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "X" :after "V" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Å" :after "Z" :prefixes (""))
+(define-letter-group "Ä" :after "Å" :prefixes (""))
+(define-letter-group "Ö" :after "Ä" :prefixes (""))
+
+(define-rule-set "sv-alphabetize"
+
+ :rules (("Á" "" :string)
+ ("Â" "" :string)
+ ("á" "" :string)
+ ("â" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("Ç" "" :string)
+ ("č" "" :string)
+ ("Ć" "" :string)
+ ("ç" "" :string)
+ ("Č" "" :string)
+ ("ć" "" :string)
+ ("ð" "" :string)
+ ("Ð" "" :string)
+ ("É" "" :string)
+ ("Ê" "" :string)
+ ("È" "" :string)
+ ("Ë" "" :string)
+ ("è" "" :string)
+ ("ë" "" :string)
+ ("ê" "" :string)
+ ("é" "" :string)
+ ("Î" "" :string)
+ ("Í" "" :string)
+ ("Ï" "" :string)
+ ("î" "" :string)
+ ("ï" "" :string)
+ ("ì" "" :string)
+ ("í" "" :string)
+ ("Ì" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ñ" "" :string)
+ ("ñ" "" :string)
+ ("Ń" "" :string)
+ ("ń" "" :string)
+ ("Ô" "" :string)
+ ("Ó" "" :string)
+ ("Ò" "" :string)
+ ("ô" "" :string)
+ ("ò" "" :string)
+ ("ó" "" :string)
+ ("Ř" "" :string)
+ ("ř" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("ś" "" :string)
+ ("Ś" "" :string)
+ ("ß" "" :string)
+ ("ù" "" :string)
+ ("Û" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ù" "" :string)
+ ("û" "" :string)
+ ("Ý" "" :string)
+ ("ý" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("Å" "" :string)
+ ("å" "" :string)
+ ("Ä" "" :string)
+ ("Æ" "" :string)
+ ("ä" "" :string)
+ ("æ" "" :string)
+ ("Ö" "" :string)
+ ("ø" "" :string)
+ ("ö" "" :string)
+ ("Ø" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "sv-resolve-diacritics"
+
+ :rules (("Ö" "" :string)
+ ("Ä" "" :string)
+ ("Å" "" :string)
+ ("ö" "" :string)
+ ("ä" "" :string)
+ ("å" "" :string)
+ ("Ý" "" :string)
+ ("Á" "" :string)
+ ("ð" "" :string)
+ ("Ç" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Í" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ú" "" :string)
+ ("Ř" "" :string)
+ ("ø" "" :string)
+ ("ú" "" :string)
+ ("Æ" "" :string)
+ ("á" "" :string)
+ ("ř" "" :string)
+ ("ç" "" :string)
+ ("í" "" :string)
+ ("Ø" "" :string)
+ ("æ" "" :string)
+ ("ó" "" :string)
+ ("ś" "" :string)
+ ("Ń" "" :string)
+ ("ń" "" :string)
+ ("é" "" :string)
+ ("Ś" "" :string)
+ ("Ð" "" :string)
+ ("ù" "" :string)
+ ("Ñ" "" :string)
+ ("Ò" "" :string)
+ ("Ü" "" :string)
+ ("Ù" "" :string)
+ ("ñ" "" :string)
+ ("Š" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("š" "" :string)
+ ("Ć" "" :string)
+ ("ì" "" :string)
+ ("à" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("Ì" "" :string)
+ ("ü" "" :string)
+ ("ć" "" :string)
+ ("Î" "" :string)
+ ("Â" "" :string)
+ ("Ô" "" :string)
+ ("Û" "" :string)
+ ("ô" "" :string)
+ ("č" "" :string)
+ ("î" "" :string)
+ ("Ê" "" :string)
+ ("û" "" :string)
+ ("â" "" :string)
+ ("Č" "" :string)
+ ("ê" "" :string)
+ ("Ï" "" :string)
+ ("ï" "" :string)
+ ("Ë" "" :string)
+ ("ë" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ))
+
+(define-rule-set "sv-resolve-case"
+
+ :rules (("ù" "0" :string)
+ ("ð" "0" :string)
+ ("ý" "0" :string)
+ ("ô" "0" :string)
+ ("ł" "0" :string)
+ ("ø" "0" :string)
+ ("č" "0" :string)
+ ("ú" "0" :string)
+ ("î" "0" :string)
+ ("ï" "0" :string)
+ ("á" "0" :string)
+ ("ö" "0" :string)
+ ("ñ" "0" :string)
+ ("û" "0" :string)
+ ("ř" "0" :string)
+ ("ä" "0" :string)
+ ("ò" "0" :string)
+ ("š" "0" :string)
+ ("å" "0" :string)
+ ("ç" "0" :string)
+ ("â" "0" :string)
+ ("ì" "0" :string)
+ ("à" "0" :string)
+ ("í" "0" :string)
+ ("æ" "0" :string)
+ ("ó" "0" :string)
+ ("è" "0" :string)
+ ("ë" "0" :string)
+ ("ś" "0" :string)
+ ("ê" "0" :string)
+ ("ń" "0" :string)
+ ("é" "0" :string)
+ ("ü" "0" :string)
+ ("ć" "0" :string)
+ ("ß" "00" :string)
+ ("Ý" "1" :string)
+ ("Ö" "1" :string)
+ ("Î" "1" :string)
+ ("Á" "1" :string)
+ ("Â" "1" :string)
+ ("Ñ" "1" :string)
+ ("Ô" "1" :string)
+ ("Û" "1" :string)
+ ("Ç" "1" :string)
+ ("Ó" "1" :string)
+ ("É" "1" :string)
+ ("Ò" "1" :string)
+ ("Í" "1" :string)
+ ("Ł" "1" :string)
+ ("Ï" "1" :string)
+ ("Ú" "1" :string)
+ ("Ř" "1" :string)
+ ("Ä" "1" :string)
+ ("Ü" "1" :string)
+ ("Æ" "1" :string)
+ ("Ê" "1" :string)
+ ("Å" "1" :string)
+ ("Ù" "1" :string)
+ ("Š" "1" :string)
+ ("È" "1" :string)
+ ("Ć" "1" :string)
+ ("Ë" "1" :string)
+ ("Ø" "1" :string)
+ ("À" "1" :string)
+ ("Č" "1" :string)
+ ("Ń" "1" :string)
+ ("Ì" "1" :string)
+ ("Ś" "1" :string)
+ ("Ð" "1" :string)
+ ("d" "0" :string)
+ ("y" "0" :string)
+ ("g" "0" :string)
+ ("e" "0" :string)
+ ("q" "0" :string)
+ ("b" "0" :string)
+ ("z" "0" :string)
+ ("w" "0" :string)
+ ("a" "0" :string)
+ ("j" "0" :string)
+ ("u" "0" :string)
+ ("k" "0" :string)
+ ("t" "0" :string)
+ ("v" "0" :string)
+ ("s" "0" :string)
+ ("c" "0" :string)
+ ("r" "0" :string)
+ ("x" "0" :string)
+ ("h" "0" :string)
+ ("f" "0" :string)
+ ("i" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("p" "0" :string)
+ ("o" "0" :string)
+ ("S" "1" :string)
+ ("K" "1" :string)
+ ("Y" "1" :string)
+ ("E" "1" :string)
+ ("J" "1" :string)
+ ("D" "1" :string)
+ ("Q" "1" :string)
+ ("M" "1" :string)
+ ("C" "1" :string)
+ ("L" "1" :string)
+ ("X" "1" :string)
+ ("P" "1" :string)
+ ("T" "1" :string)
+ ("N" "1" :string)
+ ("Z" "1" :string)
+ ("W" "1" :string)
+ ("B" "1" :string)
+ ("H" "1" :string)
+ ("I" "1" :string)
+ ("G" "1" :string)
+ ("U" "1" :string)
+ ("F" "1" :string)
+ ("V" "1" :string)
+ ("A" "1" :string)
+ ("O" "1" :string)
+ ("R" "1" :string)
+ ))
+
+(define-rule-set "sv-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "sv-resolve-special"
+
+ :rules (("Ý" "" :string)
+ ("ù" "" :string)
+ ("Ö" "" :string)
+ ("Î" "" :string)
+ ("Á" "" :string)
+ ("Â" "" :string)
+ ("Ñ" "" :string)
+ ("ð" "" :string)
+ ("Ô" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("Ó" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Ò" "" :string)
+ ("Í" "" :string)
+ ("ô" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ï" "" :string)
+ ("Ú" "" :string)
+ ("Ř" "" :string)
+ ("ø" "" :string)
+ ("č" "" :string)
+ ("Ä" "" :string)
+ ("ú" "" :string)
+ ("Ü" "" :string)
+ ("î" "" :string)
+ ("Æ" "" :string)
+ ("ï" "" :string)
+ ("Ê" "" :string)
+ ("á" "" :string)
+ ("Å" "" :string)
+ ("Ù" "" :string)
+ ("ö" "" :string)
+ ("ñ" "" :string)
+ ("û" "" :string)
+ ("Š" "" :string)
+ ("È" "" :string)
+ ("ř" "" :string)
+ ("ä" "" :string)
+ ("ò" "" :string)
+ ("š" "" :string)
+ ("å" "" :string)
+ ("Ć" "" :string)
+ ("ç" "" :string)
+ ("â" "" :string)
+ ("ì" "" :string)
+ ("Ë" "" :string)
+ ("à" "" :string)
+ ("í" "" :string)
+ ("Ø" "" :string)
+ ("æ" "" :string)
+ ("ó" "" :string)
+ ("è" "" :string)
+ ("À" "" :string)
+ ("ë" "" :string)
+ ("Č" "" :string)
+ ("ś" "" :string)
+ ("Ń" "" :string)
+ ("ê" "" :string)
+ ("Ì" "" :string)
+ ("ń" "" :string)
+ ("é" "" :string)
+ ("ü" "" :string)
+ ("ć" "" :string)
+ ("Ś" "" :string)
+ ("Ð" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/turkish/latin3-lang.xdy b/Master/texmf/xindy/modules/lang/turkish/latin3-lang.xdy
new file mode 100644
index 00000000000..9fe59b9e2a4
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/turkish/latin3-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/turkish/latin3.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("tr-alphabetize" "tr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("tr-resolve-diacritics" "tr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("tr-resolve-case" "tr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("tr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/turkish/latin3-test.xdy b/Master/texmf/xindy/modules/lang/turkish/latin3-test.xdy
new file mode 100644
index 00000000000..56a5b47ebec
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/turkish/latin3-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/turkish/latin3.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("tr-alphabetize" "tr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("tr-resolve-diacritics" "tr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("tr-resolve-case" "tr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("tr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/turkish/latin3.xdy b/Master/texmf/xindy/modules/lang/turkish/latin3.xdy
new file mode 100644
index 00000000000..9f9e0da7ac0
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/turkish/latin3.xdy
@@ -0,0 +1,338 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Turkish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "" :after "G" :prefixes (""))
+(define-letter-group "H" :after "" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "" :after "I" :prefixes (""))
+(define-letter-group "J" :after "" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "" :after "O" :prefixes (""))
+(define-letter-group "P" :after "" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "" :after "U" :prefixes (""))
+(define-letter-group "V" :after "" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "tr-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "tr-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "tr-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "tr-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "tr-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/turkish/latin5-lang.xdy b/Master/texmf/xindy/modules/lang/turkish/latin5-lang.xdy
new file mode 100644
index 00000000000..101bb5e32a5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/turkish/latin5-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/turkish/latin5.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("tr-alphabetize" "tr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("tr-resolve-diacritics" "tr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("tr-resolve-case" "tr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("tr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/turkish/latin5-test.xdy b/Master/texmf/xindy/modules/lang/turkish/latin5-test.xdy
new file mode 100644
index 00000000000..eb7912a9db9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/turkish/latin5-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/turkish/latin5.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("tr-alphabetize" "tr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("tr-resolve-diacritics" "tr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("tr-resolve-case" "tr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("tr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/turkish/latin5.xdy b/Master/texmf/xindy/modules/lang/turkish/latin5.xdy
new file mode 100644
index 00000000000..0c3524b0966
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/turkish/latin5.xdy
@@ -0,0 +1,338 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Turkish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "" :after "G" :prefixes (""))
+(define-letter-group "H" :after "" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "" :after "I" :prefixes (""))
+(define-letter-group "J" :after "" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "" :after "O" :prefixes (""))
+(define-letter-group "P" :after "" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "" :after "U" :prefixes (""))
+(define-letter-group "V" :after "" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "tr-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "tr-resolve-diacritics"
+
+ :rules (("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "tr-resolve-case"
+
+ :rules (("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "tr-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "tr-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/turkish/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/turkish/utf8-lang.xdy
new file mode 100644
index 00000000000..a44b6112266
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/turkish/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/turkish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("tr-alphabetize" "tr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("tr-resolve-diacritics" "tr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("tr-resolve-case" "tr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("tr-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/turkish/utf8-test.xdy b/Master/texmf/xindy/modules/lang/turkish/utf8-test.xdy
new file mode 100644
index 00000000000..f83b02cad96
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/turkish/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/turkish/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("tr-alphabetize" "tr-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("tr-resolve-diacritics" "tr-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("tr-resolve-case" "tr-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("tr-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/turkish/utf8.xdy b/Master/texmf/xindy/modules/lang/turkish/utf8.xdy
new file mode 100644
index 00000000000..486b490c3fa
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/turkish/utf8.xdy
@@ -0,0 +1,338 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Turkish
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Ç" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Ç" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "F" :after "E" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "Ğ" :after "G" :prefixes (""))
+(define-letter-group "H" :after "Ğ" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "İ" :after "I" :prefixes (""))
+(define-letter-group "J" :after "İ" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "Ö" :after "O" :prefixes (""))
+(define-letter-group "P" :after "Ö" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "Ş" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Ş" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "Ü" :after "U" :prefixes (""))
+(define-letter-group "V" :after "Ü" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "tr-alphabetize"
+
+ :rules (("Â" "" :string)
+ ("â" "" :string)
+ ("Ç" "" :string)
+ ("ç" "" :string)
+ ("ğ" "" :string)
+ ("Ğ" "" :string)
+ ("ı" "" :string)
+ ("İ" "" :string)
+ ("Ö" "" :string)
+ ("ö" "" :string)
+ ("ş" "" :string)
+ ("Ş" "" :string)
+ ("Û" "" :string)
+ ("û" "" :string)
+ ("Ü" "" :string)
+ ("ü" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "tr-resolve-diacritics"
+
+ :rules (("İ" "" :string)
+ ("Ö" "" :string)
+ ("Ç" "" :string)
+ ("Ü" "" :string)
+ ("ö" "" :string)
+ ("ğ" "" :string)
+ ("ş" "" :string)
+ ("ı" "" :string)
+ ("ç" "" :string)
+ ("Ğ" "" :string)
+ ("Ş" "" :string)
+ ("ü" "" :string)
+ ("Â" "" :string)
+ ("Û" "" :string)
+ ("û" "" :string)
+ ("â" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "tr-resolve-case"
+
+ :rules (("İ" "8" :string)
+ ("Ö" "8" :string)
+ ("Â" "8" :string)
+ ("Û" "8" :string)
+ ("Ç" "8" :string)
+ ("Ü" "8" :string)
+ ("Ğ" "8" :string)
+ ("Ş" "8" :string)
+ ("ö" "9" :string)
+ ("û" "9" :string)
+ ("ğ" "9" :string)
+ ("ş" "9" :string)
+ ("ı" "9" :string)
+ ("ç" "9" :string)
+ ("â" "9" :string)
+ ("ü" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "tr-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "tr-resolve-special"
+
+ :rules (("İ" "" :string)
+ ("Ö" "" :string)
+ ("Â" "" :string)
+ ("Û" "" :string)
+ ("Ç" "" :string)
+ ("Ü" "" :string)
+ ("ö" "" :string)
+ ("û" "" :string)
+ ("ğ" "" :string)
+ ("ş" "" :string)
+ ("ı" "" :string)
+ ("ç" "" :string)
+ ("â" "" :string)
+ ("Ğ" "" :string)
+ ("Ş" "" :string)
+ ("ü" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/ukrainian/cp1251-lang.xdy b/Master/texmf/xindy/modules/lang/ukrainian/cp1251-lang.xdy
new file mode 100644
index 00000000000..48f4bda82a6
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/ukrainian/cp1251-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/ukrainian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("uk-alphabetize" "uk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("uk-resolve-diacritics" "uk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("uk-resolve-case" "uk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("uk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/ukrainian/cp1251-test.xdy b/Master/texmf/xindy/modules/lang/ukrainian/cp1251-test.xdy
new file mode 100644
index 00000000000..b84a5105a3a
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/ukrainian/cp1251-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/ukrainian/cp1251.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("uk-alphabetize" "uk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("uk-resolve-diacritics" "uk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("uk-resolve-case" "uk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("uk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/ukrainian/cp1251.xdy b/Master/texmf/xindy/modules/lang/ukrainian/cp1251.xdy
new file mode 100644
index 00000000000..2c36aaebfff
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/ukrainian/cp1251.xdy
@@ -0,0 +1,366 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Ukrainian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "uk-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "uk-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "uk-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "uk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "uk-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/ukrainian/koi8-u-lang.xdy b/Master/texmf/xindy/modules/lang/ukrainian/koi8-u-lang.xdy
new file mode 100644
index 00000000000..ddc684f6749
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/ukrainian/koi8-u-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/ukrainian/koi8-u.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("uk-alphabetize" "uk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("uk-resolve-diacritics" "uk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("uk-resolve-case" "uk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("uk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/ukrainian/koi8-u-test.xdy b/Master/texmf/xindy/modules/lang/ukrainian/koi8-u-test.xdy
new file mode 100644
index 00000000000..61489377a76
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/ukrainian/koi8-u-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/ukrainian/koi8-u.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("uk-alphabetize" "uk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("uk-resolve-diacritics" "uk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("uk-resolve-case" "uk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("uk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/ukrainian/koi8-u.xdy b/Master/texmf/xindy/modules/lang/ukrainian/koi8-u.xdy
new file mode 100644
index 00000000000..1c8bedd0f0e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/ukrainian/koi8-u.xdy
@@ -0,0 +1,366 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Ukrainian
+
+(define-letter-group "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+(define-letter-group "" :after "" :prefixes (""))
+
+(define-rule-set "uk-alphabetize"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "uk-resolve-diacritics"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "uk-resolve-case"
+
+ :rules (("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ))
+
+(define-rule-set "uk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "uk-resolve-special"
+
+ :rules (("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/ukrainian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/ukrainian/utf8-lang.xdy
new file mode 100644
index 00000000000..64c1f8798e5
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/ukrainian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/ukrainian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("uk-alphabetize" "uk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("uk-resolve-diacritics" "uk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("uk-resolve-case" "uk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("uk-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/ukrainian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/ukrainian/utf8-test.xdy
new file mode 100644
index 00000000000..f948d2f51f1
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/ukrainian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/ukrainian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("uk-alphabetize" "uk-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("uk-resolve-diacritics" "uk-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("uk-resolve-case" "uk-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("uk-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/ukrainian/utf8.xdy b/Master/texmf/xindy/modules/lang/ukrainian/utf8.xdy
new file mode 100644
index 00000000000..84bb253994e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/ukrainian/utf8.xdy
@@ -0,0 +1,366 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Ukrainian
+
+(define-letter-group "А" :prefixes (""))
+(define-letter-group "Б" :after "А" :prefixes (""))
+(define-letter-group "В" :after "Б" :prefixes (""))
+(define-letter-group "Г" :after "В" :prefixes (""))
+(define-letter-group "Ґ" :after "Г" :prefixes (""))
+(define-letter-group "Д" :after "Ґ" :prefixes (""))
+(define-letter-group "Е" :after "Д" :prefixes (""))
+(define-letter-group "Є" :after "Е" :prefixes (""))
+(define-letter-group "Ж" :after "Є" :prefixes (""))
+(define-letter-group "З" :after "Ж" :prefixes (""))
+(define-letter-group "И" :after "З" :prefixes (""))
+(define-letter-group "І" :after "И" :prefixes (""))
+(define-letter-group "Ї" :after "І" :prefixes (""))
+(define-letter-group "Й" :after "Ї" :prefixes (""))
+(define-letter-group "К" :after "Й" :prefixes (""))
+(define-letter-group "Л" :after "К" :prefixes (""))
+(define-letter-group "М" :after "Л" :prefixes (""))
+(define-letter-group "Н" :after "М" :prefixes (""))
+(define-letter-group "О" :after "Н" :prefixes (""))
+(define-letter-group "П" :after "О" :prefixes (""))
+(define-letter-group "Р" :after "П" :prefixes (""))
+(define-letter-group "С" :after "Р" :prefixes (""))
+(define-letter-group "Т" :after "С" :prefixes (""))
+(define-letter-group "У" :after "Т" :prefixes (""))
+(define-letter-group "Ф" :after "У" :prefixes (""))
+(define-letter-group "Х" :after "Ф" :prefixes (""))
+(define-letter-group "Ц" :after "Х" :prefixes (""))
+(define-letter-group "Ч" :after "Ц" :prefixes (""))
+(define-letter-group "Ш" :after "Ч" :prefixes (""))
+(define-letter-group "Щ" :after "Ш" :prefixes (""))
+(define-letter-group "Ъ" :after "Щ" :prefixes (""))
+(define-letter-group "Ы" :after "Ъ" :prefixes (""))
+(define-letter-group "Э" :after "Ы" :prefixes (""))
+(define-letter-group "Ю" :after "Э" :prefixes (""))
+(define-letter-group "Я" :after "Ю" :prefixes (""))
+(define-letter-group "Ь" :after "Я" :prefixes (""))
+
+(define-rule-set "uk-alphabetize"
+
+ :rules (("а" "" :string)
+ ("А" "" :string)
+ ("б" "" :string)
+ ("Б" "" :string)
+ ("в" "" :string)
+ ("В" "" :string)
+ ("г" "" :string)
+ ("Г" "" :string)
+ ("ґ" "" :string)
+ ("Ґ" "" :string)
+ ("Д" "" :string)
+ ("д" "" :string)
+ ("е" "" :string)
+ ("Ё" "" :string)
+ ("ё" "" :string)
+ ("Е" "" :string)
+ ("Є" "" :string)
+ ("є" "" :string)
+ ("Ж" "" :string)
+ ("ж" "" :string)
+ ("З" "" :string)
+ ("з" "" :string)
+ ("И" "" :string)
+ ("и" "" :string)
+ ("І" "" :string)
+ ("і" "" :string)
+ ("ї" "" :string)
+ ("Ї" "" :string)
+ ("й" "" :string)
+ ("Й" "" :string)
+ ("к" "" :string)
+ ("К" "" :string)
+ ("Л" "" :string)
+ ("л" "" :string)
+ ("М" "" :string)
+ ("м" "" :string)
+ ("Н" "" :string)
+ ("н" "" :string)
+ ("о" "" :string)
+ ("О" "" :string)
+ ("п" "" :string)
+ ("П" "" :string)
+ ("р" "" :string)
+ ("Р" "" :string)
+ ("С" "" :string)
+ ("с" "" :string)
+ ("т" "" :string)
+ ("Т" "" :string)
+ ("у" "" :string)
+ ("У" "" :string)
+ ("ф" "" :string)
+ ("Ф" "" :string)
+ ("х" "" :string)
+ ("Х" "" :string)
+ ("ц" "" :string)
+ ("Ц" "" :string)
+ ("ч" "" :string)
+ ("Ч" "" :string)
+ ("Ш" "" :string)
+ ("ш" "" :string)
+ ("Щ" "" :string)
+ ("щ" "" :string)
+ ("ъ" "" :string)
+ ("Ъ" "" :string)
+ ("ы" "" :string)
+ ("Ы" "" :string)
+ ("э" "" :string)
+ ("Э" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("Я" "" :string)
+ ("я" "" :string)
+ ("ь" "" :string)
+ ("Ь" "" :string)
+ ))
+
+(define-rule-set "uk-resolve-diacritics"
+
+ :rules (("п" "" :string)
+ ("Є" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("И" "" :string)
+ ("й" "" :string)
+ ("ґ" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("Щ" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("э" "" :string)
+ ("х" "" :string)
+ ("ы" "" :string)
+ ("Я" "" :string)
+ ("ш" "" :string)
+ ("ї" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("щ" "" :string)
+ ("є" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("а" "" :string)
+ ("Ї" "" :string)
+ ("І" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("Ґ" "" :string)
+ ("і" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("я" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("А" "" :string)
+ ("Ы" "" :string)
+ ("Е" "" :string)
+ ("Э" "" :string)
+ ("Ъ" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("Ё" "" :string)
+ ("ё" "" :string)
+ ))
+
+(define-rule-set "uk-resolve-case"
+
+ :rules (("Є" "8" :string)
+ ("И" "8" :string)
+ ("П" "8" :string)
+ ("Л" "8" :string)
+ ("Ж" "8" :string)
+ ("Д" "8" :string)
+ ("Н" "8" :string)
+ ("Ш" "8" :string)
+ ("Щ" "8" :string)
+ ("К" "8" :string)
+ ("Й" "8" :string)
+ ("Б" "8" :string)
+ ("Я" "8" :string)
+ ("Ч" "8" :string)
+ ("Р" "8" :string)
+ ("М" "8" :string)
+ ("Т" "8" :string)
+ ("З" "8" :string)
+ ("Ц" "8" :string)
+ ("С" "8" :string)
+ ("Ф" "8" :string)
+ ("Ї" "8" :string)
+ ("І" "8" :string)
+ ("В" "8" :string)
+ ("О" "8" :string)
+ ("Х" "8" :string)
+ ("Ґ" "8" :string)
+ ("У" "8" :string)
+ ("Ё" "8" :string)
+ ("Г" "8" :string)
+ ("Ь" "8" :string)
+ ("А" "8" :string)
+ ("Ы" "8" :string)
+ ("Е" "8" :string)
+ ("Э" "8" :string)
+ ("Ъ" "8" :string)
+ ("Ю" "8" :string)
+ ("п" "9" :string)
+ ("ч" "9" :string)
+ ("е" "9" :string)
+ ("б" "9" :string)
+ ("у" "9" :string)
+ ("й" "9" :string)
+ ("ґ" "9" :string)
+ ("р" "9" :string)
+ ("к" "9" :string)
+ ("т" "9" :string)
+ ("ц" "9" :string)
+ ("о" "9" :string)
+ ("ъ" "9" :string)
+ ("и" "9" :string)
+ ("ф" "9" :string)
+ ("л" "9" :string)
+ ("г" "9" :string)
+ ("э" "9" :string)
+ ("х" "9" :string)
+ ("ы" "9" :string)
+ ("ш" "9" :string)
+ ("ї" "9" :string)
+ ("щ" "9" :string)
+ ("є" "9" :string)
+ ("д" "9" :string)
+ ("ь" "9" :string)
+ ("в" "9" :string)
+ ("а" "9" :string)
+ ("н" "9" :string)
+ ("м" "9" :string)
+ ("з" "9" :string)
+ ("ж" "9" :string)
+ ("і" "9" :string)
+ ("с" "9" :string)
+ ("я" "9" :string)
+ ("ё" "9" :string)
+ ("ю" "9" :string)
+ ))
+
+(define-rule-set "uk-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "uk-resolve-special"
+
+ :rules (("п" "" :string)
+ ("Є" "" :string)
+ ("ч" "" :string)
+ ("е" "" :string)
+ ("б" "" :string)
+ ("у" "" :string)
+ ("И" "" :string)
+ ("й" "" :string)
+ ("ґ" "" :string)
+ ("р" "" :string)
+ ("к" "" :string)
+ ("т" "" :string)
+ ("П" "" :string)
+ ("ц" "" :string)
+ ("Л" "" :string)
+ ("Ж" "" :string)
+ ("о" "" :string)
+ ("Д" "" :string)
+ ("ъ" "" :string)
+ ("Н" "" :string)
+ ("и" "" :string)
+ ("ф" "" :string)
+ ("Ш" "" :string)
+ ("л" "" :string)
+ ("Щ" "" :string)
+ ("К" "" :string)
+ ("Й" "" :string)
+ ("Б" "" :string)
+ ("г" "" :string)
+ ("э" "" :string)
+ ("х" "" :string)
+ ("ы" "" :string)
+ ("Я" "" :string)
+ ("ш" "" :string)
+ ("ї" "" :string)
+ ("Ч" "" :string)
+ ("Р" "" :string)
+ ("щ" "" :string)
+ ("є" "" :string)
+ ("д" "" :string)
+ ("М" "" :string)
+ ("ь" "" :string)
+ ("Т" "" :string)
+ ("З" "" :string)
+ ("в" "" :string)
+ ("Ц" "" :string)
+ ("С" "" :string)
+ ("Ф" "" :string)
+ ("а" "" :string)
+ ("Ї" "" :string)
+ ("І" "" :string)
+ ("В" "" :string)
+ ("О" "" :string)
+ ("н" "" :string)
+ ("Х" "" :string)
+ ("м" "" :string)
+ ("з" "" :string)
+ ("ж" "" :string)
+ ("Ґ" "" :string)
+ ("і" "" :string)
+ ("с" "" :string)
+ ("У" "" :string)
+ ("я" "" :string)
+ ("Ё" "" :string)
+ ("Г" "" :string)
+ ("Ь" "" :string)
+ ("ё" "" :string)
+ ("А" "" :string)
+ ("Ы" "" :string)
+ ("Е" "" :string)
+ ("Э" "" :string)
+ ("Ъ" "" :string)
+ ("ю" "" :string)
+ ("Ю" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/upper-sorbian/cp1250-lang.xdy b/Master/texmf/xindy/modules/lang/upper-sorbian/cp1250-lang.xdy
new file mode 100644
index 00000000000..f1e519c0a4e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/upper-sorbian/cp1250-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/upper-sorbian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s2-alphabetize" "s2-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s2-resolve-diacritics" "s2-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s2-resolve-case" "s2-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s2-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/upper-sorbian/cp1250-test.xdy b/Master/texmf/xindy/modules/lang/upper-sorbian/cp1250-test.xdy
new file mode 100644
index 00000000000..55c801f8adf
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/upper-sorbian/cp1250-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/upper-sorbian/cp1250.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s2-alphabetize" "s2-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s2-resolve-diacritics" "s2-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s2-resolve-case" "s2-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s2-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/upper-sorbian/cp1250.xdy b/Master/texmf/xindy/modules/lang/upper-sorbian/cp1250.xdy
new file mode 100644
index 00000000000..3f36cd942ec
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/upper-sorbian/cp1250.xdy
@@ -0,0 +1,379 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Upper Sorbian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "D" :after "D" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "" :after "E" :prefixes (""))
+(define-letter-group "F" :after "" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "" :after "K" :prefixes (""))
+(define-letter-group "L" :after "" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "" :after "O" :prefixes (""))
+(define-letter-group "P" :after "" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "" :after "R" :prefixes (""))
+(define-letter-group "S" :after "" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "" :after "T" :prefixes (""))
+(define-letter-group "U" :after "" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "s2-alphabetize"
+
+ :rules (("D" "" :string)
+ ("D" "" :string)
+ ("d" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "s2-resolve-diacritics"
+
+ :rules (("Ch" "" :string)
+ ("D" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("D" "" :string)
+ ("d" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "s2-resolve-case"
+
+ :rules (("CH" "7" :string)
+ ("D" "7" :string)
+ ("Ch" "8" :string)
+ ("D" "8" :string)
+ ("ch" "9" :string)
+ ("d" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "s2-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "s2-resolve-special"
+
+ :rules (("Ch" "" :string)
+ ("D" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("D" "" :string)
+ ("d" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/upper-sorbian/latin2-lang.xdy b/Master/texmf/xindy/modules/lang/upper-sorbian/latin2-lang.xdy
new file mode 100644
index 00000000000..dfb0371e4a9
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/upper-sorbian/latin2-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/upper-sorbian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s2-alphabetize" "s2-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s2-resolve-diacritics" "s2-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s2-resolve-case" "s2-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s2-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/upper-sorbian/latin2-test.xdy b/Master/texmf/xindy/modules/lang/upper-sorbian/latin2-test.xdy
new file mode 100644
index 00000000000..6f82e27f199
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/upper-sorbian/latin2-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/upper-sorbian/latin2.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s2-alphabetize" "s2-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s2-resolve-diacritics" "s2-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s2-resolve-case" "s2-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s2-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/upper-sorbian/latin2.xdy b/Master/texmf/xindy/modules/lang/upper-sorbian/latin2.xdy
new file mode 100644
index 00000000000..3f85e70dbc7
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/upper-sorbian/latin2.xdy
@@ -0,0 +1,379 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Upper Sorbian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "" :after "C" :prefixes (""))
+(define-letter-group "D" :after "" :prefixes (""))
+(define-letter-group "D" :after "D" :prefixes (""))
+(define-letter-group "E" :after "D" :prefixes (""))
+(define-letter-group "" :after "E" :prefixes (""))
+(define-letter-group "F" :after "" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "" :after "K" :prefixes (""))
+(define-letter-group "L" :after "" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "" :after "N" :prefixes (""))
+(define-letter-group "O" :after "" :prefixes (""))
+(define-letter-group "" :after "O" :prefixes (""))
+(define-letter-group "P" :after "" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "" :after "R" :prefixes (""))
+(define-letter-group "S" :after "" :prefixes (""))
+(define-letter-group "" :after "S" :prefixes (""))
+(define-letter-group "T" :after "" :prefixes (""))
+(define-letter-group "" :after "T" :prefixes (""))
+(define-letter-group "U" :after "" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "" :after "Z" :prefixes (""))
+
+(define-rule-set "s2-alphabetize"
+
+ :rules (("D" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "s2-resolve-diacritics"
+
+ :rules (("D" "" :string)
+ ("Ch" "" :string)
+ ("d" "" :string)
+ ("ch" "" :string)
+ ("D" "" :string)
+ ("CH" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ))
+
+(define-rule-set "s2-resolve-case"
+
+ :rules (("D" "7" :string)
+ ("CH" "7" :string)
+ ("Ch" "8" :string)
+ ("D" "8" :string)
+ ("d" "9" :string)
+ ("ch" "9" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("" "8" :string)
+ ("D" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("" "8" :string)
+ ("" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("" "9" :string)
+ ("h" "9" :string)
+ ("" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("" "9" :string)
+ ("o" "9" :string)
+ ("" "99" :string)
+ ))
+
+(define-rule-set "s2-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "s2-resolve-special"
+
+ :rules (("D" "" :string)
+ ("Ch" "" :string)
+ ("d" "" :string)
+ ("ch" "" :string)
+ ("D" "" :string)
+ ("CH" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("Q" "" :string)
+ ("" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("" "" :string)
+ ("k" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("h" "" :string)
+ ("" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("" "" :string)
+ ("o" "" :string)
+ ("" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/upper-sorbian/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/upper-sorbian/utf8-lang.xdy
new file mode 100644
index 00000000000..e3900bb989e
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/upper-sorbian/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/upper-sorbian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s2-alphabetize" "s2-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s2-resolve-diacritics" "s2-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s2-resolve-case" "s2-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s2-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/upper-sorbian/utf8-test.xdy b/Master/texmf/xindy/modules/lang/upper-sorbian/utf8-test.xdy
new file mode 100644
index 00000000000..299185d6333
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/upper-sorbian/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/upper-sorbian/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("s2-alphabetize" "s2-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("s2-resolve-diacritics" "s2-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("s2-resolve-case" "s2-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("s2-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/upper-sorbian/utf8.xdy b/Master/texmf/xindy/modules/lang/upper-sorbian/utf8.xdy
new file mode 100644
index 00000000000..a5cac5d1e83
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/upper-sorbian/utf8.xdy
@@ -0,0 +1,379 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Upper Sorbian
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "B" :after "A" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "Č" :after "C" :prefixes (""))
+(define-letter-group "D" :after "Č" :prefixes (""))
+(define-letter-group "Dź" :after "D" :prefixes (""))
+(define-letter-group "E" :after "Dź" :prefixes (""))
+(define-letter-group "Ě" :after "E" :prefixes (""))
+(define-letter-group "F" :after "Ě" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "Ch" :after "H" :prefixes (""))
+(define-letter-group "I" :after "Ch" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "Ł" :after "K" :prefixes (""))
+(define-letter-group "L" :after "Ł" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "Ń" :after "N" :prefixes (""))
+(define-letter-group "O" :after "Ń" :prefixes (""))
+(define-letter-group "Ó" :after "O" :prefixes (""))
+(define-letter-group "P" :after "Ó" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "Ř" :after "R" :prefixes (""))
+(define-letter-group "S" :after "Ř" :prefixes (""))
+(define-letter-group "Š" :after "S" :prefixes (""))
+(define-letter-group "T" :after "Š" :prefixes (""))
+(define-letter-group "Ć" :after "T" :prefixes (""))
+(define-letter-group "U" :after "Ć" :prefixes (""))
+(define-letter-group "V" :after "U" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+(define-letter-group "Ž" :after "Z" :prefixes (""))
+
+(define-rule-set "s2-alphabetize"
+
+ :rules (("DŹ" "" :string)
+ ("Dź" "" :string)
+ ("dź" "" :string)
+ ("č" "" :string)
+ ("Č" "" :string)
+ ("Ě" "" :string)
+ ("ě" "" :string)
+ ("Ch" "" :string)
+ ("ch" "" :string)
+ ("CH" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ń" "" :string)
+ ("ń" "" :string)
+ ("Ó" "" :string)
+ ("ó" "" :string)
+ ("Ř" "" :string)
+ ("ř" "" :string)
+ ("ß" "" :string)
+ ("Š" "" :string)
+ ("š" "" :string)
+ ("Ć" "" :string)
+ ("ć" "" :string)
+ ("Ž" "" :string)
+ ("ž" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("b" "" :string)
+ ("B" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("d" "" :string)
+ ("D" "" :string)
+ ("E" "" :string)
+ ("e" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("I" "" :string)
+ ("i" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("K" "" :string)
+ ("k" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("O" "" :string)
+ ("o" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("q" "" :string)
+ ("Q" "" :string)
+ ("r" "" :string)
+ ("R" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("v" "" :string)
+ ("V" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("Y" "" :string)
+ ("y" "" :string)
+ ("z" "" :string)
+ ("Z" "" :string)
+ ))
+
+(define-rule-set "s2-resolve-diacritics"
+
+ :rules (("DŹ" "" :string)
+ ("Dź" "" :string)
+ ("dź" "" :string)
+ ("Ě" "" :string)
+ ("Ž" "" :string)
+ ("Ó" "" :string)
+ ("Ch" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ř" "" :string)
+ ("č" "" :string)
+ ("ch" "" :string)
+ ("ě" "" :string)
+ ("Š" "" :string)
+ ("ř" "" :string)
+ ("š" "" :string)
+ ("Ć" "" :string)
+ ("CH" "" :string)
+ ("ó" "" :string)
+ ("Č" "" :string)
+ ("Ń" "" :string)
+ ("ń" "" :string)
+ ("ć" "" :string)
+ ("ž" "" :string)
+ ("ß" "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ))
+
+(define-rule-set "s2-resolve-case"
+
+ :rules (("DŹ" "7" :string)
+ ("Dź" "8" :string)
+ ("dź" "9" :string)
+ ("CH" "7" :string)
+ ("Ě" "8" :string)
+ ("Ž" "8" :string)
+ ("Ó" "8" :string)
+ ("Ch" "8" :string)
+ ("Ł" "8" :string)
+ ("Ř" "8" :string)
+ ("Š" "8" :string)
+ ("Ć" "8" :string)
+ ("Č" "8" :string)
+ ("Ń" "8" :string)
+ ("ł" "9" :string)
+ ("č" "9" :string)
+ ("ch" "9" :string)
+ ("ě" "9" :string)
+ ("ř" "9" :string)
+ ("š" "9" :string)
+ ("ó" "9" :string)
+ ("ń" "9" :string)
+ ("ć" "9" :string)
+ ("ž" "9" :string)
+ ("ß" "99" :string)
+ ("S" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("L" "8" :string)
+ ("X" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("W" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("R" "8" :string)
+ ("d" "9" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("j" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("i" "9" :string)
+ ("n" "9" :string)
+ ("m" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ("o" "9" :string)
+ ))
+
+(define-rule-set "s2-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("'" "" :string)
+ ("?" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "s2-resolve-special"
+
+ :rules (("DŹ" "" :string)
+ ("Dź" "" :string)
+ ("dź" "" :string)
+ ("Ě" "" :string)
+ ("Ž" "" :string)
+ ("Ó" "" :string)
+ ("Ch" "" :string)
+ ("ł" "" :string)
+ ("Ł" "" :string)
+ ("Ř" "" :string)
+ ("č" "" :string)
+ ("ch" "" :string)
+ ("ě" "" :string)
+ ("Š" "" :string)
+ ("ř" "" :string)
+ ("š" "" :string)
+ ("Ć" "" :string)
+ ("CH" "" :string)
+ ("ó" "" :string)
+ ("Č" "" :string)
+ ("Ń" "" :string)
+ ("ń" "" :string)
+ ("ć" "" :string)
+ ("ž" "" :string)
+ ("ß" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("q" "" :string)
+ ("D" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("L" "" :string)
+ ("X" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("j" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("V" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("i" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("m" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/lang/vietnamese/utf8-lang.xdy b/Master/texmf/xindy/modules/lang/vietnamese/utf8-lang.xdy
new file mode 100644
index 00000000000..56cfc79ba90
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/vietnamese/utf8-lang.xdy
@@ -0,0 +1,10 @@
+(require "lang/vietnamese/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("vi-alphabetize" "vi-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("vi-resolve-diacritics" "vi-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("vi-resolve-case" "vi-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("vi-resolve-special"))
diff --git a/Master/texmf/xindy/modules/lang/vietnamese/utf8-test.xdy b/Master/texmf/xindy/modules/lang/vietnamese/utf8-test.xdy
new file mode 100644
index 00000000000..1208ccbefd7
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/vietnamese/utf8-test.xdy
@@ -0,0 +1,92 @@
+(require "lang/vietnamese/utf8.xdy")
+(define-sort-rule-orientations (forward backward forward forward))
+(use-rule-set :run 0
+ :rule-set ("vi-alphabetize" "vi-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("vi-resolve-diacritics" "vi-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("vi-resolve-case" "vi-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("vi-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/lang/vietnamese/utf8.xdy b/Master/texmf/xindy/modules/lang/vietnamese/utf8.xdy
new file mode 100644
index 00000000000..8320a51e653
--- /dev/null
+++ b/Master/texmf/xindy/modules/lang/vietnamese/utf8.xdy
@@ -0,0 +1,811 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Vietnamese
+
+(define-letter-group "A" :prefixes (""))
+(define-letter-group "Ă" :after "A" :prefixes (""))
+(define-letter-group "Â" :after "Ă" :prefixes (""))
+(define-letter-group "B" :after "Â" :prefixes (""))
+(define-letter-group "C" :after "B" :prefixes (""))
+(define-letter-group "D" :after "C" :prefixes (""))
+(define-letter-group "Đ" :after "D" :prefixes (""))
+(define-letter-group "E" :after "Đ" :prefixes (""))
+(define-letter-group "Ê" :after "E" :prefixes (""))
+(define-letter-group "F" :after "Ê" :prefixes (""))
+(define-letter-group "G" :after "F" :prefixes (""))
+(define-letter-group "H" :after "G" :prefixes (""))
+(define-letter-group "I" :after "H" :prefixes (""))
+(define-letter-group "J" :after "I" :prefixes (""))
+(define-letter-group "K" :after "J" :prefixes (""))
+(define-letter-group "L" :after "K" :prefixes (""))
+(define-letter-group "M" :after "L" :prefixes (""))
+(define-letter-group "N" :after "M" :prefixes (""))
+(define-letter-group "O" :after "N" :prefixes (""))
+(define-letter-group "Ô" :after "O" :prefixes (""))
+(define-letter-group "Ơ" :after "Ô" :prefixes (""))
+(define-letter-group "P" :after "Ơ" :prefixes (""))
+(define-letter-group "Q" :after "P" :prefixes (""))
+(define-letter-group "R" :after "Q" :prefixes (""))
+(define-letter-group "S" :after "R" :prefixes (""))
+(define-letter-group "T" :after "S" :prefixes (""))
+(define-letter-group "U" :after "T" :prefixes (""))
+(define-letter-group "Ư" :after "U" :prefixes (""))
+(define-letter-group "V" :after "Ư" :prefixes (""))
+(define-letter-group "W" :after "V" :prefixes (""))
+(define-letter-group "X" :after "W" :prefixes (""))
+(define-letter-group "Y" :after "X" :prefixes (""))
+(define-letter-group "Z" :after "Y" :prefixes (""))
+
+(define-rule-set "vi-alphabetize"
+
+ :rules (("ạ" "" :string)
+ ("ả" "" :string)
+ ("Ạ" "" :string)
+ ("Ả" "" :string)
+ ("Ặ" "" :string)
+ ("ắ" "" :string)
+ ("ẵ" "" :string)
+ ("ẳ" "" :string)
+ ("Ẳ" "" :string)
+ ("Ằ" "" :string)
+ ("ặ" "" :string)
+ ("Ắ" "" :string)
+ ("ằ" "" :string)
+ ("Ẵ" "" :string)
+ ("Ẩ" "" :string)
+ ("Ậ" "" :string)
+ ("ấ" "" :string)
+ ("Ầ" "" :string)
+ ("ẩ" "" :string)
+ ("ẫ" "" :string)
+ ("Ấ" "" :string)
+ ("ậ" "" :string)
+ ("ầ" "" :string)
+ ("Ẫ" "" :string)
+ ("Ẻ" "" :string)
+ ("ẻ" "" :string)
+ ("Ẹ" "" :string)
+ ("ẽ" "" :string)
+ ("ẹ" "" :string)
+ ("Ẽ" "" :string)
+ ("ễ" "" :string)
+ ("Ế" "" :string)
+ ("Ề" "" :string)
+ ("Ể" "" :string)
+ ("ệ" "" :string)
+ ("ề" "" :string)
+ ("ể" "" :string)
+ ("ế" "" :string)
+ ("Ệ" "" :string)
+ ("Ễ" "" :string)
+ ("ị" "" :string)
+ ("Ỉ" "" :string)
+ ("Ị" "" :string)
+ ("ỉ" "" :string)
+ ("Ọ" "" :string)
+ ("ỏ" "" :string)
+ ("ọ" "" :string)
+ ("Ỏ" "" :string)
+ ("ố" "" :string)
+ ("Ổ" "" :string)
+ ("Ộ" "" :string)
+ ("Ỗ" "" :string)
+ ("ồ" "" :string)
+ ("Ố" "" :string)
+ ("ổ" "" :string)
+ ("ộ" "" :string)
+ ("Ồ" "" :string)
+ ("ỗ" "" :string)
+ ("ợ" "" :string)
+ ("ỡ" "" :string)
+ ("ờ" "" :string)
+ ("ớ" "" :string)
+ ("Ờ" "" :string)
+ ("Ợ" "" :string)
+ ("Ở" "" :string)
+ ("ở" "" :string)
+ ("Ỡ" "" :string)
+ ("Ớ" "" :string)
+ ("Ủ" "" :string)
+ ("Ụ" "" :string)
+ ("ủ" "" :string)
+ ("ụ" "" :string)
+ ("Ừ" "" :string)
+ ("ử" "" :string)
+ ("ữ" "" :string)
+ ("Ữ" "" :string)
+ ("ự" "" :string)
+ ("ứ" "" :string)
+ ("Ự" "" :string)
+ ("ừ" "" :string)
+ ("Ử" "" :string)
+ ("Ứ" "" :string)
+ ("Ỷ" "" :string)
+ ("ỹ" "" :string)
+ ("ỳ" "" :string)
+ ("Ỵ" "" :string)
+ ("Ỹ" "" :string)
+ ("ỷ" "" :string)
+ ("ỵ" "" :string)
+ ("Ỳ" "" :string)
+ ("á" "" :string)
+ ("ã" "" :string)
+ ("Ã" "" :string)
+ ("Á" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("Ă" "" :string)
+ ("ă" "" :string)
+ ("Â" "" :string)
+ ("â" "" :string)
+ ("đ" "" :string)
+ ("Đ" "" :string)
+ ("È" "" :string)
+ ("è" "" :string)
+ ("É" "" :string)
+ ("é" "" :string)
+ ("Ê" "" :string)
+ ("ê" "" :string)
+ ("Í" "" :string)
+ ("ì" "" :string)
+ ("Ĩ" "" :string)
+ ("Ì" "" :string)
+ ("ĩ" "" :string)
+ ("í" "" :string)
+ ("Ó" "" :string)
+ ("Õ" "" :string)
+ ("ò" "" :string)
+ ("õ" "" :string)
+ ("Ò" "" :string)
+ ("ó" "" :string)
+ ("ô" "" :string)
+ ("Ô" "" :string)
+ ("Ơ" "" :string)
+ ("ơ" "" :string)
+ ("ũ" "" :string)
+ ("Ù" "" :string)
+ ("ù" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("Ũ" "" :string)
+ ("ư" "" :string)
+ ("Ư" "" :string)
+ ("Ý" "" :string)
+ ("ý" "" :string)
+ ("a" "" :string)
+ ("A" "" :string)
+ ("B" "" :string)
+ ("b" "" :string)
+ ("C" "" :string)
+ ("c" "" :string)
+ ("D" "" :string)
+ ("d" "" :string)
+ ("e" "" :string)
+ ("E" "" :string)
+ ("F" "" :string)
+ ("f" "" :string)
+ ("g" "" :string)
+ ("G" "" :string)
+ ("H" "" :string)
+ ("h" "" :string)
+ ("i" "" :string)
+ ("I" "" :string)
+ ("J" "" :string)
+ ("j" "" :string)
+ ("k" "" :string)
+ ("K" "" :string)
+ ("L" "" :string)
+ ("l" "" :string)
+ ("M" "" :string)
+ ("m" "" :string)
+ ("N" "" :string)
+ ("n" "" :string)
+ ("o" "" :string)
+ ("O" "" :string)
+ ("P" "" :string)
+ ("p" "" :string)
+ ("Q" "" :string)
+ ("q" "" :string)
+ ("R" "" :string)
+ ("r" "" :string)
+ ("S" "" :string)
+ ("s" "" :string)
+ ("T" "" :string)
+ ("t" "" :string)
+ ("u" "" :string)
+ ("U" "" :string)
+ ("V" "" :string)
+ ("v" "" :string)
+ ("w" "" :string)
+ ("W" "" :string)
+ ("X" "" :string)
+ ("x" "" :string)
+ ("y" "" :string)
+ ("Y" "" :string)
+ ("Z" "" :string)
+ ("z" "" :string)
+ ))
+
+(define-rule-set "vi-resolve-diacritics"
+
+ :rules (("Ừ" "" :string)
+ ("Ề" "" :string)
+ ("ỳ" "" :string)
+ ("ờ" "" :string)
+ ("Ầ" "" :string)
+ ("ồ" "" :string)
+ ("Ằ" "" :string)
+ ("ề" "" :string)
+ ("Ờ" "" :string)
+ ("ừ" "" :string)
+ ("ầ" "" :string)
+ ("Ồ" "" :string)
+ ("ằ" "" :string)
+ ("Ỳ" "" :string)
+ ("ố" "" :string)
+ ("Ế" "" :string)
+ ("ắ" "" :string)
+ ("ấ" "" :string)
+ ("ớ" "" :string)
+ ("Ố" "" :string)
+ ("ứ" "" :string)
+ ("Ấ" "" :string)
+ ("Ắ" "" :string)
+ ("ế" "" :string)
+ ("Ứ" "" :string)
+ ("Ớ" "" :string)
+ ("ợ" "" :string)
+ ("Ặ" "" :string)
+ ("Ọ" "" :string)
+ ("ị" "" :string)
+ ("Ộ" "" :string)
+ ("Ậ" "" :string)
+ ("Ỵ" "" :string)
+ ("ạ" "" :string)
+ ("Ẹ" "" :string)
+ ("Ụ" "" :string)
+ ("Ị" "" :string)
+ ("ệ" "" :string)
+ ("ự" "" :string)
+ ("Ự" "" :string)
+ ("ặ" "" :string)
+ ("ộ" "" :string)
+ ("Ợ" "" :string)
+ ("ọ" "" :string)
+ ("ậ" "" :string)
+ ("Ạ" "" :string)
+ ("ẹ" "" :string)
+ ("Ệ" "" :string)
+ ("ỵ" "" :string)
+ ("ụ" "" :string)
+ ("Ẩ" "" :string)
+ ("Ỷ" "" :string)
+ ("Ổ" "" :string)
+ ("ử" "" :string)
+ ("Ẻ" "" :string)
+ ("ẻ" "" :string)
+ ("Ể" "" :string)
+ ("Ủ" "" :string)
+ ("ẳ" "" :string)
+ ("ả" "" :string)
+ ("Ỉ" "" :string)
+ ("ẩ" "" :string)
+ ("ổ" "" :string)
+ ("Ẳ" "" :string)
+ ("ủ" "" :string)
+ ("ể" "" :string)
+ ("ỏ" "" :string)
+ ("Ử" "" :string)
+ ("Ở" "" :string)
+ ("ở" "" :string)
+ ("ỷ" "" :string)
+ ("ỉ" "" :string)
+ ("Ả" "" :string)
+ ("Ỏ" "" :string)
+ ("ễ" "" :string)
+ ("ỹ" "" :string)
+ ("ẵ" "" :string)
+ ("ữ" "" :string)
+ ("ỡ" "" :string)
+ ("Ỗ" "" :string)
+ ("Ỹ" "" :string)
+ ("ẽ" "" :string)
+ ("Ữ" "" :string)
+ ("ẫ" "" :string)
+ ("Ỡ" "" :string)
+ ("ỗ" "" :string)
+ ("Ễ" "" :string)
+ ("Ẽ" "" :string)
+ ("Ẵ" "" :string)
+ ("Ẫ" "" :string)
+ ("Â" "" :string)
+ ("Ă" "" :string)
+ ("ô" "" :string)
+ ("Ê" "" :string)
+ ("đ" "" :string)
+ ("ư" "" :string)
+ ("ă" "" :string)
+ ("ê" "" :string)
+ ("Ô" "" :string)
+ ("Ơ" "" :string)
+ ("â" "" :string)
+ ("Ư" "" :string)
+ ("Đ" "" :string)
+ ("ơ" "" :string)
+ ("Ù" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("ì" "" :string)
+ ("è" "" :string)
+ ("Ì" "" :string)
+ ("ù" "" :string)
+ ("Ò" "" :string)
+ ("à" "" :string)
+ ("À" "" :string)
+ ("Ý" "" :string)
+ ("Ó" "" :string)
+ ("Í" "" :string)
+ ("á" "" :string)
+ ("Á" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Ú" "" :string)
+ ("ú" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("é" "" :string)
+ ("ũ" "" :string)
+ ("Õ" "" :string)
+ ("ã" "" :string)
+ ("õ" "" :string)
+ ("Ĩ" "" :string)
+ ("Ã" "" :string)
+ ("ĩ" "" :string)
+ ("Ũ" "" :string)
+ ("S" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("D" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("X" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("V" "" :string)
+ ("i" "" :string)
+ ("m" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("q" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("L" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("j" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ))
+
+(define-rule-set "vi-resolve-case"
+
+ :rules (("Ặ" "8" :string)
+ ("Ẩ" "8" :string)
+ ("Ế" "8" :string)
+ ("Ọ" "8" :string)
+ ("Ỷ" "8" :string)
+ ("Ổ" "8" :string)
+ ("Ừ" "8" :string)
+ ("Ề" "8" :string)
+ ("Ộ" "8" :string)
+ ("Ậ" "8" :string)
+ ("Ẻ" "8" :string)
+ ("Ỵ" "8" :string)
+ ("Ể" "8" :string)
+ ("Ủ" "8" :string)
+ ("Ẹ" "8" :string)
+ ("Ụ" "8" :string)
+ ("Ỗ" "8" :string)
+ ("Ầ" "8" :string)
+ ("Ỹ" "8" :string)
+ ("Ỉ" "8" :string)
+ ("Ị" "8" :string)
+ ("Ữ" "8" :string)
+ ("Ố" "8" :string)
+ ("Ẳ" "8" :string)
+ ("Ằ" "8" :string)
+ ("Ấ" "8" :string)
+ ("Ự" "8" :string)
+ ("Ờ" "8" :string)
+ ("Ắ" "8" :string)
+ ("Ợ" "8" :string)
+ ("Ử" "8" :string)
+ ("Ở" "8" :string)
+ ("Ạ" "8" :string)
+ ("Ỡ" "8" :string)
+ ("Ệ" "8" :string)
+ ("Ồ" "8" :string)
+ ("Ễ" "8" :string)
+ ("Ả" "8" :string)
+ ("Ứ" "8" :string)
+ ("Ỳ" "8" :string)
+ ("Ẽ" "8" :string)
+ ("Ỏ" "8" :string)
+ ("Ớ" "8" :string)
+ ("Ẵ" "8" :string)
+ ("Ẫ" "8" :string)
+ ("ợ" "9" :string)
+ ("ố" "9" :string)
+ ("ễ" "9" :string)
+ ("ắ" "9" :string)
+ ("ị" "9" :string)
+ ("ỹ" "9" :string)
+ ("ử" "9" :string)
+ ("ỳ" "9" :string)
+ ("ấ" "9" :string)
+ ("ạ" "9" :string)
+ ("ẻ" "9" :string)
+ ("ẵ" "9" :string)
+ ("ữ" "9" :string)
+ ("ẳ" "9" :string)
+ ("ỡ" "9" :string)
+ ("ả" "9" :string)
+ ("ờ" "9" :string)
+ ("ồ" "9" :string)
+ ("ẽ" "9" :string)
+ ("ệ" "9" :string)
+ ("ự" "9" :string)
+ ("ớ" "9" :string)
+ ("ẩ" "9" :string)
+ ("ẫ" "9" :string)
+ ("ổ" "9" :string)
+ ("ứ" "9" :string)
+ ("ủ" "9" :string)
+ ("ề" "9" :string)
+ ("ể" "9" :string)
+ ("ỏ" "9" :string)
+ ("ặ" "9" :string)
+ ("ộ" "9" :string)
+ ("ừ" "9" :string)
+ ("ọ" "9" :string)
+ ("ậ" "9" :string)
+ ("ế" "9" :string)
+ ("ở" "9" :string)
+ ("ỷ" "9" :string)
+ ("ẹ" "9" :string)
+ ("ỉ" "9" :string)
+ ("ầ" "9" :string)
+ ("ỗ" "9" :string)
+ ("ỵ" "9" :string)
+ ("ằ" "9" :string)
+ ("ụ" "9" :string)
+ ("Ý" "8" :string)
+ ("Â" "8" :string)
+ ("Ó" "8" :string)
+ ("Í" "8" :string)
+ ("Ă" "8" :string)
+ ("Õ" "8" :string)
+ ("Ê" "8" :string)
+ ("Ù" "8" :string)
+ ("È" "8" :string)
+ ("Ĩ" "8" :string)
+ ("Ì" "8" :string)
+ ("Ã" "8" :string)
+ ("Á" "8" :string)
+ ("Ô" "8" :string)
+ ("Ơ" "8" :string)
+ ("É" "8" :string)
+ ("Ò" "8" :string)
+ ("Ú" "8" :string)
+ ("Ũ" "8" :string)
+ ("À" "8" :string)
+ ("Ư" "8" :string)
+ ("Đ" "8" :string)
+ ("ô" "9" :string)
+ ("ũ" "9" :string)
+ ("á" "9" :string)
+ ("đ" "9" :string)
+ ("ò" "9" :string)
+ ("ì" "9" :string)
+ ("ã" "9" :string)
+ ("ư" "9" :string)
+ ("õ" "9" :string)
+ ("è" "9" :string)
+ ("ă" "9" :string)
+ ("ê" "9" :string)
+ ("ù" "9" :string)
+ ("ý" "9" :string)
+ ("ĩ" "9" :string)
+ ("ú" "9" :string)
+ ("â" "9" :string)
+ ("à" "9" :string)
+ ("í" "9" :string)
+ ("ó" "9" :string)
+ ("é" "9" :string)
+ ("ơ" "9" :string)
+ ("S" "8" :string)
+ ("J" "8" :string)
+ ("D" "8" :string)
+ ("Q" "8" :string)
+ ("M" "8" :string)
+ ("C" "8" :string)
+ ("X" "8" :string)
+ ("N" "8" :string)
+ ("Z" "8" :string)
+ ("B" "8" :string)
+ ("H" "8" :string)
+ ("U" "8" :string)
+ ("F" "8" :string)
+ ("V" "8" :string)
+ ("R" "8" :string)
+ ("K" "8" :string)
+ ("Y" "8" :string)
+ ("E" "8" :string)
+ ("L" "8" :string)
+ ("P" "8" :string)
+ ("T" "8" :string)
+ ("W" "8" :string)
+ ("I" "8" :string)
+ ("G" "8" :string)
+ ("A" "8" :string)
+ ("O" "8" :string)
+ ("y" "9" :string)
+ ("g" "9" :string)
+ ("e" "9" :string)
+ ("w" "9" :string)
+ ("a" "9" :string)
+ ("u" "9" :string)
+ ("k" "9" :string)
+ ("s" "9" :string)
+ ("c" "9" :string)
+ ("i" "9" :string)
+ ("m" "9" :string)
+ ("o" "9" :string)
+ ("d" "9" :string)
+ ("q" "9" :string)
+ ("b" "9" :string)
+ ("z" "9" :string)
+ ("j" "9" :string)
+ ("t" "9" :string)
+ ("v" "9" :string)
+ ("r" "9" :string)
+ ("x" "9" :string)
+ ("h" "9" :string)
+ ("f" "9" :string)
+ ("n" "9" :string)
+ ("l" "9" :string)
+ ("p" "9" :string)
+ ))
+
+(define-rule-set "vi-ignore-special"
+
+ :rules (("-" "" :string)
+ ("!" "" :string)
+ ("?" "" :string)
+ ("'" "" :string)
+ ("." "" :string)
+ ))
+
+(define-rule-set "vi-resolve-special"
+
+ :rules (("ợ" "" :string)
+ ("ố" "" :string)
+ ("Ặ" "" :string)
+ ("ễ" "" :string)
+ ("Ẩ" "" :string)
+ ("Ế" "" :string)
+ ("Ọ" "" :string)
+ ("ắ" "" :string)
+ ("Ỷ" "" :string)
+ ("Ổ" "" :string)
+ ("Ừ" "" :string)
+ ("Ề" "" :string)
+ ("ị" "" :string)
+ ("ỹ" "" :string)
+ ("ử" "" :string)
+ ("ỳ" "" :string)
+ ("Ộ" "" :string)
+ ("Ậ" "" :string)
+ ("Ẻ" "" :string)
+ ("ấ" "" :string)
+ ("Ỵ" "" :string)
+ ("ạ" "" :string)
+ ("ẻ" "" :string)
+ ("ẵ" "" :string)
+ ("ữ" "" :string)
+ ("Ể" "" :string)
+ ("Ủ" "" :string)
+ ("ẳ" "" :string)
+ ("ỡ" "" :string)
+ ("Ẹ" "" :string)
+ ("Ụ" "" :string)
+ ("Ỗ" "" :string)
+ ("ả" "" :string)
+ ("ờ" "" :string)
+ ("Ầ" "" :string)
+ ("Ỹ" "" :string)
+ ("ồ" "" :string)
+ ("ẽ" "" :string)
+ ("Ỉ" "" :string)
+ ("Ị" "" :string)
+ ("ệ" "" :string)
+ ("Ữ" "" :string)
+ ("ự" "" :string)
+ ("ớ" "" :string)
+ ("ẩ" "" :string)
+ ("Ố" "" :string)
+ ("ẫ" "" :string)
+ ("ổ" "" :string)
+ ("Ẳ" "" :string)
+ ("ứ" "" :string)
+ ("ủ" "" :string)
+ ("Ằ" "" :string)
+ ("ề" "" :string)
+ ("Ấ" "" :string)
+ ("ể" "" :string)
+ ("ỏ" "" :string)
+ ("Ự" "" :string)
+ ("Ờ" "" :string)
+ ("ặ" "" :string)
+ ("Ắ" "" :string)
+ ("ộ" "" :string)
+ ("ừ" "" :string)
+ ("Ợ" "" :string)
+ ("ọ" "" :string)
+ ("ậ" "" :string)
+ ("ế" "" :string)
+ ("Ử" "" :string)
+ ("Ở" "" :string)
+ ("Ạ" "" :string)
+ ("ở" "" :string)
+ ("ỷ" "" :string)
+ ("Ỡ" "" :string)
+ ("ẹ" "" :string)
+ ("ỉ" "" :string)
+ ("Ệ" "" :string)
+ ("ầ" "" :string)
+ ("Ồ" "" :string)
+ ("ỗ" "" :string)
+ ("Ễ" "" :string)
+ ("ỵ" "" :string)
+ ("ằ" "" :string)
+ ("Ả" "" :string)
+ ("Ứ" "" :string)
+ ("Ỳ" "" :string)
+ ("Ẽ" "" :string)
+ ("Ỏ" "" :string)
+ ("ụ" "" :string)
+ ("Ớ" "" :string)
+ ("Ẵ" "" :string)
+ ("Ẫ" "" :string)
+ ("Ý" "" :string)
+ ("Â" "" :string)
+ ("Ó" "" :string)
+ ("Í" "" :string)
+ ("Ă" "" :string)
+ ("ô" "" :string)
+ ("ũ" "" :string)
+ ("Õ" "" :string)
+ ("Ê" "" :string)
+ ("á" "" :string)
+ ("Ù" "" :string)
+ ("đ" "" :string)
+ ("È" "" :string)
+ ("ò" "" :string)
+ ("ì" "" :string)
+ ("ã" "" :string)
+ ("ư" "" :string)
+ ("õ" "" :string)
+ ("è" "" :string)
+ ("Ĩ" "" :string)
+ ("ă" "" :string)
+ ("ê" "" :string)
+ ("Ì" "" :string)
+ ("Ã" "" :string)
+ ("ù" "" :string)
+ ("Á" "" :string)
+ ("Ô" "" :string)
+ ("Ơ" "" :string)
+ ("É" "" :string)
+ ("ý" "" :string)
+ ("Ò" "" :string)
+ ("Ú" "" :string)
+ ("ĩ" "" :string)
+ ("ú" "" :string)
+ ("Ũ" "" :string)
+ ("â" "" :string)
+ ("à" "" :string)
+ ("í" "" :string)
+ ("ó" "" :string)
+ ("À" "" :string)
+ ("Ư" "" :string)
+ ("é" "" :string)
+ ("Đ" "" :string)
+ ("ơ" "" :string)
+ ("?" "" :string)
+ ("!" "" :string)
+ ("." "" :string)
+ ("S" "" :string)
+ ("y" "" :string)
+ ("g" "" :string)
+ ("e" "" :string)
+ ("J" "" :string)
+ ("D" "" :string)
+ ("w" "" :string)
+ ("Q" "" :string)
+ ("M" "" :string)
+ ("C" "" :string)
+ ("X" "" :string)
+ ("a" "" :string)
+ ("N" "" :string)
+ ("Z" "" :string)
+ ("u" "" :string)
+ ("k" "" :string)
+ ("s" "" :string)
+ ("B" "" :string)
+ ("H" "" :string)
+ ("c" "" :string)
+ ("U" "" :string)
+ ("F" "" :string)
+ ("V" "" :string)
+ ("i" "" :string)
+ ("m" "" :string)
+ ("R" "" :string)
+ ("o" "" :string)
+ ("K" "" :string)
+ ("d" "" :string)
+ ("Y" "" :string)
+ ("E" "" :string)
+ ("q" "" :string)
+ ("b" "" :string)
+ ("z" "" :string)
+ ("L" "" :string)
+ ("P" "" :string)
+ ("T" "" :string)
+ ("j" "" :string)
+ ("t" "" :string)
+ ("W" "" :string)
+ ("v" "" :string)
+ ("I" "" :string)
+ ("G" "" :string)
+ ("r" "" :string)
+ ("x" "" :string)
+ ("h" "" :string)
+ ("f" "" :string)
+ ("A" "" :string)
+ ("O" "" :string)
+ ("n" "" :string)
+ ("l" "" :string)
+ ("p" "" :string)
+ ("-" "" :string)
+ ("'" "" :string)
+ ))
+
diff --git a/Master/texmf/xindy/modules/ord/letorder.xdy b/Master/texmf/xindy/modules/ord/letorder.xdy
new file mode 100644
index 00000000000..24d566d52b6
--- /dev/null
+++ b/Master/texmf/xindy/modules/ord/letorder.xdy
@@ -0,0 +1,8 @@
+;; $Id$
+;;
+;; This module defined the letter ordering scheme.
+;;
+
+(sort-rule " " "")
+
+;; End
diff --git a/Master/texmf/xindy/modules/rules/isolatin1-exchange.xdy b/Master/texmf/xindy/modules/rules/isolatin1-exchange.xdy
new file mode 100644
index 00000000000..f85c2b2cb1e
--- /dev/null
+++ b/Master/texmf/xindy/modules/rules/isolatin1-exchange.xdy
@@ -0,0 +1,88 @@
+;; isolatin1-exchange.xdy Roger Kehr 14 Jan 98
+;;----------------------------------------------------------------------
+
+;; This style maps swap uppercase with lowercase letters of the ISO
+;; Latin1 alphabet in the range 160-255. These rules do not :again to
+;; prevent looping.
+
+(define-rule-set "isolatin1-exchange"
+
+ :rules (("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+
+
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+ ("" "" :string)
+
+ ("" "" :string)
+ ("" "" :string)
+ ))
+
+;; End
diff --git a/Master/texmf/xindy/modules/rules/isolatin1-tolower.xdy b/Master/texmf/xindy/modules/rules/isolatin1-tolower.xdy
new file mode 100644
index 00000000000..e481a86651a
--- /dev/null
+++ b/Master/texmf/xindy/modules/rules/isolatin1-tolower.xdy
@@ -0,0 +1,52 @@
+;; isolatin1-tolower Roger Kehr 14 Jan 98
+;;----------------------------------------------------------------------
+
+;; This style maps all uppercase letters of the ISO Latin1 alphabet
+;; in the range 160-255 to their lowercase counterparts.
+
+(require "rules/latin-tolower.xdy")
+
+(define-rule-set "isolatin1-tolower"
+
+ :inherit-from ("latin-tolower")
+
+ :rules (("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+
+ ("" "" :string :again)
+
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+
+ ("" "" :string :again)
+ ("" "" :string :again)
+
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ("" "" :string :again)
+
+ ("" "" :string :again)
+ ("" "" :string :again)
+ ))
+
+;; End
diff --git a/Master/texmf/xindy/modules/rules/latin-exchange.xdy b/Master/texmf/xindy/modules/rules/latin-exchange.xdy
new file mode 100644
index 00000000000..5275f3b85aa
--- /dev/null
+++ b/Master/texmf/xindy/modules/rules/latin-exchange.xdy
@@ -0,0 +1,64 @@
+;; latin-exchange.xdy Roger Kehr 14 Jan 98
+;;----------------------------------------------------------------------
+;;
+;; Exchanges lower and uppercase letters.
+;;
+
+(define-rule-set "latin-exchange"
+
+ :rules (("A" "a" :string)
+ ("B" "b" :string)
+ ("C" "c" :string)
+ ("D" "d" :string)
+ ("E" "e" :string)
+ ("F" "f" :string)
+ ("G" "g" :string)
+ ("H" "h" :string)
+ ("I" "i" :string)
+ ("J" "j" :string)
+ ("K" "k" :string)
+ ("L" "l" :string)
+ ("M" "m" :string)
+ ("N" "n" :string)
+ ("O" "o" :string)
+ ("P" "p" :string)
+ ("Q" "q" :string)
+ ("R" "r" :string)
+ ("S" "s" :string)
+ ("T" "t" :string)
+ ("U" "u" :string)
+ ("V" "v" :string)
+ ("W" "w" :string)
+ ("X" "x" :string)
+ ("Y" "y" :string)
+ ("Z" "z" :string)
+
+ ("a" "A" :string)
+ ("b" "B" :string)
+ ("c" "C" :string)
+ ("d" "D" :string)
+ ("e" "E" :string)
+ ("f" "F" :string)
+ ("g" "G" :string)
+ ("h" "H" :string)
+ ("i" "I" :string)
+ ("j" "J" :string)
+ ("k" "K" :string)
+ ("l" "L" :string)
+ ("m" "M" :string)
+ ("n" "N" :string)
+ ("o" "O" :string)
+ ("p" "P" :string)
+ ("q" "Q" :string)
+ ("r" "R" :string)
+ ("s" "S" :string)
+ ("t" "T" :string)
+ ("u" "U" :string)
+ ("v" "V" :string)
+ ("w" "W" :string)
+ ("x" "X" :string)
+ ("y" "Y" :string)
+ ("z" "Z" :string)
+ ))
+
+;; End
diff --git a/Master/texmf/xindy/modules/rules/latin-tolower.xdy b/Master/texmf/xindy/modules/rules/latin-tolower.xdy
new file mode 100644
index 00000000000..b6559da4336
--- /dev/null
+++ b/Master/texmf/xindy/modules/rules/latin-tolower.xdy
@@ -0,0 +1,37 @@
+;; latin-tolower.xdy Roger Kehr 14 Jan 98
+;;----------------------------------------------------------------------
+;;
+;; Maps all latin letters to their lowercase counterpart
+;;
+
+(define-rule-set "latin-tolower"
+
+ :rules (("A" "a" :string :again)
+ ("B" "b" :string :again)
+ ("C" "c" :string :again)
+ ("D" "d" :string :again)
+ ("E" "e" :string :again)
+ ("F" "f" :string :again)
+ ("G" "g" :string :again)
+ ("H" "h" :string :again)
+ ("I" "i" :string :again)
+ ("J" "j" :string :again)
+ ("K" "k" :string :again)
+ ("L" "l" :string :again)
+ ("M" "m" :string :again)
+ ("N" "n" :string :again)
+ ("O" "o" :string :again)
+ ("P" "p" :string :again)
+ ("Q" "q" :string :again)
+ ("R" "r" :string :again)
+ ("S" "s" :string :again)
+ ("T" "t" :string :again)
+ ("U" "u" :string :again)
+ ("V" "v" :string :again)
+ ("W" "w" :string :again)
+ ("X" "x" :string :again)
+ ("Y" "y" :string :again)
+ ("Z" "z" :string :again)
+ ))
+
+;; End
diff --git a/Master/texmf/xindy/modules/styles/basic.xdy b/Master/texmf/xindy/modules/styles/basic.xdy
new file mode 100644
index 00000000000..08df4bc66dc
--- /dev/null
+++ b/Master/texmf/xindy/modules/styles/basic.xdy
@@ -0,0 +1,36 @@
+;; $Id: basic.xdy,v 1.2 2008/01/09 15:13:54 jschrod Exp $ -*- Lisp -*-
+;; ------------------------------------------------------------
+;; (history at end)
+;; Licensed under GPL, see README and LICENSE.
+
+
+;;;
+;;; Very basic xindy style, to get some TeX-like output at all.
+;;; Useful for testing without the whole texindy framework.
+;;; It assumes the alphabets to be handled elsewhere, by language modules.
+;;;
+
+(define-location-class "page-numbers" ("arabic-numbers"))
+(define-attributes ("default"))
+
+(markup-letter-group :open-head "~n~n \textbf{" :close-head "}~n"
+ :capitalize)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+(markup-locclass-list :open "\quad ")
+(markup-locref-list :sep ", ")
+(markup-range :sep "--")
+
+
+;======================================================================
+;;
+;; $Log: basic.xdy,v $
+;; Revision 1.2 2008/01/09 15:13:54 jschrod
+;; Add another newline in front of letter groups.
+;;
+;; Revision 1.1 2006/08/05 15:58:11 jschrod
+;; Initial revision.
+;;
diff --git a/Master/texmf/xindy/modules/styles/example.xdy b/Master/texmf/xindy/modules/styles/example.xdy
new file mode 100644
index 00000000000..24d9e0fea89
--- /dev/null
+++ b/Master/texmf/xindy/modules/styles/example.xdy
@@ -0,0 +1,101 @@
+;; read inputenc rules
+(require "tex/inputenc/latin1.xdy")
+
+;; read language-specific (and encoding-specific) rule-sets
+(require "lang/spanish/traditional-latin1.xdy")
+
+;; apply rules left-to-right or right-to-left?
+;; run 0 run 1 run 2 run 3
+(define-sort-rule-orientations (forward backward forward forward))
+
+;; define order of sorting runs
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/styles/makeidx.xdy b/Master/texmf/xindy/modules/styles/makeidx.xdy
new file mode 100644
index 00000000000..3b2492dd871
--- /dev/null
+++ b/Master/texmf/xindy/modules/styles/makeidx.xdy
@@ -0,0 +1,148 @@
+;; $Id: makeidx.xdy,v 1.1 1997/02/07 14:17:31 kehr Exp $
+;;
+;; This file implements the Output Style Specifiers for plain
+;; makeindex (see manpage of makeindex 2.x) in conjuction with
+;; TeX/LaTeX.
+;;
+;; The Input Style Specifiers of makeindex cannot de defined in a
+;; `xindy' style file. Use an appropriate version of the program
+;; `tex2xindy' which should be included with this distribution.
+;;
+;; Since `xindy' uses a different specification language than
+;; makeindex and some of the command-line options of makeindex are now
+;; only available as style-file commands, this file can only serve as
+;; a template that produces the default-markup of makeindex. However,
+;; it may be used as a starting point for further modification and
+;; specialization.
+;;
+;; The following values are taken from the source of the makeindex
+;; distribution (see file scanst.h and the manpage) for further
+;; details.
+;;
+
+;; Define all attributes appearing in your document. Your attributes
+;; are all encapsulators you use in your \index commands following the
+;; vertical bar sign `|'. For example `foo' is the attribute in the
+;; command \index{...|foo}. Here you specify the set of attributes
+;; that appear in your document, the order in which they appear in the
+;; index and which one superdes the other.
+;;
+;; Example: a) (define-attibutes (("default") ("bf") ("it")))
+;; b) (define-attibutes (("bf" "default")))
+;;
+;; The initial command is (change it accordingly):
+
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; Here follow all letter-groups. The short-cut notation is used here.
+
+(define-letter-groups
+ ("a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
+ "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"))
+
+;;
+;; The sort-rules map all letters to their lowercase counterpart.
+;;
+
+(sort-rule "A" "a")
+(sort-rule "B" "b")
+(sort-rule "C" "c")
+(sort-rule "D" "d")
+(sort-rule "E" "e")
+(sort-rule "F" "f")
+(sort-rule "G" "g")
+(sort-rule "H" "h")
+(sort-rule "I" "i")
+(sort-rule "J" "j")
+(sort-rule "K" "k")
+(sort-rule "L" "l")
+(sort-rule "M" "m")
+(sort-rule "N" "n")
+(sort-rule "O" "o")
+(sort-rule "P" "p")
+(sort-rule "Q" "q")
+(sort-rule "R" "r")
+(sort-rule "S" "s")
+(sort-rule "T" "t")
+(sort-rule "U" "u")
+(sort-rule "V" "v")
+(sort-rule "W" "w")
+(sort-rule "X" "x")
+(sort-rule "Y" "y")
+(sort-rule "Z" "z")
+
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/styles/makeindex.xdy b/Master/texmf/xindy/modules/styles/makeindex.xdy
new file mode 100644
index 00000000000..0e625a627f3
--- /dev/null
+++ b/Master/texmf/xindy/modules/styles/makeindex.xdy
@@ -0,0 +1,89 @@
+
+;; This file defines the index style 'makeindex', the default.
+;; Here should ONLY be definitions that determine what a generated
+;; index should look like, NOT the locale or sorting order or
+;; document processor used.
+
+
+;; define other stuff
+(define-attributes ("default" "hyperpage"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+(markup-locref :open "\hyperpage{" :close "}{}" :attr "hyperpage")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/styles/vermeer.xdy b/Master/texmf/xindy/modules/styles/vermeer.xdy
new file mode 100644
index 00000000000..cd447ced72d
--- /dev/null
+++ b/Master/texmf/xindy/modules/styles/vermeer.xdy
@@ -0,0 +1,89 @@
+
+;; This file defines the index style 'makeindex', the default.
+;; Here should ONLY be definitions that determine what a generated
+;; index should look like, NOT the locale or sorting order or
+;; document processor used.
+
+
+;; define other stuff
+(define-attributes ("default" "hyperpage"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+(markup-locref :open "\hyperpage{" :close "}{}" :attr "hyperpage")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n \textbf{[ " :close-head " ]}")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Master/texmf/xindy/modules/tex/inputenc/cp1250.xdy b/Master/texmf/xindy/modules/tex/inputenc/cp1250.xdy
new file mode 100644
index 00000000000..ba1cf5b6e59
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/cp1250.xdy
@@ -0,0 +1,128 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\texteuro }" "" :string)
+(merge-rule "\IeC {\quotesinglbase }" "" :string)
+(merge-rule "\IeC {\quotedblbase }" "" :string)
+(merge-rule "\IeC {\dots }" "" :string)
+(merge-rule "\IeC {\dag }" "" :string)
+(merge-rule "\IeC {\ddag }" "" :string)
+(merge-rule "\IeC {\textperthousand }" "" :string)
+(merge-rule "\v S" "" :string)
+(merge-rule "\IeC {\guilsinglleft }" "" :string)
+(merge-rule "\'S" "" :string)
+(merge-rule "\v T" "" :string)
+(merge-rule "\v Z" "" :string)
+(merge-rule "\'Z" "" :string)
+(merge-rule "\IeC {\textquoteleft }" "" :string)
+(merge-rule "\IeC {\textquoteright }" "" :string)
+(merge-rule "\IeC {\textquotedblleft }" "" :string)
+(merge-rule "\IeC {\textquotedblright }" "" :string)
+(merge-rule "\IeC {\textbullet }" "" :string)
+(merge-rule "\IeC {\textendash }" "" :string)
+(merge-rule "\IeC {\textemdash }" "" :string)
+(merge-rule "\IeC {\texttrademark }" "" :string)
+(merge-rule "\v s" "" :string)
+(merge-rule "\IeC {\guilsinglright }" "" :string)
+(merge-rule "\'s" "" :string)
+(merge-rule "\v t" "" :string)
+(merge-rule "\v z" "" :string)
+(merge-rule "\'z" "" :string)
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\v {}" "" :string)
+(merge-rule "\u {}" "" :string)
+(merge-rule "\IeC {\L }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\k A" "" :string)
+(merge-rule "\IeC {\textbrokenbar }" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\~"{}" "" :string)
+(merge-rule "\IeC {\copyright }" "" :string)
+(merge-rule "\c S" "" :string)
+(merge-rule "\IeC {\guillemotleft }" "" :string)
+(merge-rule "\lnot " "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\IeC {\textregistered }" "" :string)
+(merge-rule "\.Z" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\pm " "" :string)
+(merge-rule "\IeC {\k \ }" "" :string)
+(merge-rule "\IeC {\l }" "" :string)
+(merge-rule "\'{}" "" :string)
+(merge-rule "\mu " "" :string)
+(merge-rule "\IeC {\P }" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "\IeC {\c \ }" "" :string)
+(merge-rule "\k a" "" :string)
+(merge-rule "\c s" "" :string)
+(merge-rule "\IeC {\guillemotright }" "" :string)
+(merge-rule "\v L" "" :string)
+(merge-rule "\H {}" "" :string)
+(merge-rule "\v l" "" :string)
+(merge-rule "\.z" "" :string)
+(merge-rule "\'R" "" :string)
+(merge-rule "\'A" "" :string)
+(merge-rule "\^A" "" :string)
+(merge-rule "\u A" "" :string)
+(merge-rule "\~"A" "" :string)
+(merge-rule "\'L" "" :string)
+(merge-rule "\'C" "" :string)
+(merge-rule "\c C" "" :string)
+(merge-rule "\v C" "" :string)
+(merge-rule "\'E" "" :string)
+(merge-rule "\k E" "" :string)
+(merge-rule "\~"E" "" :string)
+(merge-rule "\v E" "" :string)
+(merge-rule "\'I" "" :string)
+(merge-rule "\^I" "" :string)
+(merge-rule "\v D" "" :string)
+(merge-rule "\IeC {\DJ }" "" :string)
+(merge-rule "\'N" "" :string)
+(merge-rule "\v N" "" :string)
+(merge-rule "\'O" "" :string)
+(merge-rule "\^O" "" :string)
+(merge-rule "\H O" "" :string)
+(merge-rule "\~"O" "" :string)
+(merge-rule "\times " "" :string)
+(merge-rule "\v R" "" :string)
+(merge-rule "\r U" "" :string)
+(merge-rule "\'U" "" :string)
+(merge-rule "\H U" "" :string)
+(merge-rule "\~"U" "" :string)
+(merge-rule "\'Y" "" :string)
+(merge-rule "\c T" "" :string)
+(merge-rule "\IeC {\ss }" "" :string)
+(merge-rule "\'r" "" :string)
+(merge-rule "\'a" "" :string)
+(merge-rule "\^a" "" :string)
+(merge-rule "\u a" "" :string)
+(merge-rule "\~"a" "" :string)
+(merge-rule "\'l" "" :string)
+(merge-rule "\'c" "" :string)
+(merge-rule "\c c" "" :string)
+(merge-rule "\v c" "" :string)
+(merge-rule "\'e" "" :string)
+(merge-rule "\k e" "" :string)
+(merge-rule "\~"e" "" :string)
+(merge-rule "\v e" "" :string)
+(merge-rule "\IeC {\'\i }" "" :string)
+(merge-rule "\IeC {\^\i }" "" :string)
+(merge-rule "\v d" "" :string)
+(merge-rule "\IeC {\dj }" "" :string)
+(merge-rule "\'n" "" :string)
+(merge-rule "\v n" "" :string)
+(merge-rule "\'o" "" :string)
+(merge-rule "\^o" "" :string)
+(merge-rule "\H o" "" :string)
+(merge-rule "\~"o" "" :string)
+(merge-rule "\div " "" :string)
+(merge-rule "\v r" "" :string)
+(merge-rule "\r u" "" :string)
+(merge-rule "\'u" "" :string)
+(merge-rule "\H u" "" :string)
+(merge-rule "\~"u" "" :string)
+(merge-rule "\'y" "" :string)
+(merge-rule "\c t" "" :string)
+(merge-rule "\.{}" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/cp1251.xdy b/Master/texmf/xindy/modules/tex/inputenc/cp1251.xdy
new file mode 100644
index 00000000000..ec68364a3e3
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/cp1251.xdy
@@ -0,0 +1,132 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\CYRDJE }" "" :string)
+(merge-rule "\IeC {\'\CYRG }" "" :string)
+(merge-rule "\IeC {\quotesinglbase }" "" :string)
+(merge-rule "\IeC {\'\cyrg }" "" :string)
+(merge-rule "\IeC {\quotedblbase }" "" :string)
+(merge-rule "\IeC {\dots }" "" :string)
+(merge-rule "\IeC {\dag }" "" :string)
+(merge-rule "\IeC {\ddag }" "" :string)
+(merge-rule "\IeC {\texteuro }" "" :string)
+(merge-rule "\IeC {\textperthousand }" "" :string)
+(merge-rule "\IeC {\CYRLJE }" "" :string)
+(merge-rule "\IeC {\guilsinglleft }" "" :string)
+(merge-rule "\IeC {\CYRNJE }" "" :string)
+(merge-rule "\IeC {\'\CYRK }" "" :string)
+(merge-rule "\IeC {\CYRTSHE }" "" :string)
+(merge-rule "\IeC {\CYRDZHE }" "" :string)
+(merge-rule "\IeC {\cyrdje }" "" :string)
+(merge-rule "\IeC {\textquoteleft }" "" :string)
+(merge-rule "\IeC {\textquoteright }" "" :string)
+(merge-rule "\IeC {\textquotedblleft }" "" :string)
+(merge-rule "\IeC {\textquotedblright }" "" :string)
+(merge-rule "\IeC {\textbullet }" "" :string)
+(merge-rule "\IeC {\textendash }" "" :string)
+(merge-rule "\IeC {\textemdash }" "" :string)
+(merge-rule "\IeC {\texttrademark }" "" :string)
+(merge-rule "\IeC {\cyrlje }" "" :string)
+(merge-rule "\IeC {\guilsinglright }" "" :string)
+(merge-rule "\IeC {\cyrnje }" "" :string)
+(merge-rule "\IeC {\'\cyrk }" "" :string)
+(merge-rule "\IeC {\cyrtshe }" "" :string)
+(merge-rule "\IeC {\cyrdzhe }" "" :string)
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\IeC {\CYRUSHRT }" "" :string)
+(merge-rule "\IeC {\cyrushrt }" "" :string)
+(merge-rule "\IeC {\CYRJE }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\IeC {\CYRGUP }" "" :string)
+(merge-rule "\IeC {\textbrokenbar }" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\IeC {\CYRYO }" "" :string)
+(merge-rule "\IeC {\copyright }" "" :string)
+(merge-rule "\IeC {\CYRIE }" "" :string)
+(merge-rule "\IeC {\guillemotleft }" "" :string)
+(merge-rule "\lnot " "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\IeC {\textregistered }" "" :string)
+(merge-rule "\IeC {\CYRYI }" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\pm " "" :string)
+(merge-rule "\IeC {\CYRII }" "" :string)
+(merge-rule "\IeC {\cyrii }" "" :string)
+(merge-rule "\IeC {\cyrgup }" "" :string)
+(merge-rule "\mu " "" :string)
+(merge-rule "\IeC {\P }" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "\IeC {\cyryo }" "" :string)
+(merge-rule "\IeC {\textnumero }" "" :string)
+(merge-rule "\IeC {\cyrie }" "" :string)
+(merge-rule "\IeC {\guillemotright }" "" :string)
+(merge-rule "\IeC {\cyrje }" "" :string)
+(merge-rule "\IeC {\CYRDZE }" "" :string)
+(merge-rule "\IeC {\cyrdze }" "" :string)
+(merge-rule "\IeC {\cyryi }" "" :string)
+(merge-rule "\IeC {\CYRA }" "" :string)
+(merge-rule "\IeC {\CYRB }" "" :string)
+(merge-rule "\IeC {\CYRV }" "" :string)
+(merge-rule "\IeC {\CYRG }" "" :string)
+(merge-rule "\IeC {\CYRD }" "" :string)
+(merge-rule "\IeC {\CYRE }" "" :string)
+(merge-rule "\IeC {\CYRZH }" "" :string)
+(merge-rule "\IeC {\CYRZ }" "" :string)
+(merge-rule "\IeC {\CYRI }" "" :string)
+(merge-rule "\IeC {\CYRISHRT }" "" :string)
+(merge-rule "\IeC {\CYRK }" "" :string)
+(merge-rule "\IeC {\CYRL }" "" :string)
+(merge-rule "\IeC {\CYRM }" "" :string)
+(merge-rule "\IeC {\CYRN }" "" :string)
+(merge-rule "\IeC {\CYRO }" "" :string)
+(merge-rule "\IeC {\CYRP }" "" :string)
+(merge-rule "\IeC {\CYRR }" "" :string)
+(merge-rule "\IeC {\CYRS }" "" :string)
+(merge-rule "\IeC {\CYRT }" "" :string)
+(merge-rule "\IeC {\CYRU }" "" :string)
+(merge-rule "\IeC {\CYRF }" "" :string)
+(merge-rule "\IeC {\CYRH }" "" :string)
+(merge-rule "\IeC {\CYRC }" "" :string)
+(merge-rule "\IeC {\CYRCH }" "" :string)
+(merge-rule "\IeC {\CYRSH }" "" :string)
+(merge-rule "\IeC {\CYRSHCH }" "" :string)
+(merge-rule "\IeC {\CYRHRDSN }" "" :string)
+(merge-rule "\IeC {\CYRERY }" "" :string)
+(merge-rule "\IeC {\CYRSFTSN }" "" :string)
+(merge-rule "\IeC {\CYREREV }" "" :string)
+(merge-rule "\IeC {\CYRYU }" "" :string)
+(merge-rule "\IeC {\CYRYA }" "" :string)
+(merge-rule "\IeC {\cyra }" "" :string)
+(merge-rule "\IeC {\cyrb }" "" :string)
+(merge-rule "\IeC {\cyrv }" "" :string)
+(merge-rule "\IeC {\cyrg }" "" :string)
+(merge-rule "\IeC {\cyrd }" "" :string)
+(merge-rule "\IeC {\cyre }" "" :string)
+(merge-rule "\IeC {\cyrzh }" "" :string)
+(merge-rule "\IeC {\cyrz }" "" :string)
+(merge-rule "\IeC {\cyri }" "" :string)
+(merge-rule "\IeC {\cyrishrt }" "" :string)
+(merge-rule "\IeC {\cyrk }" "" :string)
+(merge-rule "\IeC {\cyrl }" "" :string)
+(merge-rule "\IeC {\cyrm }" "" :string)
+(merge-rule "\IeC {\cyrn }" "" :string)
+(merge-rule "\IeC {\cyro }" "" :string)
+(merge-rule "\IeC {\cyrp }" "" :string)
+(merge-rule "\IeC {\cyrr }" "" :string)
+(merge-rule "\IeC {\cyrs }" "" :string)
+(merge-rule "\IeC {\cyrt }" "" :string)
+(merge-rule "\IeC {\cyru }" "" :string)
+(merge-rule "\IeC {\cyrf }" "" :string)
+(merge-rule "\IeC {\cyrh }" "" :string)
+(merge-rule "\IeC {\cyrc }" "" :string)
+(merge-rule "\IeC {\cyrch }" "" :string)
+(merge-rule "\IeC {\cyrsh }" "" :string)
+(merge-rule "\IeC {\cyrshch }" "" :string)
+(merge-rule "\IeC {\cyrhrdsn }" "" :string)
+(merge-rule "\IeC {\cyrery }" "" :string)
+(merge-rule "\IeC {\cyrsftsn }" "" :string)
+(merge-rule "\IeC {\cyrerev }" "" :string)
+(merge-rule "\IeC {\cyryu }" "" :string)
+(merge-rule "\IeC {\cyrya }" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/cp1252.xdy b/Master/texmf/xindy/modules/tex/inputenc/cp1252.xdy
new file mode 100644
index 00000000000..687b57a414f
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/cp1252.xdy
@@ -0,0 +1,128 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\texteuro }" "" :string)
+(merge-rule "\IeC {\quotesinglbase }" "" :string)
+(merge-rule "\IeC {\textflorin }" "" :string)
+(merge-rule "\IeC {\quotedblbase }" "" :string)
+(merge-rule "\IeC {\dots }" "" :string)
+(merge-rule "\IeC {\dag }" "" :string)
+(merge-rule "\IeC {\ddag }" "" :string)
+(merge-rule "\^{}" "" :string)
+(merge-rule "\IeC {\textperthousand }" "" :string)
+(merge-rule "\v S" "" :string)
+(merge-rule "\IeC {\guilsinglleft }" "" :string)
+(merge-rule "\IeC {\OE }" "" :string)
+(merge-rule "\v Z" "" :string)
+(merge-rule "\IeC {\textquoteleft }" "" :string)
+(merge-rule "\IeC {\textquoteright }" "" :string)
+(merge-rule "\IeC {\textquotedblleft }" "" :string)
+(merge-rule "\IeC {\textquotedblright }" "" :string)
+(merge-rule "\IeC {\textbullet }" "" :string)
+(merge-rule "\IeC {\textendash }" "" :string)
+(merge-rule "\IeC {\textemdash }" "" :string)
+(merge-rule "\~~{}" "" :string)
+(merge-rule "\IeC {\texttrademark }" "" :string)
+(merge-rule "\v s" "" :string)
+(merge-rule "\IeC {\guilsinglright }" "" :string)
+(merge-rule "\IeC {\oe }" "" :string)
+(merge-rule "\v z" "" :string)
+(merge-rule "\~"Y" "" :string)
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\IeC {\textexclamdown }" "" :string)
+(merge-rule "\IeC {\textcent }" "" :string)
+(merge-rule "\IeC {\pounds }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\IeC {\textyen }" "" :string)
+(merge-rule "\IeC {\textbrokenbar }" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\~"{}" "" :string)
+(merge-rule "\IeC {\copyright }" "" :string)
+(merge-rule "\IeC {\textordfeminine }" "" :string)
+(merge-rule "\IeC {\guillemotleft }" "" :string)
+(merge-rule "\lnot " "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\IeC {\textregistered }" "" :string)
+(merge-rule "\={}" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\pm " "" :string)
+(merge-rule "{^2}" "" :string)
+(merge-rule "{^3}" "" :string)
+(merge-rule "\'{}" "" :string)
+(merge-rule "\mu " "" :string)
+(merge-rule "\IeC {\P }" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "\IeC {\c \ }" "" :string)
+(merge-rule "{^1}" "" :string)
+(merge-rule "\IeC {\textordmasculine }" "" :string)
+(merge-rule "\IeC {\guillemotright }" "" :string)
+(merge-rule "\IeC {\textonequarter }" "" :string)
+(merge-rule "\IeC {\textonehalf }" "" :string)
+(merge-rule "\IeC {\textthreequarters }" "" :string)
+(merge-rule "\IeC {\textquestiondown }" "" :string)
+(merge-rule "\`A" "" :string)
+(merge-rule "\'A" "" :string)
+(merge-rule "\^A" "" :string)
+(merge-rule "\~~A" "" :string)
+(merge-rule "\~"A" "" :string)
+(merge-rule "\r A" "" :string)
+(merge-rule "\IeC {\AE }" "" :string)
+(merge-rule "\c C" "" :string)
+(merge-rule "\`E" "" :string)
+(merge-rule "\'E" "" :string)
+(merge-rule "\^E" "" :string)
+(merge-rule "\~"E" "" :string)
+(merge-rule "\`I" "" :string)
+(merge-rule "\'I" "" :string)
+(merge-rule "\^I" "" :string)
+(merge-rule "\~"I" "" :string)
+(merge-rule "\IeC {\DH }" "" :string)
+(merge-rule "\~~N" "" :string)
+(merge-rule "\`O" "" :string)
+(merge-rule "\'O" "" :string)
+(merge-rule "\^O" "" :string)
+(merge-rule "\~~O" "" :string)
+(merge-rule "\~"O" "" :string)
+(merge-rule "\times " "" :string)
+(merge-rule "\IeC {\O }" "" :string)
+(merge-rule "\`U" "" :string)
+(merge-rule "\'U" "" :string)
+(merge-rule "\^U" "" :string)
+(merge-rule "\~"U" "" :string)
+(merge-rule "\'Y" "" :string)
+(merge-rule "\IeC {\TH }" "" :string)
+(merge-rule "\IeC {\ss }" "" :string)
+(merge-rule "\`a" "" :string)
+(merge-rule "\'a" "" :string)
+(merge-rule "\^a" "" :string)
+(merge-rule "\~~a" "" :string)
+(merge-rule "\~"a" "" :string)
+(merge-rule "\r a" "" :string)
+(merge-rule "\IeC {\ae }" "" :string)
+(merge-rule "\c c" "" :string)
+(merge-rule "\`e" "" :string)
+(merge-rule "\'e" "" :string)
+(merge-rule "\^e" "" :string)
+(merge-rule "\~"e" "" :string)
+(merge-rule "\IeC {\`\i }" "" :string)
+(merge-rule "\IeC {\'\i }" "" :string)
+(merge-rule "\IeC {\^\i }" "" :string)
+(merge-rule "\IeC {\~"\i }" "" :string)
+(merge-rule "\IeC {\dh }" "" :string)
+(merge-rule "\~~n" "" :string)
+(merge-rule "\`o" "" :string)
+(merge-rule "\'o" "" :string)
+(merge-rule "\^o" "" :string)
+(merge-rule "\~~o" "" :string)
+(merge-rule "\~"o" "" :string)
+(merge-rule "\div " "" :string)
+(merge-rule "\IeC {\o }" "" :string)
+(merge-rule "\`u" "" :string)
+(merge-rule "\'u" "" :string)
+(merge-rule "\^u" "" :string)
+(merge-rule "\~"u" "" :string)
+(merge-rule "\'y" "" :string)
+(merge-rule "\IeC {\th }" "" :string)
+(merge-rule "\~"y" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/cp437.xdy b/Master/texmf/xindy/modules/tex/inputenc/cp437.xdy
new file mode 100644
index 00000000000..826d321555b
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/cp437.xdy
@@ -0,0 +1,82 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\c C" "" :string)
+(merge-rule "\~"u" "" :string)
+(merge-rule "\'e" "" :string)
+(merge-rule "\^a" "" :string)
+(merge-rule "\~"a" "" :string)
+(merge-rule "\`a" "" :string)
+(merge-rule "\r a" "" :string)
+(merge-rule "\c c" "" :string)
+(merge-rule "\^e" "" :string)
+(merge-rule "\~"e" "" :string)
+(merge-rule "\`e" "" :string)
+(merge-rule "\IeC {\~"\i }" "" :string)
+(merge-rule "\IeC {\^\i }" "" :string)
+(merge-rule "\IeC {\`\i }" "" :string)
+(merge-rule "\~"A" "" :string)
+(merge-rule "\r A" "" :string)
+(merge-rule "\'E" "" :string)
+(merge-rule "\IeC {\ae }" "" :string)
+(merge-rule "\IeC {\AE }" "" :string)
+(merge-rule "\^o" "" :string)
+(merge-rule "\~"o" "" :string)
+(merge-rule "\`o" "" :string)
+(merge-rule "\^u" "" :string)
+(merge-rule "\`u" "" :string)
+(merge-rule "\~"y" "" :string)
+(merge-rule "\~"O" "" :string)
+(merge-rule "\~"U" "" :string)
+(merge-rule "\IeC {\textcent }" "" :string)
+(merge-rule "\IeC {\pounds }" "" :string)
+(merge-rule "\IeC {\textyen }" "" :string)
+(merge-rule "\IeC {\textpeseta }" "" :string)
+(merge-rule "\IeC {\textflorin }" "" :string)
+(merge-rule "\'a" "" :string)
+(merge-rule "\IeC {\'\i }" "" :string)
+(merge-rule "\'o" "" :string)
+(merge-rule "\'u" "" :string)
+(merge-rule "\~~n" "" :string)
+(merge-rule "\~~N" "" :string)
+(merge-rule "\IeC {\textordfeminine }" "" :string)
+(merge-rule "\IeC {\textordmasculine }" "" :string)
+(merge-rule "\IeC {\textquestiondown }" "" :string)
+(merge-rule "\lnot " "" :string)
+(merge-rule "\IeC {\textonehalf }" "" :string)
+(merge-rule "\IeC {\textonequarter }" "" :string)
+(merge-rule "\IeC {\textexclamdown }" "" :string)
+(merge-rule "\IeC {\guillemotleft }" "" :string)
+(merge-rule "\IeC {\guillemotright }" "" :string)
+(merge-rule "\alpha " "" :string)
+(merge-rule "\beta " "" :string)
+(merge-rule "\Gamma " "" :string)
+(merge-rule "\pi " "" :string)
+(merge-rule "\Sigma " "" :string)
+(merge-rule "\sigma " "" :string)
+(merge-rule "\mu " "" :string)
+(merge-rule "\gamma " "" :string)
+(merge-rule "\Phi " "" :string)
+(merge-rule "\theta " "" :string)
+(merge-rule "\Omega " "" :string)
+(merge-rule "\delta " "" :string)
+(merge-rule "\infty " "" :string)
+(merge-rule "\phi " "" :string)
+(merge-rule "\varepsilon " "" :string)
+(merge-rule "\cap " "" :string)
+(merge-rule "\equiv " "" :string)
+(merge-rule "\pm " "" :string)
+(merge-rule "\geq " "" :string)
+(merge-rule "\leq " "" :string)
+(merge-rule "\div " "" :string)
+(merge-rule "\approx " "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "\IeC {\textbullet }" "" :string)
+(merge-rule "{\mathchar ~"1270}" "" :string)
+(merge-rule "{^n}" "" :string)
+(merge-rule "{^2}" "" :string)
+(merge-rule "\IeC {\textblacksquare }" "" :string)
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/cp850.xdy b/Master/texmf/xindy/modules/tex/inputenc/cp850.xdy
new file mode 100644
index 00000000000..48498893e89
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/cp850.xdy
@@ -0,0 +1,104 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\c C" "" :string)
+(merge-rule "\~"u" "" :string)
+(merge-rule "\'e" "" :string)
+(merge-rule "\^a" "" :string)
+(merge-rule "\~"a" "" :string)
+(merge-rule "\`a" "" :string)
+(merge-rule "\r a" "" :string)
+(merge-rule "\c c" "" :string)
+(merge-rule "\^e" "" :string)
+(merge-rule "\~"e" "" :string)
+(merge-rule "\`e" "" :string)
+(merge-rule "\IeC {\~"\i }" "" :string)
+(merge-rule "\IeC {\^\i }" "" :string)
+(merge-rule "\IeC {\`\i }" "" :string)
+(merge-rule "\~"A" "" :string)
+(merge-rule "\r A" "" :string)
+(merge-rule "\'E" "" :string)
+(merge-rule "\IeC {\ae }" "" :string)
+(merge-rule "\IeC {\AE }" "" :string)
+(merge-rule "\^o" "" :string)
+(merge-rule "\~"o" "" :string)
+(merge-rule "\`o" "" :string)
+(merge-rule "\^u" "" :string)
+(merge-rule "\`u" "" :string)
+(merge-rule "\~"y" "" :string)
+(merge-rule "\~"O" "" :string)
+(merge-rule "\~"U" "" :string)
+(merge-rule "\IeC {\o }" "" :string)
+(merge-rule "\IeC {\pounds }" "" :string)
+(merge-rule "\IeC {\O }" "" :string)
+(merge-rule "\times " "" :string)
+(merge-rule "\IeC {\textflorin }" "" :string)
+(merge-rule "\'a" "" :string)
+(merge-rule "\IeC {\'\i }" "" :string)
+(merge-rule "\'o" "" :string)
+(merge-rule "\'u" "" :string)
+(merge-rule "\~~n" "" :string)
+(merge-rule "\~~N" "" :string)
+(merge-rule "\IeC {\textordfeminine }" "" :string)
+(merge-rule "\IeC {\textordmasculine }" "" :string)
+(merge-rule "\IeC {\textquestiondown }" "" :string)
+(merge-rule "\IeC {\textregistered }" "" :string)
+(merge-rule "\lnot " "" :string)
+(merge-rule "\IeC {\textonehalf }" "" :string)
+(merge-rule "\IeC {\textonequarter }" "" :string)
+(merge-rule "\IeC {\textexclamdown }" "" :string)
+(merge-rule "\IeC {\guillemotleft }" "" :string)
+(merge-rule "\IeC {\guillemotright }" "" :string)
+(merge-rule "\'A" "" :string)
+(merge-rule "\^A" "" :string)
+(merge-rule "\`A" "" :string)
+(merge-rule "\IeC {\copyright }" "" :string)
+(merge-rule "\IeC {\textcent }" "" :string)
+(merge-rule "\IeC {\textyen }" "" :string)
+(merge-rule "\~~a" "" :string)
+(merge-rule "\~~A" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\IeC {\dh }" "" :string)
+(merge-rule "\IeC {\DH }" "" :string)
+(merge-rule "\^E" "" :string)
+(merge-rule "\~"E" "" :string)
+(merge-rule "\`E" "" :string)
+(merge-rule "\IeC {\i }" "" :string)
+(merge-rule "\'I" "" :string)
+(merge-rule "\^I" "" :string)
+(merge-rule "\~"I" "" :string)
+(merge-rule "\IeC {\textbrokenbar }" "" :string)
+(merge-rule "\`I" "" :string)
+(merge-rule "\'O" "" :string)
+(merge-rule "\IeC {\ss }" "" :string)
+(merge-rule "\^O" "" :string)
+(merge-rule "\`O" "" :string)
+(merge-rule "\~~o" "" :string)
+(merge-rule "\~~O" "" :string)
+(merge-rule "\mu " "" :string)
+(merge-rule "\IeC {\th }" "" :string)
+(merge-rule "\IeC {\TH }" "" :string)
+(merge-rule "\'U" "" :string)
+(merge-rule "\^U" "" :string)
+(merge-rule "\`U" "" :string)
+(merge-rule "\'y" "" :string)
+(merge-rule "\'Y" "" :string)
+(merge-rule "\={}" "" :string)
+(merge-rule "\'{}" "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\pm " "" :string)
+(merge-rule "\IeC {\textthreequarters }" "" :string)
+(merge-rule "\IeC {\P }" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\div " "" :string)
+(merge-rule "\IeC {\c \ }" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\~"{}" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "{^1}" "" :string)
+(merge-rule "{^3}" "" :string)
+(merge-rule "{^2}" "" :string)
+(merge-rule "\IeC {\textblacksquare }" "" :string)
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/cp855.xdy b/Master/texmf/xindy/modules/tex/inputenc/cp855.xdy
new file mode 100644
index 00000000000..53133f5eb62
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/cp855.xdy
@@ -0,0 +1,105 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\cyrdje }" "" :string)
+(merge-rule "\IeC {\CYRDJE }" "" :string)
+(merge-rule "\IeC {\'\cyrg }" "" :string)
+(merge-rule "\IeC {\'\CYRG }" "" :string)
+(merge-rule "\IeC {\cyryo }" "" :string)
+(merge-rule "\IeC {\CYRYO }" "" :string)
+(merge-rule "\IeC {\cyrie }" "" :string)
+(merge-rule "\IeC {\CYRIE }" "" :string)
+(merge-rule "\IeC {\cyrdze }" "" :string)
+(merge-rule "\IeC {\CYRDZE }" "" :string)
+(merge-rule "\IeC {\cyrii }" "" :string)
+(merge-rule "\IeC {\CYRII }" "" :string)
+(merge-rule "\IeC {\cyryi }" "" :string)
+(merge-rule "\IeC {\CYRYI }" "" :string)
+(merge-rule "\IeC {\cyrje }" "" :string)
+(merge-rule "\IeC {\CYRJE }" "" :string)
+(merge-rule "\IeC {\cyrlje }" "" :string)
+(merge-rule "\IeC {\CYRLJE }" "" :string)
+(merge-rule "\IeC {\cyrnje }" "" :string)
+(merge-rule "\IeC {\CYRNJE }" "" :string)
+(merge-rule "\IeC {\cyrtshe }" "" :string)
+(merge-rule "\IeC {\CYRTSHE }" "" :string)
+(merge-rule "\IeC {\'\cyrk }" "" :string)
+(merge-rule "\IeC {\'\CYRK }" "" :string)
+(merge-rule "\IeC {\cyrushrt }" "" :string)
+(merge-rule "\IeC {\CYRUSHRT }" "" :string)
+(merge-rule "\IeC {\cyrdzhe }" "" :string)
+(merge-rule "\IeC {\CYRDZHE }" "" :string)
+(merge-rule "\IeC {\cyryu }" "" :string)
+(merge-rule "\IeC {\CYRYU }" "" :string)
+(merge-rule "\IeC {\cyrhrdsn }" "" :string)
+(merge-rule "\IeC {\CYRHRDSN }" "" :string)
+(merge-rule "\IeC {\cyra }" "" :string)
+(merge-rule "\IeC {\CYRA }" "" :string)
+(merge-rule "\IeC {\cyrb }" "" :string)
+(merge-rule "\IeC {\CYRB }" "" :string)
+(merge-rule "\IeC {\cyrc }" "" :string)
+(merge-rule "\IeC {\CYRC }" "" :string)
+(merge-rule "\IeC {\cyrd }" "" :string)
+(merge-rule "\IeC {\CYRD }" "" :string)
+(merge-rule "\IeC {\cyre }" "" :string)
+(merge-rule "\IeC {\CYRE }" "" :string)
+(merge-rule "\IeC {\cyrf }" "" :string)
+(merge-rule "\IeC {\CYRF }" "" :string)
+(merge-rule "\IeC {\cyrg }" "" :string)
+(merge-rule "\IeC {\CYRG }" "" :string)
+(merge-rule "\IeC {\guillemotleft }" "" :string)
+(merge-rule "\IeC {\guillemotright }" "" :string)
+(merge-rule "\IeC {\cyrh }" "" :string)
+(merge-rule "\IeC {\CYRH }" "" :string)
+(merge-rule "\IeC {\cyri }" "" :string)
+(merge-rule "\IeC {\CYRI }" "" :string)
+(merge-rule "\IeC {\cyrishrt }" "" :string)
+(merge-rule "\IeC {\CYRISHRT }" "" :string)
+(merge-rule "\IeC {\cyrk }" "" :string)
+(merge-rule "\IeC {\CYRK }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\IeC {\cyrl }" "" :string)
+(merge-rule "\IeC {\CYRL }" "" :string)
+(merge-rule "\IeC {\cyrm }" "" :string)
+(merge-rule "\IeC {\CYRM }" "" :string)
+(merge-rule "\IeC {\cyrn }" "" :string)
+(merge-rule "\IeC {\CYRN }" "" :string)
+(merge-rule "\IeC {\cyro }" "" :string)
+(merge-rule "\IeC {\CYRO }" "" :string)
+(merge-rule "\IeC {\cyrp }" "" :string)
+(merge-rule "\IeC {\CYRP }" "" :string)
+(merge-rule "\IeC {\cyrya }" "" :string)
+(merge-rule "\IeC {\CYRYA }" "" :string)
+(merge-rule "\IeC {\cyrr }" "" :string)
+(merge-rule "\IeC {\CYRR }" "" :string)
+(merge-rule "\IeC {\cyrs }" "" :string)
+(merge-rule "\IeC {\CYRS }" "" :string)
+(merge-rule "\IeC {\cyrt }" "" :string)
+(merge-rule "\IeC {\CYRT }" "" :string)
+(merge-rule "\IeC {\cyru }" "" :string)
+(merge-rule "\IeC {\CYRU }" "" :string)
+(merge-rule "\IeC {\cyrzh }" "" :string)
+(merge-rule "\IeC {\CYRZH }" "" :string)
+(merge-rule "\IeC {\cyrv }" "" :string)
+(merge-rule "\IeC {\CYRV }" "" :string)
+(merge-rule "\IeC {\cyrsftsn }" "" :string)
+(merge-rule "\IeC {\CYRSFTSN }" "" :string)
+(merge-rule "\IeC {\textnumero }" "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\IeC {\cyrery }" "" :string)
+(merge-rule "\IeC {\CYRERY }" "" :string)
+(merge-rule "\IeC {\cyrz }" "" :string)
+(merge-rule "\IeC {\CYRZ }" "" :string)
+(merge-rule "\IeC {\cyrsh }" "" :string)
+(merge-rule "\IeC {\CYRSH }" "" :string)
+(merge-rule "\IeC {\cyrerev }" "" :string)
+(merge-rule "\IeC {\CYREREV }" "" :string)
+(merge-rule "\IeC {\cyrshch }" "" :string)
+(merge-rule "\IeC {\CYRSHCH }" "" :string)
+(merge-rule "\IeC {\cyrch }" "" :string)
+(merge-rule "\IeC {\CYRCH }" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\IeC {\textblacksquare }" "" :string)
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/cp866.xdy b/Master/texmf/xindy/modules/tex/inputenc/cp866.xdy
new file mode 100644
index 00000000000..e75b168c911
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/cp866.xdy
@@ -0,0 +1,85 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\CYRA }" "" :string)
+(merge-rule "\IeC {\CYRB }" "" :string)
+(merge-rule "\IeC {\CYRV }" "" :string)
+(merge-rule "\IeC {\CYRG }" "" :string)
+(merge-rule "\IeC {\CYRD }" "" :string)
+(merge-rule "\IeC {\CYRE }" "" :string)
+(merge-rule "\IeC {\CYRZH }" "" :string)
+(merge-rule "\IeC {\CYRZ }" "" :string)
+(merge-rule "\IeC {\CYRI }" "" :string)
+(merge-rule "\IeC {\CYRISHRT }" "" :string)
+(merge-rule "\IeC {\CYRK }" "" :string)
+(merge-rule "\IeC {\CYRL }" "" :string)
+(merge-rule "\IeC {\CYRM }" "" :string)
+(merge-rule "\IeC {\CYRN }" "" :string)
+(merge-rule "\IeC {\CYRO }" "" :string)
+(merge-rule "\IeC {\CYRP }" "" :string)
+(merge-rule "\IeC {\CYRR }" "" :string)
+(merge-rule "\IeC {\CYRS }" "" :string)
+(merge-rule "\IeC {\CYRT }" "" :string)
+(merge-rule "\IeC {\CYRU }" "" :string)
+(merge-rule "\IeC {\CYRF }" "" :string)
+(merge-rule "\IeC {\CYRH }" "" :string)
+(merge-rule "\IeC {\CYRC }" "" :string)
+(merge-rule "\IeC {\CYRCH }" "" :string)
+(merge-rule "\IeC {\CYRSH }" "" :string)
+(merge-rule "\IeC {\CYRSHCH }" "" :string)
+(merge-rule "\IeC {\CYRHRDSN }" "" :string)
+(merge-rule "\IeC {\CYRERY }" "" :string)
+(merge-rule "\IeC {\CYRSFTSN }" "" :string)
+(merge-rule "\IeC {\CYREREV }" "" :string)
+(merge-rule "\IeC {\CYRYU }" "" :string)
+(merge-rule "\IeC {\CYRYA }" "" :string)
+(merge-rule "\IeC {\cyra }" "" :string)
+(merge-rule "\IeC {\cyrb }" "" :string)
+(merge-rule "\IeC {\cyrv }" "" :string)
+(merge-rule "\IeC {\cyrg }" "" :string)
+(merge-rule "\IeC {\cyrd }" "" :string)
+(merge-rule "\IeC {\cyre }" "" :string)
+(merge-rule "\IeC {\cyrzh }" "" :string)
+(merge-rule "\IeC {\cyrz }" "" :string)
+(merge-rule "\IeC {\cyri }" "" :string)
+(merge-rule "\IeC {\cyrishrt }" "" :string)
+(merge-rule "\IeC {\cyrk }" "" :string)
+(merge-rule "\IeC {\cyrl }" "" :string)
+(merge-rule "\IeC {\cyrm }" "" :string)
+(merge-rule "\IeC {\cyrn }" "" :string)
+(merge-rule "\IeC {\cyro }" "" :string)
+(merge-rule "\IeC {\cyrp }" "" :string)
+(merge-rule "\IeC {\cyrr }" "" :string)
+(merge-rule "\IeC {\cyrs }" "" :string)
+(merge-rule "\IeC {\cyrt }" "" :string)
+(merge-rule "\IeC {\cyru }" "" :string)
+(merge-rule "\IeC {\cyrf }" "" :string)
+(merge-rule "\IeC {\cyrh }" "" :string)
+(merge-rule "\IeC {\cyrc }" "" :string)
+(merge-rule "\IeC {\cyrch }" "" :string)
+(merge-rule "\IeC {\cyrsh }" "" :string)
+(merge-rule "\IeC {\cyrshch }" "" :string)
+(merge-rule "\IeC {\cyrhrdsn }" "" :string)
+(merge-rule "\IeC {\cyrery }" "" :string)
+(merge-rule "\IeC {\cyrsftsn }" "" :string)
+(merge-rule "\IeC {\cyrerev }" "" :string)
+(merge-rule "\IeC {\cyryu }" "" :string)
+(merge-rule "\IeC {\cyrya }" "" :string)
+(merge-rule "\IeC {\CYRYO }" "" :string)
+(merge-rule "\IeC {\cyryo }" "" :string)
+(merge-rule "\IeC {\CYRIE }" "" :string)
+(merge-rule "\IeC {\cyrie }" "" :string)
+(merge-rule "\IeC {\CYRYI }" "" :string)
+(merge-rule "\IeC {\cyryi }" "" :string)
+(merge-rule "\IeC {\CYRUSHRT }" "" :string)
+(merge-rule "\IeC {\cyrushrt }" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\IeC {\textbullet }" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "{\mathchar ~"1270}" "" :string)
+(merge-rule "\IeC {\textnumero }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\IeC {\textblacksquare }" "" :string)
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/iso88595.xdy b/Master/texmf/xindy/modules/tex/inputenc/iso88595.xdy
new file mode 100644
index 00000000000..68d8009d407
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/iso88595.xdy
@@ -0,0 +1,101 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\IeC {\CYRYO }" "" :string)
+(merge-rule "\IeC {\CYRDJE }" "" :string)
+(merge-rule "\IeC {\'\CYRG }" "" :string)
+(merge-rule "\IeC {\CYRIE }" "" :string)
+(merge-rule "\IeC {\CYRDZE }" "" :string)
+(merge-rule "\IeC {\CYRII }" "" :string)
+(merge-rule "\IeC {\CYRYI }" "" :string)
+(merge-rule "\IeC {\CYRJE }" "" :string)
+(merge-rule "\IeC {\CYRLJE }" "" :string)
+(merge-rule "\IeC {\CYRNJE }" "" :string)
+(merge-rule "\IeC {\CYRTSHE }" "" :string)
+(merge-rule "\IeC {\'\CYRK }" "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\IeC {\CYRUSHRT }" "" :string)
+(merge-rule "\IeC {\CYRDZHE }" "" :string)
+(merge-rule "\IeC {\CYRA }" "" :string)
+(merge-rule "\IeC {\CYRB }" "" :string)
+(merge-rule "\IeC {\CYRV }" "" :string)
+(merge-rule "\IeC {\CYRG }" "" :string)
+(merge-rule "\IeC {\CYRD }" "" :string)
+(merge-rule "\IeC {\CYRE }" "" :string)
+(merge-rule "\IeC {\CYRZH }" "" :string)
+(merge-rule "\IeC {\CYRZ }" "" :string)
+(merge-rule "\IeC {\CYRI }" "" :string)
+(merge-rule "\IeC {\CYRISHRT }" "" :string)
+(merge-rule "\IeC {\CYRK }" "" :string)
+(merge-rule "\IeC {\CYRL }" "" :string)
+(merge-rule "\IeC {\CYRM }" "" :string)
+(merge-rule "\IeC {\CYRN }" "" :string)
+(merge-rule "\IeC {\CYRO }" "" :string)
+(merge-rule "\IeC {\CYRP }" "" :string)
+(merge-rule "\IeC {\CYRR }" "" :string)
+(merge-rule "\IeC {\CYRS }" "" :string)
+(merge-rule "\IeC {\CYRT }" "" :string)
+(merge-rule "\IeC {\CYRU }" "" :string)
+(merge-rule "\IeC {\CYRF }" "" :string)
+(merge-rule "\IeC {\CYRH }" "" :string)
+(merge-rule "\IeC {\CYRC }" "" :string)
+(merge-rule "\IeC {\CYRCH }" "" :string)
+(merge-rule "\IeC {\CYRSH }" "" :string)
+(merge-rule "\IeC {\CYRSHCH }" "" :string)
+(merge-rule "\IeC {\CYRHRDSN }" "" :string)
+(merge-rule "\IeC {\CYRERY }" "" :string)
+(merge-rule "\IeC {\CYRSFTSN }" "" :string)
+(merge-rule "\IeC {\CYREREV }" "" :string)
+(merge-rule "\IeC {\CYRYU }" "" :string)
+(merge-rule "\IeC {\CYRYA }" "" :string)
+(merge-rule "\IeC {\cyra }" "" :string)
+(merge-rule "\IeC {\cyrb }" "" :string)
+(merge-rule "\IeC {\cyrv }" "" :string)
+(merge-rule "\IeC {\cyrg }" "" :string)
+(merge-rule "\IeC {\cyrd }" "" :string)
+(merge-rule "\IeC {\cyre }" "" :string)
+(merge-rule "\IeC {\cyrzh }" "" :string)
+(merge-rule "\IeC {\cyrz }" "" :string)
+(merge-rule "\IeC {\cyri }" "" :string)
+(merge-rule "\IeC {\cyrishrt }" "" :string)
+(merge-rule "\IeC {\cyrk }" "" :string)
+(merge-rule "\IeC {\cyrl }" "" :string)
+(merge-rule "\IeC {\cyrm }" "" :string)
+(merge-rule "\IeC {\cyrn }" "" :string)
+(merge-rule "\IeC {\cyro }" "" :string)
+(merge-rule "\IeC {\cyrp }" "" :string)
+(merge-rule "\IeC {\cyrr }" "" :string)
+(merge-rule "\IeC {\cyrs }" "" :string)
+(merge-rule "\IeC {\cyrt }" "" :string)
+(merge-rule "\IeC {\cyru }" "" :string)
+(merge-rule "\IeC {\cyrf }" "" :string)
+(merge-rule "\IeC {\cyrh }" "" :string)
+(merge-rule "\IeC {\cyrc }" "" :string)
+(merge-rule "\IeC {\cyrch }" "" :string)
+(merge-rule "\IeC {\cyrsh }" "" :string)
+(merge-rule "\IeC {\cyrshch }" "" :string)
+(merge-rule "\IeC {\cyrhrdsn }" "" :string)
+(merge-rule "\IeC {\cyrery }" "" :string)
+(merge-rule "\IeC {\cyrsftsn }" "" :string)
+(merge-rule "\IeC {\cyrerev }" "" :string)
+(merge-rule "\IeC {\cyryu }" "" :string)
+(merge-rule "\IeC {\cyrya }" "" :string)
+(merge-rule "\IeC {\textnumero }" "" :string)
+(merge-rule "\IeC {\cyryo }" "" :string)
+(merge-rule "\IeC {\cyrdje }" "" :string)
+(merge-rule "\IeC {\'\cyrg }" "" :string)
+(merge-rule "\IeC {\cyrie }" "" :string)
+(merge-rule "\IeC {\cyrdze }" "" :string)
+(merge-rule "\IeC {\cyrii }" "" :string)
+(merge-rule "\IeC {\cyryi }" "" :string)
+(merge-rule "\IeC {\cyrje }" "" :string)
+(merge-rule "\IeC {\cyrlje }" "" :string)
+(merge-rule "\IeC {\cyrnje }" "" :string)
+(merge-rule "\IeC {\cyrtshe }" "" :string)
+(merge-rule "\IeC {\'\cyrk }" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\IeC {\cyrushrt }" "" :string)
+(merge-rule "\IeC {\cyrdzhe }" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/isoir111.xdy b/Master/texmf/xindy/modules/tex/inputenc/isoir111.xdy
new file mode 100644
index 00000000000..5139bb48d9d
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/isoir111.xdy
@@ -0,0 +1,101 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\IeC {\cyrdje }" "" :string)
+(merge-rule "\IeC {\'\cyrg }" "" :string)
+(merge-rule "\IeC {\cyryo }" "" :string)
+(merge-rule "\IeC {\cyrie }" "" :string)
+(merge-rule "\IeC {\cyrdze }" "" :string)
+(merge-rule "\IeC {\cyrii }" "" :string)
+(merge-rule "\IeC {\cyryi }" "" :string)
+(merge-rule "\IeC {\cyrje }" "" :string)
+(merge-rule "\IeC {\cyrlje }" "" :string)
+(merge-rule "\IeC {\cyrnje }" "" :string)
+(merge-rule "\IeC {\cyrtshe }" "" :string)
+(merge-rule "\IeC {\'\cyrk }" "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\IeC {\cyrushrt }" "" :string)
+(merge-rule "\IeC {\cyrdzhe }" "" :string)
+(merge-rule "\IeC {\textnumero }" "" :string)
+(merge-rule "\IeC {\CYRDJE }" "" :string)
+(merge-rule "\IeC {\'\CYRG }" "" :string)
+(merge-rule "\IeC {\CYRYO }" "" :string)
+(merge-rule "\IeC {\CYRIE }" "" :string)
+(merge-rule "\IeC {\CYRDZE }" "" :string)
+(merge-rule "\IeC {\CYRII }" "" :string)
+(merge-rule "\IeC {\CYRYI }" "" :string)
+(merge-rule "\IeC {\CYRJE }" "" :string)
+(merge-rule "\IeC {\CYRLJE }" "" :string)
+(merge-rule "\IeC {\CYRNJE }" "" :string)
+(merge-rule "\IeC {\CYRTSHE }" "" :string)
+(merge-rule "\IeC {\'\CYRK }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\IeC {\CYRUSHRT }" "" :string)
+(merge-rule "\IeC {\CYRDZHE }" "" :string)
+(merge-rule "\IeC {\cyryu }" "" :string)
+(merge-rule "\IeC {\cyra }" "" :string)
+(merge-rule "\IeC {\cyrb }" "" :string)
+(merge-rule "\IeC {\cyrc }" "" :string)
+(merge-rule "\IeC {\cyrd }" "" :string)
+(merge-rule "\IeC {\cyre }" "" :string)
+(merge-rule "\IeC {\cyrf }" "" :string)
+(merge-rule "\IeC {\cyrg }" "" :string)
+(merge-rule "\IeC {\cyrh }" "" :string)
+(merge-rule "\IeC {\cyri }" "" :string)
+(merge-rule "\IeC {\cyrishrt }" "" :string)
+(merge-rule "\IeC {\cyrk }" "" :string)
+(merge-rule "\IeC {\cyrl }" "" :string)
+(merge-rule "\IeC {\cyrm }" "" :string)
+(merge-rule "\IeC {\cyrn }" "" :string)
+(merge-rule "\IeC {\cyro }" "" :string)
+(merge-rule "\IeC {\cyrp }" "" :string)
+(merge-rule "\IeC {\cyrya }" "" :string)
+(merge-rule "\IeC {\cyrr }" "" :string)
+(merge-rule "\IeC {\cyrs }" "" :string)
+(merge-rule "\IeC {\cyrt }" "" :string)
+(merge-rule "\IeC {\cyru }" "" :string)
+(merge-rule "\IeC {\cyrzh }" "" :string)
+(merge-rule "\IeC {\cyrv }" "" :string)
+(merge-rule "\IeC {\cyrsftsn }" "" :string)
+(merge-rule "\IeC {\cyrery }" "" :string)
+(merge-rule "\IeC {\cyrz }" "" :string)
+(merge-rule "\IeC {\cyrsh }" "" :string)
+(merge-rule "\IeC {\cyrerev }" "" :string)
+(merge-rule "\IeC {\cyrshch }" "" :string)
+(merge-rule "\IeC {\cyrch }" "" :string)
+(merge-rule "\IeC {\cyrhrdsn }" "" :string)
+(merge-rule "\IeC {\CYRYU }" "" :string)
+(merge-rule "\IeC {\CYRA }" "" :string)
+(merge-rule "\IeC {\CYRB }" "" :string)
+(merge-rule "\IeC {\CYRC }" "" :string)
+(merge-rule "\IeC {\CYRD }" "" :string)
+(merge-rule "\IeC {\CYRE }" "" :string)
+(merge-rule "\IeC {\CYRF }" "" :string)
+(merge-rule "\IeC {\CYRG }" "" :string)
+(merge-rule "\IeC {\CYRH }" "" :string)
+(merge-rule "\IeC {\CYRI }" "" :string)
+(merge-rule "\IeC {\CYRISHRT }" "" :string)
+(merge-rule "\IeC {\CYRK }" "" :string)
+(merge-rule "\IeC {\CYRL }" "" :string)
+(merge-rule "\IeC {\CYRM }" "" :string)
+(merge-rule "\IeC {\CYRN }" "" :string)
+(merge-rule "\IeC {\CYRO }" "" :string)
+(merge-rule "\IeC {\CYRP }" "" :string)
+(merge-rule "\IeC {\CYRYA }" "" :string)
+(merge-rule "\IeC {\CYRR }" "" :string)
+(merge-rule "\IeC {\CYRS }" "" :string)
+(merge-rule "\IeC {\CYRT }" "" :string)
+(merge-rule "\IeC {\CYRU }" "" :string)
+(merge-rule "\IeC {\CYRZH }" "" :string)
+(merge-rule "\IeC {\CYRV }" "" :string)
+(merge-rule "\IeC {\CYRSFTSN }" "" :string)
+(merge-rule "\IeC {\CYRERY }" "" :string)
+(merge-rule "\IeC {\CYRZ }" "" :string)
+(merge-rule "\IeC {\CYRSH }" "" :string)
+(merge-rule "\IeC {\CYREREV }" "" :string)
+(merge-rule "\IeC {\CYRSHCH }" "" :string)
+(merge-rule "\IeC {\CYRCH }" "" :string)
+(merge-rule "\IeC {\CYRHRDSN }" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/koi8-r.xdy b/Master/texmf/xindy/modules/tex/inputenc/koi8-r.xdy
new file mode 100644
index 00000000000..7663bbcf796
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/koi8-r.xdy
@@ -0,0 +1,83 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\textblacksquare }" "" :string)
+(merge-rule "\IeC {\textbullet }" "" :string)
+(merge-rule "{\mathchar ~"1270}" "" :string)
+(merge-rule "\sim " "" :string)
+(merge-rule "\leq " "" :string)
+(merge-rule "\geq " "" :string)
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "{^2}" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "\div " "" :string)
+(merge-rule "\IeC {\cyryo }" "" :string)
+(merge-rule "\IeC {\CYRYO }" "" :string)
+(merge-rule "\IeC {\copyright }" "" :string)
+(merge-rule "\IeC {\cyryu }" "" :string)
+(merge-rule "\IeC {\cyra }" "" :string)
+(merge-rule "\IeC {\cyrb }" "" :string)
+(merge-rule "\IeC {\cyrc }" "" :string)
+(merge-rule "\IeC {\cyrd }" "" :string)
+(merge-rule "\IeC {\cyre }" "" :string)
+(merge-rule "\IeC {\cyrf }" "" :string)
+(merge-rule "\IeC {\cyrg }" "" :string)
+(merge-rule "\IeC {\cyrh }" "" :string)
+(merge-rule "\IeC {\cyri }" "" :string)
+(merge-rule "\IeC {\cyrishrt }" "" :string)
+(merge-rule "\IeC {\cyrk }" "" :string)
+(merge-rule "\IeC {\cyrl }" "" :string)
+(merge-rule "\IeC {\cyrm }" "" :string)
+(merge-rule "\IeC {\cyrn }" "" :string)
+(merge-rule "\IeC {\cyro }" "" :string)
+(merge-rule "\IeC {\cyrp }" "" :string)
+(merge-rule "\IeC {\cyrya }" "" :string)
+(merge-rule "\IeC {\cyrr }" "" :string)
+(merge-rule "\IeC {\cyrs }" "" :string)
+(merge-rule "\IeC {\cyrt }" "" :string)
+(merge-rule "\IeC {\cyru }" "" :string)
+(merge-rule "\IeC {\cyrzh }" "" :string)
+(merge-rule "\IeC {\cyrv }" "" :string)
+(merge-rule "\IeC {\cyrsftsn }" "" :string)
+(merge-rule "\IeC {\cyrery }" "" :string)
+(merge-rule "\IeC {\cyrz }" "" :string)
+(merge-rule "\IeC {\cyrsh }" "" :string)
+(merge-rule "\IeC {\cyrerev }" "" :string)
+(merge-rule "\IeC {\cyrshch }" "" :string)
+(merge-rule "\IeC {\cyrch }" "" :string)
+(merge-rule "\IeC {\cyrhrdsn }" "" :string)
+(merge-rule "\IeC {\CYRYU }" "" :string)
+(merge-rule "\IeC {\CYRA }" "" :string)
+(merge-rule "\IeC {\CYRB }" "" :string)
+(merge-rule "\IeC {\CYRC }" "" :string)
+(merge-rule "\IeC {\CYRD }" "" :string)
+(merge-rule "\IeC {\CYRE }" "" :string)
+(merge-rule "\IeC {\CYRF }" "" :string)
+(merge-rule "\IeC {\CYRG }" "" :string)
+(merge-rule "\IeC {\CYRH }" "" :string)
+(merge-rule "\IeC {\CYRI }" "" :string)
+(merge-rule "\IeC {\CYRISHRT }" "" :string)
+(merge-rule "\IeC {\CYRK }" "" :string)
+(merge-rule "\IeC {\CYRL }" "" :string)
+(merge-rule "\IeC {\CYRM }" "" :string)
+(merge-rule "\IeC {\CYRN }" "" :string)
+(merge-rule "\IeC {\CYRO }" "" :string)
+(merge-rule "\IeC {\CYRP }" "" :string)
+(merge-rule "\IeC {\CYRYA }" "" :string)
+(merge-rule "\IeC {\CYRR }" "" :string)
+(merge-rule "\IeC {\CYRS }" "" :string)
+(merge-rule "\IeC {\CYRT }" "" :string)
+(merge-rule "\IeC {\CYRU }" "" :string)
+(merge-rule "\IeC {\CYRZH }" "" :string)
+(merge-rule "\IeC {\CYRV }" "" :string)
+(merge-rule "\IeC {\CYRSFTSN }" "" :string)
+(merge-rule "\IeC {\CYRERY }" "" :string)
+(merge-rule "\IeC {\CYRZ }" "" :string)
+(merge-rule "\IeC {\CYRSH }" "" :string)
+(merge-rule "\IeC {\CYREREV }" "" :string)
+(merge-rule "\IeC {\CYRSHCH }" "" :string)
+(merge-rule "\IeC {\CYRCH }" "" :string)
+(merge-rule "\IeC {\CYRHRDSN }" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/koi8-u.xdy b/Master/texmf/xindy/modules/tex/inputenc/koi8-u.xdy
new file mode 100644
index 00000000000..b14024d0854
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/koi8-u.xdy
@@ -0,0 +1,79 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\cyryo }" "" :string)
+(merge-rule "\IeC {\cyrie }" "" :string)
+(merge-rule "\IeC {\cyrii }" "" :string)
+(merge-rule "\IeC {\cyryi }" "" :string)
+(merge-rule "\IeC {\cyrgup }" "" :string)
+(merge-rule "\IeC {\CYRYO }" "" :string)
+(merge-rule "\IeC {\CYRIE }" "" :string)
+(merge-rule "\IeC {\CYRII }" "" :string)
+(merge-rule "\IeC {\CYRYI }" "" :string)
+(merge-rule "\IeC {\CYRGUP }" "" :string)
+(merge-rule "\IeC {\cyryu }" "" :string)
+(merge-rule "\IeC {\cyra }" "" :string)
+(merge-rule "\IeC {\cyrb }" "" :string)
+(merge-rule "\IeC {\cyrc }" "" :string)
+(merge-rule "\IeC {\cyrd }" "" :string)
+(merge-rule "\IeC {\cyre }" "" :string)
+(merge-rule "\IeC {\cyrf }" "" :string)
+(merge-rule "\IeC {\cyrg }" "" :string)
+(merge-rule "\IeC {\cyrh }" "" :string)
+(merge-rule "\IeC {\cyri }" "" :string)
+(merge-rule "\IeC {\cyrishrt }" "" :string)
+(merge-rule "\IeC {\cyrk }" "" :string)
+(merge-rule "\IeC {\cyrl }" "" :string)
+(merge-rule "\IeC {\cyrm }" "" :string)
+(merge-rule "\IeC {\cyrn }" "" :string)
+(merge-rule "\IeC {\cyro }" "" :string)
+(merge-rule "\IeC {\cyrp }" "" :string)
+(merge-rule "\IeC {\cyrya }" "" :string)
+(merge-rule "\IeC {\cyrr }" "" :string)
+(merge-rule "\IeC {\cyrs }" "" :string)
+(merge-rule "\IeC {\cyrt }" "" :string)
+(merge-rule "\IeC {\cyru }" "" :string)
+(merge-rule "\IeC {\cyrzh }" "" :string)
+(merge-rule "\IeC {\cyrv }" "" :string)
+(merge-rule "\IeC {\cyrsftsn }" "" :string)
+(merge-rule "\IeC {\cyrery }" "" :string)
+(merge-rule "\IeC {\cyrz }" "" :string)
+(merge-rule "\IeC {\cyrsh }" "" :string)
+(merge-rule "\IeC {\cyrerev }" "" :string)
+(merge-rule "\IeC {\cyrshch }" "" :string)
+(merge-rule "\IeC {\cyrch }" "" :string)
+(merge-rule "\IeC {\cyrhrdsn }" "" :string)
+(merge-rule "\IeC {\CYRYU }" "" :string)
+(merge-rule "\IeC {\CYRA }" "" :string)
+(merge-rule "\IeC {\CYRB }" "" :string)
+(merge-rule "\IeC {\CYRC }" "" :string)
+(merge-rule "\IeC {\CYRD }" "" :string)
+(merge-rule "\IeC {\CYRE }" "" :string)
+(merge-rule "\IeC {\CYRF }" "" :string)
+(merge-rule "\IeC {\CYRG }" "" :string)
+(merge-rule "\IeC {\CYRH }" "" :string)
+(merge-rule "\IeC {\CYRI }" "" :string)
+(merge-rule "\IeC {\CYRISHRT }" "" :string)
+(merge-rule "\IeC {\CYRK }" "" :string)
+(merge-rule "\IeC {\CYRL }" "" :string)
+(merge-rule "\IeC {\CYRM }" "" :string)
+(merge-rule "\IeC {\CYRN }" "" :string)
+(merge-rule "\IeC {\CYRO }" "" :string)
+(merge-rule "\IeC {\CYRP }" "" :string)
+(merge-rule "\IeC {\CYRYA }" "" :string)
+(merge-rule "\IeC {\CYRR }" "" :string)
+(merge-rule "\IeC {\CYRS }" "" :string)
+(merge-rule "\IeC {\CYRT }" "" :string)
+(merge-rule "\IeC {\CYRU }" "" :string)
+(merge-rule "\IeC {\CYRZH }" "" :string)
+(merge-rule "\IeC {\CYRV }" "" :string)
+(merge-rule "\IeC {\CYRSFTSN }" "" :string)
+(merge-rule "\IeC {\CYRERY }" "" :string)
+(merge-rule "\IeC {\CYRZ }" "" :string)
+(merge-rule "\IeC {\CYRSH }" "" :string)
+(merge-rule "\IeC {\CYREREV }" "" :string)
+(merge-rule "\IeC {\CYRSHCH }" "" :string)
+(merge-rule "\IeC {\CYRCH }" "" :string)
+(merge-rule "\IeC {\CYRHRDSN }" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/latin.xdy b/Master/texmf/xindy/modules/tex/inputenc/latin.xdy
new file mode 100644
index 00000000000..23205b93c10
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/latin.xdy
@@ -0,0 +1,178 @@
+;; Generated from latin?.xdy
+
+
+(merge-rule "\'A" "" :string)
+(merge-rule "\'C" "" :string)
+(merge-rule "\'E" "" :string)
+(merge-rule "\'I" "" :string)
+(merge-rule "\'L" "" :string)
+(merge-rule "\'N" "" :string)
+(merge-rule "\'O" "" :string)
+(merge-rule "\'R" "" :string)
+(merge-rule "\'S" "" :string)
+(merge-rule "\'U" "" :string)
+(merge-rule "\'Y" "" :string)
+(merge-rule "\'Z" "" :string)
+(merge-rule "\'a" "" :string)
+(merge-rule "\'c" "" :string)
+(merge-rule "\'e" "" :string)
+(merge-rule "\'l" "" :string)
+(merge-rule "\'n" "" :string)
+(merge-rule "\'o" "" :string)
+(merge-rule "\'r" "" :string)
+(merge-rule "\'s" "" :string)
+(merge-rule "\'u" "" :string)
+(merge-rule "\'y" "" :string)
+(merge-rule "\'z" "" :string)
+(merge-rule "\'{}" "" :string)
+(merge-rule "\.C" "" :string)
+(merge-rule "\.G" "" :string)
+(merge-rule "\.I" "" :string)
+(merge-rule "\.Z" "" :string)
+(merge-rule "\.c" "" :string)
+(merge-rule "\.g" "" :string)
+(merge-rule "\.z" "" :string)
+(merge-rule "\.{}" "" :string)
+(merge-rule "\={}" "" :string)
+(merge-rule "\H O" "" :string)
+(merge-rule "\H U" "" :string)
+(merge-rule "\H o" "" :string)
+(merge-rule "\H u" "" :string)
+(merge-rule "\H {}" "" :string)
+(merge-rule "\IeC {\'\i }" "" :string)
+(merge-rule "\IeC {\AE }" "" :string)
+(merge-rule "\IeC {\DH }" "" :string)
+(merge-rule "\IeC {\DJ }" "" :string)
+(merge-rule "\IeC {\L }" "" :string)
+(merge-rule "\IeC {\O }" "" :string)
+(merge-rule "\IeC {\P }" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\IeC {\TH }" "" :string)
+(merge-rule "\IeC {\^\i }" "" :string)
+(merge-rule "\IeC {\^\j }" "" :string)
+(merge-rule "\IeC {\`\i }" "" :string)
+(merge-rule "\IeC {\ae }" "" :string)
+(merge-rule "\IeC {\c \ }" "" :string)
+(merge-rule "\IeC {\copyright }" "" :string)
+(merge-rule "\IeC {\dh }" "" :string)
+(merge-rule "\IeC {\dj }" "" :string)
+(merge-rule "\IeC {\guillemotleft }" "" :string)
+(merge-rule "\IeC {\guillemotright }" "" :string)
+(merge-rule "\IeC {\i }" "" :string)
+(merge-rule "\IeC {\k \ }" "" :string)
+(merge-rule "\IeC {\l }" "" :string)
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\IeC {\o }" "" :string)
+(merge-rule "\IeC {\pounds }" "" :string)
+(merge-rule "\IeC {\ss }" "" :string)
+(merge-rule "\IeC {\textbrokenbar }" "" :string)
+(merge-rule "\IeC {\textcent }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\IeC {\textexclamdown }" "" :string)
+(merge-rule "\IeC {\textmalteseH }" "" :string)
+(merge-rule "\IeC {\textmalteseh }" "" :string)
+(merge-rule "\IeC {\textonehalf }" "" :string)
+(merge-rule "\IeC {\textonequarter }" "" :string)
+(merge-rule "\IeC {\textordfeminine }" "" :string)
+(merge-rule "\IeC {\textordmasculine }" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "\IeC {\textquestiondown }" "" :string)
+(merge-rule "\IeC {\textregistered }" "" :string)
+(merge-rule "\IeC {\textthreequarters }" "" :string)
+(merge-rule "\IeC {\textyen }" "" :string)
+(merge-rule "\IeC {\th }" "" :string)
+(merge-rule "\IeC {\~"\i }" "" :string)
+(merge-rule "\^A" "" :string)
+(merge-rule "\^C" "" :string)
+(merge-rule "\^E" "" :string)
+(merge-rule "\^G" "" :string)
+(merge-rule "\^H" "" :string)
+(merge-rule "\^I" "" :string)
+(merge-rule "\^J" "" :string)
+(merge-rule "\^O" "" :string)
+(merge-rule "\^S" "" :string)
+(merge-rule "\^U" "" :string)
+(merge-rule "\^a" "" :string)
+(merge-rule "\^c" "" :string)
+(merge-rule "\^e" "" :string)
+(merge-rule "\^g" "" :string)
+(merge-rule "\^h" "" :string)
+(merge-rule "\^o" "" :string)
+(merge-rule "\^s" "" :string)
+(merge-rule "\^u" "" :string)
+(merge-rule "\`A" "" :string)
+(merge-rule "\`E" "" :string)
+(merge-rule "\`I" "" :string)
+(merge-rule "\`O" "" :string)
+(merge-rule "\`U" "" :string)
+(merge-rule "\`a" "" :string)
+(merge-rule "\`e" "" :string)
+(merge-rule "\`o" "" :string)
+(merge-rule "\`u" "" :string)
+(merge-rule "\c C" "" :string)
+(merge-rule "\c S" "" :string)
+(merge-rule "\c T" "" :string)
+(merge-rule "\c c" "" :string)
+(merge-rule "\c s" "" :string)
+(merge-rule "\c t" "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\div " "" :string)
+(merge-rule "\k A" "" :string)
+(merge-rule "\k E" "" :string)
+(merge-rule "\k a" "" :string)
+(merge-rule "\k e" "" :string)
+(merge-rule "\lnot " "" :string)
+(merge-rule "\mu " "" :string)
+(merge-rule "\pm " "" :string)
+(merge-rule "\r A" "" :string)
+(merge-rule "\r U" "" :string)
+(merge-rule "\r a" "" :string)
+(merge-rule "\r u" "" :string)
+(merge-rule "\times " "" :string)
+(merge-rule "\u A" "" :string)
+(merge-rule "\u G" "" :string)
+(merge-rule "\u U" "" :string)
+(merge-rule "\u a" "" :string)
+(merge-rule "\u g" "" :string)
+(merge-rule "\u u" "" :string)
+(merge-rule "\u {}" "" :string)
+(merge-rule "\v C" "" :string)
+(merge-rule "\v D" "" :string)
+(merge-rule "\v E" "" :string)
+(merge-rule "\v L" "" :string)
+(merge-rule "\v N" "" :string)
+(merge-rule "\v R" "" :string)
+(merge-rule "\v S" "" :string)
+(merge-rule "\v T" "" :string)
+(merge-rule "\v Z" "" :string)
+(merge-rule "\v c" "" :string)
+(merge-rule "\v d" "" :string)
+(merge-rule "\v e" "" :string)
+(merge-rule "\v l" "" :string)
+(merge-rule "\v n" "" :string)
+(merge-rule "\v r" "" :string)
+(merge-rule "\v s" "" :string)
+(merge-rule "\v t" "" :string)
+(merge-rule "\v z" "" :string)
+(merge-rule "\v {}" "" :string)
+(merge-rule "\~"A" "" :string)
+(merge-rule "\~"E" "" :string)
+(merge-rule "\~"I" "" :string)
+(merge-rule "\~"O" "" :string)
+(merge-rule "\~"U" "" :string)
+(merge-rule "\~"a" "" :string)
+(merge-rule "\~"e" "" :string)
+(merge-rule "\~"o" "" :string)
+(merge-rule "\~"u" "" :string)
+(merge-rule "\~"y" "" :string)
+(merge-rule "\~"{}" "" :string)
+(merge-rule "\~~A" "" :string)
+(merge-rule "\~~N" "" :string)
+(merge-rule "\~~O" "" :string)
+(merge-rule "\~~a" "" :string)
+(merge-rule "\~~n" "" :string)
+(merge-rule "\~~o" "" :string)
+(merge-rule "{^1}" "" :string)
+(merge-rule "{^2}" "" :string)
+(merge-rule "{^3}" "" :string)
diff --git a/Master/texmf/xindy/modules/tex/inputenc/latin1.xdy b/Master/texmf/xindy/modules/tex/inputenc/latin1.xdy
new file mode 100644
index 00000000000..231e6af8130
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/latin1.xdy
@@ -0,0 +1,101 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\IeC {\textexclamdown }" "" :string)
+(merge-rule "\IeC {\textcent }" "" :string)
+(merge-rule "\IeC {\pounds }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\IeC {\textyen }" "" :string)
+(merge-rule "\IeC {\textbrokenbar }" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\~"{}" "" :string)
+(merge-rule "\IeC {\copyright }" "" :string)
+(merge-rule "\IeC {\textordfeminine }" "" :string)
+(merge-rule "\IeC {\guillemotleft }" "" :string)
+(merge-rule "\lnot " "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\IeC {\textregistered }" "" :string)
+(merge-rule "\={}" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\pm " "" :string)
+(merge-rule "{^2}" "" :string)
+(merge-rule "{^3}" "" :string)
+(merge-rule "\'{}" "" :string)
+(merge-rule "\mu " "" :string)
+(merge-rule "\IeC {\P }" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "\IeC {\c \ }" "" :string)
+(merge-rule "{^1}" "" :string)
+(merge-rule "\IeC {\textordmasculine }" "" :string)
+(merge-rule "\IeC {\guillemotright }" "" :string)
+(merge-rule "\IeC {\textonequarter }" "" :string)
+(merge-rule "\IeC {\textonehalf }" "" :string)
+(merge-rule "\IeC {\textthreequarters }" "" :string)
+(merge-rule "\IeC {\textquestiondown }" "" :string)
+(merge-rule "\`A" "" :string)
+(merge-rule "\'A" "" :string)
+(merge-rule "\^A" "" :string)
+(merge-rule "\~~A" "" :string)
+(merge-rule "\~"A" "" :string)
+(merge-rule "\r A" "" :string)
+(merge-rule "\IeC {\AE }" "" :string)
+(merge-rule "\c C" "" :string)
+(merge-rule "\`E" "" :string)
+(merge-rule "\'E" "" :string)
+(merge-rule "\^E" "" :string)
+(merge-rule "\~"E" "" :string)
+(merge-rule "\`I" "" :string)
+(merge-rule "\'I" "" :string)
+(merge-rule "\^I" "" :string)
+(merge-rule "\~"I" "" :string)
+(merge-rule "\IeC {\DH }" "" :string)
+(merge-rule "\~~N" "" :string)
+(merge-rule "\`O" "" :string)
+(merge-rule "\'O" "" :string)
+(merge-rule "\^O" "" :string)
+(merge-rule "\~~O" "" :string)
+(merge-rule "\~"O" "" :string)
+(merge-rule "\times " "" :string)
+(merge-rule "\IeC {\O }" "" :string)
+(merge-rule "\`U" "" :string)
+(merge-rule "\'U" "" :string)
+(merge-rule "\^U" "" :string)
+(merge-rule "\~"U" "" :string)
+(merge-rule "\'Y" "" :string)
+(merge-rule "\IeC {\TH }" "" :string)
+(merge-rule "\IeC {\ss }" "" :string)
+(merge-rule "\`a" "" :string)
+(merge-rule "\'a" "" :string)
+(merge-rule "\^a" "" :string)
+(merge-rule "\~~a" "" :string)
+(merge-rule "\~"a" "" :string)
+(merge-rule "\r a" "" :string)
+(merge-rule "\IeC {\ae }" "" :string)
+(merge-rule "\c c" "" :string)
+(merge-rule "\`e" "" :string)
+(merge-rule "\'e" "" :string)
+(merge-rule "\^e" "" :string)
+(merge-rule "\~"e" "" :string)
+(merge-rule "\IeC {\`\i }" "" :string)
+(merge-rule "\IeC {\'\i }" "" :string)
+(merge-rule "\IeC {\^\i }" "" :string)
+(merge-rule "\IeC {\~"\i }" "" :string)
+(merge-rule "\IeC {\dh }" "" :string)
+(merge-rule "\~~n" "" :string)
+(merge-rule "\`o" "" :string)
+(merge-rule "\'o" "" :string)
+(merge-rule "\^o" "" :string)
+(merge-rule "\~~o" "" :string)
+(merge-rule "\~"o" "" :string)
+(merge-rule "\div " "" :string)
+(merge-rule "\IeC {\o }" "" :string)
+(merge-rule "\`u" "" :string)
+(merge-rule "\'u" "" :string)
+(merge-rule "\^u" "" :string)
+(merge-rule "\~"u" "" :string)
+(merge-rule "\'y" "" :string)
+(merge-rule "\IeC {\th }" "" :string)
+(merge-rule "\~"y" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/latin2.xdy b/Master/texmf/xindy/modules/tex/inputenc/latin2.xdy
new file mode 100644
index 00000000000..f6f99f02858
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/latin2.xdy
@@ -0,0 +1,101 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\k A" "" :string)
+(merge-rule "\u {}" "" :string)
+(merge-rule "\IeC {\L }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\v L" "" :string)
+(merge-rule "\'S" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\~"{}" "" :string)
+(merge-rule "\v S" "" :string)
+(merge-rule "\c S" "" :string)
+(merge-rule "\v T" "" :string)
+(merge-rule "\'Z" "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\v Z" "" :string)
+(merge-rule "\.Z" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\k a" "" :string)
+(merge-rule "\IeC {\k \ }" "" :string)
+(merge-rule "\IeC {\l }" "" :string)
+(merge-rule "\'{}" "" :string)
+(merge-rule "\v l" "" :string)
+(merge-rule "\'s" "" :string)
+(merge-rule "\v {}" "" :string)
+(merge-rule "\IeC {\c \ }" "" :string)
+(merge-rule "\v s" "" :string)
+(merge-rule "\c s" "" :string)
+(merge-rule "\v t" "" :string)
+(merge-rule "\'z" "" :string)
+(merge-rule "\H {}" "" :string)
+(merge-rule "\v z" "" :string)
+(merge-rule "\.z" "" :string)
+(merge-rule "\'R" "" :string)
+(merge-rule "\'A" "" :string)
+(merge-rule "\^A" "" :string)
+(merge-rule "\u A" "" :string)
+(merge-rule "\~"A" "" :string)
+(merge-rule "\'L" "" :string)
+(merge-rule "\'C" "" :string)
+(merge-rule "\c C" "" :string)
+(merge-rule "\v C" "" :string)
+(merge-rule "\'E" "" :string)
+(merge-rule "\k E" "" :string)
+(merge-rule "\~"E" "" :string)
+(merge-rule "\v E" "" :string)
+(merge-rule "\'I" "" :string)
+(merge-rule "\^I" "" :string)
+(merge-rule "\v D" "" :string)
+(merge-rule "\IeC {\DJ }" "" :string)
+(merge-rule "\'N" "" :string)
+(merge-rule "\v N" "" :string)
+(merge-rule "\'O" "" :string)
+(merge-rule "\^O" "" :string)
+(merge-rule "\H O" "" :string)
+(merge-rule "\~"O" "" :string)
+(merge-rule "\times " "" :string)
+(merge-rule "\v R" "" :string)
+(merge-rule "\r U" "" :string)
+(merge-rule "\'U" "" :string)
+(merge-rule "\H U" "" :string)
+(merge-rule "\~"U" "" :string)
+(merge-rule "\'Y" "" :string)
+(merge-rule "\c T" "" :string)
+(merge-rule "\IeC {\ss }" "" :string)
+(merge-rule "\'r" "" :string)
+(merge-rule "\'a" "" :string)
+(merge-rule "\^a" "" :string)
+(merge-rule "\u a" "" :string)
+(merge-rule "\~"a" "" :string)
+(merge-rule "\'l" "" :string)
+(merge-rule "\'c" "" :string)
+(merge-rule "\c c" "" :string)
+(merge-rule "\v c" "" :string)
+(merge-rule "\'e" "" :string)
+(merge-rule "\k e" "" :string)
+(merge-rule "\~"e" "" :string)
+(merge-rule "\v e" "" :string)
+(merge-rule "\IeC {\'\i }" "" :string)
+(merge-rule "\IeC {\^\i }" "" :string)
+(merge-rule "\v d" "" :string)
+(merge-rule "\IeC {\dj }" "" :string)
+(merge-rule "\'n" "" :string)
+(merge-rule "\v n" "" :string)
+(merge-rule "\'o" "" :string)
+(merge-rule "\^o" "" :string)
+(merge-rule "\H o" "" :string)
+(merge-rule "\~"o" "" :string)
+(merge-rule "\div " "" :string)
+(merge-rule "\v r" "" :string)
+(merge-rule "\r u" "" :string)
+(merge-rule "\'u" "" :string)
+(merge-rule "\H u" "" :string)
+(merge-rule "\~"u" "" :string)
+(merge-rule "\'y" "" :string)
+(merge-rule "\c t" "" :string)
+(merge-rule "\.{}" "" :string)
+
+;; end of style file.
diff --git a/Master/texmf/xindy/modules/tex/inputenc/latin3.xdy b/Master/texmf/xindy/modules/tex/inputenc/latin3.xdy
new file mode 100644
index 00000000000..b47e1170eca
--- /dev/null
+++ b/Master/texmf/xindy/modules/tex/inputenc/latin3.xdy
@@ -0,0 +1,94 @@
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+(merge-rule "\IeC {\nobreakspace }" "" :string)
+(merge-rule "\IeC {\textmalteseH }" "" :string)
+(merge-rule "\u {}" "" :string)
+(merge-rule "\IeC {\pounds }" "" :string)
+(merge-rule "\IeC {\textcurrency }" "" :string)
+(merge-rule "\^H" "" :string)
+(merge-rule "\IeC {\S }" "" :string)
+(merge-rule "\~"{}" "" :string)
+(merge-rule "\.I" "" :string)
+(merge-rule "\c S" "" :string)
+(merge-rule "\u G" "" :string)
+(merge-rule "\^J" "" :string)
+(merge-rule "\discretionary {-}{}{}" "" :string)
+(merge-rule "\.Z" "" :string)
+(merge-rule "\IeC {\textdegree }" "" :string)
+(merge-rule "\IeC {\textmalteseh }" "" :string)
+(merge-rule "{^2}" "" :string)
+(merge-rule "{^3}" "" :string)
+(merge-rule "\'{}" "" :string)
+(merge-rule "\mu " "" :string)
+(merge-rule "\^h" "" :string)
+(merge-rule "\IeC {\textperiodcentered }" "" :string)
+(merge-rule "\IeC {\c \ }" "" :string)
+(merge-rule "\IeC {\i }" "" :string)
+(merge-rule "\c s" "" :string)
+(merge-rule "\u g" "" :string)
+(merge-rule "\IeC {\^\j }" "" :string)
+(merge-rule "\IeC {\textonehalf }" "" :string)
+(merge-rule "\.z" "" :string)
+(merge-rule "\`A" "" :string)
+(merge-rule "\'A" "" :string)
+(merge-rule "\^A" "" :string)
+(merge-rule "\~"A" "" :string)
+(merge-rule "\.C" "" :string)
+(merge-rule "\^C" "" :string)
+(merge-rule "\c C" "" :string)
+(merge-rule "\`E" "" :string)
+(merge-rule "\'E" "" :string)
+(merge-rule "\^E" "" :string)
+(merge-rule "\~"E" "" :string)
+(merge-rule "\`I" "" :string)
+(merge-rule "\'I" "" :string)
+(merge-rule "\^I" "" :string)
+(merge-rule "\~"I" "" :string)
+(merge-rule "\~~N" "" :string)
+(merge-rule "\`O" "" :string)
+(merge-rule "\'O" "" :string)
+(merge-rule "\^O" "" :string)
+(merge-rule "\.G" "" :string)
+(merge-rule "\~"O" "" :string)
+(merge-rule "\times " "" :string)
+(merge-rule "\^G" "" :string)
+(merge-rule "\`U" "" :string)
+(merge-rule "\'U" "" :string)
+(merge-rule "\^U" "" :string)
+(merge-rule "\~"U" "" :string)
+(merge-rule "\u U" "" :string)
+(merge-rule "\^S" "" :string)
+(merge-rule "\IeC {\ss }" "" :string)
+(merge-rule "\`a" "" :string)
+(merge-rule "\'a" "" :string)
+(merge-rule "\^a" "" :string)
+(merge-rule "\~"a" "" :string)
+(merge-rule "\.c" "" :string)
+(merge-rule "\^c" "" :string)
+(merge-rule "\c c" "" :string)
+(merge-rule "\`e" "" :string)
+(merge-rule "\'e" "" :string)
+(merge-rule "\^e" "" :string)
+(merge-rule "\~"e" "" :string)
+(merge-rule "\IeC {\`\i }" "" :string)
+(merge-rule "\IeC {\'\i }" "" :string)
+(merge-rule "\IeC {\^\i }" "" :string)
+(merge-rule "\IeC {\~"\i }" "" :string)
+(merge-rule "\~~n" "" :string)
+(merge-rule "\`o" "" :string)
+(merge-rule "\'o" "" :string)
+(merge-rule "\^o" "" :string)
+(merge-rule "\.g" "" :string)
+(merge-rule "\~"o" "" :string)
+(merge-rule "\div " "" :string)
+(merge-rule "\^g" "" :string)
+(merge-rule "\`u" "" :string)
+(merge-rule "\'u" "" :string)
+(merge-rule "\^u" "" :string)
+(merge-rule "\~"u" "" :string)
+(merge-rule "\u u" "" :string)
+(merge-rule "\^s" "" :string)
+(merge-rule "\.{}" "" :string)
+
+;; end of style file.