summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/albanian/latin1.pl144
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/cp1251.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/iso88595.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/isoir111.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/cp1251.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/iso88595.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/koi8-r.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/croatian/cp1250.pl148
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/croatian/latin2.pl148
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/czech/cp1250.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/czech/latin2.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/danish/cp1252.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/danish/latin9.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/dutch/ij-as-ij-latin1.pl148
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/english/cp1252.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/english/latin9.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/esperanto/latin3.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/estonian/cp1252.pl144
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/estonian/latin9.pl144
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/finnish/cp1252.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/finnish/latin9.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/french/cp1252.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/french/latin9.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/cp1252.pl150
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/cp850.pl150
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/latin9.pl150
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/german/din5007-latin1.pl149
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/german/duden-latin1.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/greek/iso88597.pl47
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/greek/translit-latin4.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/hebrew/iso88598.pl45
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/hungarian/cp1250.pl147
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/hungarian/latin2.pl147
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/icelandic/cp1252.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/icelandic/latin9.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/italian/latin1.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/kurdish/bedirxan-latin5.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/kurdish/turkish-i-latin5.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/latvian/latin4.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/lithuanian/latin4.pl144
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/lower-sorbian/cp1250.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/lower-sorbian/latin2.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/cp1251.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/iso88595.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/isoir111.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/norwegian/latin1.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/polish/cp1250.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/polish/latin2.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/portuguese/latin1.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/romanian/latin2.pl144
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/cp1251.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/iso88595.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/koi8-r.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/cp1251.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/iso88595.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/isoir111.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/large-cp1250.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/large-latin2.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/small-cp1250.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/small-latin2.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovenian/cp1250.pl148
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovenian/latin2.pl148
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/spanish/modern-latin1.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/spanish/traditional-latin1.pl146
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/swedish/cp1252.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/swedish/latin9.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/turkish/latin3.pl144
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/turkish/latin5.pl144
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/ukrainian/cp1251.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/ukrainian/koi8-u.pl72
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/upper-sorbian/cp1250.pl145
-rw-r--r--Build/source/utils/xindy-new/xindy/make-rules/alphabets/upper-sorbian/latin2.pl145
72 files changed, 9044 insertions, 0 deletions
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/albanian/latin1.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/albanian/latin1.pl
new file mode 100644
index 00000000000..632fb12db52
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/albanian/latin1.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Albanian";
+$prefix = "sq";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['', ['','']],
+['D', ['d','D']],
+['Dh', ['dh','Dh','DH']],
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+['', ['','']],
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+['Gj', ['gj','Gj','GJ']],
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+['Ll', ['ll','Ll','LL']],
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+['M', ['m','M']],
+['N', ['n','N']],
+['Nj', ['nj','Nj','NJ']],
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+['Rr', ['rr','Rr','RR']],
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+['Sh', ['sh','Sh','SH']],
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+['Th', ['th','Th','TH']],
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+['Xh', ['xh','Xh','XH']],
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+['Zh', ['zh','Zh','ZH']],
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/cp1251.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/cp1251.pl
new file mode 100644
index 00000000000..3880a2c9a9f
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Belarusian";
+$prefix = "be";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['',''],['','']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+['', ['','']],
+ [], # yi (ukrainian)
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+['', ['','']],
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/iso88595.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/iso88595.pl
new file mode 100644
index 00000000000..edbcdb109ea
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Belarusian";
+$prefix = "be";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['',''],['','']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+['', ['','']],
+ [], # yi (ukrainian)
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+['', ['','']],
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/isoir111.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/isoir111.pl
new file mode 100644
index 00000000000..55905ff7559
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/belarusian/isoir111.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Belarusian";
+$prefix = "be";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['',''],['','']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+['', ['','']],
+ [], # yi (ukrainian)
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+['', ['','']],
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/cp1251.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/cp1251.pl
new file mode 100644
index 00000000000..b18ba01af3f
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Bulgarian";
+$prefix = "bg";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['','']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # yeru (belarusian, russian)
+['', ['','']],
+ [],
+ [], # e (belarusian, russian)
+['', ['','']],
+['', ['','']],
+ [],
+[],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/iso88595.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/iso88595.pl
new file mode 100644
index 00000000000..a745b534f38
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Bulgarian";
+$prefix = "bg";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['','']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # yeru (belarusian, russian)
+['', ['','']],
+ [],
+ [], # e (belarusian, russian)
+['', ['','']],
+['', ['','']],
+ [],
+[],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/koi8-r.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/koi8-r.pl
new file mode 100644
index 00000000000..79e53a25250
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/bulgarian/koi8-r.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Bulgarian";
+$prefix = "bg";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['','']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # yeru (belarusian, russian)
+['', ['','']],
+ [],
+ [], # e (belarusian, russian)
+['', ['','']],
+['', ['','']],
+ [],
+[],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/croatian/cp1250.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/croatian/cp1250.pl
new file mode 100644
index 00000000000..ef624f39335
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/croatian/cp1250.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Croatian";
+$prefix = "hr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'] ],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['', ['','']],
+['', ['','']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+['D', ['d','D','D']],
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+['', ['','']],
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'] ],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G'] ],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'] ],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K'] ],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['Lj', ['lj','Lj','LJ']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+['Nj', ['nj','Nj','NJ']],
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'] ],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] ],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'] ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+
+
+
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/croatian/latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/croatian/latin2.pl
new file mode 100644
index 00000000000..5f94c9c0321
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/croatian/latin2.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Croatian";
+$prefix = "hr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'] ],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['', ['','']],
+['', ['','']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+['D', ['d','D','D']],
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+['', ['','']],
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'] ],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G'] ],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'] ],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K'] ],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['Lj', ['lj','Lj','LJ']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+['Nj', ['nj','Nj','NJ']],
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'] ],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] ],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'] ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+
+
+
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/czech/cp1250.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/czech/cp1250.pl
new file mode 100644
index 00000000000..a8dda762d5f
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/czech/cp1250.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Czech";
+$prefix = "cs";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['', ['','']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['',''], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['', ['','']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['','']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['',''], ['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/czech/latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/czech/latin2.pl
new file mode 100644
index 00000000000..7af4d817e4c
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/czech/latin2.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Czech";
+$prefix = "cs";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['', ['','']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['',''], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['', ['','']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['','']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['',''], ['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/danish/cp1252.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/danish/cp1252.pl
new file mode 100644
index 00000000000..dd3e3dedae2
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/danish/cp1252.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Danish";
+$prefix = "da";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['',''],['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+['', ['','']],
+['', ['',''],['',''],['','']],
+['', ['',''],['aa','Aa','AA']],
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['',''], 'after', [['t','h'], ['T','h']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/danish/latin9.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/danish/latin9.pl
new file mode 100644
index 00000000000..89ee37be0ae
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/danish/latin9.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Danish";
+$prefix = "da";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['',''],['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+['', ['','']],
+['', ['',''],['',''],['','']],
+['', ['',''],['aa','Aa','AA']],
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['',''], 'after', [['t','h'], ['T','h']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/dutch/ij-as-ij-latin1.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/dutch/ij-as-ij-latin1.pl
new file mode 100644
index 00000000000..9704c976872
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/dutch/ij-as-ij-latin1.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+# Not quite sure about this -- MV
+
+$language = "Dutch";
+$variant = "Ligature IJ sorted as I+J";
+$prefix = "nl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['',''], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/english/cp1252.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/english/cp1252.pl
new file mode 100644
index 00000000000..1cea424628d
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/english/cp1252.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "English";
+$prefix = "en";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+[],
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['', ['','']],
+[],
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['',''], 'after', [['a','e'], ['A','e']]],
+[['',''], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/english/latin9.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/english/latin9.pl
new file mode 100644
index 00000000000..bafb500811c
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/english/latin9.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "English";
+$prefix = "en";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+[],
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['', ['','']],
+[],
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['',''], 'after', [['a','e'], ['A','e']]],
+[['',''], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/esperanto/latin3.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/esperanto/latin3.pl
new file mode 100644
index 00000000000..9a77c47ad9c
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/esperanto/latin3.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Esperanto";
+$prefix = "eo";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+['', ['','']],
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+['', ['','']],
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+['', ['','']],
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+['', ['','']],
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+['', ['','']],
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+['', ['','']],
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/estonian/cp1252.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/estonian/cp1252.pl
new file mode 100644
index 00000000000..9a036a1c4d7
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/estonian/cp1252.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Estonian";
+$prefix = "et";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+['Z', ['z','Z']],
+['', ['','']],
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'],['w','W']],
+ [], # w (many)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+ [], # z (many)
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/estonian/latin9.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/estonian/latin9.pl
new file mode 100644
index 00000000000..773772d6000
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/estonian/latin9.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Estonian";
+$prefix = "et";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+['Z', ['z','Z']],
+['', ['','']],
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'],['w','W']],
+ [], # w (many)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+ [], # z (many)
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/finnish/cp1252.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/finnish/cp1252.pl
new file mode 100644
index 00000000000..01624cfa4cf
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/finnish/cp1252.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Finnish";
+$prefix = "fi";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['','']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['','']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['', ['','']],
+['', ['',''],['','']],
+['', ['',''],['',''],['','']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/finnish/latin9.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/finnish/latin9.pl
new file mode 100644
index 00000000000..a7b71077b45
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/finnish/latin9.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Finnish";
+$prefix = "fi";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['','']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['','']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['', ['','']],
+['', ['',''],['','']],
+['', ['',''],['',''],['','']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/french/cp1252.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/french/cp1252.pl
new file mode 100644
index 00000000000..36a261558bb
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/french/cp1252.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "French";
+$prefix = "fr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['',''],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zs (hungarian)
+ [], # zh (albanian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['',''], 'after', [['a','e'], ['A','e']]],
+[['',''], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/french/latin9.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/french/latin9.pl
new file mode 100644
index 00000000000..8fe8ea0e09e
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/french/latin9.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "French";
+$prefix = "fr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['',''],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zs (hungarian)
+ [], # zh (albanian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['',''], 'after', [['a','e'], ['A','e']]],
+[['',''], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/cp1252.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/cp1252.pl
new file mode 100644
index 00000000000..eb1c5c60229
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/cp1252.pl
@@ -0,0 +1,150 @@
+#!/usr/bin/perl
+
+$language = "A general sorting order for Western European languages";
+$prefix = "xy";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['',''],['',''],['',''],
+ ['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['',''],['',''],['',''],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['',''],['',''],['',''],['',''],
+ ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'],['','']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['',''],['',''],['',''],
+ ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['',''],['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'],['','']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+[['',''], 'after', [['a','e'], ['A','e']]],
+[['',''], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/cp850.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/cp850.pl
new file mode 100644
index 00000000000..cbc98fee23f
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/cp850.pl
@@ -0,0 +1,150 @@
+#!/usr/bin/perl
+
+$language = "A general sorting order for Western European languages";
+$prefix = "xy";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['',''],['',''],['',''],
+ ['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['',''],['',''],['',''],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['',''],['',''],['',''],['',''],
+ ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['',''],['',''],['',''],
+ ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['',''],['']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+[['',''], 'after', [['a','e'], ['A','e']]],
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/latin9.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/latin9.pl
new file mode 100644
index 00000000000..0be6256bd6c
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/general/latin9.pl
@@ -0,0 +1,150 @@
+#!/usr/bin/perl
+
+$language = "A general sorting order for Western European languages";
+$prefix = "xy";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['',''],['',''],['',''],
+ ['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['',''],['',''],['',''],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['',''],['',''],['',''],['',''],
+ ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'],['','']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['',''],['',''],['',''],
+ ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['',''],['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'],['','']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+[['',''], 'after', [['a','e'], ['A','e']]],
+[['',''], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/german/din5007-latin1.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/german/din5007-latin1.pl
new file mode 100644
index 00000000000..ee03c89ee51
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/german/din5007-latin1.pl
@@ -0,0 +1,149 @@
+#!/usr/bin/perl
+
+$language = "German";
+$variant = "DIN 5007";
+$prefix = "de";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+[['',''], 'after', [['a','e'], ['A','e']]],
+[['',''], 'after', [['o','e'], ['O','e']]],
+[['',''], 'after', [['u','e'], ['U','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/german/duden-latin1.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/german/duden-latin1.pl
new file mode 100644
index 00000000000..0b8d82d2532
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/german/duden-latin1.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "German";
+$variant = "Duden";
+$prefix = "de";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],[],[],[],[],[],[],[],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],[],[],[],[],[],[],[],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],[],[],[],[],[],[],[],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/greek/iso88597.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/greek/iso88597.pl
new file mode 100644
index 00000000000..1e304dadec3
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/greek/iso88597.pl
@@ -0,0 +1,47 @@
+#!/usr/bin/perl
+
+$language = "Greek";
+$prefix = "el";
+$script = "greek";
+
+$alphabet = [
+['', ['', ''], ['','']],
+['', ['', '']],
+['', ['', '']],
+['', ['', '']],
+['', ['', ''], ['','']],
+['', ['', '']],
+ [],
+['', ['', ''], ['','']],
+['', ['', '']],
+['', ['', ''], ['',''], ['', ''], ['']],
+ [],
+['', ['', '']],
+['', ['', '']],
+['', ['', '']],
+['', ['', '']],
+['', ['', '']],
+['', ['', ''], ['','']],
+['', ['', '']],
+ [],
+['', ['', '']],
+['', ['', ''], ['']],
+['', ['', '']],
+['', ['', ''], ['',''], ['', ''], ['']],
+['', ['', '']],
+['', ['', '']],
+['', ['', '']],
+['', ['', ''], ['', '']]
+];
+
+@special = ('?', '!', '.', ';', '', 'letters', '-', '\'', '\\/');
+
+# first lower or upper case?
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+#@letter_group_names = ('','','','','','','','','','','','',
+#'','','','','','','','','','','','');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/greek/translit-latin4.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/greek/translit-latin4.pl
new file mode 100644
index 00000000000..94c9c905d34
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/greek/translit-latin4.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Greek";
+$variant = "ISO transliteration, for western languages";
+$prefix = "el";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+ [], # c (many)
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+ [], # j (many)
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+ [], # v (many)
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/hebrew/iso88598.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/hebrew/iso88598.pl
new file mode 100644
index 00000000000..a9d66cb9ef1
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/hebrew/iso88598.pl
@@ -0,0 +1,45 @@
+#!/usr/bin/perl
+
+$language = "Hebrew";
+$prefix = "iw";
+$script = "hebrew";
+
+$alphabet = [
+['', [''] ],
+['', [''] ],
+['', [''] ],
+['', [''] ],
+['', [''] ],
+['', [''] ],
+['', [''] ],
+['', ['']],
+['', [''] ],
+['', [''] ],
+['', ['',''] ],
+['', [''] ],
+['', ['',''] ],
+['', ['',''] ],
+['', [''] ],
+['', ['']],
+['', ['',''] ],
+['', ['',''] ],
+['', [''] ],
+['', [''] ],
+['', [''] ],
+['', [''] ]
+];
+
+$ligatures = [
+
+
+
+];
+
+@special = ('?', '!', '.', ';', '', 'letters', '-');
+
+# first lower or upper case?
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/hungarian/cp1250.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/hungarian/cp1250.pl
new file mode 100644
index 00000000000..acf1c224984
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/hungarian/cp1250.pl
@@ -0,0 +1,147 @@
+#!/usr/bin/perl
+
+# TODO: It seems that "ssz" has to be sorted like "szs" (?)
+# I don't know why, I don't know how...
+
+$language = "Hungarian";
+$prefix = "hu";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+['Cs', ['cs','Cs','CS']],
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+['D', ['dz','Dz','DZ']],
+['D', ['dzs','Dzs','DZs','DZS']],
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+['G', ['gy','Gy','GY']],
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['L', ['ly','Ly','LY']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+['Ny', ['ny','Ny','NY']],
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['', ['',''],['','']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+['Sz', ['sz','Sz','SZ']],
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+['T', ['ty','Ty','TY']],
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['', ['',''],['','']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+['Zs', ['zs','Zs','ZS']],
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [] # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/hungarian/latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/hungarian/latin2.pl
new file mode 100644
index 00000000000..acf1c224984
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/hungarian/latin2.pl
@@ -0,0 +1,147 @@
+#!/usr/bin/perl
+
+# TODO: It seems that "ssz" has to be sorted like "szs" (?)
+# I don't know why, I don't know how...
+
+$language = "Hungarian";
+$prefix = "hu";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+['Cs', ['cs','Cs','CS']],
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+['D', ['dz','Dz','DZ']],
+['D', ['dzs','Dzs','DZs','DZS']],
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+['G', ['gy','Gy','GY']],
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['L', ['ly','Ly','LY']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+['Ny', ['ny','Ny','NY']],
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['', ['',''],['','']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+['Sz', ['sz','Sz','SZ']],
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+['T', ['ty','Ty','TY']],
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['', ['',''],['','']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+['Zs', ['zs','Zs','ZS']],
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [] # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/icelandic/cp1252.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/icelandic/cp1252.pl
new file mode 100644
index 00000000000..dd0bf0d4377
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/icelandic/cp1252.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Icelandic";
+$prefix = "is";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+['', ['','']],
+['E', ['e','E'],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['', ['','']],
+ [], # wynn (english)
+['', ['',''],['',''],['','']],
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+['', ['',''],['','']],
+['', ['','']],
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/icelandic/latin9.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/icelandic/latin9.pl
new file mode 100644
index 00000000000..f0712f260e5
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/icelandic/latin9.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Icelandic";
+$prefix = "is";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+['', ['','']],
+['E', ['e','E'],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['', ['','']],
+ [], # wynn (english)
+['', ['',''],['',''],['','']],
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+['', ['',''],['','']],
+['', ['','']],
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/italian/latin1.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/italian/latin1.pl
new file mode 100644
index 00000000000..cf641534121
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/italian/latin1.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Italian";
+$prefix = "it";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],[],[],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],[],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['',''],['',''],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],[],['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zs (hungarian)
+ [], # zh (albanian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/kurdish/bedirxan-latin5.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/kurdish/bedirxan-latin5.pl
new file mode 100644
index 00000000000..82e95dc5146
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/kurdish/bedirxan-latin5.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Kurdish";
+$variant = "Bedirxan";
+$prefix = "ku";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['', ['','']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+['', ['','']],
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+['', ['','']],
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['', ['','']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+['', ['','']],
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/kurdish/turkish-i-latin5.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/kurdish/turkish-i-latin5.pl
new file mode 100644
index 00000000000..612d0d6a42b
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/kurdish/turkish-i-latin5.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Kurdish";
+$variant = "Turkish i";
+$prefix = "ku";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['', ['','']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+['', ['','']],
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+['I', ['','I']],
+['', ['i','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['', ['','']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+['', ['','']],
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/latvian/latin4.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/latvian/latin4.pl
new file mode 100644
index 00000000000..ae2305ffd0d
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/latvian/latin4.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Latvian";
+$prefix = "lv";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+['', ['','']],
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+['', ['','']],
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['y','Y'],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+['', ['','']],
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+['', ['','']],
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+['', ['','']],
+['O', ['o','O'],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+['', ['','']],
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/lithuanian/latin4.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/lithuanian/latin4.pl
new file mode 100644
index 00000000000..2fcd174ada9
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/lithuanian/latin4.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Lithuanian";
+$prefix = "lt";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ch','Ch','CH']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['', ['','']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['',''],['y','Y']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/lower-sorbian/cp1250.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/lower-sorbian/cp1250.pl
new file mode 100644
index 00000000000..3710d5cd0d3
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/lower-sorbian/cp1250.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Lower Sorbian";
+$prefix = "s1";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['', ['','']],
+['', ['','']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['', ['','']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['', ['','']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['', ['','']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+['', ['','']],
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+['', ['','']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+['', ['','']],
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/lower-sorbian/latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/lower-sorbian/latin2.pl
new file mode 100644
index 00000000000..e4ed97dec5e
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/lower-sorbian/latin2.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Lower Sorbian";
+$prefix = "s1";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['', ['','']],
+['', ['','']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['', ['','']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['', ['','']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['', ['','']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+['', ['','']],
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+['', ['','']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+['', ['','']],
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/cp1251.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/cp1251.pl
new file mode 100644
index 00000000000..a48acc17123
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Macedonian";
+$prefix = "mk";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+['', ['','']],
+['', ['','']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+['', ['','']],
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/iso88595.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/iso88595.pl
new file mode 100644
index 00000000000..b2c3ebea89c
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Macedonian";
+$prefix = "mk";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+['', ['','']],
+['', ['','']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+['', ['','']],
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/isoir111.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/isoir111.pl
new file mode 100644
index 00000000000..3740cf02c30
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/macedonian/isoir111.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Macedonian";
+$prefix = "mk";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+['', ['','']],
+['', ['','']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+['', ['','']],
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/norwegian/latin1.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/norwegian/latin1.pl
new file mode 100644
index 00000000000..aec63a80ab9
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/norwegian/latin1.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Norwegian";
+$prefix = "no";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+['', ['',''],['','']],
+['', ['',''],['','']],
+['', ['','']],
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/polish/cp1250.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/polish/cp1250.pl
new file mode 100644
index 00000000000..3d780ef7b5e
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/polish/cp1250.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Polish";
+$prefix = "pl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+['', ['','']],
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+['', ['','']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+['', ['','']],
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+ [], # l with cedilla/comma (latvian)
+['', ['','']],
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['', ['','']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['', ['','']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+['', ['','']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+['', ['','']],
+['', ['','']],
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/polish/latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/polish/latin2.pl
new file mode 100644
index 00000000000..32cdec691bf
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/polish/latin2.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Polish";
+$prefix = "pl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+['', ['','']],
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+['', ['','']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+['', ['','']],
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+ [], # l with cedilla/comma (latvian)
+['', ['','']],
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['', ['','']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['', ['','']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+['', ['','']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+['', ['','']],
+['', ['','']],
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/portuguese/latin1.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/portuguese/latin1.pl
new file mode 100644
index 00000000000..89ca29650a6
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/portuguese/latin1.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Portuguese";
+$prefix = "pt";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['',''],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['',''],['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+[['',''], 'after', [['a','e'], ['A','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/romanian/latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/romanian/latin2.pl
new file mode 100644
index 00000000000..f3f23492fc6
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/romanian/latin2.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Romanian";
+$prefix = "ro";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+['', ['','']],
+['', ['','']],
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditonal)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+['', ['','']],
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditonal)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+['', ['','']],
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+['', ['','']],
+ [], # c with acute (upper sorbian) @@
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/cp1251.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/cp1251.pl
new file mode 100644
index 00000000000..635466a39b6
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Russian";
+$prefix = "ru";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['',''] ],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['',''], ['',''] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+[],
+ [], # yi (ukrainian)
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+[],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+ [],
+[],
+[]
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/iso88595.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/iso88595.pl
new file mode 100644
index 00000000000..d4b6327e6f0
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Russian";
+$prefix = "ru";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['',''] ],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['',''], ['',''] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+[],
+ [], # yi (ukrainian)
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+[],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+ [],
+[],
+[]
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/koi8-r.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/koi8-r.pl
new file mode 100644
index 00000000000..06a0f78eceb
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/russian/koi8-r.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Russian";
+$prefix = "ru";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['',''] ],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['',''], ['',''] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+[],
+ [], # yi (ukrainian)
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+[],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+ [],
+[],
+[]
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/cp1251.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/cp1251.pl
new file mode 100644
index 00000000000..926388183df
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Serbian";
+$prefix = "sr";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['',''] ],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+['', ['','']],
+ [], # gje (macedonian)
+['', ['',''] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['',''] ],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['',''] ],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['',''] ],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # kje (macedonian)
+['', ['',''] ],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [], # soft sign (ukrainian)
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/iso88595.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/iso88595.pl
new file mode 100644
index 00000000000..e23b9832236
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Serbian";
+$prefix = "sr";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['',''] ],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+['', ['','']],
+ [], # gje (macedonian)
+['', ['',''] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['',''] ],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['',''] ],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['',''] ],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # kje (macedonian)
+['', ['',''] ],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [], # soft sign (ukrainian)
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/isoir111.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/isoir111.pl
new file mode 100644
index 00000000000..eb8a377e264
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/serbian/isoir111.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Serbian";
+$prefix = "sr";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['',''] ],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # ghe with upturn (ukrainian)
+['', ['','']],
+['', ['','']],
+ [], # gje (macedonian)
+['', ['',''] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['',''] ],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['',''] ],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['',''] ],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # kje (macedonian)
+['', ['',''] ],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [], # soft sign (ukrainian)
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/large-cp1250.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/large-cp1250.pl
new file mode 100644
index 00000000000..037a8589c6b
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/large-cp1250.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "large";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['',''], ['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['', ['','']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+['', ['','']],
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['','']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+['', ['','']],
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+['', ['','']],
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['',''], ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['','']],
+ [], # rr (albanian)
+['', ['','']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+['', ['','']],
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/large-latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/large-latin2.pl
new file mode 100644
index 00000000000..14f0a0e5617
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/large-latin2.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "large";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['',''], ['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['', ['','']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+['', ['','']],
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['','']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+['', ['','']],
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+['', ['','']],
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['',''], ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['','']],
+ [], # rr (albanian)
+['', ['','']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+['', ['','']],
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/small-cp1250.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/small-cp1250.pl
new file mode 100644
index 00000000000..218d6b3518a
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/small-cp1250.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "small";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['',''], ['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'], ['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['',''], ['','']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['',''], ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['',''], ['','']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['','']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['','']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['','']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/small-latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/small-latin2.pl
new file mode 100644
index 00000000000..9468636b4ec
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovak/small-latin2.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "small";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['',''], ['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'], ['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['',''], ['','']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['',''], ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['',''], ['','']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['','']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['','']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['','']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovenian/cp1250.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovenian/cp1250.pl
new file mode 100644
index 00000000000..8bd9bd5ac0a
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovenian/cp1250.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Slovenian";
+$prefix = "sl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['', ['',''],['','']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+
+
+
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovenian/latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovenian/latin2.pl
new file mode 100644
index 00000000000..2184852c12a
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/slovenian/latin2.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Slovenian";
+$prefix = "sl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['', ['',''],['','']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+
+
+
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/spanish/modern-latin1.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/spanish/modern-latin1.pl
new file mode 100644
index 00000000000..17bff7f8d1d
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/spanish/modern-latin1.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Spanish";
+$variant = "modern";
+$prefix = "es";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+['', ['','']],
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['',''], ['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('letters', '.', '-', '\'', '', '?', '', '!');
+
+#$sortcase = "Aa";
+$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/spanish/traditional-latin1.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/spanish/traditional-latin1.pl
new file mode 100644
index 00000000000..69fcf5a57c6
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/spanish/traditional-latin1.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Spanish";
+$variant = "traditional";
+$prefix = "es";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+['Ch', ['ch','Ch','CH']],
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+['Ll', ['ll','Ll','LL']],
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+['', ['','']],
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['',''], ['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, icelandic, swedish)
+ [] # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('letters', '.', '-', '\'', '', '?', '', '!');
+
+#$sortcase = "Aa";
+$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/swedish/cp1252.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/swedish/cp1252.pl
new file mode 100644
index 00000000000..326feb22962
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/swedish/cp1252.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Swedish";
+$prefix = "sv";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['',''],['',''],['',''],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] ],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'],['','']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['',''],['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['', ['','']],
+['', ['',''],['','']],
+['', ['',''],['','']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/swedish/latin9.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/swedish/latin9.pl
new file mode 100644
index 00000000000..e2cfa4e924e
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/swedish/latin9.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Swedish";
+$prefix = "sv";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['',''],['',''],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['','']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['','']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['',''],['',''],['',''],['','']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['',''],['',''],['',''],['','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['','']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['',''],['',''],['','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] ],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'],['','']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['',''],['',''],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['',''],['','']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['', ['','']],
+['', ['',''],['','']],
+['', ['',''],['','']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[[''], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/turkish/latin3.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/turkish/latin3.pl
new file mode 100644
index 00000000000..a8caa256069
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/turkish/latin3.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Turkish";
+$prefix = "tr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['', ['','']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+['', ['','']],
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+['I', ['','I']],
+['', ['i','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['', ['','']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['', ['','']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['', ['','']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/turkish/latin5.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/turkish/latin5.pl
new file mode 100644
index 00000000000..5a5920adca8
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/turkish/latin5.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Turkish";
+$prefix = "tr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['','']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['', ['','']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+['', ['','']],
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+['I', ['','I']],
+['', ['i','']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['', ['','']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['', ['','']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['','']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['', ['','']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/ukrainian/cp1251.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/ukrainian/cp1251.pl
new file mode 100644
index 00000000000..1d86ae253a4
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/ukrainian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Ukrainian";
+$prefix = "uk";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['',''],['','']],
+ [], # io (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # soft sign (many)
+ [],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/ukrainian/koi8-u.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/ukrainian/koi8-u.pl
new file mode 100644
index 00000000000..b176a3be1fb
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/ukrainian/koi8-u.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Ukrainian";
+$prefix = "uk";
+$script = "cyrillic";
+
+$alphabet = [
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['', ['',''],['','']],
+ [], # io (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dze (macedonian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # je (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # lje (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+ [], # nje (macedonian, serbian)
+['', ['','']],
+ [], # barred o (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['', ['','']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # dzhe (macedonian, serbian)
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [], # soft sign (many)
+ [],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+['', ['','']],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/upper-sorbian/cp1250.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/upper-sorbian/cp1250.pl
new file mode 100644
index 00000000000..2fcc96646f6
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/upper-sorbian/cp1250.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Upper Sorbian";
+$prefix = "s2";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['', ['','']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+['D', ['d','D','D']],
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['', ['','']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['', ['','']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['', ['','']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['', ['','']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['', ['','']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+['', ['','']],
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy-new/xindy/make-rules/alphabets/upper-sorbian/latin2.pl b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/upper-sorbian/latin2.pl
new file mode 100644
index 00000000000..902c3f4b3eb
--- /dev/null
+++ b/Build/source/utils/xindy-new/xindy/make-rules/alphabets/upper-sorbian/latin2.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Upper Sorbian";
+$prefix = "s2";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['', ['','']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+['D', ['d','D','D']],
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['', ['','']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['', ['','']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['', ['','']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['', ['','']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['', ['','']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['', ['','']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+['', ['','']],
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['', ['','']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[[''], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';