aboutsummaryrefslogtreecommitdiffstats
path: root/icu
diff options
context:
space:
mode:
authordanglassey <danglassey>2002-08-14 09:57:17 +0000
committerdanglassey <danglassey>2002-08-14 09:57:17 +0000
commitc9458897ebbb739d8db83c80e06512d8a612f743 (patch)
treef8c5381045887e34388cc6b26cfccc254bf766dc /icu
downloadsword-sf-cvs-c9458897ebbb739d8db83c80e06512d8a612f743.tar.gz
*** empty log message ***
Diffstat (limited to 'icu')
-rw-r--r--icu/Makefile.am48
-rw-r--r--icu/Makefile.in291
-rw-r--r--icu/translit_Any_Latin1.txt89
-rw-r--r--icu/translit_BETA_Greek.txt119
-rw-r--r--icu/translit_BGreek_Greek.txt155
-rw-r--r--icu/translit_CCAT_Hebrew.txt200
-rw-r--r--icu/translit_CCAT_Syriac.txt87
-rw-r--r--icu/translit_Latin_Arabic.txt198
-rw-r--r--icu/translit_Latin_Armenian.txt151
-rw-r--r--icu/translit_Latin_Coptic.txt129
-rw-r--r--icu/translit_Latin_Ethiopic.txt407
-rw-r--r--icu/translit_Latin_Georgian.txt137
-rw-r--r--icu/translit_Latin_Gothic.txt57
-rw-r--r--icu/translit_Latin_Hebrew.txt223
-rw-r--r--icu/translit_Latin_Syriac.txt169
-rw-r--r--icu/translit_Latin_Thai.txt162
-rw-r--r--icu/translit_Latin_Ugaritic.txt63
-rw-r--r--icu/translit_swordindex.txt108
18 files changed, 2793 insertions, 0 deletions
diff --git a/icu/Makefile.am b/icu/Makefile.am
new file mode 100644
index 0000000..a23316a
--- /dev/null
+++ b/icu/Makefile.am
@@ -0,0 +1,48 @@
+AUTOMAKE_OPTIONS = 1.6
+
+if ICU
+#pkglib_DATA = swicu.dat
+#else
+#endif
+
+swicuSOURCES = translit_BETA_Greek.txt
+swicuSOURCES += translit_BGreek_Greek.txt
+swicuSOURCES += translit_CCAT_Hebrew.txt
+swicuSOURCES += translit_CCAT_Syriac.txt
+swicuSOURCES += translit_Latin_Armenian.txt
+swicuSOURCES += translit_Latin_Coptic.txt
+swicuSOURCES += translit_Latin_Ethiopic.txt
+swicuSOURCES += translit_Latin_Georgian.txt
+swicuSOURCES += translit_Latin_Gothic.txt
+swicuSOURCES += translit_Latin_Syriac.txt
+swicuSOURCES += translit_Latin_Thai.txt
+swicuSOURCES += translit_Latin_Ugaritic.txt
+swicuSOURCES += translit_Any_Latin1.txt
+#swicuSOURCES += translit_HTMLEnt_Unicode.txt
+#swicuSOURCES += translit_Han_Pinyin.txt
+#swicuSOURCES += translit_Kanji_English.txt
+#swicuSOURCES += translit_Kanji_OnRomaji.txt
+swicuSOURCES += translit_Latin_Arabic.txt
+swicuSOURCES += translit_Latin_Hebrew.txt
+swicuSOURCES += translit_swordindex.txt
+endif
+
+CLEANFILES = *.res *.lst *.mk *.mak swicu.dat
+
+pkglib_DATA = $(swicuSOURCES:.txt=.res)
+
+SUFFIXES = .txt .res .dat
+
+#swicu.dat: $(swicuDATA) trans.lst icupkg.mk
+# $(PKGDATA) -O icupkg.mk -p swicu -m common -T . -s . \
+# -d . -r $(VERSION) trans.lst
+
+#trans.lst:
+# ls -1 *.res > trans.lst
+
+#icupkg.mk:
+# @echo "GENCCODE=@GENCCODE@" > icupkg.mk
+# @echo "GENCMN=@GENCMN@" >> icupkg.mk
+
+.txt.res:
+ $(GENRB) -s . -d . $<
diff --git a/icu/Makefile.in b/icu/Makefile.in
new file mode 100644
index 0000000..68520df
--- /dev/null
+++ b/icu/Makefile.in
@@ -0,0 +1,291 @@
+# Makefile.in generated by automake 1.6.2 from Makefile.am.
+# @configure_input@
+
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
+# Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+SHELL = @SHELL@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+mandir = @mandir@
+includedir = @includedir@
+oldincludedir = /usr/include
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
+
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = @program_transform_name@
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_alias = @host_alias@
+host_triplet = @host@
+
+EXEEXT = @EXEEXT@
+OBJEXT = @OBJEXT@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+AMTAR = @AMTAR@
+AS = @AS@
+AWK = @AWK@
+CC = @CC@
+CURL_CFLAGS = @CURL_CFLAGS@
+CURL_CONFIG = @CURL_CONFIG@
+CURL_LIBS = @CURL_LIBS@
+CXX = @CXX@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+GENCCODE = @GENCCODE@
+GENCMN = @GENCMN@
+GENRB = @GENRB@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+MAINT = @MAINT@
+OBJDUMP = @OBJDUMP@
+PACKAGE = @PACKAGE@
+PKGDATA = @PKGDATA@
+RANLIB = @RANLIB@
+STRIP = @STRIP@
+VERSION = @VERSION@
+am__include = @am__include@
+am__quote = @am__quote@
+dir_confdef = @dir_confdef@
+enable_debug = @enable_debug@
+enable_profile = @enable_profile@
+install_sh = @install_sh@
+target_cpu = @target_cpu@
+target_mingw32 = @target_mingw32@
+target_os = @target_os@
+target_system = @target_system@
+target_vendor = @target_vendor@
+with_conf = @with_conf@
+with_icu = @with_icu@
+with_zlib = @with_zlib@
+AUTOMAKE_OPTIONS = 1.6
+
+
+#pkglib_DATA = swicu.dat
+#else
+#endif
+#swicuSOURCES += translit_HTMLEnt_Unicode.txt
+#swicuSOURCES += translit_Han_Pinyin.txt
+#swicuSOURCES += translit_Kanji_English.txt
+#swicuSOURCES += translit_Kanji_OnRomaji.txt
+@ICU_TRUE@swicuSOURCES = translit_BETA_Greek.txt translit_BGreek_Greek.txt translit_CCAT_Hebrew.txt translit_CCAT_Syriac.txt translit_Latin_Armenian.txt translit_Latin_Coptic.txt translit_Latin_Ethiopic.txt translit_Latin_Georgian.txt translit_Latin_Gothic.txt translit_Latin_Syriac.txt translit_Latin_Thai.txt translit_Latin_Ugaritic.txt translit_Any_Latin1.txt translit_Latin_Arabic.txt translit_Latin_Hebrew.txt translit_swordindex.txt
+
+CLEANFILES = *.res *.lst *.mk *.mak swicu.dat
+
+pkglib_DATA = $(swicuSOURCES:.txt=.res)
+
+SUFFIXES = .txt .res .dat
+subdir = icu
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+DATA = $(pkglib_DATA)
+
+DIST_COMMON = Makefile.am Makefile.in
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .txt .res .dat
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu icu/Makefile
+Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+distclean-libtool:
+ -rm -f libtool
+uninstall-info-am:
+pkglibDATA_INSTALL = $(INSTALL_DATA)
+install-pkglibDATA: $(pkglib_DATA)
+ @$(NORMAL_INSTALL)
+ $(mkinstalldirs) $(DESTDIR)$(pkglibdir)
+ @list='$(pkglib_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f="`echo $$p | sed -e 's|^.*/||'`"; \
+ echo " $(pkglibDATA_INSTALL) $$d$$p $(DESTDIR)$(pkglibdir)/$$f"; \
+ $(pkglibDATA_INSTALL) $$d$$p $(DESTDIR)$(pkglibdir)/$$f; \
+ done
+
+uninstall-pkglibDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(pkglib_DATA)'; for p in $$list; do \
+ f="`echo $$p | sed -e 's|^.*/||'`"; \
+ echo " rm -f $(DESTDIR)$(pkglibdir)/$$f"; \
+ rm -f $(DESTDIR)$(pkglibdir)/$$f; \
+ done
+tags: TAGS
+TAGS:
+
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+
+top_distdir = ..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
+
+distdir: $(DISTFILES)
+ @list='$(DISTFILES)'; for file in $$list; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkinstalldirs) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+
+installdirs:
+ $(mkinstalldirs) $(DESTDIR)$(pkglibdir)
+
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -rm -f Makefile $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+
+distclean-am: clean-am distclean-generic distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am: install-pkglibDATA
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am uninstall-pkglibDATA
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+ distclean distclean-generic distclean-libtool distdir dvi \
+ dvi-am info info-am install install-am install-data \
+ install-data-am install-exec install-exec-am install-info \
+ install-info-am install-man install-pkglibDATA install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool uninstall uninstall-am uninstall-info-am \
+ uninstall-pkglibDATA
+
+
+#swicu.dat: $(swicuDATA) trans.lst icupkg.mk
+# $(PKGDATA) -O icupkg.mk -p swicu -m common -T . -s . \
+# -d . -r $(VERSION) trans.lst
+
+#trans.lst:
+# ls -1 *.res > trans.lst
+
+#icupkg.mk:
+# @echo "GENCCODE=@GENCCODE@" > icupkg.mk
+# @echo "GENCMN=@GENCMN@" >> icupkg.mk
+
+.txt.res:
+ $(GENRB) -s . -d . $<
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/icu/translit_Any_Latin1.txt b/icu/translit_Any_Latin1.txt
new file mode 100644
index 0000000..d049845
--- /dev/null
+++ b/icu/translit_Any_Latin1.txt
@@ -0,0 +1,89 @@
+// Any_Latin1
+
+translit_Any_Latin1 {
+ Rule {
+
+ //NFKD then NFC; then NFD all non-Latin-1 codepoints
+ ":: NFKC ();"
+ ":: [^\u0000-\u00FF] NFD ();"
+
+ //remove non-spacing marks
+ "[:Mn:] > ;"
+
+ //change some non-Latin-1 codepoints to similar characters in Latin-1 range
+ " [\u2000-\u200A\u3000] > ' ' ;"
+ " [\u01C3\u2762]> '!' ;"
+ " \u203C > '!!' ;"
+ " [\u203D\u2048] > '?!' ;"
+ " [\u02BA\u030B\u030E\u2033\u3003\u201C-\u201F] > '\"' ;"
+ " [\u066A\u2030\u2031] > '%' ;"
+ " [\u02B9\u02BC\u02C8\u0301\u2032\u2018-\u201B] > '' ;"
+ " [\u066D\u2217\u2731] > '*' ;"
+ " [\u060C\u201A\u3001] > ',' ;"
+ " [\u2010-\u2013\u2212] > '-' ;"
+ " [\u2023\u06D4\u3002\u0589] > '.' ;"
+ " [\u0338\u2044\u2215] > '/' ;"
+ " \u2236 > ':' ;"
+ " \u061B > ';' ;"
+ " [\u2039\u2329\u3008] > '<' ;"
+ " \u2261 > '=' ;"
+ " [\u203A\u232A\u3009] > '>' ;"
+ " [\u037E\u061F] > '?' ;"
+ " \u2049 > '!?' ;"
+ " \u212C > B ;"
+ " [\u2102\u212D] > C ;"
+ " [\u2107\u2130] > E ;"
+ " [\u2131\u2132] > F ;"
+ " [\u210B\u210C\u210D] > H ;"
+ " [\u2110\u2111\u2160] > I ;"
+ " \u212A > K ;"
+ " \u2112 > L ;"
+ " \u2133 > L ;"
+ " \u2115 > N ;"
+ " \u2119 > P ;"
+ " \u211A > Q ;"
+ " [\u211B\u211C\u211D] > R ;"
+ " [\u2124\u2128] > Z ;"
+ " \u2216 > '\\' ;"
+ " [\u02C4\u02C6\u0302\u2303] > '^' ;"
+ " [\u02CD\u0331\u0332\u2017] > '_' ;"
+ " [\u02CB\u0300\u2035] > '`' ;"
+ " [\u212E\u212F] > e ;"
+ " [\u0261\u210A] > g ;"
+ " [\u04BB\u210E] > h ;"
+ " \u0131 > i ;"
+ " \u207F > n ;"
+ " \u2134 > o ;"
+ " \u01B6 > z ;"
+ " [\u01C0\u2223\u2758] > '|' ;"
+ " [\u02DC\u0303\u223C\uFF5E] > '~' ;"
+ " \u202F > \u00A0 ;"
+ " \uFFFD > \u001A;"
+ " \u20A4 > \u00A3 ;"
+ " [\u20A0-\u20AF] > \u00A4 ;"
+ " \u0308 > \u00A8 ;"
+ " \u2117 > \u00A9 ;"
+ " [\u226A\u300A] > \u00AB ;"
+ " \u2310 > \u00AC ;"
+ " \u1806 > \u00AD ;"
+ " [\u02C9\u0304\u0305] > \u00AF ;"
+ " [\u02DA\u030A\u2070\u2218] > \u00B0 ;"
+ " \u2213 > \u00B1 ;"
+ " [\u02B9\u02CA\u0301\u2032] > \u00B4 ;"
+ " [\u204B\u2761] > \u00B6 ;"
+ " [\u2022\u2024\u2027\u2219\u22C5\u30FB] > \u00B7 ;"
+ " \u0327 > \u00B8 ;"
+ " [\u226B\u300B] > \u00BB ;"
+ " \u2014 > '--';"
+ " \u2015 > '---';"
+ " \u2024 > '..';"
+ " \u2025 > '...';"
+ " \u2016 > '||';"
+ " \uFEFF > ;"
+
+ //change all spacing character to space
+ "[^\u0000-\u00FF] > ' ';"
+
+ }
+}
+
diff --git a/icu/translit_BETA_Greek.txt b/icu/translit_BETA_Greek.txt
new file mode 100644
index 0000000..d90cec2
--- /dev/null
+++ b/icu/translit_BETA_Greek.txt
@@ -0,0 +1,119 @@
+//--------------------------------------------------------------------
+// Copyright (c) 2001, CrossWire Bible Society
+//--------------------------------------------------------------------
+
+// BETA-Greek/Coptic
+
+translit_BETA_Greek {
+ Rule {
+ ":: NFD (NFD);"//this is wrong, but required
+
+ ":: [abdezqiklmncoypruxwv] upper();"
+
+ //Uppercase
+ "'*A'<>\u0391;"
+ "'*B'<>\u0392;"
+ "'*G'<>\u0393;"
+ "'*D'<>\u0394;"
+ "'*E'<>\u0395;"
+ "'*Z'<>\u0396;"
+ "'*H'<>\u0397;"
+ "'*Q'<>\u0398;"
+ "'*I'<>\u0399;"
+ "'*K'<>\u039A;"
+ "'*L'<>\u039B;"
+ "'*M'<>\u039C;"
+ "'*N'<>\u039D;"
+ "'*C'<>\u039E;"
+ "'*O'<>\u039F;"
+ "'*F'<>\u03A6;"
+ "'*Y'<>\u03A8;"
+ "'*P'<>\u03A0;"
+ "'*R'<>\u03A1;"
+ "'*S'<>\u03A3;"
+ "'*T'<>\u03A4;"
+ "'*U'<>\u03A5;"
+ "'*X'<>\u03A7;"
+ "'*W'<>\u03A9;"
+
+ //Archaic
+ "'*V'<>\u03DC;"
+ "'*#3'<>\u03DE;"
+ "'*#5'<>\u03E0;"
+
+ //Coptic
+ "'*s'<>\u03E2;"
+ "'*f'<>\u03E4;"
+ "'*h'<>\u03E8;"
+ "'*j'<>\u03EA;"
+ "'*g'<>\u03EC;"
+ "'*t'<>\u03EE;"
+
+
+ //Lowercase
+ "A<>\u03B1;"
+ "B<>\u03B2;"
+ "G<>\u03B3;"
+ "D<>\u03B4;"
+ "E<>\u03B5;"
+ "Z<>\u03B6;"
+ "H<>\u03B7;"
+ "Q<>\u03B8;"
+ "I<>\u03B9;"
+ "K<>\u03BA;"
+ "L<>\u03BB;"
+ "M<>\u03BC;"
+ "N<>\u03BD;"
+ "C<>\u03BE;"
+ "O<>\u03BF;"
+ "F<>\u03C6;"
+ "Y<>\u03C8;"
+ "P<>\u03C0;"
+ "R<>\u03C1;"
+ "J<>\u03C2;"
+ "S<>\u03C3;"
+ "T<>\u03C4;"
+ "U<>\u03C5;"
+ "X<>\u03C7;"
+ "W<>\u03C9;"
+
+
+ //Archaic
+ "V<>\u03DD;"
+ "#3<>\u03DF;"
+ "#5<>\u03E1;"
+
+ //Coptic
+ "s<>\u03E3;"
+ "f<>\u03E5;"
+ "h<>\u03E9;"
+ "j<>\u03EB;"
+ "g<>\u03ED;"
+ "t<>\u03EF;"
+
+ // Non-letter characters //these don't work (this is wrong)
+ "'V'<>\u037A;"
+ "'V'<>\u0314;"
+ "'V'<\u02BD;"
+ "'V'<>\u0387;"
+ "'V'<>\u0313;"
+ "'V'<\u02BC;"
+ "'V'<>\u0301;"
+ "'V'<\u00B4;"
+ "'V'<\u02CA;"
+ "'V'<\u0384;"
+ "'V'<>\u0342;"
+ "'V'<\u0302;"
+ "'V'<'^';"
+ "'V'<\u02C6;"
+ "'V'<>\u0300;"
+ "'V'<'`';"
+ "'V'<\u02CB;"
+ "'V'<>\u0308;"
+ "'V'<\u00A8;"
+ "'V'<>\u0307;"
+ "'V'<\u02D9;"
+
+ ":: NFD (NFD);" //this is wrong, but required
+ }
+}
diff --git a/icu/translit_BGreek_Greek.txt b/icu/translit_BGreek_Greek.txt
new file mode 100644
index 0000000..1cacd3d
--- /dev/null
+++ b/icu/translit_BGreek_Greek.txt
@@ -0,0 +1,155 @@
+//--------------------------------------------------------------------
+// Copyright (c) 2001, CrossWire Bible Society
+//--------------------------------------------------------------------
+
+// BGreek-Greek
+
+translit_BGreek_Greek {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ ":: [abgdezqklmnxofyprtucw] upper();"
+
+ // Extra English Letters. Mapped for completeness
+ "J>I;"
+ "V>U;"
+
+ "<[:Mn:];"
+
+ // ==============================================
+ // Variables, used to make the rules more comprehensible
+ // and for conditionals.
+ // ==============================================
+
+ // Greek Letters
+
+ "$ALPHA=\u0391;"
+ "$BETA=\u0392;"
+ "$GAMMA=\u0393;"
+ "$DELTA=\u0394;"
+ "$EPSILON=\u0395;"
+ "$ZETA=\u0396;"
+ "$ETA=\u0397;"
+ "$THETA=\u0398;"
+ "$IOTA=\u0399;"
+ "$KAPPA=\u039A;"
+ "$LAMBDA=\u039B;"
+ "$MU=\u039C;"
+ "$NU=\u039D;"
+ "$XI=\u039E;"
+ "$OMICRON=\u039F;"
+ "$PI=\u03A0;"
+ "$RHO=\u03A1;"
+ "$SIGMA=\u03A3;"
+ "$TAU=\u03A4;"
+ "$YPSILON=\u03A5;"
+ "$PHI=\u03A6;"
+ "$CHI=\u03A7;"
+ "$PSI=\u03A8;"
+ "$OMEGA=\u03A9;"
+
+ "$alpha=\u03B1;"
+ "$beta=\u03B2;"
+ "$gamma=\u03B3;"
+ "$delta=\u03B4;"
+ "$epsilon=\u03B5;"
+ "$zeta=\u03B6;"
+ "$eta=\u03B7;"
+ "$theta=\u03B8;"
+ "$iota=\u03B9;"
+ "$kappa=\u03BA;"
+ "$lambda=\u03BB;"
+ "$mu=\u03BC;"
+ "$nu=\u03BD;"
+ "$xi=\u03BE;"
+ "$omicron=\u03BF;"
+ "$pi=\u03C0;"
+ "$rho=\u03C1;"
+ "$sigma=\u03C3;"
+ "$tau=\u03C4;"
+ "$ypsilon=\u03C5;"
+ "$phi=\u03C6;"
+ "$chi=\u03C7;"
+ "$psi=\u03C8;"
+ "$omega=\u03C9;"
+
+ "$sigma2=\u03C2;"
+
+ "$iota_subscript=\u037A;"
+ "$comb_rough_breathing=\u0314;"
+ "$rough_breathing=\u02BD;"
+
+ // Variables for conditional mappings
+
+ // ==============================================
+ // Rules
+ // ==============================================
+ // The following are special titlecases, and should
+ // not be copied when duplicating the lowercase
+ // ==============================================
+
+ // Because there is no uppercase forms for final sigma,
+ // we had to move all the sigma rules up here.
+
+ // Remember to insert ' to preserve round trip, for double letters
+ // don't need to do this for the digraphs with h,
+ // since it is not created when mapping back from greek
+
+ // use special form for s
+
+ "S}[[:L:] & [:Latin:]]>$sigma2;"
+ "S <> $SIGMA;"
+
+ // The following are a bit tricky. 's' takes two forms in greek
+ // final or non final.
+ // We use ~s to represent the abnormal form: final before letter
+ // or non-final before non-letter.
+ // We use 's to separate p and s (otherwise ps is one letter)
+ // so, we break out the following forms:
+
+ "S < $sigma;"
+ "S < $sigma2;"
+
+ // ==============================================
+ // Uppercase Forms.
+ // To make lowercase forms, just copy and lowercase below
+ // ==============================================
+
+ // Basic Letters
+
+ "A<>$ALPHA;"
+ "B<>$BETA;"
+ "G<>$GAMMA;"
+ "D<>$DELTA;"
+ "E<>$EPSILON;"
+ "Z<>$ZETA;"
+ "H<>$ETA;"
+ "Q<>$THETA;"
+ "I<>$IOTA;"
+ "K<>$KAPPA;"
+ "L<>$LAMBDA;"
+ "M<>$MU;"
+ "N<>$NU;"
+ "X<>$XI;"
+ "O<>$OMICRON;"
+ "F<>$PHI;" // needs ordering before P
+ "Y<>$PSI;" // needs ordering before P
+ "P<>$PI;"
+ "R<>$RHO;"
+ "T<>$TAU;"
+ "U<>$YPSILON;"
+ "C<>$CHI;"
+ "W<>$OMEGA;"
+
+ // Non-letter characters
+
+ "i<>$iota_subscript;"
+ "h<>$comb_rough_breathing;"
+ "h<$rough_breathing;"
+
+ ":: [[:Ll:] & [:Greek:]] upper;"
+
+ ":: NFC (NFD) ;"
+ }
+}
+
diff --git a/icu/translit_CCAT_Hebrew.txt b/icu/translit_CCAT_Hebrew.txt
new file mode 100644
index 0000000..2c9fafa
--- /dev/null
+++ b/icu/translit_CCAT_Hebrew.txt
@@ -0,0 +1,200 @@
+//--------------------------------------------------------------------
+// Copyright (c) 2001, CrossWire Bible Society
+//--------------------------------------------------------------------
+
+// CCAT-Hebrew
+
+translit_CCAT_Hebrew {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ // Variable names, derived from the Unicode names.
+ "$CANT_ETNAHTA=\u0591;"
+ "$CANT_SEGOL=\u0592;"
+ "$CANT_SHALSHELET=\u0593;"
+ "$CANT_ZAQEF_QATAN=\u0594;"
+ "$CANT_ZAQEF_GADOL=\u0595;"
+ "$CANT_TIPEHA=\u0596;"
+ "$CANT_REVIA=\u0597;"
+ "$CANT_ZARQA=\u0598;"
+ "$CANT_PASHTA=\u0599;"
+ "$CANT_YETIV=\u059A;"
+ "$CANT_TEVIR=\u059B;"
+ "$CANT_GERESH=\u059C;"
+ "$CANT_GERESH_MUQDAM=\u059D;"
+ "$CANT_GERESHAYIM=\u059E;"
+ "$CANT_QARNEY_PARA=\u059F;"
+ "$CANT_TELISHA_GEDOLA=\u05A0;"
+ "$CANT_PAZER=\u05A1;"
+ "$CANT_MUNAH=\u05A3;"
+ "$CANT_MAHAPAKH=\u05A4;"
+ "$CANT_MERKHA=\u05A5;"
+ "$CANT_MERKHA_KEFULA=\u05A6;"
+ "$CANT_DARGA=\u05A7;"
+ "$CANT_QADMA=\u05A8;"
+ "$CANT_TELISHA_QETANA=\u05A9;"
+ "$CANT_YERAH_BEN_YOMO=\u05AA;"
+ "$CANT_OLE=\u05AB;"
+ "$CANT_ILUY=\u05AC;"
+ "$CANT_DEHI=\u05AD;"
+ "$CANT_ZINOR=\u05AE;"
+
+ "$MASORA_CIRCLE=\u05AF;"
+
+ "$POINT_SHEVA=\u05B0;"
+ "$POINT_HATAF_SEGOL=\u05B1;"
+ "$POINT_HATAF_PATAH=\u05B2;"
+ "$POINT_HATAF_QAMATS=\u05B3;"
+ "$POINT_HIRIQ=\u05B4;"
+ "$POINT_TSERE=\u05B5;"
+ "$POINT_SEGOL=\u05B6;"
+ "$POINT_PATAH=\u05B7;"
+ "$POINT_QAMATS=\u05B8;"
+ "$POINT_HOLAM=\u05B9;"
+ "$POINT_QUBUTS=\u05BB;"
+ "$POINT_DAGESH_OR_MAPIQ=\u05BC;"
+ "$POINT_METEG=\u05BD;"
+ "$PUNCTUATION_MAQAF=\u05BE;"
+ "$POINT_RAFE=\u05BF;"
+ "$PUNCTUATION_PASEQ=\u05C0;"
+ "$POINT_SHIN_DOT=\u05C1;"
+ "$POINT_SIN_DOT=\u05C2;"
+ "$PUNCTUATION_SOF_PASUQ=\u05C3;"
+ "$MARK_UPPER_DOT=\u05C4;"
+ "$ALEF=\u05D0;"
+ "$BET=\u05D1;"
+ "$GIMEL=\u05D2;"
+ "$DALET=\u05D3;"
+ "$HE=\u05D4;"
+ "$VAV=\u05D5;"
+ "$ZAYIN=\u05D6;"
+ "$HET=\u05D7;"
+ "$TET=\u05D8;"
+ "$YOD=\u05D9;"
+ "$FINAL_KAF=\u05DA;"
+ "$KAF=\u05DB;"
+ "$LAMED=\u05DC;"
+ "$FINAL_MEM=\u05DD;"
+ "$MEM=\u05DE;"
+ "$FINAL_NUN=\u05DF;"
+ "$NUN=\u05E0;"
+ "$SAMEKH=\u05E1;"
+ "$AYIN=\u05E2;"
+ "$FINAL_PE=\u05E3;"
+ "$PE=\u05E4;"
+ "$FINAL_TSADI=\u05E5;"
+ "$TSADI=\u05E6;"
+ "$QOF=\u05E7;"
+ "$RESH=\u05E8;"
+ "$SHIN=\u05E9;"
+ "$TAV=\u05EA;"
+
+ "$YIDDISH_DOUBLE_VAV=\u05F0;"
+ "$YIDDISH_VAV_YOD=\u05F1;"
+ "$YIDDISH_DOUBLE_YOD=\u05F2;"
+
+ "$PUNCTUATION_GERESH=\u05F3;"
+ "$PUNCTUATION_GERSHAYIM=\u05F4;"
+
+ "$letter=[[:LATIN:]&[:L:]];"
+ "$softvowel=[eiyEIY];"
+ "$vowellike=[$ALEF $AYIN $YOD $VAV];"
+
+ "'\)'<>$ALEF;"
+ "''>$ALEF;"
+ "B<>$BET;"
+ "G<>$GIMEL;"
+ "D<>$DALET;"
+ "H<>$HE;"
+ "W<>$VAV;"
+ "Z<>$ZAYIN;"
+ "X<>$HET;"
+ "'+'<>$TET;"
+ "Y<>$YOD;"
+ "K}$letter>$KAF;"
+ "K<$KAF;"
+ "K<>$FINAL_KAF;"
+ "L<>$LAMED;"
+ "M}$letter>$MEM;"
+ "M<$MEM;"
+ "M<>$FINAL_MEM;"
+ "N}$letter>$NUN;"
+ "N<$NUN;"
+ "N<>$FINAL_NUN;"
+ "S<>$SAMEKH;"
+ "P}$letter>$PE;"
+ "P<$PE;"
+ "P<>$FINAL_PE;"
+ "'\('<>$AYIN;"
+ "'\`'>$AYIN;"
+ "C}$letter>$TSADI;"
+ "C<$TSADI;"
+ "C<>$FINAL_TSADI;"
+ "Q<>$QOF;"
+ "R<>$RESH;"
+ "'&'<> $SHIN $POINT_SIN_DOT;"
+ "'\$'<> $SHIN $POINT_SHIN_DOT;"
+ "'\$'<$SHIN;"
+ "T<>$TAV;"
+
+ "':A'<>$POINT_HATAF_PATAH;"
+ "':E'<>$POINT_HATAF_SEGOL;"
+ "':F'<>$POINT_HATAF_QAMATS;"
+
+ "A<>$POINT_PATAH;"
+ "F<>$POINT_QAMATS;"
+ "E<>$POINT_SEGOL;"
+ "'\"'<>$POINT_TSERE;"
+ "I<>$POINT_HIRIQ;"
+ "O<>$POINT_HOLAM;"
+ "U<>$POINT_QUBUTS;"
+ "':'<>$POINT_SHEVA;"
+
+ "'.'<>$POINT_DAGESH_OR_MAPIQ;"
+ "'-'<>$PUNCTUATION_MAQAF;"
+
+ "00<>$PUNCTUATION_SOF_PASUQ;"
+ "01<>$CANT_SEGOL;"
+ "02<>$CANT_ZARQA;"
+ "03>$CANT_PASHTA;"
+ "04>$CANT_TELISHA_QETANA;"
+ "05<>$PUNCTUATION_PASEQ;"
+ "10<>$CANT_YETIV;"
+ "13<>$CANT_DEHI;"
+ "11<>$CANT_GERESH_MUQDAM;"
+ "14>$CANT_TELISHA_GEDOLA;"
+ "24<>$CANT_TELISHA_QETANA;"
+ "33<>$CANT_PASHTA;"
+ "44<>$CANT_TELISHA_GEDOLA;"
+ "60<>$CANT_OLE;"
+ "61<>$CANT_GERESH;"
+ "62<>$CANT_GERESHAYIM;"
+ "63<>$CANT_QADMA;"
+ "64<>$CANT_ILUY;"
+ "65<>$CANT_SHALSHELET;"
+ "80<>$CANT_ZAQEF_GADOL;"
+ "81<>$CANT_REVIA;"
+ "82>$CANT_ZARQA;"
+ "83<>$CANT_PAZER;"
+ "84<>$CANT_QARNEY_PARA;"
+ "85<>$CANT_ZAQEF_QATAN;"
+ "35<>$POINT_METEG;"
+ "70<>$CANT_MAHAPAKH;"
+ "71<>$CANT_MERKHA;"
+ "72<>$CANT_MERKHA_KEFULA;"
+ "73<>$CANT_TIPEHA;"
+ "74<>$CANT_MUNAH;"
+ "75>$POINT_METEG;"
+ "91<>$CANT_TEVIR;"
+ "92<>$CANT_ETNAHTA;"
+ "93<>$CANT_YERAH_BEN_YOMO;"
+ "94<>$CANT_DARGA;"
+ "95>$POINT_METEG;"
+
+ //Get rid of anything we didn't recognize
+ "<[:HEBREW:];"
+ "$letter>;"
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_CCAT_Syriac.txt b/icu/translit_CCAT_Syriac.txt
new file mode 100644
index 0000000..74bf876
--- /dev/null
+++ b/icu/translit_CCAT_Syriac.txt
@@ -0,0 +1,87 @@
+//--------------------------------------------------------------------
+// Copyright (c) 2001, CrossWire Bible Society
+//--------------------------------------------------------------------
+
+// CCAT-Syriac
+
+translit_CCAT_Syriac {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ // Variable names, derived from the Unicode names.
+ "$ALEF=\u0710;"
+ "$ALEF_SUPERSCRIPT=\u0711;"
+ "$BET=\u0712;"
+ "$GIMEL=\u0713;"
+ "$GIMEL_GARSHUNI=\u0714;"
+ "$DALET=\u0715;"
+ "$DALET_DOTLESS=\u0716;"
+ "$HE=\u0717;"
+ "$VAV=\u0718;"
+ "$ZAYIN=\u0719;"
+ "$HET=\u071A;"
+ "$TET=\u071B;"
+ "$TET_GARSHUNI=\u071C;"
+ "$YOD=\u071D;"
+ "$YOD_HE=\u071E;"
+ "$KAF=\u071F;"
+ "$LAMED=\u0720;"
+ "$MEM=\u0721;"
+ "$NUN=\u0722;"
+ "$SAMEKH=\u0723;"
+ "$FINAL_SAMEKH=\u0724;"
+ "$AYIN=\u0725;"
+ "$PE=\u0726;"
+ "$PE_REVERSED=\u0727;"
+ "$TSADI=\u0728;"
+ "$QOF=\u0729;"
+ "$RESH=\u072A;"
+ "$SHIN=\u072B;"
+ "$TAV=\u072C;"
+
+ "$letter=[[:LATIN:] & [:L:]];"
+ "$softvowel=[eiyEIY];"
+ "$vowellike=[$ALEF $AYIN $YOD $VAV $ALEF_SUPERSCRIPT];"
+
+ "'\)'<>$ALEF;"
+ "''>$ALEF;"
+ "'\)'<$ALEF_SUPERSCRIPT;"
+ "B<>$BET;"
+ "G<>$GIMEL;"
+ "G<$GIMEL_GARSHUNI;"
+ "D<>$DALET;"
+ "D<$DALET_DOTLESS;"
+ "H<>$HE;"
+ "W<>$VAV;"
+ "Z<>$ZAYIN;"
+ "X<>$HET;"
+ "'+'<>$TET;"
+ "'+'<$TET_GARSHUNI;"
+ "Y<>$YOD;"
+ "YH<$YOD_HE;"
+ "K<>$KAF;"
+ "L<>$LAMED;"
+ "M<>$MEM;"
+ "N<>$NUN;"
+ "S}$letter>$SAMEKH;"
+ "S<$SAMEKH;"
+ "S<>$FINAL_SAMEKH;"
+ "P<>$PE;"
+ "P<$PE_REVERSED;"
+ "'\('<>$AYIN;"
+ "'\`'>$AYIN;"
+ "C<>$TSADI;"
+ "Q<>$QOF;"
+ "R<>$RESH;"
+ "'#'>$SHIN;"
+ "'&'>$SHIN;"
+ "'\$'<>$SHIN;"
+ "T<>$TAV;"
+
+ //Get rid of anything we didn't recognize
+ "<[:SYRIAC:];"
+ "$letter>;"
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_Latin_Arabic.txt b/icu/translit_Latin_Arabic.txt
new file mode 100644
index 0000000..b310b64
--- /dev/null
+++ b/icu/translit_Latin_Arabic.txt
@@ -0,0 +1,198 @@
+//--------------------------------------------------------------------
+// Copyright (c) 1999-2000, International Business Machines
+// Corporation and others. All Rights Reserved.
+//--------------------------------------------------------------------
+// THIS IS A MACHINE-GENERATED FILE
+// Tool: src\com\ibm\tools\translit\dumpICUrules.bat
+// Source: src\com\ibm\text\resources/TransliterationRule_Latin_Arabic.java
+// Date: Wed Jul 5 16:11:18 2000
+//--------------------------------------------------------------------
+
+// Latin-Arabic
+
+translit_Latin_Arabic {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ // To Do: finish adding shadda, add sokoon
+ // [Is this done? Can someone finish this?]
+
+ "$alefmadda=\u0622;"
+ "$alefuhamza=\u0623;"
+ "$wauuhamza=\u0624;"
+ "$alefhamza=\u0625;"
+ "$yehuhamza=\u0626;"
+ "$alef=\u0627;"
+ "$beh=\u0628;"
+ "$tehmarbuta=\u0629;"
+ "$teh=\u062A;"
+ "$theh=\u062B;"
+ "$geem=\u062C;"
+ "$hah=\u062D;"
+ "$kha=\u062E;"
+ "$dal=\u062F;"
+ "$dhal=\u0630;"
+ "$reh=\u0631;"
+ "$zain=\u0632;"
+ "$seen=\u0633;"
+ "$sheen=\u0634;"
+ "$sad=\u0635;"
+ "$dad=\u0636;"
+ "$tah=\u0637;"
+ "$zah=\u0638;"
+ "$ein=\u0639;"
+ "$ghein=\u063A;"
+ "$feh=\u0641;"
+ "$qaaf=\u0642;"
+ "$kaf=\u0643;"
+ "$lam=\u0644;"
+ "$meem=\u0645;"
+ "$noon=\u0646;"
+ "$heh=\u0647;"
+ "$wau=\u0648;"
+ "$yehmaqsura=\u0649;"
+ "$yeh=\u064A;"
+ "$peh=\u06A4;"
+
+ "$hamza=\u0621;"
+ "$fathatein=\u064B;"
+ "$dammatein=\u064C;"
+ "$kasratein=\u064D;"
+ "$fatha=\u064E;"
+ "$damma=\u064F;"
+ "$kasra=\u0650;"
+ "$shadda=\u0651;"
+ "$sokoon=\u0652;"
+
+ // Doubles - liu
+ "t'' < {$teh} [$teh$theh$tehmarbuta$tah];"
+ "h'' < {$heh} [$heh$hah];"
+ "s'' < {$seen} $sheen;"
+
+ // A few pathological special cases to make round
+ // trip work. - liu
+ "d'~'d <> $dal $dal;"
+ "dh'~'dh <> $dhal $dhal;"
+ "dd'~'dd <> $dad $dad;"
+
+ // Shadda: Map x $shadda to x x, where x is dh, dd, or
+ // d (that is, $dhal, $dad, or $dal). If x is d, d'd is
+ // output. Net effect is to map s.th. like $dad $shadda
+ // to dd'dd. - liu
+ "$dhal {dh} <> dh {$shadda};"
+ "$dad {dd} <> dd {$shadda};"
+ "$dal {''d} [^dh] <> d {$shadda};" // Avoid d'dd or d'dh
+
+ // [This should be removed, but it's good for demos]
+ "Arabic>"
+ "\u062a\u062a\u0645\u062a\u0639' '"
+ "\u0627\u0644\u0644\u063a\u0629' '"
+ "\u0627\u0644\u0639\u0631\u0628\u0628\u064a\u0629' '"
+ "\u0628\u0628\u0646\u0638\u0645' '"
+ "\u0643\u062a\u0627\u0628\u0628\u064a\u0629' '"
+ "\u062c\u0645\u064a\u0644\u0629;"
+
+ // Main rules
+ "''ai<a{$alefmadda;"
+ "ai<>$alefmadda;"
+ "''ae<a{$alefuhamza;"
+ "ae<>$alefuhamza;"
+ "''ao<a{$alefhamza;"
+ "ao<>$alefhamza;"
+ "''aa<a{$alef;"
+ "aa<>$alef;"
+ "''an<a{$fathatein;"
+ "an<>$fathatein;"
+ "''a<a{$fatha;"
+ "a<>$fatha;"
+ "b<>$beh;"
+ "''dh<d{$dhal;"
+ "dh<>$dhal;"
+ "''dd<d{$dad;"
+ "dd<>$dad;"
+ "''d<d{$dal;"
+ "d<>$dal;"
+ "''e<a{$ein;"
+ "''e<w{$ein;"
+ "''e<y{$ein;"
+ "e<>$ein;"
+ "f<>$feh;"
+ "gh<>$ghein;"
+ "''hh<d{$hah;"
+ "''hh<t{$hah;"
+ "''hh<k{$hah;"
+ "''hh<s{$hah;"
+ "hh<>$hah;"
+ "''h<d{$heh;"
+ "''h<t{$heh;"
+ "''h<k{$heh;"
+ "''h<s{$heh;"
+ "h<>$heh;"
+ "''ii<i{$kasratein;"
+ "ii<>$kasratein;"
+ "''i<i{$kasra;"
+ "i<>$kasra;"
+ "j<>$geem;"
+ "kh<>$kha;"
+ "k<>$kaf;"
+ "l<>$lam;"
+ "''m<y{$meem;"
+ "''m<t{$meem;"
+ "m<>$meem;"
+ "n<>$noon;"
+ "''o<a{$hamza;"
+ "o<>$hamza;"
+ "p<>$peh;"
+ "q<>$qaaf;"
+ "r<>$reh;"
+ "sh<>$sheen;"
+ "''ss<s{$sad;"
+ "ss<>$sad;"
+ "''s<s{$seen;"
+ "s<>$seen;"
+ "th<>$theh;"
+ "tm<>$tehmarbuta;"
+ "''tt<t{$tah;"
+ "tt<>$tah;"
+ "''t<t{$teh;"
+ "t<>$teh;"
+ "''uu<u{$dammatein;"
+ "uu<>$dammatein;"
+ "''u<u{$damma;"
+ "u<>$damma;"
+ "we<>$wauuhamza;"
+ "w<>$wau;"
+ "ye<>$yehuhamza;"
+ "ym<>$yehmaqsura;"
+ "''y<y{$yeh;"
+ "y<>$yeh;"
+ "''zz<z{$zah;"
+ "zz<>$zah;"
+ "''z<z{$zain;"
+ "z<>$zain;"
+
+ // One-way Latin-Arabic compatability rules
+ "c>$kaf;"
+ "g>$geem;"
+ "x>$kaf$shadda$seen;"
+ "v>$beh;"
+
+ // Digits
+ "0<>\u0660;" // Arabic digit 0
+ "1<>\u0661;" // Arabic digit 1
+ "2<>\u0662;" // Arabic digit 2
+ "3<>\u0663;" // Arabic digit 3
+ "4<>\u0664;" // Arabic digit 4
+ "5<>\u0665;" // Arabic digit 5
+ "6<>\u0666;" // Arabic digit 6
+ "7<>\u0667;" // Arabic digit 7
+ "8<>\u0668;" // Arabic digit 8
+ "9<>\u0669;" // Arabic digit 9
+ "'%'<>\u066A;" // Arabic %
+ "'.'<>\u066B;" // Arabic decimal separator
+ "','<>\u066C;" // Arabic thousands separator
+ "'*'<>\u066D;" // Arabic five-pointed star
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_Latin_Armenian.txt b/icu/translit_Latin_Armenian.txt
new file mode 100644
index 0000000..9ab4f1a
--- /dev/null
+++ b/icu/translit_Latin_Armenian.txt
@@ -0,0 +1,151 @@
+//--------------------------------------------------------------------
+// Copyright 2001, CrossWire Bible Society (http://www.crosswire.org)
+// Use freely.
+//--------------------------------------------------------------------
+// Based upon UNGEGN recommendations from
+// http://www.eki.ee/wgrs/rom2_hy.pdf
+//--------------------------------------------------------------------
+
+// Latin-Armenian
+
+translit_Latin_Armenian {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ "$armenian = [[:ARMENIAN:] & [:L:]];"
+ "$armenian_vowels = [\u0531\u0535\u0537\u053B\u0548\u0552\u0555\u0561\u0565\u0567\u056B\u0578\u0582\u0585];"
+
+ "Ye<[:^L:]{\u0535}[:Ll:];"
+ "Ye<[$armenian_vowels]{\u0535}[:Ll:];"
+ "YE<[:^L:]{\u0535;"
+ "YE<[$armenian_vowels]{\u0535;"
+
+ "OV<[:^L:]{\u0548\u054E}[:^L:];"
+ "Ov<[:^L:]{\u0548\u057E}[:^L:];"
+ "Vo<[:^L:]{\u0548}[:Ll:];"
+ "VO<[:^L:]{\u0548;"
+
+ "Ts''<>\u0551}[:Ll:];"
+ "Ch''<>\u0549}[:Ll:];"
+
+ "Gh<>\u0542}[:Ll:];"
+ "Dz<>\u0541}[:Ll:];"
+ "Zh<>\u053A}[:Ll:];"
+ "Kh<>\u053D}[:Ll:];"
+ "Ts<>\u053E}[:Ll:];"
+ "Ch<>\u0543}[:Ll:];"
+ "Sh<>\u0547}[:Ll:];"
+ "Rr<>\u054C}[:Ll:];"
+
+ "TS''<>\u0551;"
+ "CH''<>\u0549;"
+
+ "GH<>\u0542;"
+ "DZ<>\u0541;"
+ "T''<>\u0539;"
+ "ZH<>\u053A;"
+ "KH<>\u053D;"
+ "TS<>\u053E;"
+ "CH<>\u0543;"
+ "SH<>\u0547;"
+ "RR<>\u054C;"
+ "P''<>\u0553;"
+ "K''<>\u0554;"
+
+ "A<>\u0531;"
+ "B<>\u0532;"
+ "G<>\u0533;"
+ "D<>\u0534;"
+ "E<>\u0535;"
+ "Z<>\u0536;"
+ "E<\u0537;"
+ "Y<>\u0538;"
+ "I<>\u053B;"
+ "L<>\u053C;"
+ "K<>\u053F;"
+ "H<>\u0540;"
+ "M<>\u0544;"
+ "Y<\u0545;"
+ "N<>\u0546;"
+ "O<\u0548;"
+ "P<>\u054A;"
+ "J<>\u054B;"
+ "S<>\u054D;"
+ "V<>\u054E;"
+ "T<>\u054F;"
+ "R<>\u0550;"
+ "U<>\u0552;"
+ "O<>\u0555;"
+ "F<>\u0556;"
+
+ "\u02BF<>\u0559;"
+ "\u02BE<>\u055A;"
+ "\u02CA<>\u055B;"
+ "'!'<>\u055C;"
+ "','<>\u055D;"
+ "'?'<>\u055E;"
+ "\u2026<\u055F;"
+
+ "yev<>[:^L:]{\u0587;"
+ "yev<[$armenian_vowels]{\u0587;"
+ "ye<[:^L:]{\u0565;"
+ "ye<[$armenian_vowels]{\u0565;"
+
+ "ov<>[:^L:]{\u0578\u057E}[:^L:];"
+ "vo<>[:^L:]{\u0578;"
+
+ "ts''<>\u0581;"
+ "ch''<>\u0579;"
+
+ "gh<>\u0572;"
+ "dz<>\u0571;"
+ "ev<>\u0587;"
+ "t''<>\u0569;"
+ "zh<>\u056A;"
+ "kh<>\u056D;"
+ "ts<>\u056E;"
+ "k''<>\u0584;"
+ "ch<>\u0573;"
+ "p''<>\u0583;"
+ "rr<>\u057C;"
+ "sh<>\u0577;"
+
+ "a<>\u0561;"
+ "b<>\u0562;"
+ "g<>\u0563;"
+ "d<>\u0564;"
+ "e<>\u0565;"
+ "z<>\u0566;"
+ "e<\u0567;"
+ "y<>\u0568;"
+ "i<>\u056B;"
+ "l<>\u056C;"
+ "k<>\u056F;"
+ "h<>\u0570;"
+ "m<>\u0574;"
+ "y<\u0575;"
+ "n<>\u0576;"
+ "o<\u0578;"
+ "p<>\u057A;"
+ "j<>\u057B;"
+ "s<>\u057D;"
+ "v<>\u057E;"
+ "t<>\u057F;"
+ "r<>\u0580;"
+ "u<>\u0582;"
+ "o<>\u0585;"
+ "f<>\u0586;"
+
+ "'.'<>\u0589;"
+ "'-'<>\u058A;"
+
+ //remove untransliterated
+ "<[:ARMENIAN:];"
+ "[:LATIN:]>;"
+
+ ":: NFC (NFD) ;"
+ }
+}
+
+
+
diff --git a/icu/translit_Latin_Coptic.txt b/icu/translit_Latin_Coptic.txt
new file mode 100644
index 0000000..5f40008
--- /dev/null
+++ b/icu/translit_Latin_Coptic.txt
@@ -0,0 +1,129 @@
+//--------------------------------------------------------------------
+// Copyright 2001, CrossWire Bible Society (http://www.crosswire.org)
+// Use freely.
+//--------------------------------------------------------------------
+// Based upon SBL standard Coptic transliteration system from
+// The SBL Handbook of Style p. 30
+//--------------------------------------------------------------------
+
+// Latin-Coptic
+
+translit_Latin_Coptic {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ "$macron = \u0304;"
+ "$caron = \u030C;"
+
+ //completeness mappings for latin
+ "C}[^$caron]>|C $caron;"
+ "c}[^$caron]>|c $caron;"
+ "Q>|K;"
+ "q>|k;"
+ "V>|U;"
+ "v>|u;"
+ "W>|U;"
+ "w>|u;"
+ "X>|KS;"
+ "x>|ks;"
+ "Y>|U;"
+ "y>|u;"
+
+ //titlecase digraphs
+ "Th<>\u0398}[:LowercaseLetter:];"
+ "Ks<>\u039E}[:LowercaseLetter:];"
+ "Ph<>\u03A6}[:LowercaseLetter:];"
+ "Kh<>\u03A7}[:LowercaseLetter:];"
+ "Ps<>\u03A8}[:LowercaseLetter:];"
+
+ //coptic-unique
+ "Ti<>\u03EE}[:LowercaseLetter:];"
+
+ //uppercase digraphs
+ "TH<>\u0398;"
+ "KS<>\u039E;"
+ "PH<>\u03A6;"
+ "KH<>\u03A7;"
+ "PS<>\u03A8;"
+
+ //coptic-unique
+ "TI<>\u03EE;"
+
+ "E $macron<>\u0397;"
+ "O $macron<>\u03A9;"
+
+ //coptic-unique
+ "S $caron<>\u03E2;"
+ "C $caron<>\u03EC;"
+
+ "A<>\u0391;"
+ "B<>\u0392;"
+ "G<>\u0393;"
+ "D<>\u0394;"
+ "E<>\u0395;"
+ "Z<>\u0396;"
+ "I<>\u0399;"
+ "K<>\u039A;"
+ "L<>\u039B;"
+ "M<>\u039C;"
+ "N<>\u039D;"
+ "O<>\u039F;"
+ "P<>\u03A0;"
+ "R<>\u03A1;"
+ "S<>\u03A3;"
+ "T<>\u03A4;"
+ "U<>\u03A5;"
+
+ //coptic-unique
+ "F<>\u03E4;"
+ "H<>\u03E8;"
+ "J<>\u03EA;"
+
+ // lowercase digraphs
+ "th<>\u03B8;"
+ "ks<>\u03BE;"
+ "ph<>\u03C6;"
+ "kh<>\u03C7;"
+ "ps<>\u03C8;"
+
+ //coptic-unique
+ "ti<>\u03EF;"
+
+ "e $macron<>\u03B7;"
+ "o $macron<>\u03C9;"
+
+ //coptic-unique
+ "s $caron<>\u03E3;"
+ "c $caron<>\u03ED;"
+
+ "a<>\u03B1;"
+ "b<>\u03B2;"
+ "g<>\u03B3;"
+ "d<>\u03B4;"
+ "e<>\u03B5;"
+ "z<>\u03B6;"
+ "i<>\u03B9;"
+ "k<>\u03BA;"
+ "l<>\u03BB;"
+ "m<>\u03BC;"
+ "n<>\u03BD;"
+ "o<>\u03BF;"
+ "p<>\u03C0;"
+ "r<>\u03C1;"
+ "s<\u03C2;"
+ "s<>\u03C3;"
+ "t<>\u03C4;"
+ "u<>\u03C5;"
+
+ //coptic-unique
+ "f<>\u03E5;"
+ "h<>\u03E9;"
+ "j<>\u03EB;"
+
+ //remove untransliterated
+ "<[:GREEK:];"
+ "[:LATIN:]>;"
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_Latin_Ethiopic.txt b/icu/translit_Latin_Ethiopic.txt
new file mode 100644
index 0000000..b77114c
--- /dev/null
+++ b/icu/translit_Latin_Ethiopic.txt
@@ -0,0 +1,407 @@
+//--------------------------------------------------------------------
+// Copyright 2001, CrossWire Bible Society (http://www.crosswire.org)
+// Use freely.
+//--------------------------------------------------------------------
+// Based upon UNGEGN recommendations for Amharic/Ethiopic from
+// http://www.eki.ee/wgrs/rom1_am.pdf
+//--------------------------------------------------------------------
+// Latin-Ethiopic
+
+translit_Latin_Ethiopic {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ ":: [:LATIN:] lower();"
+
+ "$macron = \u0331;"
+
+ "li$macron<>\u120D;"
+ "le$macron<>\u1208;"
+ "lu<>\u1209;"
+ "li<>\u120A;"
+ "la<>\u120B;"
+ "le<>\u120C;"
+ "lo<>\u120E;"
+ "lwa<>\u120F;"
+
+ "mi$macron<>\u121D;"
+ "me$macron<>\u1218;"
+ "mu<>\u1219;"
+ "mi<>\u121A;"
+ "ma<>\u121B;"
+ "me<>\u121C;"
+ "mo<>\u121E;"
+ "mwa<>\u121F;"
+
+ "si$macron<>\u1225;"
+ "se$macron<>\u1220;"
+ "su<>\u1221;"
+ "si<>\u1222;"
+ "sa<>\u1223;"
+ "se<>\u1224;"
+ "so<>\u1226;"
+ "swa<>\u1227;"
+
+ "ri$macron<>\u122D;"
+ "re$macron<>\u1228;"
+ "ru<>\u1229;"
+ "ri<>\u122A;"
+ "ra<>\u122B;"
+ "re<>\u122C;"
+ "ro<>\u122E;"
+ "rwa<>\u122F;"
+
+ "si$macron<\u1235;"
+ "se$macron<\u1230;"
+ "su<\u1231;"
+ "si<\u1232;"
+ "sa<\u1233;"
+ "se<\u1234;"
+ "so<\u1236;"
+ "swa<\u1237;"
+
+ "shi$macron<>\u123D;"
+ "she$macron<>\u1238;"
+ "shu<>\u1239;"
+ "shi<>\u123A;"
+ "sha<>\u123B;"
+ "she<>\u123C;"
+ "sho<>\u123E;"
+ "shwa<>\u123F;"
+
+ "k''i$macron<>\u1245;"
+ "k''e$macron<>\u1240;"
+ "k''u<>\u1241;"
+ "k''i<>\u1242;"
+ "k''a<>\u1243;"
+ "k''e<>\u1244;"
+ "k''o<>\u1246;"
+ "k''wi$macron<>\u124D;"
+ "k''we$macron<>\u1248;"
+ "k''wi<>\u124A;"
+ "k''wa<>\u124B;"
+ "k''we<>\u124C;"
+
+ "khi$macron<>\u1255;"
+ "khe$macron<>\u1250;"
+ "khu<>\u1251;"
+ "khi<>\u1252;"
+ "kha<>\u1253;"
+ "khe<>\u1254;"
+ "kho<>\u1256;"
+ "khwi$macron<>\u125D;"
+ "khwe$macron<>\u1258;"
+ "khwi<>\u125A;"
+ "khwa<>\u125B;"
+ "khwe<>\u125C;"
+
+ "bi$macron<>\u1265;"
+ "be$macron<>\u1260;"
+ "bu<>\u1261;"
+ "bi<>\u1262;"
+ "ba<>\u1263;"
+ "be<>\u1264;"
+ "bo<>\u1266;"
+ "bwa<>\u1267;"
+
+ "vi$macron<>\u126D;"
+ "ve$macron<>\u1268;"
+ "vu<>\u1269;"
+ "vi<>\u126A;"
+ "va<>\u126B;"
+ "ve<>\u126C;"
+ "vo<>\u126E;"
+ "vwa<>\u126F;"
+
+ "ti$macron<>\u1275;"
+ "te$macron<>\u1270;"
+ "tu<>\u1271;"
+ "ti<>\u1272;"
+ "ta<>\u1273;"
+ "te<>\u1274;"
+ "to<>\u1276;"
+ "twa<>\u1277;"
+
+ "chi$macron<>\u127D;"
+ "che$macron<>\u1278;"
+ "chu<>\u1279;"
+ "chi<>\u127A;"
+ "cha<>\u127B;"
+ "che<>\u127C;"
+ "cho<>\u127E;"
+ "chwa<>\u127F;"
+
+ "ni$macron<>\u1295;"
+ "ne$macron<>\u1290;"
+ "nu<>\u1291;"
+ "ni<>\u1292;"
+ "na<>\u1293;"
+ "ne<>\u1294;"
+ "no<>\u1296;"
+ "nwa<>\u1297;"
+
+ "nyi$macron<>\u129D;"
+ "nye$macron<>\u1298;"
+ "nyu<>\u1299;"
+ "nyi<>\u129A;"
+ "nya<>\u129B;"
+ "nye<>\u129C;"
+ "nyo<>\u129E;"
+ "nywa<>\u129F;"
+
+ "ki$macron<>\u12AD;"
+ "ke$macron<>\u12A8;"
+ "ku<>\u12A9;"
+ "ki<>\u12AA;"
+ "ka<>\u12AB;"
+ "ke<>\u12AC;"
+ "ko<>\u12AE;"
+ "kwi$macron<>\u12B5;"
+ "kwe$macron<>\u12B0;"
+ "kwi<>\u12B2;"
+ "kwa<>\u12B3;"
+ "kwe<>\u12B4;"
+
+ "wi$macron<>\u12CD;"
+ "we$macron<>\u12C8;"
+ "wu<>\u12C9;"
+ "wi<>\u12CA;"
+ "wa<>\u12CB;"
+ "we<>\u12CC;"
+ "wo<>\u12CE;"
+
+ "zi$macron<>\u12DD;"
+ "ze$macron<>\u12D8;"
+ "zu<>\u12D9;"
+ "zi<>\u12DA;"
+ "za<>\u12DB;"
+ "ze<>\u12DC;"
+ "zo<>\u12DE;"
+ "zwa<>\u12DF;"
+
+ "zhi$macron<>\u12E5;"
+ "zhe$macron<>\u12E0;"
+ "zhu<>\u12E1;"
+ "zhi<>\u12E2;"
+ "zha<>\u12E3;"
+ "zhe<>\u12E4;"
+ "zho<>\u12E6;"
+ "zhwa<>\u12E7;"
+
+ "yi$macron<>\u12ED;"
+ "ye$macron<>\u12E8;"
+ "yu<>\u12E9;"
+ "yi<>\u12EA;"
+ "ya<>\u12EB;"
+ "ye<>\u12EC;"
+ "yo<>\u12EE;"
+
+ "ddi$macron<>\u12FD;"
+ "dde$macron<>\u12F8;"
+ "ddu<>\u12F9;"
+ "ddi<>\u12FA;"
+ "dda<>\u12FB;"
+ "dde<>\u12FC;"
+ "ddo<>\u12FE;"
+ "ddwa<>\u12FF;"
+
+ "di$macron<>\u12F5;"
+ "de$macron<>\u12F0;"
+ "du<>\u12F1;"
+ "di<>\u12F2;"
+ "da<>\u12F3;"
+ "de<>\u12F4;"
+ "do<>\u12F6;"
+ "dwa<>\u12F7;"
+
+ "ji$macron<>\u1305;"
+ "je$macron<>\u1300;"
+ "ju<>\u1301;"
+ "ji<>\u1302;"
+ "ja<>\u1303;"
+ "je<>\u1304;"
+ "jo<>\u1306;"
+ "jwa<>\u1307;"
+
+ "ggi$macron<>\u131D;"
+ "gge$macron<>\u1318;"
+ "ggu<>\u1319;"
+ "ggi<>\u131A;"
+ "gga<>\u131B;"
+ "gge<>\u131C;"
+ "ggo<>\u131E;"
+ "ggwa<>\u131F;"
+
+ "gi$macron<>\u130D;"
+ "ge$macron<>\u1308;"
+ "gu<>\u1309;"
+ "gi<>\u130A;"
+ "ga<>\u130B;"
+ "ge<>\u130C;"
+ "go<>\u130E;"
+ "gwi$macron<>\u1315;"
+ "gwe$macron<>\u1310;"
+ "gwi<>\u1312;"
+ "gwa<>\u1313;"
+ "gwe<>\u1314;"
+
+ "t''i$macron<>\u1325;"
+ "t''e$macron<>\u1320;"
+ "t''u<>\u1321;"
+ "t''i<>\u1322;"
+ "t''a<>\u1323;"
+ "t''e<>\u1324;"
+ "t''o<>\u1326;"
+ "t''wa<>\u1327;"
+
+ "ch''i$macron<>\u132D;"
+ "ch''e$macron<>\u1328;"
+ "ch''u<>\u1329;"
+ "ch''i<>\u132A;"
+ "ch''a<>\u132B;"
+ "ch''e<>\u132C;"
+ "ch''o<>\u132E;"
+ "ch''wa<>\u132F;"
+
+ "p''i$macron<>\u1335;"
+ "p''e$macron<>\u1330;"
+ "p''u<>\u1331;"
+ "p''i<>\u1332;"
+ "p''a<>\u1333;"
+ "p''e<>\u1334;"
+ "p''o<>\u1336;"
+ "p''wa<>\u1337;"
+
+ "ts''i$macron<>\u133D;"
+ "ts''e$macron<>\u1338;"
+ "ts''u<>\u1339;"
+ "ts''i<>\u133A;"
+ "ts''a<>\u133B;"
+ "ts''e<>\u133C;"
+ "ts''o<>\u133E;"
+ "ts''wa<>\u133F;"
+
+ "ts''i$macron<\u1345;"
+ "ts''e$macron<\u1340;"
+ "ts''u<\u1341;"
+ "ts''i<\u1342;"
+ "ts''a<\u1343;"
+ "ts''e<\u1344;"
+ "ts''o<\u1346;"
+
+ "fi$macron<>\u134D;"
+ "fe$macron<>\u1348;"
+ "fu<>\u1349;"
+ "fi<>\u134A;"
+ "fa<>\u134B;"
+ "fe<>\u134C;"
+ "fo<>\u134E;"
+ "fwa<>\u134F;"
+
+ "pi$macron<>\u1355;"
+ "pe$macron<>\u1350;"
+ "pu<>\u1351;"
+ "pi<>\u1352;"
+ "pa<>\u1353;"
+ "pe<>\u1354;"
+ "po<>\u1356;"
+ "pwa<>\u1357;"
+
+ "rya<>\u1358;"
+ "mya<>\u1359;"
+ "fya<>\u135A;"
+
+ "hi$macron<>\u1205;"
+ "ha<>\u1200;"
+ "hu<>\u1201;"
+ "hi<>\u1202;"
+ "ha<\u1203;"
+ "he<>\u1204;"
+ "ho<>\u1206;"
+
+ "hi$macron<\u1215;"
+ "ha<\u1210;"
+ "hu<\u1211;"
+ "hi<\u1212;"
+ "ha<\u1213;"
+ "he<\u1214;"
+ "ho<\u1216;"
+ "hwa<>\u1217;"
+
+ "hi$macron<\u1285;"
+ "ha<\u1280;"
+ "hu<\u1281;"
+ "hi<\u1282;"
+ "ha<\u1283;"
+ "he<\u1284;"
+ "ho<\u1286;"
+ "hwi$macron<>\u128D;"
+ "hwe$macron<>\u1288;"
+ "hwi<>\u128A;"
+ "hwa<\u128B;"
+ "hwe<>\u128C;"
+
+ "hi$macron<\u12BD;"
+ "he$macron<\u12B8;"
+ "hu<\u12B9;"
+ "hi<\u12BA;"
+ "ha<\u12BB;"
+ "he<\u12BC;"
+ "ho<\u12BE;"
+ "hwa<\u12BF;"
+ "hwi$macron<\u12C5;"
+ "hwe$macron<\u12C0;"
+ "hwi<\u12C2;"
+ "hwa<\u12C3;"
+ "hwe<\u12C4;"
+
+ "i$macron<>\u12A5;"
+ "a<>\u12A0;"
+ "u<>\u12A1;"
+ "i<>\u12A2;"
+ "a<\u12A3;"
+ "e<>\u12A4;"
+ "o<>\u12A6;"
+
+ "i$macron<\u12D5;"
+ "a<\u12D0;"
+ "u<\u12D1;"
+ "i<\u12D2;"
+ "a<\u12D3;"
+ "e<\u12D4;"
+ "o<\u12D6;"
+
+ "' '<>\u1361;"
+ "'.'<>\u1362;"
+ "','<>\u1363;"
+ "';'<>\u1364;"
+ "':'<>\u1365;"
+ "':'<\u1366;"
+ "'?'<>\u1367;"
+ "\u00B6<>\u1368;"
+
+ "1<>\u1369;"
+ "2<>\u136A;"
+ "3<>\u136B;"
+ "4<>\u136C;"
+ "5<>\u136D;"
+ "6<>\u136E;"
+ "7<>\u136F;"
+ "8<>\u1370;"
+ "9<>\u1371;"
+
+ "10<\u1372;"
+ "20<\u1373;"
+ "30<\u1374;"
+ "40<\u1375;"
+ "50<\u1376;"
+ "60<\u1377;"
+ "70<\u1378;"
+ "80<\u1379;"
+ "90<\u137A;"
+ "100<\u137B;"
+ "10000<\u137C;"
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_Latin_Georgian.txt b/icu/translit_Latin_Georgian.txt
new file mode 100644
index 0000000..c07d54e
--- /dev/null
+++ b/icu/translit_Latin_Georgian.txt
@@ -0,0 +1,137 @@
+//--------------------------------------------------------------------
+// Copyright 2001, CrossWire Bible Society (http://www.crosswire.org)
+// Use freely.
+//--------------------------------------------------------------------
+// Based upon UNGEGN recommendations from
+// http://www.eki.ee/wgrs/rom2_ka.pdf
+//--------------------------------------------------------------------
+
+// Latin-Georgian
+
+translit_Latin_Georgian {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ ":: [:LATIN:] lower();"
+
+ //titlecase digraphs
+ "Ch\'<\u10B9}[:LowercaseLetter:];"
+ "Ts\'<\u10BA}[:LowercaseLetter:];"
+
+ "Zh<\u10AF}[:LowercaseLetter:];"
+ "Gh<\u10B6}[:LowercaseLetter:];"
+ "Sh<\u10B8}[:LowercaseLetter:];"
+ "Dz<\u10BB}[:LowercaseLetter:];"
+ "Ts<\u10BC}[:LowercaseLetter:];"
+ "Ch<\u10BD}[:LowercaseLetter:];"
+ "Kh<\u10BE}[:LowercaseLetter:];"
+
+ //non-UNGEGN
+ "Ey<\u10C1}[:Ll:];"
+ "Ow<\u10C5}[:Ll:];"
+
+ //uppercase digraphs
+ "CH\'<\u10B9;"
+ "TS\'<\u10BA;"
+
+ "T\'<\u10A7;"
+ "ZH<\u10AF;"
+ "P\'<\u10B4;"
+ "K\'<\u10B5;"
+ "GH<\u10B6;"
+ "SH<\u10B8;"
+ "DZ<\u10BB;"
+ "TS<\u10BC;"
+ "CH<\u10BD;"
+ "KH<\u10BE;"
+
+ //non-UNGEGN
+ "EY<\u10C1;"
+ "Q\'<\u10C4;"
+ "OW<\u10C5;"
+
+ "A<\u10A0;"
+ "B<\u10A1;"
+ "G<\u10A2;"
+ "D<\u10A3;"
+ "E<\u10A4;"
+ "V<\u10A5;"
+ "Z<\u10A6;"
+ "I<\u10A8;"
+ "K<\u10A9;"
+ "L<\u10AA;"
+ "M<\u10AB;"
+ "N<\u10AC;"
+ "O<\u10AD;"
+ "P<\u10AE;"
+ "R<\u10B0;"
+ "S<\u10B1;"
+ "T<\u10B2;"
+ "U<\u10B3;"
+ "Q<\u10B7;"
+ "J<\u10BF;"
+ "H<\u10C0;"
+ "Y<\u10C2;"
+ "W<\u10C3;"
+
+ //lowercase digraphs
+ "ch\'<>\u10E9;"
+ "ts\'<>\u10EA;"
+
+ "t\'<>\u10D7;"
+ "zh<>\u10DF;"
+ "p\'<>\u10E4;"
+ "k\'<>\u10E5;"
+ "gh<>\u10E6;"
+ "sh<>\u10E8;"
+ "dz<>\u10EB;"
+ "ts<>\u10EC;"
+ "ch<>\u10ED;"
+ "kh<>\u10EE;"
+
+ //non-UNGEGN
+ "ey<>\u10F1;"
+ "q\'<>\u10F4;"
+ "ow<>\u10F5;"
+
+ "a<>\u10D0;"
+ "b<>\u10D1;"
+ "g<>\u10D2;"
+ "d<>\u10D3;"
+ "e<>\u10D4;"
+ "v<>\u10D5;"
+ "z<>\u10D6;"
+ "i<>\u10D8;"
+ "k<>\u10D9;"
+ "l<>\u10DA;"
+ "m<>\u10DB;"
+ "n<>\u10DC;"
+ "o<>\u10DD;"
+ "p<>\u10DE;"
+ "r<>\u10E0;"
+ "s<>\u10E1;"
+ "t<>\u10E2;"
+ "u<>\u10E3;"
+ "q<>\u10E7;"
+ "j<>\u10EF;"
+ "h<>\u10F0;"
+
+ //non-UNGEGN
+ "y<>\u10F2;"
+ "w<>\u10F3;"
+ "f<>\u10F6;"
+
+ //paragraph
+ "\u00B6<>\u10FB;"
+
+ //completeness mappings for latin
+ "c>\u10D9;"
+ "x>\u10EE;"
+
+ //remove untransliterated
+ "<[:GEORGIAN:];"
+ "[:LATIN:]>;"
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_Latin_Gothic.txt b/icu/translit_Latin_Gothic.txt
new file mode 100644
index 0000000..423f65a
--- /dev/null
+++ b/icu/translit_Latin_Gothic.txt
@@ -0,0 +1,57 @@
+๏ปฟ // -*- Coding: utf-8; -*-
+//--------------------------------------------------------------------
+// Copyright 2001, CrossWire Bible Society (http://www.crosswire.org)
+// Use freely.
+//--------------------------------------------------------------------
+// Based upon standard Gothic transliteration system from
+// http://www.cs.tut.fi/~dla/gothic.html
+//--------------------------------------------------------------------
+
+// Latin-Gothic
+
+translit_Latin_Gothic {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ ":: [:Ll:] lower() ;"
+
+ // the hv ligature might not be ligatured
+ "hv> |ฦ•;"
+
+ // completeness mapping for latin
+ "c> |k;"
+ "v> |w;"
+ "y> |i;"
+
+ // latin-gothic transliteration
+ "a<>๐Œฐ;"
+ "b<>๐Œฑ;"
+ "g<>๐Œฒ;"
+ "d<>๐Œณ;"
+ "e<>๐Œด;"
+ "q<>๐Œต;"
+ "z<>๐Œถ;"
+ "h<>๐Œท;"
+ "รพ<>๐Œธ;"
+ "i<>๐Œน;"
+ "k<>๐Œบ;"
+ "l<>๐Œป;"
+ "m<>๐Œผ;"
+ "n<>๐Œฝ;"
+ "j<>๐Œพ;"
+ "u<>๐Œฟ;"
+ "p<>๐€;"
+ "90<๐;" // 90
+ "r<>๐‚;"
+ "s<>๐ƒ;"
+ "t<>๐„;"
+ "w<>๐…;"
+ "f<>๐†;"
+ "x<>๐‡;"
+ "ฦ•<>๐ˆ;"
+ "o<>๐‰;"
+ "900<๐Š;" // 900
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_Latin_Hebrew.txt b/icu/translit_Latin_Hebrew.txt
new file mode 100644
index 0000000..957a566
--- /dev/null
+++ b/icu/translit_Latin_Hebrew.txt
@@ -0,0 +1,223 @@
+//--------------------------------------------------------------------
+// Copyright (c) 1999-2000, International Business Machines
+// Corporation and others. All Rights Reserved.
+//--------------------------------------------------------------------
+// THIS IS A MACHINE-GENERATED FILE
+// Tool: src\com\ibm\tools\translit\dumpICUrules.bat
+// Source: src\com\ibm\text\resources/TransliterationRule_Latin_Hebrew.java
+// Date: Wed Jul 5 16:11:18 2000
+//--------------------------------------------------------------------
+
+// Latin-Hebrew
+
+translit_Latin_Hebrew {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ // Variable names, derived from the Unicode names.
+ "$POINT_SHEVA=\u05B0;"
+ "$POINT_HATAF_SEGOL=\u05B1;"
+ "$POINT_HATAF_PATAH=\u05B2;"
+ "$POINT_HATAF_QAMATS=\u05B3;"
+ "$POINT_HIRIQ=\u05B4;"
+ "$POINT_TSERE=\u05B5;"
+ "$POINT_SEGOL=\u05B6;"
+ "$POINT_PATAH=\u05B7;"
+ "$POINT_QAMATS=\u05B8;"
+ "$POINT_HOLAM=\u05B9;"
+ "$POINT_QUBUTS=\u05BB;"
+ "$POINT_DAGESH_OR_MAPIQ=\u05BC;"
+ "$POINT_METEG=\u05BD;"
+ "$PUNCTUATION_MAQAF=\u05BE;"
+ "$POINT_RAFE=\u05BF;"
+ "$PUNCTUATION_PASEQ=\u05C0;"
+ "$POINT_SHIN_DOT=\u05C1;"
+ "$POINT_SIN_DOT=\u05C2;"
+ "$PUNCTUATION_SOF_PASUQ=\u05C3;"
+ "$ALEF=\u05D0;"
+ "$BET=\u05D1;"
+ "$GIMEL=\u05D2;"
+ "$DALET=\u05D3;"
+ "$HE=\u05D4;"
+ "$VAV=\u05D5;"
+ "$ZAYIN=\u05D6;"
+ "$HET=\u05D7;"
+ "$TET=\u05D8;"
+ "$YOD=\u05D9;"
+ "$FINAL_KAF=\u05DA;"
+ "$KAF=\u05DB;"
+ "$LAMED=\u05DC;"
+ "$FINAL_MEM=\u05DD;"
+ "$MEM=\u05DE;"
+ "$FINAL_NUN=\u05DF;"
+ "$NUN=\u05E0;"
+ "$SAMEKH=\u05E1;"
+ "$AYIN=\u05E2;"
+ "$FINAL_PE=\u05E3;"
+ "$PE=\u05E4;"
+ "$FINAL_TSADI=\u05E5;"
+ "$TSADI=\u05E6;"
+ "$QOF=\u05E7;"
+ "$RESH=\u05E8;"
+ "$SHIN=\u05E9;"
+ "$TAV=\u05EA;"
+ "$YIDDISH_DOUBLE_VAV=\u05F0;"
+ "$YIDDISH_VAV_YOD=\u05F1;"
+ "$YIDDISH_DOUBLE_YOD=\u05F2;"
+ "$PUNCTUATION_GERESH=\u05F3;"
+ "$PUNCTUATION_GERSHAYIM=\u05F4;"
+
+ "$letter=[a-zA-Z];"
+ "$softvowel=[eiyEIY];"
+ "$vowellike=[$ALEF$AYIN$YOD$VAV];"
+ "$hebrew=[\u0590-\u05FF];" // the whole block -liu
+
+ // [Why is this a special case? -liu]
+ "k''h <> $KAF $HE ;"
+
+ // Mark non-final forms in final position as x~ -liu
+ "k < $KAF } $hebrew ;"
+ "m < $MEM } $hebrew ;"
+ "n < $NUN } $hebrew ;"
+ "p < $PE } $hebrew ;"
+ "ts < $TSADI } $hebrew ;"
+ "k'~' <> $KAF ;"
+ "m'~' <> $MEM ;"
+ "n'~' <> $NUN ;"
+ "p'~' <> $PE ;"
+ "ts'~'<> $TSADI ;"
+
+ // Mark final forms in non-final position as x^ -liu
+ "k'^' <> $FINAL_KAF } $hebrew ;"
+ "m'^' <> $FINAL_MEM } $hebrew ;"
+ "n'^' <> $FINAL_NUN } $hebrew ;"
+ "p'^' <> $FINAL_PE } $hebrew ;"
+ "ts'^'<> $FINAL_TSADI } $hebrew ;"
+ "k < $FINAL_KAF;"
+ "m < $FINAL_MEM;"
+ "n < $FINAL_NUN;"
+ "p < $FINAL_PE;"
+ "ts < $FINAL_TSADI;"
+
+ // Main rules
+ "a<>$ALEF;"
+ "A>$ALEF;"
+
+ "b<>$BET;"
+ "B>$BET;"
+
+ "c}$softvowel>$SAMEKH;"
+ "C}$softvowel>$SAMEKH;"
+ "c}$letter>$KAF;"
+ "C}$letter>$KAF;"
+ "c>$FINAL_KAF;"
+ "C>$FINAL_KAF;"
+
+ "d<>$DALET;"
+ "D>$DALET;"
+
+ "e<>$AYIN;"
+ "E>$AYIN;"
+
+ "f}$letter>$PE;"
+ "f>$FINAL_PE;"
+ "F}$letter>$PE;"
+ "F>$FINAL_PE;"
+
+ "g<>$GIMEL;"
+ "G>$GIMEL;"
+
+ "h<>$HE;"
+ "H>$HE;"
+
+ "i>$YOD;"
+ "I>$YOD;"
+
+ "j>$DALET$SHIN;"
+ "J>$DALET$SHIN;"
+
+ "kh<>$HET;"
+ "kH>$HET;"
+ "Kh>$HET;"
+ "KH>$HET;"
+ "k}$letter>$KAF;"
+ "K}$letter>$KAF;"
+ "k>$FINAL_KAF;"
+ "K>$FINAL_KAF;"
+
+ "l<>$LAMED;"
+ "L>$LAMED;"
+
+ "m}$letter>$MEM;"
+ "m>$FINAL_MEM;"
+ "M}$letter>$MEM;"
+ "M>$FINAL_MEM;"
+
+ "n}$letter>$NUN;"
+ "n>$FINAL_NUN;"
+ "N}$letter>$NUN;"
+ "N>$FINAL_NUN;"
+
+ "o>$VAV;"
+ "O>$VAV;"
+
+ "p}$letter>$PE;"
+ "p>$FINAL_PE;"
+ "P}$letter>$PE;"
+ "P>$FINAL_PE;"
+
+ "q<>$QOF;"
+ "Q>$QOF;"
+
+ "r<>$RESH;"
+ "R>$RESH;"
+
+ "sh<>$SHIN;"
+ "sH>$SHIN;"
+ "Sh>$SHIN;"
+ "SH>$SHIN;"
+ "s''<$SAMEKH}$HE;"
+ "s<>$SAMEKH;"
+ "S>$SAMEKH;"
+
+ "th<>$TAV;"
+ "tH>$TAV;"
+ "Th>$TAV;"
+ "TH>$TAV;"
+ "tS}$letter>$TSADI;"
+ "ts}$letter>$TSADI;"
+ "Ts}$letter>$TSADI;"
+ "TS}$letter>$TSADI;"
+ "tS>$FINAL_TSADI;"
+ "ts>$FINAL_TSADI;"
+ "Ts>$FINAL_TSADI;"
+ "TS>$FINAL_TSADI;"
+ "t''<$TET}[$HE $SAMEKH $SHIN];"
+ "t<>$TET;"
+ "T>$TET;"
+
+ "v<$VAV}$vowellike;"
+ "u<>$VAV;"
+ "U>$VAV;"
+
+ "v>$VAV;"
+ "V>$VAV;"
+
+ "w>$VAV;"
+ "W>$VAV;"
+
+ "x>$KAF$SAMEKH;"
+ "X>$KAF$SAMEKH;"
+
+ "y<>$YOD;"
+ "Y>$YOD;"
+
+ "z<>$ZAYIN;"
+ "Z>$ZAYIN;"
+
+ //Delete any Syriac we didn't recognize
+ "<$hebrew;"
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_Latin_Syriac.txt b/icu/translit_Latin_Syriac.txt
new file mode 100644
index 0000000..5f5c140
--- /dev/null
+++ b/icu/translit_Latin_Syriac.txt
@@ -0,0 +1,169 @@
+// Latin-Syriac
+
+translit_Latin_Syriac {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ // Variable names, derived from the Unicode names.
+ "$ALEF=\u0710;"
+ "$ALEF_SUPERSCRIPT=\u0711;"
+ "$BET=\u0712;"
+ "$GIMEL=\u0713;"
+ "$GIMEL_GARSHUNI=\u0714;"
+ "$DALET=\u0715;"
+ "$DALET_DOTLESS=\u0716;"
+ "$HE=\u0717;"
+ "$VAV=\u0718;"
+ "$ZAYIN=\u0719;"
+ "$HET=\u071A;"
+ "$TET=\u071B;"
+ "$TET_GARSHUNI=\u071C;"
+ "$YOD=\u071D;"
+ "$YOD_HE=\u071E;"
+ "$KAF=\u071F;"
+ "$LAMED=\u0720;"
+ "$MEM=\u0721;"
+ "$NUN=\u0722;"
+ "$SAMEKH=\u0723;"
+ "$FINAL_SAMEKH=\u0724;"
+ "$AYIN=\u0725;"
+ "$PE=\u0726;"
+ "$PE_REVERSED=\u0727;"
+ "$TSADI=\u0728;"
+ "$QOF=\u0729;"
+ "$RESH=\u072A;"
+ "$SHIN=\u072B;"
+ "$TAV=\u072C;"
+
+ "$PARAGRAPH=\u0700;"
+
+ "$letter=[a-zA-Z];"
+ "$softvowel=[eiyEIY];"
+ "$vowellike=[$ALEF $AYIN $YOD $VAV $ALEF_SUPERSCRIPT];"
+
+ // [Why is this a special case? -liu]
+ "k''h <> $KAF $HE ;"
+
+ // Mark non-final forms in final position as x~ -liu
+ "s < $SAMEKH } [[:SYRIAC:]&[:LETTER:]] ;"
+ "s'~' <> $SAMEKH ;"
+
+ // Mark final forms in non-final position as x^ -liu
+ "s < $FINAL_SAMEKH;"
+
+ // Main rules
+ "a<>$ALEF;"
+ "A>$ALEF;"
+ "a<$ALEF_SUPERSCRIPT;"
+
+ "b<>$BET;"
+ "B>$BET;"
+
+ "c}$softvowel>$SAMEKH;"
+ "C}$softvowel>$SAMEKH;"
+ "c>$KAF;"
+ "C>$KAF;"
+
+ "d<>$DALET;"
+ "D>$DALET;"
+ "d<$DALET_DOTLESS;"
+
+ "e<>$AYIN;"
+ "E>$AYIN;"
+
+ "f>$PE;"
+ "F>$PE;"
+
+ "g<>$GIMEL;"
+ "G>$GIMEL;"
+ "g<$GIMEL_GARSHUNI;"
+
+ "h<>$HE;"
+ "H>$HE;"
+
+ "i>$YOD;"
+ "I>$YOD;"
+ "ih<$YOD_HE;"
+
+ "j>$DALET$SHIN;"
+ "J>$DALET$SHIN;"
+
+ "kh<>$HET;"
+ "kH>$HET;"
+ "Kh>$HET;"
+ "KH>$HET;"
+ "k<>$KAF;"
+ "K>$KAF;"
+
+ "l<>$LAMED;"
+ "L>$LAMED;"
+
+ "m<>$MEM;"
+ "M>$MEM;"
+
+ "n<>$NUN;"
+ "N>$NUN;"
+
+ "o>$VAV;"
+ "O>$VAV;"
+
+ "p<>$PE;"
+ "P>$PE;"
+ "p<$PE_REVERSED;"
+
+ "q<>$QOF;"
+ "Q>$QOF;"
+
+ "r<>$RESH;"
+ "R>$RESH;"
+
+ "sh<>$SHIN;"
+ "sH>$SHIN;"
+ "Sh>$SHIN;"
+ "SH>$SHIN;"
+
+ "th<>$TAV;"
+ "tH>$TAV;"
+ "Th>$TAV;"
+ "TH>$TAV;"
+ "tS>$TSADI;"
+ "ts<>$TSADI;"
+ "Ts>$TSADI;"
+ "TS>$TSADI;"
+ "t''<$TET}[$HE $SAMEKH $SHIN];"
+ "t<>$TET;"
+ "T>$TET;"
+ "t<$TET_GARSHUNI;"
+
+ "s}$letter>$SAMEKH;"
+ "s>$FINAL_SAMEKH;"
+ "S}$letter>$SAMEKH;"
+ "S>$FINAL_SAMEKH;"
+
+ "v<$VAV}$vowellike;"
+ "u<>$VAV;"
+ "U>$VAV;"
+
+ "v>$VAV;"
+ "V>$VAV;"
+
+ "w>$VAV;"
+ "W>$VAV;"
+
+ "x>$KAF$SAMEKH;"
+ "X>$KAF$SAMEKH;"
+
+ "y<>$YOD;"
+ "Y>$YOD;"
+
+ "z<>$ZAYIN;"
+ "Z>$ZAYIN;"
+
+ "\u00B6<>$PARAGRAPH;"
+
+ //Delete any Syriac we didn't recognize
+ "<[:SYRIAC:];"
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_Latin_Thai.txt b/icu/translit_Latin_Thai.txt
new file mode 100644
index 0000000..956947e
--- /dev/null
+++ b/icu/translit_Latin_Thai.txt
@@ -0,0 +1,162 @@
+//--------------------------------------------------------------------
+// Copyright 2001, CrossWire Bible Society (http://www.crosswire.org)
+// Use freely.
+//--------------------------------------------------------------------
+// Based upon UNGEGN recommendations from
+// http://www.eki.ee/wgrs/rom1_th.pdf
+//--------------------------------------------------------------------
+
+// Latin-Thai
+
+translit_Latin_Thai {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ ":: [[:LATIN:]-[B]] lower();"
+
+ //completeness mappings
+ "c}[^h]>|k;"
+ "g>|ng;"
+ "q>|k;"
+ "v>|f;"
+ "x>|kh;"
+ "z>|s;"
+ "j>|i;"
+
+ // latin-thai
+ "\u2026<>\u0E2F;"
+ "\u00B7<>\u0E4F;"
+
+ "B<>\u0E3F;"
+
+ "|$1 a $2<([[:THAI:]&[:L:]])\u0E31([[:THAI:]&[:L:]]);"
+ "|$1 a $2<([[:THAI:]&[:L:]])\u0E23\u0E23([[:THAI:]&[:L:]]);"
+ "|$1 e<\u0E40([[:THAI:]&[:L:]])\u0E30;"
+ "|$1 e $2<\u0E40([[:THAI:]&[:L:]])\u0E47([[:THAI:]&[:L:]]);"
+ "|$1 ae<\u0E41([[:THAI:]&[:L:]])\u0E30;"
+ "|$1 ae $2<\u0E41([[:THAI:]&[:L:]])\u0E47([[:THAI:]&[:L:]]);"
+ "|$1 o<\u0E42([[:THAI:]&[:L:]])\u0E30;"
+ "|$1 o<\u0E40([[:THAI:]&[:L:]])\u0E32\u0E30;"
+ "|$1 oe<\u0E40([[:THAI:]&[:L:]])\u0E3D\u0E30;"
+ "|$1 oe $2<\u0E40([[:THAI:]&[:L:]])\u0E34([[:THAI:]&[:L:]]);"
+ "|$1 oe<\u0E40([[:THAI:]&[:L:]])\u0E2D;"
+ "|$1 ia<\u0E40([[:THAI:]&[:L:]])\u0E35\u0E22\u0E30;"
+ "|$1 ia<\u0E40([[:THAI:]&[:L:]])\u0E35\u0E22;"
+ "|$1 uea<\u0E40([[:THAI:]&[:L:]])\u0E37\u0E2D\u0E30;"
+ "|$1 uea<\u0E40([[:THAI:]&[:L:]])\u0E37\u0E2D;"
+ "|$1 ua<([[:THAI:]&[:L:]])\u0E31\u0E27\u0E30;"
+ "|$1 ua<([[:THAI:]&[:L:]])\u0E31\u0E27;"
+ "|$1 ua $2<([[:THAI:]&[:L:]])\u0E27([[:THAI:]&[:L:]]);"
+ "|$1 ai<([[:THAI:]&[:L:]])\u0E31\u0E22;"
+ "|$1 ai<\u0E44([[:THAI:]&[:L:]])\u0E22;"
+ "|$1 ai<([[:THAI:]&[:L:]])\u0E32\u0E22;"
+ "|$1 ao<\u0E40([[:THAI:]&[:L:]])\u0E32;"
+ "|$1 ao<([[:THAI:]&[:L:]])\u0E32\u0E27;"
+ "|$1 ui<([[:THAI:]&[:L:]])\u0E38\u0E22;"
+ "|$1 oi<\u0E42([[:THAI:]&[:L:]])\u0E22;"
+ "|$1 oi<([[:THAI:]&[:L:]])\u0E2D\u0E22;"
+ "|$1 oei<\u0E40([[:THAI:]&[:L:]])\u0E22;"
+ "|$1 ueai<\u0E40([[:THAI:]&[:L:]])\u0E37\u0E2D\u0E22;"
+ "|$1 uai<([[:THAI:]&[:L:]])\u0E27\u0E22;"
+ "|$1 io<([[:THAI:]&[:L:]])\u0E34\u0E27;"
+ "|$1 eo<\u0E40([[:THAI:]&[:L:]])\u0E47\u0E27;"
+ "|$1 eo<\u0E40([[:THAI:]&[:L:]])\u0E27;"
+ "|$1 aeo<\u0E41([[:THAI:]&[:L:]])\u0E47\u0E27;"
+ "|$1 aeo<\u0E41([[:THAI:]&[:L:]])\u0E27;"
+ "|$1 iao<\u0E40([[:THAI:]&[:L:]])\u0E35\u0E22\u0E27;"
+
+ "|$1 o<([[:THAI:]&[:L:]])\u0E2D;"
+ "|$1 a<([[:THAI:]&[:L:]])\u0E30;"
+ "|$1 a<([[:THAI:]&[:L:]])\u0E32;"
+ "|$1 an<([[:THAI:]&[:L:]])\u0E23\u0E23;"
+ "|$1 am<([[:THAI:]&[:L:]])\u0E33;"
+ "|$1 i<([[:THAI:]&[:L:]])\u0E34;"
+ "|$1 i<([[:THAI:]&[:L:]])\u0E35;"
+ "|$1 ue<([[:THAI:]&[:L:]])\u0E36;"
+ "|$1 ue<([[:THAI:]&[:L:]])\u0E37;"
+ "|$1 u<([[:THAI:]&[:L:]])\u0E38;"
+ "|$1 u<([[:THAI:]&[:L:]])\u0E39;"
+ "|$1 e<\u0E40([[:THAI:]&[:L:]]);"
+ "|$1 ae<\u0E41([[:THAI:]&[:L:]]);"
+ "|$1 o<\u0E42([[:THAI:]&[:L:]]);"
+ "|$1 ai<\u0E43([[:THAI:]&[:L:]]);"
+ "|$1 ai<\u0E44([[:THAI:]&[:L:]]);"
+
+ "0<>\u0E50;"
+ "1<>\u0E51;"
+ "2<>\u0E52;"
+ "3<>\u0E53;"
+ "4<>\u0E54;"
+ "5<>\u0E55;"
+ "6<>\u0E56;"
+ "7<>\u0E57;"
+ "8<>\u0E58;"
+ "9<>\u0E59;"
+
+ // this doesn't work; don't know why
+ // "| $1 o < ([[:THAI:]&[:L:]]);"
+
+ "kh<>\u0E02;"
+ "kh<\u0E03;"
+ "kh<\u0E04;"
+ "kh<\u0E05;"
+ "kh<\u0E06;"
+ "k<>\u0E01;"
+ "ng<>\u0E07;"
+ "ch<>\u0E08;"
+ "ch<\u0E09;"
+ "ch<\u0E0A;"
+ "s<>\u0E0B;"
+ "ch<\u0E0C;"
+ "y<>\u0E0D;"
+ "d<>\u0E0E;"
+ "s<\u0E17\u0E23;"
+ "th<>\u0E10;"
+ "th<\u0E11;"
+ "th<\u0E12;"
+ "th<\u0E16;"
+ "th<\u0E17;"
+ "th<\u0E18;"
+ "t<>\u0E0F;"
+ "n<>\u0E13;"
+ "d<\u0E14;"
+ "t<\u0E15;"
+ "n<\u0E19;"
+ "b<>\u0E1A;"
+ "ph<>\u0E1C;"
+ "ph<\u0E1E;"
+ "ph<\u0E20;"
+ "p<>\u0E1B;"
+ "f<>\u0E1D;"
+ "f<\u0E1F;"
+ "m<>\u0E21;"
+ "y<\u0E22;"
+ "rue<>\u0E24\u0E32;"
+ "ri<>\u0E24;"
+ "r<>\u0E23;"
+ "lue<\u0E26\uE32;"
+ "lue<>\u0E26;"
+ "l<>\u0E25;"
+ "w<>\u0E27;"
+ "s<\u0E28;"
+ "s<\u0E29;"
+ "s<\u0E2A;"
+ "h<>\u0E2B;"
+ "l<\u0E2C;"
+ "o<\u0E2D;"
+ "h<\u0E2E;"
+
+ //vowels
+ "a>\u0E30;"
+ "([:LATIN:])e>|\u0E40 $1;"
+ "i>\u0E34;"
+ "([:^L:])o>|$1 \u0E2D;"
+ "u>\u0E38;"
+
+ //remove untransliterated
+ "<[:THAI:];"
+ "[:LATIN:]>;"
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_Latin_Ugaritic.txt b/icu/translit_Latin_Ugaritic.txt
new file mode 100644
index 0000000..d22ae45
--- /dev/null
+++ b/icu/translit_Latin_Ugaritic.txt
@@ -0,0 +1,63 @@
+๏ปฟ // -*- Coding: utf-8; -*-
+//--------------------------------------------------------------------
+// Copyright 2001, CrossWire Bible Society (http://www.crosswire.org)
+// Use freely.
+//--------------------------------------------------------------------
+// Based upon SBL standard transliteration system from
+// the SBL Handbook of Style p.31
+//--------------------------------------------------------------------
+
+// Latin-Ugaritic
+
+translit_Latin_Ugaritic {
+ Rule {
+ ":: NFD (NFC) ;"
+
+ ":: lower() ;"
+
+ // completeness
+ "c> | k;"
+ "e> | i;"
+ "f> | w;"
+ "j> | i;"
+ "o> | a;"
+ "v> | w;"
+ "x> | k;"
+
+ // ugaritic cuneiform
+ "h ฬฃ <> ๐ˆ;"
+ "d ฬฑ <> ๐;"
+ "z ฬฃ <> ๐‘;"
+ "s ฬฃ <> ๐•;"
+ "g ฬ <> ๐™;"
+ "s ฬ€ <> ๐;"
+
+ "a <> ๐€;"
+ "b <> ๐;"
+ "g <> ๐‚;"
+ "h ฬฎ<> ๐ƒ;"
+ "d <> ๐„;"
+ "h <> ๐…;"
+ "w <> ๐†;"
+ "z <> ๐‡;"
+ "t ฬฃ <> ๐‰;"
+ "y <> ๐Š;"
+ "k <> ๐‹;"
+ "s ฬŒ <> ๐Œ;"
+ "l <> ๐;"
+ "m <> ๐Ž;"
+ "n <> ๐;"
+ "s <> ๐’;"
+ "สฟ <> ๐“;"
+ "p <> ๐”;"
+ "q <> ๐–;"
+ "r <> ๐—;"
+ "t ฬฑ <> ๐˜;"
+ "t <> ๐š;"
+ "i <> ๐›;"
+ "u <> ๐œ;"
+ "' ' <> ๐Ÿ;"
+
+ ":: NFC (NFD) ;"
+ }
+}
diff --git a/icu/translit_swordindex.txt b/icu/translit_swordindex.txt
new file mode 100644
index 0000000..37cd93f
--- /dev/null
+++ b/icu/translit_swordindex.txt
@@ -0,0 +1,108 @@
+//--------------------------------------------------------------------
+// Copyright (c) 1999-2001, International Business Machines
+// Corporation and others. All Rights Reserved.
+//--------------------------------------------------------------------
+// THIS IS A MACHINE-GENERATED FILE
+// Tool: dumpicurules.bat
+// Source: Transliterator_index.txt
+// Date: Mon Dec 3 11:44:30 2001
+//--------------------------------------------------------------------
+
+//--------------------------------------------------------------------
+// N.B.: This file has been generated mechanically from the
+// corresponding ICU4J file, which is the master file that receives
+// primary updates. The colon-delimited fields have been split into
+// separate strings. For 'file' and 'internal' lines, the encoding
+// field has been deleted, since the encoding is processed at build
+// time in ICU4C. Certain large rule sets not intended for general
+// use have been commented out with the notation "Java only".
+//--------------------------------------------------------------------
+
+translit_swordindex {
+ RuleBasedTransliteratorIDs {
+// Copyright (c) 2001, International Business Machines Corporation and
+// others. All Rights Reserved.
+//
+// TRANSLITERATOR INDEX FILE. This file lists the non-algorithmic
+// system transliterators. It allows arbitrary mappings between
+// transliterator IDs and file names, and also allows the system to
+// define aliases for transliterators, so that "Latin-Hangul", for
+// example, can be implemented transparently as the compound
+// "Latin-Jamo;Jamo-Hangul". Internal IDs may also be defined; these
+// are invisible to the user, but can be composed together by the
+// system to create visible transliterators.
+//
+// Blank lines and lines beginning with '#' are ignored.
+//
+// Lines in this file have one of the following forms (text not
+// enclosed by <> is literal):
+//
+// <id>:file:<resource>:<encoding>:<direction>
+// <id>:internal:<resource>:<encoding>:<direction>
+// <id>:alias:<getInstanceArg>
+//
+// <id> is the ID of the system transliterator being defined. These
+// are public IDs enumerated by Transliterator.getAvailableIDs(),
+// unless the second field is "internal".
+//
+// <resource> is a ResourceReader resource name. Currently these refer
+// to file names under com/ibm/text/resources. This string is passed
+// directly to ResourceReader, together with <encoding>.
+//
+// <encoding> is the character encoding to use when reading <resource>;
+// passed directly to ResourceReader. E.g., "UTF8".
+//
+// <direction> is either "FORWARD" or "REVERSE".
+//
+// <getInstanceArg> is a string to be passed directly to
+// Transliterator.getInstance(). The returned Transliterator object
+// then has its ID changed to <id> and is returned.
+
+// ICU < 2.0 additions
+{ "Latin-Hebrew", "file", "translit_Latin_Hebrew", "FORWARD" },
+{ "Hebrew-Latin", "file", "translit_Latin_Hebrew", "REVERSE" },
+{ "Latin-Arabic", "file", "translit_Latin_Arabic", "FORWARD" },
+{ "Arabic-Latin", "file", "translit_Latin_Arabic", "REVERSE" },
+
+// xtradata additions
+//{ "Han-Pinyin", "file", "translit_Han_Pinyin", "FORWARD" },
+//{ "Kanji-English", "file", "translit_Kanji_English", "FORWARD" },
+//{ "Kanji-OnRomaji", "file", "translit_Kanji_OnRomaji", "FORWARD" },
+//{ "HTMLEntities-Unicode", "file", "translit_HTMLEnt_Unicode", "FORWARD" },
+//{ "Unicode-HTMLEntities", "file", "translit_HTMLEnt_Unicode", "REVERSE" },
+
+// SWORD additions for academic Biblical transliteration schemes
+{ "BGreek-Greek", "file", "translit_BGreek_Greek", "FORWARD" },
+{ "Greek-BGreek", "file", "translit_BGreek_Greek", "REVERSE" },
+{ "Beta-Greek", "file", "translit_BETA_Greek", "FORWARD" },
+{ "Greek-Beta", "file", "translit_BETA_Greek", "REVERSE" },
+{ "CCAT-Hebrew", "file", "translit_CCAT_Hebrew", "FORWARD" },
+{ "Hebrew-CCAT", "file", "translit_CCAT_Hebrew", "REVERSE" }
+{ "CCAT-Syriac", "file", "translit_CCAT_Syriac", "FORWARD" },
+{ "Syriac-CCAT", "file", "translit_CCAT_Syriac", "REVERSE" },
+//{ "Syriac-Hebrew", "alias", "Syriac-CCAT;CCAT-Hebrew", "" },
+//{ "Hebrew-Syriac", "alias", "Hebrew-CCAT;CCAT-Syriac", "" },
+{ "Latin-Syriac", "file", "translit_Latin_Syriac", "FORWARD" },
+{ "Syriac-Latin", "file", "translit_Latin_Syriac", "REVERSE" },
+
+// SWORD additions for other languages
+{ "Latin-Thai", "file", "translit_Latin_Thai", "FORWARD" },
+{ "Thai-Latin", "file", "translit_Latin_Thai", "REVERSE" },
+{ "Latin-Georgian", "file", "translit_Latin_Georgian", "FORWARD" },
+{ "Georgian-Latin", "file", "translit_Latin_Georgian", "REVERSE" },
+{ "Latin-Armenian", "file", "translit_Latin_Armenian", "FORWARD" },
+{ "Armenian-Latin", "file", "translit_Latin_Armenian", "REVERSE" },
+{ "Latin-Coptic", "file", "translit_Latin_Coptic", "FORWARD" },
+{ "Coptic-Latin", "file", "translit_Latin_Coptic", "REVERSE" },
+{ "Latin-Gothic", "file", "translit_Latin_Gothic", "FORWARD" },
+{ "Gothic-Latin", "file", "translit_Latin_Gothic", "REVERSE" },
+{ "Latin-Ethiopic", "file", "translit_Latin_Ethiopic", "FORWARD" },
+{ "Ethiopic-Latin", "file", "translit_Latin_Ethiopic", "REVERSE" },
+{ "Latin-Ugaritic", "file", "translit_Latin_Ugaritic", "FORWARD" },
+{ "Ugaritic-Latin", "file", "translit_Latin_Ugaritic", "REVERSE" },
+
+{ "Any-Latin1", "file", "translit_Any_Latin1", "FORWARD" },
+
+// eof
+ }
+}