ref: 05d00587450a853e6207c71c0a13198f93ce28a3
parent: 1ce4437f4fb4cd3c541f9dd7d1fabffb04eb317b
author: Ori Bernstein <[email protected]>
date: Sun Aug 5 23:24:56 EDT 2012
Fill in stubs.
--- a/chartype.myr
+++ b/chartype.myr
@@ -1037,6 +1037,21 @@
0x1ffc, 491 /* ῼ ῳ */
]
+/*
+ * title characters are those between
+ * upper and lower case. ie DZ Dz dz
+ */
+const rtotitle1 = [
+ 0x01c4, 501, /* DŽ Dž */
+ 0x01c6, 499, /* dž Dž */
+ 0x01c7, 501, /* LJ Lj */
+ 0x01c9, 499, /* lj Lj */
+ 0x01ca, 501, /* NJ Nj */
+ 0x01cc, 499, /* nj Nj */
+ 0x01f1, 501, /* DZ Dz */
+ 0x01f3, 499 /* dz Dz */
+]
+
const findc = {c, t, sz, nelt, ret
var l
var m
@@ -1146,17 +1161,43 @@
}
const tolower = {c
- die("Stub")
+ var l
+
+ if findc(c, rtolower2[0, rtolower2.len], rtolower2.len/3, 3, &l)
+ if c >= l[0] && c <= l[1]
+ -> c + l[2] - 500;
+ ;;
+ elif findc(c, rtolower1[0, rtolower1.len], rtolower1.len/2, 2, &l)
+ if c == l[0]
+ -> c + l[1] - 500;
+ ;;
+ ;;
-> c
}
const toupper = {c
- die("Stub")
+ var l
+
+ if findc(c, rtoupper2[0,rtoupper2.len], rtoupper2.len/3, 3, &l);
+ if c >= l[0] && c <= l[1]
+ -> c + l[2] - 500;
+ ;;
+ elif findc(c, rtoupper1[0,rtoupper1.len], rtoupper1.len/2, 2, &l);
+ if c == l[0]
+ -> c + l[1] - 500;
+ ;;
+ ;;
-> c
}
const totitle = {c
- die("Stub")
+ var l
+
+ if findc(c, rtotitle1[0,rtotitle1.len], rtotitle1.len/2, 2, &l);
+ if c == l[0]
+ -> c + l[1] - 500;
+ ;;
+ ;;
-> c
}