summaryrefslogtreecommitdiff
path: root/src/GF/Text/Unicode.hs
diff options
context:
space:
mode:
authoraarne <unknown>2003-09-22 13:16:55 +0000
committeraarne <unknown>2003-09-22 13:16:55 +0000
commitb1402e8bd6a68a891b00a214d6cf184d66defe19 (patch)
tree90372ac4e53dce91cf949dbf8e93be06f1d9e8bd /src/GF/Text/Unicode.hs
Founding the newly structured GF2.0 cvs archive.
Diffstat (limited to 'src/GF/Text/Unicode.hs')
-rw-r--r--src/GF/Text/Unicode.hs24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/GF/Text/Unicode.hs b/src/GF/Text/Unicode.hs
new file mode 100644
index 000000000..78aba0461
--- /dev/null
+++ b/src/GF/Text/Unicode.hs
@@ -0,0 +1,24 @@
+module Unicode where
+
+import Greek (mkGreek)
+import Arabic (mkArabic)
+import Hebrew (mkHebrew)
+import Russian (mkRussian, mkRusKOI8)
+
+-- ad hoc Unicode conversions from different alphabets
+
+-- AR 12/4/2000, 18/9/2001, 30/5/2002
+
+mkUnicode s = case s of
+ '/':'/':cs -> mkGreek (remClosing cs)
+ '/':'+':cs -> mkHebrew (remClosing cs)
+ '/':'-':cs -> mkArabic (remClosing cs)
+ '/':'_':cs -> mkRussian (remClosing cs)
+ '/':'*':cs -> mkRusKOI8 (remClosing cs)
+ _ -> s
+
+remClosing cs
+ | lcs > 1 && last cs == '/' = take (lcs-2) cs
+ | otherwise = cs
+ where lcs = length cs
+