]> shimmer.witbreuk.eu Git - UltimateKEYS.git/commitdiff
Delete UltimateKEYS - 2020-05-19.ahk
authorPieter Degroote <pieter-degroote@users.noreply.github.com>
Sat, 30 May 2020 16:17:18 +0000 (18:17 +0200)
committerGitHub <noreply@github.com>
Sat, 30 May 2020 16:17:18 +0000 (18:17 +0200)
UltimateKEYS - 2020-05-19.ahk [deleted file]

diff --git a/UltimateKEYS - 2020-05-19.ahk b/UltimateKEYS - 2020-05-19.ahk
deleted file mode 100644 (file)
index 28b96bf..0000000
+++ /dev/null
@@ -1,1276 +0,0 @@
-; UltimateKEYS - 2020-05-19.ahk\r
-\r
-; Created by :  Pieter Degroote\r
-\r
-; License :  GNU General Public License Version 3\r
-\r
-; Website :  https://github.com/pieter-degroote/UltimateKEYS\r
-\r
-\r
-; Requirements :\r
-\r
-; Keyboard layout (on Windows OS) :  US QWERTY\r
-\r
-; AutoHotkey v1.1 (https://www.autohotkey.com/)\r
-\r
-\r
-\r
-; Dead Key :  Circumflex Accent\r
-\r
-dkCircumflex := ComObjCreate("Scripting.Dictionary")\r
-dkCircumflex.item("a") := "â"  ; (u+00e2) a with circumflex\r
-dkCircumflex.item("A") := "Â"  ; (u+00c2) A with circumflex\r
-dkCircumflex.item("c") := "ĉ"  ; (u+0109) c with circumflex\r
-dkCircumflex.item("C") := "Ĉ"  ; (u+0108) C with circumflex\r
-dkCircumflex.item("e") := "ê"  ; (u+00ea) e with circumflex\r
-dkCircumflex.item("E") := "Ê"  ; (u+00ca) E with circumflex\r
-dkCircumflex.item("g") := "ĝ"  ; (u+011d) g with circumflex\r
-dkCircumflex.item("G") := "Ĝ"  ; (u+011c) G with circumflex\r
-dkCircumflex.item("h") := "ĥ"  ; (u+0125) h with circumflex\r
-dkCircumflex.item("H") := "Ĥ"  ; (u+0124) H with circumflex\r
-dkCircumflex.item("i") := "î"  ; (u+00ee) i with circumflex\r
-dkCircumflex.item("I") := "Î"  ; (u+00ce) I with circumflex\r
-dkCircumflex.item("j") := "ĵ"  ; (u+0135) j with circumflex\r
-dkCircumflex.item("J") := "Ĵ"  ; (u+0134) J with circumflex\r
-dkCircumflex.item("o") := "ô"  ; (u+00f4) o with circumflex\r
-dkCircumflex.item("O") := "Ô"  ; (u+00d4) O with circumflex\r
-dkCircumflex.item("s") := "ŝ"  ; (u+015d) s with circumflex\r
-dkCircumflex.item("S") := "Ŝ"  ; (u+015c) S with circumflex\r
-dkCircumflex.item("u") := "û"  ; (u+00fb) u with circumflex\r
-dkCircumflex.item("U") := "Û"  ; (u+00db) U with circumflex\r
-dkCircumflex.item("w") := "ŵ"  ; (u+0175) w with circumflex\r
-dkCircumflex.item("W") := "Ŵ"  ; (u+0174) W with circumflex\r
-dkCircumflex.item("y") := "ŷ"  ; (u+0177) y with circumflex\r
-dkCircumflex.item("Y") := "Ŷ"  ; (u+0176) Y with circumflex\r
-dkCircumflex.item("z") := "ẑ"  ; (u+1e91) z with circumflex\r
-dkCircumflex.item("Z") := "Ẑ"  ; (u+1e90) Z with circumflex\r
-\r
-; Smart error-tolerant optimization for circumflex in French (begin)\r
-\r
-dkCircumflex.item("ä") := "â"  ; (u+00e2) a with circumflex\r
-dkCircumflex.item("Ä") := "Â"  ; (u+00c2) A with circumflex\r
-dkCircumflex.item("ë") := "ê"  ; (u+00ea) e with circumflex\r
-dkCircumflex.item("Ë") := "Ê"  ; (u+00ca) E with circumflex\r
-dkCircumflex.item("ï") := "î"  ; (u+00ee) i with circumflex\r
-dkCircumflex.item("Ï") := "Î"  ; (u+00ce) I with circumflex\r
-dkCircumflex.item("ö") := "ô"  ; (u+00f4) o with circumflex\r
-dkCircumflex.item("Ö") := "Ô"  ; (u+00d4) O with circumflex\r
-dkCircumflex.item("ü") := "û"  ; (u+00fb) u with circumflex\r
-dkCircumflex.item("Ü") := "Û"  ; (u+00db) U with circumflex\r
-\r
-; Smart error-tolerant optimization for circumflex in French (end)\r
-\r
-dkCircumflex.item("n") := "₦"  ; (u+20a6) Nigerian naira\r
-dkCircumflex.item("N") := "₦"  ; (u+20a6) Nigerian naira\r
-dkCircumflex.item("^") := "{^}"  ; (u+005e) circumflex accent\r
-dkCircumflex.item(" ") := "{^}"  ; (u+005e) circumflex accent\r
-\r
-\r
-; Dead Key :  Caron\r
-\r
-dkCaron := ComObjCreate("Scripting.Dictionary")\r
-dkCaron.item("a") := "ǎ"  ; (u+01ce) a with caron\r
-dkCaron.item("A") := "Ǎ"  ; (u+01cd) A with caron\r
-dkCaron.item("c") := "č"  ; (u+010d) c with caron\r
-dkCaron.item("C") := "Č"  ; (u+010c) C with caron\r
-dkCaron.item("d") := "ď"  ; (u+010f) d with caron\r
-dkCaron.item("D") := "Ď"  ; (u+010e) D with caron\r
-dkCaron.item("e") := "ě"  ; (u+011b) e with caron\r
-dkCaron.item("E") := "Ě"  ; (u+011a) E with caron\r
-dkCaron.item("g") := "ǧ"  ; (u+01e7) g with caron\r
-dkCaron.item("G") := "Ǧ"  ; (u+01e6) G with caron\r
-dkCaron.item("h") := "ȟ"  ; (u+021f) h with caron\r
-dkCaron.item("H") := "Ȟ"  ; (u+021e) H with caron\r
-dkCaron.item("i") := "ǐ"  ; (u+01d0) i with caron\r
-dkCaron.item("I") := "Ǐ"  ; (u+01cf) I with caron\r
-dkCaron.item("j") := "ǰ"  ; (u+01f0) j with caron\r
-dkCaron.item("k") := "ǩ"  ; (u+01e9) k with caron\r
-dkCaron.item("K") := "Ǩ"  ; (u+01e8) K with caron\r
-dkCaron.item("l") := "ľ"  ; (u+013e) l with caron\r
-dkCaron.item("L") := "Ľ"  ; (u+013d) L with caron\r
-dkCaron.item("n") := "ň"  ; (u+0148) n with caron\r
-dkCaron.item("N") := "Ň"  ; (u+0147) N with caron\r
-dkCaron.item("o") := "ǒ"  ; (u+01d2) o with caron\r
-dkCaron.item("O") := "Ǒ"  ; (u+01d1) O with caron\r
-dkCaron.item("r") := "ř"  ; (u+0159) r with caron\r
-dkCaron.item("R") := "Ř"  ; (u+0158) R with caron\r
-dkCaron.item("s") := "š"  ; (u+0161) s with caron\r
-dkCaron.item("S") := "Š"  ; (u+0160) S with caron\r
-dkCaron.item("t") := "ť"  ; (u+0165) t with caron\r
-dkCaron.item("T") := "Ť"  ; (u+0164) T with caron\r
-dkCaron.item("u") := "ǔ"  ; (u+01d4) u with caron\r
-dkCaron.item("U") := "Ǔ"  ; (u+01d3) U with caron\r
-dkCaron.item("v") := "ǚ"  ; (u+01da) u with diaeresis and caron\r
-dkCaron.item("V") := "Ǚ"  ; (u+01d9) U with diaeresis and caron\r
-dkCaron.item("z") := "ž"  ; (u+017e) z with caron\r
-dkCaron.item("Z") := "Ž"  ; (u+017d) Z with caron\r
-dkCaron.item("3") := "ǯ"  ; (u+01ef) small letter ezh with caron\r
-dkCaron.item("#") := "Ǯ"  ; (u+01ee) capital letter ezh with caron\r
-\r
-; Smart error-tolerant optimization for circumflex in French (begin)\r
-\r
-dkCaron.item("ä") := "â"  ; (u+00e2) a with circumflex\r
-dkCaron.item("Ä") := "Â"  ; (u+00c2) A with circumflex\r
-dkCaron.item("ë") := "ê"  ; (u+00ea) e with circumflex\r
-dkCaron.item("Ë") := "Ê"  ; (u+00ca) E with circumflex\r
-dkCaron.item("ï") := "î"  ; (u+00ee) i with circumflex\r
-dkCaron.item("Ï") := "Î"  ; (u+00ce) I with circumflex\r
-dkCaron.item("ö") := "ô"  ; (u+00f4) o with circumflex\r
-dkCaron.item("Ö") := "Ô"  ; (u+00d4) O with circumflex\r
-dkCaron.item("ü") := "û"  ; (u+00fb) u with circumflex\r
-dkCaron.item("Ü") := "Û"  ; (u+00db) U with circumflex\r
-\r
-; Smart error-tolerant optimization for circumflex in French (end)\r
-\r
-dkCaron.item(" ") := "ˇ"  ; (u+02c7) caron\r
-\r
-\r
-; Dead Key :  Ring/Dot Above\r
-\r
-dkRingDotAbove := ComObjCreate("Scripting.Dictionary")\r
-dkRingDotAbove.item("a") := "å"  ; (u+00e5) a with ring above\r
-dkRingDotAbove.item("A") := "Å"  ; (u+00c5) A with ring above\r
-dkRingDotAbove.item("ä") := "ȧ"  ; (u+0227) a with dot above\r
-dkRingDotAbove.item("Ä") := "Ȧ"  ; (u+0226) A with dot above\r
-dkRingDotAbove.item("b") := "ḃ"  ; (u+1e03) b with dot above\r
-dkRingDotAbove.item("B") := "Ḃ"  ; (u+1e02) B with dot above\r
-dkRingDotAbove.item("c") := "ċ"  ; (u+010b) c with dot above\r
-dkRingDotAbove.item("C") := "Ċ"  ; (u+010a) C with dot above\r
-dkRingDotAbove.item("d") := "ḋ"  ; (u+1e0b) d with dot above\r
-dkRingDotAbove.item("D") := "Ḋ"  ; (u+1e0a) D with dot above\r
-dkRingDotAbove.item("e") := "ė"  ; (u+0117) e with dot above\r
-dkRingDotAbove.item("E") := "Ė"  ; (u+0116) E with dot above\r
-dkRingDotAbove.item("f") := "ḟ"  ; (u+1e1f) f with dot above\r
-dkRingDotAbove.item("F") := "Ḟ"  ; (u+1e1e) F with dot above\r
-dkRingDotAbove.item("g") := "ġ"  ; (u+0121) g with dot above\r
-dkRingDotAbove.item("G") := "Ġ"  ; (u+0120) G with dot above\r
-dkRingDotAbove.item("h") := "ḣ"  ; (u+1e23) h with dot above\r
-dkRingDotAbove.item("H") := "Ḣ"  ; (u+1e22) H with dot above\r
-dkRingDotAbove.item("i") := "ı"  ; (u+0131) dotless i (Turkish, Azerbaijani)\r
-dkRingDotAbove.item("I") := "İ"  ; (u+0130) I with dot above (Turkish, Azerbaijani)\r
-dkRingDotAbove.item("j") := "ȷ"  ; (u+0237) dotless j\r
-dkRingDotAbove.item("l") := "ŀ"  ; (u+0140) l with middle dot\r
-dkRingDotAbove.item("L") := "Ŀ"  ; (u+013f) L with middle dot\r
-dkRingDotAbove.item("m") := "ṁ"  ; (u+1e41) m with dot above\r
-dkRingDotAbove.item("M") := "Ṁ"  ; (u+1e40) M with dot above\r
-dkRingDotAbove.item("n") := "ṅ"  ; (u+1e45) n with dot above\r
-dkRingDotAbove.item("N") := "Ṅ"  ; (u+1e44) N with dot above\r
-dkRingDotAbove.item("o") := "ȯ"  ; (u+022f) o with dot above\r
-dkRingDotAbove.item("O") := "Ȯ"  ; (u+022e) O with dot above\r
-dkRingDotAbove.item("p") := "ṗ"  ; (u+1e57) p with dot above\r
-dkRingDotAbove.item("P") := "Ṗ"  ; (u+1e56) P with dot above\r
-dkRingDotAbove.item("r") := "ṙ"  ; (u+1e59) r with dot above\r
-dkRingDotAbove.item("R") := "Ṙ"  ; (u+1e58) R with dot above\r
-dkRingDotAbove.item("s") := "ṡ"  ; (u+1e61) s with dot above\r
-dkRingDotAbove.item("S") := "Ṡ"  ; (u+1e60) S with dot above\r
-dkRingDotAbove.item("t") := "ṫ"  ; (u+1e6b) t with dot above\r
-dkRingDotAbove.item("T") := "Ṫ"  ; (u+1e6a) T with dot above\r
-dkRingDotAbove.item("u") := "ů"  ; (u+016f) u with ring above\r
-dkRingDotAbove.item("U") := "Ů"  ; (u+016e) U with ring above\r
-dkRingDotAbove.item("w") := "ẇ"  ; (u+1e87) w with dot above\r
-dkRingDotAbove.item("W") := "Ẇ"  ; (u+1e86) W with dot above\r
-dkRingDotAbove.item("å") := "ẘ"  ; (u+1e98) w with ring above\r
-dkRingDotAbove.item("x") := "ẋ"  ; (u+1e8b) x with dot above\r
-dkRingDotAbove.item("X") := "Ẋ"  ; (u+1e8a) X with dot above\r
-dkRingDotAbove.item("y") := "ẏ"  ; (u+1e8f) y with dot above\r
-dkRingDotAbove.item("Y") := "Ẏ"  ; (u+1e8e) Y with dot above\r
-dkRingDotAbove.item("ÿ") := "ẙ"  ; (u+1e99) y with ring above\r
-dkRingDotAbove.item("z") := "ż"  ; (u+017c) z with dot above\r
-dkRingDotAbove.item("Z") := "Ż"  ; (u+017b) Z with dot above\r
-dkRingDotAbove.item(" ") := "˙"  ; (u+02d9) dot above\r
-\r
-\r
-; Dead Key :  Macron/Stroke\r
-\r
-dkMacronStroke := ComObjCreate("Scripting.Dictionary")\r
-dkMacronStroke.item("a") := "ā"  ; (u+0101) a with macron\r
-dkMacronStroke.item("A") := "Ā"  ; (u+0100) A with macron\r
-dkMacronStroke.item("æ") := "ǣ"  ; (u+01e3) ae with macron\r
-dkMacronStroke.item("Æ") := "Ǣ"  ; (u+01e2) AE with macron\r
-dkMacronStroke.item("b") := "ƀ"  ; (u+0180) b with stroke\r
-dkMacronStroke.item("B") := "Ƀ"  ; (u+0243) B with stroke\r
-dkMacronStroke.item("d") := "đ"  ; (u+0111) d with stroke\r
-dkMacronStroke.item("D") := "Đ"  ; (u+0110) D with stroke\r
-dkMacronStroke.item("e") := "ē"  ; (u+0113) e with macron\r
-dkMacronStroke.item("E") := "Ē"  ; (u+0112) E with macron\r
-dkMacronStroke.item("g") := "ǥ"  ; (u+01e5) g with stroke (Skolt Sami)\r
-dkMacronStroke.item("G") := "Ǥ"  ; (u+01e4) G with stroke (Skolt Sami)\r
-dkMacronStroke.item("é") := "ḡ"  ; (u+1e21) g with macron\r
-dkMacronStroke.item("É") := "Ḡ"  ; (u+1e20) G with macron\r
-dkMacronStroke.item("h") := "ħ"  ; (u+0127) h with stroke (Maltese)\r
-dkMacronStroke.item("H") := "Ħ"  ; (u+0126) H with stroke (Maltese)\r
-dkMacronStroke.item("i") := "ī"  ; (u+012b) i with macron\r
-dkMacronStroke.item("I") := "Ī"  ; (u+012a) I with macron\r
-dkMacronStroke.item("ï") := "ɨ"  ; (u+0268) i with stroke\r
-dkMacronStroke.item("Ï") := "Ɨ"  ; (u+0197) I with stroke\r
-dkMacronStroke.item("j") := "ɉ"  ; (u+0249) j with stroke\r
-dkMacronStroke.item("J") := "Ɉ"  ; (u+0248) J with stroke\r
-dkMacronStroke.item("l") := "ł"  ; (u+0142) l with stroke\r
-dkMacronStroke.item("L") := "Ł"  ; (u+0141) L with stroke\r
-dkMacronStroke.item("ø") := "ḻ"  ; (u+1e3b) l with line below\r
-dkMacronStroke.item("Ø") := "Ḻ"  ; (u+1e3a) L with line below\r
-dkMacronStroke.item("o") := "ō"  ; (u+014d) o with macron\r
-dkMacronStroke.item("O") := "Ō"  ; (u+014c) O with macron\r
-dkMacronStroke.item("ö") := "ǭ"  ; (u+01ed) o with ogonek and macron\r
-dkMacronStroke.item("Ö") := "Ǭ"  ; (u+01ec) O with ogonek and macron\r
-dkMacronStroke.item("p") := "ᵽ"  ; (u+1d7d) p with stroke\r
-dkMacronStroke.item("P") := "Ᵽ"  ; (u+2c63) P with stroke\r
-dkMacronStroke.item("r") := "ɍ"  ; (u+024d) r with stroke\r
-dkMacronStroke.item("R") := "Ɍ"  ; (u+024c) R with stroke\r
-dkMacronStroke.item("t") := "ŧ"  ; (u+0167) t with stroke\r
-dkMacronStroke.item("T") := "Ŧ"  ; (u+0166) T with stroke\r
-dkMacronStroke.item("u") := "ū"  ; (u+016b) u with macron\r
-dkMacronStroke.item("U") := "Ū"  ; (u+016a) U with macron\r
-dkMacronStroke.item("ü") := "ʉ"  ; (u+0289) u with bar\r
-dkMacronStroke.item("Ü") := "Ʉ"  ; (u+0244) U with bar\r
-dkMacronStroke.item("y") := "ȳ"  ; (u+0233) y with macron\r
-dkMacronStroke.item("Y") := "Ȳ"  ; (u+0232) Y with macron\r
-dkMacronStroke.item("ÿ") := "ɏ"  ; (u+024f) y with stroke\r
-dkMacronStroke.item("Ÿ") := "Ɏ"  ; (u+024c) Y with stroke\r
-dkMacronStroke.item("z") := "ƶ"  ; (u+01b6) z with stroke\r
-dkMacronStroke.item("Z") := "Ƶ"  ; (u+01b5) Z with stroke\r
-dkMacronStroke.item(" ") := "¯"  ; (u+00af) macron\r
-\r
-\r
-; Dead Key :  Cedilla/Ogonek\r
-\r
-dkCedillaOgonek := ComObjCreate("Scripting.Dictionary")\r
-dkCedillaOgonek.item("a") := "ą"  ; (u+0105) a with ogonek\r
-dkCedillaOgonek.item("A") := "Ą"  ; (u+0104) A with ogonek\r
-dkCedillaOgonek.item("c") := "ç"  ; (u+00e7) c with cedilla\r
-dkCedillaOgonek.item("C") := "Ç"  ; (u+00c7) C with cedilla\r
-dkCedillaOgonek.item("d") := "ḑ"  ; (u+1e11) d with cedilla\r
-dkCedillaOgonek.item("D") := "Ḑ"  ; (u+1e10) D with cedilla\r
-dkCedillaOgonek.item("e") := "ę"  ; (u+0119) e with ogonek\r
-dkCedillaOgonek.item("E") := "Ę"  ; (u+0118) E with ogonek\r
-dkCedillaOgonek.item("ë") := "ȩ"  ; (u+0229) e with cedilla\r
-dkCedillaOgonek.item("Ë") := "Ȩ"  ; (u+0228) E with cedilla\r
-dkCedillaOgonek.item("g") := "ģ"  ; (u+0123) g with cedilla\r
-dkCedillaOgonek.item("G") := "Ģ"  ; (u+0122) G with cedilla\r
-dkCedillaOgonek.item("h") := "ḩ"  ; (u+1e29) h with cedilla\r
-dkCedillaOgonek.item("H") := "Ḩ"  ; (u+1e28) H with cedilla\r
-dkCedillaOgonek.item("i") := "į"  ; (u+012f) i with ogonek\r
-dkCedillaOgonek.item("I") := "Į"  ; (u+012e) I with ogonek\r
-dkCedillaOgonek.item("k") := "ķ"  ; (u+0137) k with cedilla\r
-dkCedillaOgonek.item("K") := "Ķ"  ; (u+0136) K with cedilla\r
-dkCedillaOgonek.item("l") := "ļ"  ; (u+013c) l with cedilla\r
-dkCedillaOgonek.item("L") := "Ļ"  ; (u+013b) L with cedilla\r
-dkCedillaOgonek.item("n") := "ņ"  ; (u+0146) n with cedilla\r
-dkCedillaOgonek.item("N") := "Ņ"  ; (u+0145) N with cedilla\r
-dkCedillaOgonek.item("o") := "ǫ"  ; (u+01eb) o with ogonek\r
-dkCedillaOgonek.item("O") := "Ǫ"  ; (u+01ea) O with ogonek\r
-dkCedillaOgonek.item("ö") := "ǭ"  ; (u+01ed) o with ogonek and macron\r
-dkCedillaOgonek.item("Ö") := "Ǭ"  ; (u+01ec) O with ogonek and macron\r
-dkCedillaOgonek.item("r") := "ŗ"  ; (u+0157) r with cedilla\r
-dkCedillaOgonek.item("R") := "Ŗ"  ; (u+0156) R with cedilla\r
-dkCedillaOgonek.item("s") := "ş"  ; (u+015f) s with cedilla\r
-dkCedillaOgonek.item("S") := "Ş"  ; (u+015e) S with cedilla\r
-dkCedillaOgonek.item("t") := "ţ"  ; (u+0163) t with cedilla\r
-dkCedillaOgonek.item("T") := "Ţ"  ; (u+0162) T with cedilla\r
-dkCedillaOgonek.item("u") := "ų"  ; (u+0173) u with ogonek\r
-dkCedillaOgonek.item("U") := "Ų"  ; (u+0172) U with ogonek\r
-dkCedillaOgonek.item("w") := "₩"  ; (u+20a9) South Korean won\r
-dkCedillaOgonek.item("W") := "₩"  ; (u+20a9) South Korean won\r
-dkCedillaOgonek.item("1") := "–"  ; (u+2013) en dash\r
-dkCedillaOgonek.item("2") := "—"  ; (u+2014) em dash\r
-dkCedillaOgonek.item("3") := "―"  ; (u+2015) horizontal bar\r
-dkCedillaOgonek.item("4") := "‐"  ; (u+2010) hyphen\r
-dkCedillaOgonek.item("9") := "‒"  ; (u+2012) figure dash\r
-dkCedillaOgonek.item("0") := "­"  ; (u+00ad) soft hyphen\r
-dkCedillaOgonek.item("-") := "‑"  ; (u+2011) non-breaking hyphen\r
-dkCedillaOgonek.item(".") := "˛"  ; (u+02db) ogonek\r
-dkCedillaOgonek.item(" ") := "¸"  ; (u+00b8) cedilla\r
-\r
-\r
-; Dead Key :  Breve/Special\r
-\r
-dkBreveSpecial := ComObjCreate("Scripting.Dictionary")\r
-dkBreveSpecial.item("a") := "ă"  ; (u+0103) a with breve\r
-dkBreveSpecial.item("A") := "Ă"  ; (u+0102) A with breve\r
-dkBreveSpecial.item("d") := "ɖ"  ; (u+0256) small letter d with tail\r
-dkBreveSpecial.item("D") := "Ɖ"  ; (u+0189) capital letter African D\r
-dkBreveSpecial.item("e") := "ĕ"  ; (u+0115) e with breve\r
-dkBreveSpecial.item("E") := "Ĕ"  ; (u+0114) E with breve\r
-dkBreveSpecial.item("ë") := "ǝ"  ; (u+01dd) small turned e\r
-dkBreveSpecial.item("Ë") := "Ǝ"  ; (u+018e) capital reversed E\r
-dkBreveSpecial.item("f") := "ə"  ; (u+0259) small letter schwa (Azerbaijani)\r
-dkBreveSpecial.item("F") := "Ə"  ; (u+018f) capital letter schwa (Azerbaijani)\r
-dkBreveSpecial.item("g") := "ğ"  ; (u+011f) g with breve\r
-dkBreveSpecial.item("G") := "Ğ"  ; (u+011e) G with breve\r
-dkBreveSpecial.item("é") := "ꬶ"  ; (u+ab36) cross-tailed g\r
-dkBreveSpecial.item("h") := "ɣ"  ; (u+0263) latin small gamma\r
-dkBreveSpecial.item("H") := "Ɣ"  ; (u+0194) latin capital gamma\r
-dkBreveSpecial.item("i") := "ĭ"  ; (u+012d) i with breve\r
-dkBreveSpecial.item("I") := "Ĭ"  ; (u+012c) I with breve\r
-dkBreveSpecial.item("j") := "ij"  ; (u+0133) ligature ij\r
-dkBreveSpecial.item("J") := "IJ"  ; (u+0132) ligature IJ\r
-dkBreveSpecial.item("k") := "ĸ"  ; (u+0138) small letter kra\r
-dkBreveSpecial.item("n") := "ŋ"  ; (u+014b) small letter eng(ma)\r
-dkBreveSpecial.item("N") := "Ŋ"  ; (u+014a) capital letter eng(ma)\r
-dkBreveSpecial.item("o") := "ŏ"  ; (u+014f) o with breve\r
-dkBreveSpecial.item("O") := "Ŏ"  ; (u+014e) O with breve\r
-dkBreveSpecial.item("ö") := "ɔ"  ; (u+0254) small open o\r
-dkBreveSpecial.item("Ö") := "Ɔ"  ; (u+0186) capital open O\r
-dkBreveSpecial.item("s") := "ș"  ; (u+0219) s with comma below (Romanian)\r
-dkBreveSpecial.item("S") := "Ș"  ; (u+0218) S with comma below (Romanian)\r
-dkBreveSpecial.item("t") := "ț"  ; (u+021b) t with comma below (Romanian)\r
-dkBreveSpecial.item("T") := "Ț"  ; (u+021a) T with comma below (Romanian)\r
-dkBreveSpecial.item("u") := "ŭ"  ; (u+016d) u with breve\r
-dkBreveSpecial.item("U") := "Ŭ"  ; (u+016c) U with breve\r
-dkBreveSpecial.item("v") := "ʊ"  ; (u+028a) latin small letter upsilon\r
-dkBreveSpecial.item("V") := "Ʊ"  ; (u+01b1) latin capital letter upsilon\r
-dkBreveSpecial.item("w") := "ƿ"  ; (u+01bf) small letter wynn\r
-dkBreveSpecial.item("W") := "Ƿ"  ; (u+01f7) capital letter wynn\r
-dkBreveSpecial.item("y") := "ȝ"  ; (u+021d) small letter yogh\r
-dkBreveSpecial.item("Y") := "Ȝ"  ; (u+021c) capital letter yogh\r
-dkBreveSpecial.item("3") := "ʒ"  ; (u+0292) small letter ezh\r
-dkBreveSpecial.item("#") := "Ʒ"  ; (u+01b7) capital letter ezh\r
-dkBreveSpecial.item(" ") := "˘"  ; (u+02d8) breve\r
-\r
-\r
-; Dead Key :  Acute Accent\r
-\r
-dkAcuteAccent := ComObjCreate("Scripting.Dictionary")\r
-dkAcuteAccent.item("a") := "á"  ; (u+00e1) a with acute\r
-dkAcuteAccent.item("A") := "Á"  ; (u+00c1) A with acute\r
-dkAcuteAccent.item("b") := "ɓ"  ; (u+0253) b with hook\r
-dkAcuteAccent.item("B") := "Ɓ"  ; (u+0181) B with hook\r
-dkAcuteAccent.item("c") := "ć"  ; (u+0107) c with acute\r
-dkAcuteAccent.item("C") := "Ć"  ; (u+0106) C with acute\r
-dkAcuteAccent.item("ç") := "ḉ"  ; (u+1e09) c with cedilla and acute\r
-dkAcuteAccent.item("Ç") := "Ḉ"  ; (u+1e08) C with cedilla and acute\r
-dkAcuteAccent.item("d") := "ɗ"  ; (u+0257) d with hook\r
-dkAcuteAccent.item("D") := "Ɗ"  ; (u+018a) D with hook\r
-dkAcuteAccent.item("e") := "é"  ; (u+00e9) e with acute\r
-dkAcuteAccent.item("E") := "É"  ; (u+00c9) E with acute\r
-dkAcuteAccent.item("f") := "ƒ"  ; (u+0192) f with hook\r
-dkAcuteAccent.item("F") := "Ƒ"  ; (u+0191) F with hook\r
-dkAcuteAccent.item("g") := "ǵ"  ; (u+01f5) g with acute\r
-dkAcuteAccent.item("G") := "Ǵ"  ; (u+01f4) G with acute\r
-dkAcuteAccent.item("h") := "ɦ"  ; (u+0266) h with hook\r
-dkAcuteAccent.item("H") := "Ɦ"  ; (u+a7aa) H with hook\r
-dkAcuteAccent.item("i") := "í"  ; (u+00ed) i with acute\r
-dkAcuteAccent.item("I") := "Í"  ; (u+00cd) I with acute\r
-dkAcuteAccent.item("j") := "ij"  ; (u+0133) ligature ij\r
-dkAcuteAccent.item("J") := "IJ"  ; (u+0132) ligature IJ\r
-dkAcuteAccent.item("k") := "ƙ"  ; (u+0199) k with hook\r
-dkAcuteAccent.item("K") := "Ƙ"  ; (u+0198) K with hook\r
-dkAcuteAccent.item("l") := "ĺ"  ; (u+013a) l with acute\r
-dkAcuteAccent.item("L") := "Ĺ"  ; (u+0139) L with acute\r
-dkAcuteAccent.item("m") := "ḿ"  ; (u+1e3f) m with acute\r
-dkAcuteAccent.item("M") := "Ḿ"  ; (u+1e3e) M with acute\r
-dkAcuteAccent.item("n") := "ń"  ; (u+0144) n with acute\r
-dkAcuteAccent.item("N") := "Ń"  ; (u+0143) N with acute\r
-dkAcuteAccent.item("o") := "ó"  ; (u+00f3) o with acute\r
-dkAcuteAccent.item("O") := "Ó"  ; (u+00d3) O with acute\r
-dkAcuteAccent.item("ö") := "ő"  ; (u+0151) o with double acute\r
-dkAcuteAccent.item("Ö") := "Ő"  ; (u+0150) O with double acute\r
-dkAcuteAccent.item("p") := "ƥ"  ; (u+01a5) p with hook\r
-dkAcuteAccent.item("P") := "Ƥ"  ; (u+01a4) P with hook\r
-dkAcuteAccent.item("q") := "ɋ"  ; (u+024b) q with hook tail\r
-dkAcuteAccent.item("Q") := "Ɋ"  ; (u+024a) Q with hook tail\r
-dkAcuteAccent.item("r") := "ŕ"  ; (u+0155) r with acute\r
-dkAcuteAccent.item("R") := "Ŕ"  ; (u+0154) R with acute\r
-dkAcuteAccent.item("s") := "ś"  ; (u+015b) s with acute\r
-dkAcuteAccent.item("S") := "Ś"  ; (u+015a) S with acute\r
-dkAcuteAccent.item("t") := "ƭ"  ; (u+01ad) t with hook\r
-dkAcuteAccent.item("T") := "Ƭ"  ; (u+01ac) T with hook\r
-dkAcuteAccent.item("u") := "ú"  ; (u+00fa) u with acute\r
-dkAcuteAccent.item("U") := "Ú"  ; (u+00da) U with acute\r
-dkAcuteAccent.item("ü") := "ű"  ; (u+0171) u with double acute\r
-dkAcuteAccent.item("Ü") := "Ű"  ; (u+0170) U with double acute\r
-dkAcuteAccent.item("v") := "ʋ"  ; (u+028b) v with hook\r
-dkAcuteAccent.item("V") := "Ʋ"  ; (u+01b2) V with hook\r
-dkAcuteAccent.item("w") := "ẃ"  ; (u+1e83) w with acute\r
-dkAcuteAccent.item("W") := "Ẃ"  ; (u+1e82) W with acute\r
-dkAcuteAccent.item("y") := "ý"  ; (u+00fd) y with acute\r
-dkAcuteAccent.item("Y") := "Ý"  ; (u+00dd) Y with acute\r
-dkAcuteAccent.item("z") := "ź"  ; (u+017a) z with acute\r
-dkAcuteAccent.item("Z") := "Ź"  ; (u+0179) Z with acute\r
-dkAcuteAccent.item("å") := "ǻ"  ; (u+01fb) a with ring above and acute\r
-dkAcuteAccent.item("Å") := "Ǻ"  ; (u+01fa) A with ring above and acute\r
-dkAcuteAccent.item("æ") := "ǽ"  ; (u+01fd) ae with acute\r
-dkAcuteAccent.item("Æ") := "Ǽ"  ; (u+01fc) AE with acute\r
-dkAcuteAccent.item("ø") := "ǿ"  ; (u+01ff) o with stroke and acute\r
-dkAcuteAccent.item("Ø") := "Ǿ"  ; (u+01fe) O with stroke and acute\r
-dkAcuteAccent.item("2") := "♫"  ; (u+266b) beamed eighth notes\r
-dkAcuteAccent.item("3") := "⁂"  ; (u+2042) asterism\r
-dkAcuteAccent.item("4") := "★"  ; (u+2605) black star\r
-dkAcuteAccent.item("5") := "☆"  ; (u+2606) white star\r
-dkAcuteAccent.item("6") := "✽"  ; (u+273d) heavy teardrop-spoked asterisk\r
-dkAcuteAccent.item("7") := "✻"  ; (u+273b) teardrop-spoked asterisk\r
-dkAcuteAccent.item("8") := "♪"  ; (u+266a) eighth note\r
-dkAcuteAccent.item("'") := "´"  ; (u+00b4) acute accent\r
-dkAcuteAccent.item(" ") := "´"  ; (u+00b4) acute accent\r
-\r
-\r
-; Dead Key :  Diaeresis\r
-\r
-dkDiaeresis := ComObjCreate("Scripting.Dictionary")\r
-dkDiaeresis.item("a") := "ä"  ; (u+00e4) a with diaeresis\r
-dkDiaeresis.item("A") := "Ä"  ; (u+00c4) A with diaeresis\r
-dkDiaeresis.item("e") := "ë"  ; (u+00eb) e with diaeresis\r
-dkDiaeresis.item("E") := "Ë"  ; (u+00cb) E with diaeresis\r
-dkDiaeresis.item("h") := "ḧ"  ; (u+1e27) h with diaeresis\r
-dkDiaeresis.item("H") := "Ḧ"  ; (u+1e26) H with diaeresis\r
-dkDiaeresis.item("i") := "ï"  ; (u+00ef) i with diaeresis\r
-dkDiaeresis.item("I") := "Ï"  ; (u+00cf) I with diaeresis\r
-dkDiaeresis.item("o") := "ö"  ; (u+00f6) o with diaeresis\r
-dkDiaeresis.item("O") := "Ö"  ; (u+00d6) O with diaeresis\r
-dkDiaeresis.item("s") := "ß"  ; (u+00df) small sharp s (Eszett)\r
-dkDiaeresis.item("S") := "ẞ"  ; (u+1e9e) capital sharp S (capital Eszett)\r
-dkDiaeresis.item("t") := "ẗ"  ; (u+1e97) t with diaeresis\r
-dkDiaeresis.item("u") := "ü"  ; (u+00fc) u with diaeresis\r
-dkDiaeresis.item("U") := "Ü"  ; (u+00dc) U with diaeresis\r
-dkDiaeresis.item("w") := "ẅ"  ; (u+1e85) w with diaeresis\r
-dkDiaeresis.item("W") := "Ẅ"  ; (u+1e84) W with diaeresis\r
-dkDiaeresis.item("x") := "ẍ"  ; (u+1e8d) x with diaeresis\r
-dkDiaeresis.item("X") := "Ẍ"  ; (u+1e8c) X with diaeresis\r
-dkDiaeresis.item("y") := "ÿ"  ; (u+00ff) y with diaeresis\r
-dkDiaeresis.item("Y") := "Ÿ"  ; (u+0178) Y with diaeresis\r
-dkDiaeresis.item("""") := "¨" ; (u+00a8) diaeresis\r
-dkDiaeresis.item(" ") := "¨"  ; (u+00a8) diaeresis\r
-\r
-\r
-; Dead Key :  Grave Accent\r
-\r
-dkGraveAccent := ComObjCreate("Scripting.Dictionary")\r
-dkGraveAccent.item("a") := "à"  ; (u+00e0) a with grave\r
-dkGraveAccent.item("A") := "À"  ; (u+00c0) A with grave\r
-dkGraveAccent.item("e") := "è"  ; (u+00e8) e with grave\r
-dkGraveAccent.item("E") := "È"  ; (u+00c8) E with grave\r
-dkGraveAccent.item("i") := "ì"  ; (u+00ec) i with grave\r
-dkGraveAccent.item("I") := "Ì"  ; (u+00cc) I with grave\r
-dkGraveAccent.item("n") := "ǹ"  ; (u+01f9) n with grave\r
-dkGraveAccent.item("N") := "Ǹ"  ; (u+01f8) N with grave\r
-dkGraveAccent.item("o") := "ò"  ; (u+00f2) o with grave\r
-dkGraveAccent.item("O") := "Ò"  ; (u+00d2) O with grave\r
-dkGraveAccent.item("u") := "ù"  ; (u+00f9) u with grave\r
-dkGraveAccent.item("U") := "Ù"  ; (u+00d9) U with grave\r
-dkGraveAccent.item("w") := "ẁ"  ; (u+1e81) w with grave\r
-dkGraveAccent.item("W") := "Ẁ"  ; (u+1e80) W with grave\r
-dkGraveAccent.item("y") := "ỳ"  ; (u+1ef3) y with grave\r
-dkGraveAccent.item("Y") := "Ỳ"  ; (u+1ef2) Y with grave\r
-dkGraveAccent.item("ä") := "₳"  ; (u+20b3) Argentine austral\r
-dkGraveAccent.item("Ä") := "₳"  ; (u+20b3) Argentine austral\r
-dkGraveAccent.item("b") := "₿"  ; (u+20bf) bitcoin\r
-dkGraveAccent.item("B") := "₿"  ; (u+20bf) bitcoin\r
-dkGraveAccent.item("c") := "₡"  ; (u+20a1) Costa Rican colón\r
-dkGraveAccent.item("C") := "₵"  ; (u+20b5) Ghanaian cedi\r
-dkGraveAccent.item("ç") := "₢"  ; (u+20a2) Brazilian cruzeiro\r
-dkGraveAccent.item("Ç") := "₢"  ; (u+20a2) Brazilian cruzeiro\r
-dkGraveAccent.item("d") := "₫"  ; (u+20ab) Vietnamese dong\r
-dkGraveAccent.item("D") := "₯"  ; (u+20af) Greek drachma\r
-dkGraveAccent.item("f") := "₣"  ; (u+20a3) French franc\r
-dkGraveAccent.item("F") := "₣"  ; (u+20a3) French franc\r
-dkGraveAccent.item("g") := "₲"  ; (u+20b2) Paraguayan guaraní\r
-dkGraveAccent.item("G") := "₲"  ; (u+20b2) Paraguayan guaraní\r
-dkGraveAccent.item("h") := "₴"  ; (u+20b4) Ukrainian hryvnia\r
-dkGraveAccent.item("H") := "₴"  ; (u+20b4) Ukrainian hryvnia\r
-dkGraveAccent.item("k") := "₭"  ; (u+20ad) Laotian kip\r
-dkGraveAccent.item("K") := "₭"  ; (u+20ad) Laotian kip\r
-dkGraveAccent.item("l") := "₺"  ; (u+20ba) Turkish lira\r
-dkGraveAccent.item("L") := "₾"  ; (u+20be) Georgian lari\r
-dkGraveAccent.item("ø") := "₤"  ; (u+20a4) lira\r
-dkGraveAccent.item("Ø") := "₶"  ; (u+20b6) livre tournois\r
-dkGraveAccent.item("m") := "₼"  ; (u+20bc) Azerbaijani manat\r
-dkGraveAccent.item("M") := "₥"  ; (u+20a5) mill sign\r
-dkGraveAccent.item("ñ") := "₦"  ; (u+20a6) Nigerian naira\r
-dkGraveAccent.item("Ñ") := "₦"  ; (u+20a6) Nigerian naira\r
-dkGraveAccent.item("p") := "₱"  ; (u+20b1) Philippine peso\r
-dkGraveAccent.item("P") := "₱"  ; (u+20b1) Philippine peso\r
-dkGraveAccent.item("r") := "₹"  ; (u+20b9) Indian rupee\r
-dkGraveAccent.item("R") := "₽"  ; (u+20bd) Russian ruble\r
-dkGraveAccent.item("s") := "₪"  ; (u+20aa) Israeli new shekel\r
-dkGraveAccent.item("S") := "₷"  ; (u+20b7) spesmilo\r
-dkGraveAccent.item("t") := "₮"  ; (u+20ae) Mongolian tögrög (tugrik)\r
-dkGraveAccent.item("T") := "₸"  ; (u+20b8) Kazakh tenge\r
-dkGraveAccent.item("å") := "₩"  ; (u+20a9) South Korean won\r
-dkGraveAccent.item("Å") := "₩"  ; (u+20a9) South Korean won\r
-dkGraveAccent.item("1") := " "  ; (u+2002) en space\r
-dkGraveAccent.item("2") := " "  ; (u+2003) em space\r
-dkGraveAccent.item("3") := " "  ; (u+2004) three-per-em space\r
-dkGraveAccent.item("4") := " "  ; (u+2005) four-per-em space\r
-dkGraveAccent.item("5") := " "  ; (u+2008) punctuation space\r
-dkGraveAccent.item("6") := " "  ; (u+2006) six-per-em space\r
-dkGraveAccent.item("7") := " "  ; (u+2009) thin space\r
-dkGraveAccent.item("8") := " "  ; (u+200a) hair space\r
-dkGraveAccent.item("9") := " "  ; (u+2007) figure space\r
-dkGraveAccent.item("0") := "​"   ; (u+200b) zero-width space\r
-dkGraveAccent.item("-") := " "  ; (u+00a0) non-breaking space\r
-dkGraveAccent.item("=") := " "  ; (u+202f) narrow no-break space\r
-dkGraveAccent.item("!") := " "  ; (u+2000) en quad\r
-dkGraveAccent.item("@") := " "  ; (u+2001) em quad\r
-dkGraveAccent.item("``") := "``"  ; (u+0060) grave accent\r
-dkGraveAccent.item(" ") := "``"   ; (u+0060) grave accent\r
-\r
-\r
-; Dead Key :  Tilde\r
-\r
-dkTilde := ComObjCreate("Scripting.Dictionary")\r
-dkTilde.item("a") := "ã"  ; (u+00e3) a with tilde\r
-dkTilde.item("A") := "Ã"  ; (u+00c3) A with tilde\r
-dkTilde.item("e") := "ẽ"  ; (u+1ebd) e with tilde\r
-dkTilde.item("E") := "Ẽ"  ; (u+1ebc) E with tilde\r
-dkTilde.item("i") := "ĩ"  ; (u+0129) i with tilde\r
-dkTilde.item("I") := "Ĩ"  ; (u+0128) I with tilde\r
-dkTilde.item("n") := "ñ"  ; (u+00f1) n with tilde\r
-dkTilde.item("N") := "Ñ"  ; (u+00d1) N with tilde\r
-dkTilde.item("o") := "õ"  ; (u+00f5) o with tilde\r
-dkTilde.item("O") := "Õ"  ; (u+00d5) O with tilde\r
-dkTilde.item("u") := "ũ"  ; (u+0169) u with tilde\r
-dkTilde.item("U") := "Ũ"  ; (u+0168) U with tilde\r
-dkTilde.item("v") := "ṽ"  ; (u+1e7d) v with tilde\r
-dkTilde.item("V") := "Ṽ"  ; (u+1e7c) V with tilde\r
-dkTilde.item("y") := "ỹ"  ; (u+1ef9) y with tilde\r
-dkTilde.item("Y") := "Ỹ"  ; (u+1ef8) Y with tilde\r
-dkTilde.item("~") := "~"  ; (u+007e) tilde\r
-dkTilde.item(" ") := "~"  ; (u+007e) tilde\r
-\r
-\r
-; Dead Key :  Not Sign\r
-\r
-dkNotSign := ComObjCreate("Scripting.Dictionary")\r
-dkNotSign.item("a") := "ª"  ; (u+00aa) feminine ordinal indicator (Spanish, Portuguese, Italian, Galician)\r
-dkNotSign.item("A") := "ª"  ; (u+00aa) feminine ordinal indicator (Spanish, Portuguese, Italian, Galician)\r
-dkNotSign.item("ä") := "⅍"  ; (u+214d) aktieselskab\r
-dkNotSign.item("Ä") := "⅍"  ; (u+214d) aktieselskab\r
-dkNotSign.item("b") := "☐"  ; (u+2610) ballot box\r
-dkNotSign.item("B") := "☒"  ; (u+2612) ballot box with x\r
-dkNotSign.item("c") := "©"  ; (u+00a9) copyright sign\r
-dkNotSign.item("C") := "¤"  ; (u+00a4) currency sign\r
-dkNotSign.item("ç") := "℅"  ; (u+2105) care of\r
-dkNotSign.item("Ç") := "℅"  ; (u+2105) care of\r
-dkNotSign.item("d") := "†"  ; (u+2020) dagger\r
-dkNotSign.item("D") := "‡"  ; (u+2021) double dagger\r
-dkNotSign.item("e") := "…"  ; (u+2026) horizontal ellipsis\r
-dkNotSign.item("E") := "℮"  ; (u+212e) estimated symbol\r
-dkNotSign.item("f") := "♀"  ; (u+2640) Venus symbol (female)\r
-dkNotSign.item("F") := "♀"  ; (u+2640) Venus symbol (female)\r
-dkNotSign.item("h") := "♡"  ; (u+2661) white heart suit\r
-dkNotSign.item("H") := "♥"  ; (u+2665) black heart suit\r
-dkNotSign.item("l") := "ℓ"  ; (u+2113) script small l\r
-dkNotSign.item("L") := "ℓ"  ; (u+2113) script small l\r
-dkNotSign.item("m") := "♂"  ; (u+2642) Mars symbol (male)\r
-dkNotSign.item("M") := "♂"  ; (u+2642) Mars symbol (male)\r
-dkNotSign.item("n") := "¬"  ; (u+00ac) not sign\r
-dkNotSign.item("N") := "¬"  ; (u+00ac) not sign\r
-dkNotSign.item("o") := "º"  ; (u+00ba) masculine ordinal indicator (Spanish, Portuguese, Italian, Galician)\r
-dkNotSign.item("O") := "º"  ; (u+00ba) masculine ordinal indicator (Spanish, Portuguese, Italian, Galician)\r
-dkNotSign.item("ö") := "Ω"  ; (u+2126) ohm sign (backwards compatibility)\r
-dkNotSign.item("Ö") := "Ω"  ; (u+2126) ohm sign (backwards compatibility)\r
-dkNotSign.item("p") := "¶"  ; (u+00b6) pilcrow sign\r
-dkNotSign.item("P") := "℗"  ; (u+2117) sound recording copyright\r
-dkNotSign.item("r") := "®"  ; (u+00ae) registered sign\r
-dkNotSign.item("R") := "®"  ; (u+00ae) registered sign\r
-dkNotSign.item("s") := "§"  ; (u+00a7) section sign\r
-dkNotSign.item("S") := "℠"  ; (u+2120) service mark\r
-dkNotSign.item("t") := "™"  ; (u+2122) trademark symbol\r
-dkNotSign.item("T") := "™"  ; (u+2122) trademark symbol\r
-dkNotSign.item("v") := "✓"  ; (u+2713) check mark\r
-dkNotSign.item("V") := "✔"  ; (u+2714) heavy check mark\r
-dkNotSign.item("w") := "☑"  ; (u+2611) ballot box with check\r
-dkNotSign.item("W") := "☙"  ; (u+2619) reversed rotated floral heart bullet\r
-dkNotSign.item("x") := "✗"  ; (u+2717) ballot x\r
-dkNotSign.item("X") := "✘"  ; (u+2718) heavy ballot x\r
-dkNotSign.item("y") := "☺"  ; (u+263a) white smiling face\r
-dkNotSign.item("Y") := "☻"  ; (u+263b) black smiling face\r
-dkNotSign.item("1") := "←"  ; (u+2190) leftwards arrow\r
-dkNotSign.item("2") := "↓"  ; (u+2193) downwards arrow\r
-dkNotSign.item("3") := "↑"  ; (u+2191) upwards arrow\r
-dkNotSign.item("4") := "→"  ; (u+2192) rightwards arrow\r
-dkNotSign.item("5") := "↖"  ; (u+2196) north west arrow\r
-dkNotSign.item("6") := "↙"  ; (u+2199) south west arrow\r
-dkNotSign.item("7") := "↗"  ; (u+2197) north east arrow\r
-dkNotSign.item("8") := "↘"  ; (u+2198) south east arrow\r
-dkNotSign.item("9") := "↕"  ; (u+2195) up down arrow\r
-dkNotSign.item("0") := "↨"  ; (u+21a8) up down arrow with base\r
-dkNotSign.item("=") := "↔"  ; (u+2194) left right arrow\r
-dkNotSign.item("!") := "⇐"  ; (u+21d0) leftwards double arrow\r
-dkNotSign.item("@") := "⇓"  ; (u+21d3) downwards double arrow\r
-dkNotSign.item("#") := "⇑"  ; (u+21d1) upwards double arrow\r
-dkNotSign.item("$") := "⇒"  ; (u+21d2) rightwards double arrow\r
-dkNotSign.item("%") := "⇖"  ; (u+21d6) north west double arrow\r
-dkNotSign.item("^") := "⇙"  ; (u+21d9) south west double arrow\r
-dkNotSign.item("&") := "⇗"  ; (u+21d7) north east double arrow\r
-dkNotSign.item("*") := "⇘"  ; (u+21d8) south east double arrow\r
-dkNotSign.item("(") := "⇕"  ; (u+21d5) up down double arrow\r
-dkNotSign.item(")") := "↲"  ; (u+21b2) downwards arrow with tip leftwards\r
-dkNotSign.item("+") := "⇔"  ; (u+21d4) left right double arrow\r
-dkNotSign.item(".") := "•"  ; (u+2022) bullet\r
-dkNotSign.item("-") := "⁃"  ; (u+2043) hyphen bullet\r
-dkNotSign.item("/") := "‼"  ; (u+203c) double exclamation mark\r
-dkNotSign.item("?") := "‽"  ; (u+203a) interrobang\r
-dkNotSign.item("¿") := "⸘"  ; (u+2e18) inverted interrobang\r
-dkNotSign.item("¶") := "⸮"  ; (u+2e2e) reversed question mark\r
-dkNotSign.item("\") := "⁞"  ; (u+205e) vertical four dots\r
-dkNotSign.item("|") := "⁞"  ; (u+205e) vertical four dots\r
-dkNotSign.item(" ") := "¬"  ; (u+00ac) not sign\r
-\r
-\r
-; Dead Key :  Broken Bar\r
-\r
-dkBrokenBar := ComObjCreate("Scripting.Dictionary")\r
-dkBrokenBar.item("a") := "ɑ"  ; (u+0251) latin small letter alpha\r
-dkBrokenBar.item("A") := "Ɑ"  ; (u+2c6d) latin capital letter alpha\r
-dkBrokenBar.item("ä") := "ɒ"  ; (u+0252) latin small letter turned alpha\r
-dkBrokenBar.item("Ä") := "Ɒ"  ; (u+2c70) latin capital letter turned alpha\r
-dkBrokenBar.item("c") := "ƈ"  ; (u+0188) c with hook\r
-dkBrokenBar.item("C") := "Ƈ"  ; (u+0187) C with hook\r
-dkBrokenBar.item("e") := "ɛ"  ; (u+025b) small open e (latin small epsilon)\r
-dkBrokenBar.item("E") := "Ɛ"  ; (u+0190) capital open E (latin capital epsilon)\r
-dkBrokenBar.item("f") := "❦"  ; (u+2766) floral heart\r
-dkBrokenBar.item("F") := "❧"  ; (u+2767) rotated floral heart bullet\r
-dkBrokenBar.item("g") := "ɠ"  ; (u+0260) g with hook\r
-dkBrokenBar.item("G") := "Ɠ"  ; (u+0193) G with hook\r
-dkBrokenBar.item("h") := "ꜧ"  ; (u+a727) small letter heng\r
-dkBrokenBar.item("H") := "Ꜧ"  ; (u+a726) capital letter heng\r
-dkBrokenBar.item("ù") := "ɧ"  ; (u+0267) small letter heng with hook\r
-dkBrokenBar.item("k") := "ḱ"  ; (u+1e31) k with acute\r
-dkBrokenBar.item("K") := "Ḱ"  ; (u+1e30) K with acute\r
-dkBrokenBar.item("m") := "ɱ"  ; (u+0271) m with hook\r
-dkBrokenBar.item("M") := "Ɱ"  ; (u+2c6e) M with hook\r
-dkBrokenBar.item("n") := "ɲ"  ; (u+0272) n with left hook\r
-dkBrokenBar.item("N") := "Ɲ"  ; (u+019d) N with left hook\r
-dkBrokenBar.item("o") := "ơ"  ; (u+01a1) o with horn\r
-dkBrokenBar.item("O") := "Ơ"  ; (u+01a0) O with horn\r
-dkBrokenBar.item("p") := "ṕ"  ; (u+1e55) p with acute\r
-dkBrokenBar.item("P") := "Ṕ"  ; (u+1e54) P with acute\r
-dkBrokenBar.item("r") := "ɽ"  ; (u+027d) r with tail\r
-dkBrokenBar.item("R") := "Ɽ"  ; (u+2c64) R with tail\r
-dkBrokenBar.item("s") := "ʃ"  ; (u+0283) small letter esh\r
-dkBrokenBar.item("S") := "Ʃ"  ; (u+01a9) capital letter esh\r
-dkBrokenBar.item("ß") := "ſ"  ; (u+017f) small long s\r
-dkBrokenBar.item("u") := "ư"  ; (u+01b0) u with horn\r
-dkBrokenBar.item("U") := "Ư"  ; (u+01af) U with horn\r
-dkBrokenBar.item("v") := "ʌ"  ; (u+028c) latin small letter turned v\r
-dkBrokenBar.item("V") := "Ʌ"  ; (u+0245) latin capital letter turned V\r
-dkBrokenBar.item("w") := "ⱳ"  ; (u+2c73) w with hook\r
-dkBrokenBar.item("W") := "Ⱳ"  ; (u+2c72) W with hook\r
-dkBrokenBar.item("y") := "ƴ"  ; (u+01b4) y with hook\r
-dkBrokenBar.item("Y") := "Ƴ"  ; (u+01b3) Y with hook\r
-dkBrokenBar.item("z") := "ȥ"  ; (u+0225) z with hook\r
-dkBrokenBar.item("Z") := "Ȥ"  ; (u+0224) Z with hook\r
-dkBrokenBar.item("1") := "№"  ; (u+2116) numero sign\r
-dkBrokenBar.item("2") := "½"  ; (u+00bd) vulgar fraction 1/2\r
-dkBrokenBar.item("3") := "⅓"  ; (u+2153) vulgar fraction 1/3\r
-dkBrokenBar.item("4") := "¼"  ; (u+00bc) vulgar fraction 1/4\r
-dkBrokenBar.item("5") := "⅔"  ; (u+2154) vulgar fraction 2/3\r
-dkBrokenBar.item("6") := "¾"  ; (u+00be) vulgar fraction 3/4\r
-dkBrokenBar.item("7") := "⅛"  ; (u+215b) vulgar fraction 1/8\r
-dkBrokenBar.item("8") := "⅜"  ; (u+215c) vulgar fraction 3/8\r
-dkBrokenBar.item("9") := "⅝"  ; (u+215d) vulgar fraction 5/8\r
-dkBrokenBar.item("0") := "⅞"  ; (u+215e) vulgar fraction 7/8\r
-dkBrokenBar.item("\") := "¦"  ; (u+00a6) broken bar\r
-dkBrokenBar.item("|") := "¦"  ; (u+00a6) broken bar\r
-dkBrokenBar.item(" ") := "¦"  ; (u+00a6) broken bar\r
-\r
-\r
-; Dead Key :  Greek Alphabet\r
-\r
-dkGreekAlphabet := ComObjCreate("Scripting.Dictionary")\r
-dkGreekAlphabet.item("a") := "α"  ; (u+03b1) small alpha\r
-dkGreekAlphabet.item("A") := "Α"  ; (u+0391) capital alpha\r
-dkGreekAlphabet.item("b") := "β"  ; (u+03b2) small beta\r
-dkGreekAlphabet.item("B") := "Β"  ; (u+0392) capital beta\r
-dkGreekAlphabet.item("v") := "β"  ; (u+03b2) small beta\r
-dkGreekAlphabet.item("V") := "Β"  ; (u+0392) capital beta\r
-dkGreekAlphabet.item("g") := "γ"  ; (u+03b3) small gamma\r
-dkGreekAlphabet.item("G") := "Γ"  ; (u+0393) capital gamma\r
-dkGreekAlphabet.item("d") := "δ"  ; (u+03b4) small delta\r
-dkGreekAlphabet.item("D") := "Δ"  ; (u+0394) capital delta\r
-dkGreekAlphabet.item("e") := "ε"  ; (u+03b5) small epsilon\r
-dkGreekAlphabet.item("E") := "Ε"  ; (u+0395) capital epsilon\r
-dkGreekAlphabet.item("z") := "ζ"  ; (u+03b6) small zeta\r
-dkGreekAlphabet.item("Z") := "Ζ"  ; (u+0396) capital zeta\r
-dkGreekAlphabet.item("h") := "η"  ; (u+03b7) small eta\r
-dkGreekAlphabet.item("H") := "Η"  ; (u+0397) capital eta\r
-dkGreekAlphabet.item("j") := "θ"  ; (u+03b8) small theta\r
-dkGreekAlphabet.item("J") := "Θ"  ; (u+0398) capital theta\r
-dkGreekAlphabet.item("i") := "ι"  ; (u+03b9) small iota\r
-dkGreekAlphabet.item("I") := "Ι"  ; (u+0399) capital iota\r
-dkGreekAlphabet.item("k") := "κ"  ; (u+03ba) small kappa\r
-dkGreekAlphabet.item("K") := "Κ"  ; (u+039a) capital kappa\r
-dkGreekAlphabet.item("l") := "λ"  ; (u+03bb) small lambda\r
-dkGreekAlphabet.item("L") := "Λ"  ; (u+039b) capital lambda\r
-dkGreekAlphabet.item("m") := "μ"  ; (u+03bc) small mu\r
-dkGreekAlphabet.item("M") := "Μ"  ; (u+039c) capital mu\r
-dkGreekAlphabet.item("n") := "ν"  ; (u+03bd) small nu\r
-dkGreekAlphabet.item("N") := "Ν"  ; (u+039d) capital nu\r
-dkGreekAlphabet.item("x") := "ξ"  ; (u+03be) small xi\r
-dkGreekAlphabet.item("X") := "Ξ"  ; (u+039e) capital xi\r
-dkGreekAlphabet.item("o") := "ο"  ; (u+03bf) small omicron\r
-dkGreekAlphabet.item("O") := "Ο"  ; (u+039f) capital omicron\r
-dkGreekAlphabet.item("p") := "π"  ; (u+03c0) small pi\r
-dkGreekAlphabet.item("P") := "Π"  ; (u+03a0) capital pi\r
-dkGreekAlphabet.item("r") := "ρ"  ; (u+03c1) small rho\r
-dkGreekAlphabet.item("R") := "Ρ"  ; (u+03a1) capital rho\r
-dkGreekAlphabet.item("s") := "σ"  ; (u+03c3) small sigma\r
-dkGreekAlphabet.item("S") := "Σ"  ; (u+03a3) capital sigma\r
-dkGreekAlphabet.item(",") := "ς"  ; (u+03c2) small sigma, in word-final position\r
-dkGreekAlphabet.item("ß") := "ς"  ; (u+03c2) small sigma, in word-final position\r
-dkGreekAlphabet.item("t") := "τ"  ; (u+03c4) small tau\r
-dkGreekAlphabet.item("T") := "Τ"  ; (u+03a4) capital tau\r
-dkGreekAlphabet.item("u") := "υ"  ; (u+03c5) small upsilon\r
-dkGreekAlphabet.item("U") := "Υ"  ; (u+03a5) capital upsilon\r
-dkGreekAlphabet.item("y") := "υ"  ; (u+03c5) small upsilon\r
-dkGreekAlphabet.item("Y") := "Υ"  ; (u+03a5) capital upsilon\r
-dkGreekAlphabet.item("f") := "φ"  ; (u+03c6) small phi\r
-dkGreekAlphabet.item("F") := "Φ"  ; (u+03a6) capital phi\r
-dkGreekAlphabet.item("c") := "χ"  ; (u+03c7) small chi\r
-dkGreekAlphabet.item("C") := "Χ"  ; (u+03a7) capital chi\r
-dkGreekAlphabet.item("w") := "ψ"  ; (u+03c8) small psi\r
-dkGreekAlphabet.item("W") := "Ψ"  ; (u+03a8) capital psi\r
-dkGreekAlphabet.item("q") := "ω"  ; (u+03c9) small omega\r
-dkGreekAlphabet.item("Q") := "Ω"  ; (u+03a9) capital omega\r
-dkGreekAlphabet.item("1") := "¹"  ; (u+00b9) superscript 1\r
-dkGreekAlphabet.item("2") := "²"  ; (u+00b2) superscript 2\r
-dkGreekAlphabet.item("3") := "³"  ; (u+00b3) superscript 3\r
-dkGreekAlphabet.item("4") := "⁴"  ; (u+2074) superscript 4\r
-dkGreekAlphabet.item("5") := "⁵"  ; (u+2075) superscript 5\r
-dkGreekAlphabet.item("6") := "⁶"  ; (u+2076) superscript 6\r
-dkGreekAlphabet.item("7") := "⁷"  ; (u+2077) superscript 7\r
-dkGreekAlphabet.item("8") := "⁸"  ; (u+2078) superscript 8\r
-dkGreekAlphabet.item("9") := "⁹"  ; (u+2079) superscript 9\r
-dkGreekAlphabet.item("0") := "⁰"  ; (u+2070) superscript 0\r
-dkGreekAlphabet.item("-") := "⁻"  ; (u+207b) superscript -\r
-dkGreekAlphabet.item("=") := "⁼"  ; (u+207c) superscript =\r
-dkGreekAlphabet.item("+") := "⁺"  ; (u+207a) superscript +\r
-dkGreekAlphabet.item("[") := "⁽"  ; (u+207d) superscript (\r
-dkGreekAlphabet.item("]") := "⁾"  ; (u+207e) superscript )\r
-dkGreekAlphabet.item("!") := "₁"  ; (u+2081) subscript 1\r
-dkGreekAlphabet.item("@") := "₂"  ; (u+2082) subscript 2\r
-dkGreekAlphabet.item("#") := "₃"  ; (u+2083) subscript 3\r
-dkGreekAlphabet.item("$") := "₄"  ; (u+2084) subscript 4\r
-dkGreekAlphabet.item("%") := "₅"  ; (u+2085) subscript 5\r
-dkGreekAlphabet.item("^") := "₆"  ; (u+2086) subscript 6\r
-dkGreekAlphabet.item("&") := "₇"  ; (u+2087) subscript 7\r
-dkGreekAlphabet.item("*") := "₈"  ; (u+2088) subscript 8\r
-dkGreekAlphabet.item("(") := "₉"  ; (u+2089) subscript 9\r
-dkGreekAlphabet.item(")") := "₀"  ; (u+2080) subscript 0\r
-dkGreekAlphabet.item(";") := "₋"  ; (u+208b) subscript -\r
-dkGreekAlphabet.item("'") := "₌"  ; (u+208c) subscript =\r
-dkGreekAlphabet.item("""") := "₊" ; (u+208a) subscript +\r
-dkGreekAlphabet.item("{") := "₍"  ; (u+208d) subscript (\r
-dkGreekAlphabet.item("}") := "₎"  ; (u+208e) subscript )\r
-dkGreekAlphabet.item(".") := "µ"  ; (u+00b5) micro sign\r
-dkGreekAlphabet.item(" ") := "μ"  ; (u+03bc) small mu\r
-\r
-\r
-; Dead Key :  Math Symbols\r
-\r
-dkMathSymbols := ComObjCreate("Scripting.Dictionary")\r
-dkMathSymbols.item("a") := "∀"  ; (u+2200) for all\r
-dkMathSymbols.item("A") := "∀"  ; (u+2200) for all\r
-dkMathSymbols.item("b") := "⊆"  ; (u+2286) subset of or equal to\r
-dkMathSymbols.item("B") := "⊇"  ; (u+2287) superset of or equal to\r
-dkMathSymbols.item("c") := "∝"  ; (u+221d) proportional to\r
-dkMathSymbols.item("C") := "ℂ"  ; (u+2102) complex numbers\r
-dkMathSymbols.item("d") := "∆"  ; (u+2206) increment operator\r
-dkMathSymbols.item("D") := "∇"  ; (u+2207) nable/del operator\r
-dkMathSymbols.item("e") := "∃"  ; (u+2203) there exists\r
-dkMathSymbols.item("E") := "∄"  ; (u+2204) there does not exist\r
-dkMathSymbols.item("f") := "ƒ"  ; (u+0192) f with hook\r
-dkMathSymbols.item("F") := "∎"  ; (u+220e) end of proof\r
-dkMathSymbols.item("g") := "⊂"  ; (u+2282) subset of\r
-dkMathSymbols.item("G") := "⊄"  ; (u+2284) not a subset of\r
-dkMathSymbols.item("h") := "⊃"  ; (u+2283) superset of\r
-dkMathSymbols.item("H") := "⊅"  ; (u+2285) not a superset of\r
-dkMathSymbols.item("i") := "∞"  ; (u+221e) infinity symbol\r
-dkMathSymbols.item("I") := "∞"  ; (u+221e) infinity symbol\r
-dkMathSymbols.item("k") := "∋"  ; (u+220b) contains as member\r
-dkMathSymbols.item("K") := "∌"  ; (u+220c) does not contain as member\r
-dkMathSymbols.item("l") := "∥"  ; (u+2225) parallel to\r
-dkMathSymbols.item("L") := "∦"  ; (u+2226) not parallel to\r
-dkMathSymbols.item("m") := "∈"  ; (u+2208) element of\r
-dkMathSymbols.item("M") := "∉"  ; (u+2209) not an element of\r
-dkMathSymbols.item("n") := "ⁿ"  ; (u+207f) superscript n\r
-dkMathSymbols.item("N") := "ℕ"  ; (u+2115) natural numbers\r
-dkMathSymbols.item("o") := "∘"  ; (u+2218) ring operator\r
-dkMathSymbols.item("O") := "∅"  ; (u+2205) empty set\r
-dkMathSymbols.item("p") := "∂"  ; (u+2202) partial differential\r
-dkMathSymbols.item("P") := "ℙ"  ; (u+2119) prime numbers\r
-dkMathSymbols.item("q") := "ℚ"  ; (u+211a) rational numbers\r
-dkMathSymbols.item("Q") := "ℚ"  ; (u+211a) rational numbers\r
-dkMathSymbols.item("r") := "√"  ; (u+221a) square root\r
-dkMathSymbols.item("R") := "ℝ"  ; (u+211d) real numbers\r
-dkMathSymbols.item("s") := "∩"  ; (u+2229) set intersection\r
-dkMathSymbols.item("S") := "∫"  ; (u+222b) integral symbol\r
-dkMathSymbols.item("u") := "∪"  ; (u+222a) set union\r
-dkMathSymbols.item("U") := "∖"  ; (u+2216) set minus\r
-dkMathSymbols.item("w") := "℘"  ; (u+2118) Weierstrass elliptic function\r
-dkMathSymbols.item("W") := "℘"  ; (u+2118) Weierstrass elliptic function\r
-dkMathSymbols.item("z") := "↯"  ; (u+21af) downwards zigzag arrow\r
-dkMathSymbols.item("Z") := "ℤ"  ; (u+2124) whole numbers\r
-dkMathSymbols.item("1") := "≠"  ; (u+2260) not equal to\r
-dkMathSymbols.item("!") := "≠"  ; (u+2260) not equal to\r
-dkMathSymbols.item("2") := "√"  ; (u+221a) square root\r
-dkMathSymbols.item("3") := "∛"  ; (u+221b) cube root\r
-dkMathSymbols.item("4") := "∜"  ; (u+221c) fourth root\r
-dkMathSymbols.item("5") := "‰"  ; (u+2030) per mille sign\r
-dkMathSymbols.item("%") := "‱" ; (u+2031) per ten thousand sign\r
-dkMathSymbols.item("6") := "∠"  ; (u+2220) angle symbol\r
-dkMathSymbols.item("7") := "∧"  ; (u+2227) logical and\r
-dkMathSymbols.item("&") := "∧"  ; (u+2227) logical and\r
-dkMathSymbols.item("8") := "⊗"  ; (u+2297) tensor product\r
-dkMathSymbols.item("*") := "⊗"  ; (u+2297) tensor product\r
-dkMathSymbols.item("9") := "∟"  ; (u+221f) right angle\r
-dkMathSymbols.item("0") := "∡"  ; (u+2221) measured angle\r
-dkMathSymbols.item("``") := "≈" ; (u+2248) almost equal to\r
-dkMathSymbols.item("~") := "≈"  ; (u+2248) almost equal to\r
-dkMathSymbols.item(",") := "≤"  ; (u+2264) less-than or equal to\r
-dkMathSymbols.item("<") := "≤"  ; (u+2264) less-than or equal to\r
-dkMathSymbols.item(".") := "≥"  ; (u+2265) greater-than or equal to\r
-dkMathSymbols.item(">") := "≥"  ; (u+2265) greater-than or equal to\r
-dkMathSymbols.item("-") := "±"  ; (u+00b1) plus-minus sign\r
-dkMathSymbols.item("_") := "⊖"  ; (u+2296) circled minus\r
-dkMathSymbols.item("=") := "≝"  ; (u+225d) equal to by definition\r
-dkMathSymbols.item("+") := "⊕"  ; (u+2295) exclusive or\r
-dkMathSymbols.item(";") := "∵"  ; (u+2235) because sign\r
-dkMathSymbols.item(":") := "∴"  ; (u+2234) therefore sign\r
-dkMathSymbols.item("'") := "′"  ; (u+2032) prime\r
-dkMathSymbols.item("""") := "″" ; (u+2033) double prime\r
-dkMathSymbols.item("/") := "‴"  ; (u+2034) triple prime\r
-dkMathSymbols.item("?") := "⁗"  ; (u+2057) quadruple prime\r
-dkMathSymbols.item("\") := "∨"  ; (u+2228) logical or\r
-dkMathSymbols.item("|") := "∨"  ; (u+2228) logical or\r
-dkMathSymbols.item(" ") := "√"  ; (u+221a) square root\r
-\r
-\r
-; Configuration :  Right Alt on US QWERTY\r
-\r
->!a::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ä  ; (u+00c4) A with diaeresis\r
-  else\r
-    Send ä  ; (u+00e4) a with diaeresis\r
-return\r
->!+a::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ä  ; (u+00e4) a with diaeresis\r
-  else\r
-    Send Ä  ; (u+00c4) A with diaeresis\r
-return\r
-\r
->!z::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send À  ; (u+00c0) A with grave\r
-  else\r
-    Send à  ; (u+00e0) a with grave\r
-return\r
->!+z::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send à  ; (u+00e0) a with grave\r
-  else\r
-    Send À  ; (u+00c0) A with grave\r
-return\r
-\r
->!x::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Á  ; (u+00c1) A with acute\r
-  else\r
-    Send á  ; (u+00e1) a with acute\r
-return\r
->!+x::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send á  ; (u+00e1) a with acute\r
-  else\r
-    Send Á  ; (u+00c1) A with acute\r
-return\r
-\r
->!q::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Æ  ; (u+00c6) letter AE\r
-  else\r
-    Send æ  ; (u+00e6) letter ae\r
-return\r
->!+q::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send æ  ; (u+00e6) letter ae\r
-  else\r
-    Send Æ  ; (u+00c6) letter AE\r
-return\r
-\r
->!w::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Å  ; (u+00c5) A with ring above\r
-  else\r
-    Send å  ; (u+00e5) a with ring above\r
-return\r
->!+w::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send å  ; (u+00e5)a with ring above\r
-  else\r
-    Send Å  ; (u+00c5) A with ring above\r
-return\r
-\r
->!c::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ç  ; (u+00c7) C with cedilla\r
-  else\r
-    Send ç  ; (u+00e7) c with cedilla\r
-return\r
->!+c::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ç  ; (u+00e7) c with cedilla\r
-  else\r
-    Send Ç  ; (u+00c7) C with cedilla\r
-return\r
-\r
->!d::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ð  ; (u+00d0) capital letter eth\r
-  else\r
-    Send ð  ; (u+00f0) small letter eth\r
-return\r
->!+d::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ð  ; (u+00f0) small letter eth\r
-  else\r
-    Send Ð  ; (u+00d0) capital letter eth\r
-return\r
-\r
->!e::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ë  ; (u+00cb) E with diaeresis\r
-  else\r
-    Send ë  ; (u+00eb) e with diaeresis\r
-return\r
->!+e::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ë  ; (u+00eb) e with diaeresis\r
-  else\r
-    Send Ë  ; (u+00cb) E with diaeresis\r
-return\r
-\r
->!f::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send È  ; (u+00c8) E with grave\r
-  else\r
-    Send è  ; (u+00e8) e with grave\r
-return\r
->!+f::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send è  ; (u+00e8) e with grave\r
-  else\r
-    Send È  ; (u+00c8) E with grave\r
-return\r
-\r
->!g::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send É  ; (u+00c9) E with acute\r
-  else\r
-    Send é  ; (u+00e9) e with acute\r
-return\r
->!+g::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send é  ; (u+00e9) e with acute\r
-  else\r
-    Send É  ; (u+00c9) E with acute\r
-return\r
-\r
->!i::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ï  ; (u+00cf) I with diaeresis\r
-  else\r
-    Send ï  ; (u+00ef) i with diaeresis\r
-return\r
->!+i::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ï  ; (u+00ef) i with diaeresis\r
-  else\r
-    Send Ï  ; (u+00cf) I with diaeresis\r
-return\r
-\r
->!v::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ì  ; (u+00cc) I with grave\r
-  else\r
-    Send ì  ; (u+00ec) i with grave\r
-return\r
->!+v::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ì  ; (u+00ec) i with grave\r
-  else\r
-    Send Ì  ; (u+00cc) I with grave\r
-return\r
-\r
->!b::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Í  ; (u+00cd) I with acute\r
-  else\r
-    Send í  ; (u+00ed) i with acute\r
-return\r
->!+b::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send í  ; (u+00ed) i with acute\r
-  else\r
-    Send Í  ; (u+00cd) I with acute\r
-return\r
-\r
->!o::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ö  ; (u+00d6) O with diaeresis\r
-  else\r
-    Send ö  ; (u+00f6) o with diaeresis\r
-return\r
->!+o::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ö  ; (u+00f6) o with diaeresis\r
-  else\r
-    Send Ö  ; (u+00d6) O with diaeresis\r
-return\r
-\r
->!,::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ò  ; (u+00d2) O with grave\r
-  else\r
-    Send ò  ; (u+00f2) o with grave\r
-return\r
->!<::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ò  ; (u+00f2) o with grave\r
-  else\r
-    Send Ò  ; (u+00d2) O with grave\r
-return\r
-\r
->!.::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ó  ; (u+00d3) O with acute\r
-  else\r
-    Send ó  ; (u+00f3) o with acute\r
-return\r
->!>::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ó  ; (u+00f3) o with acute\r
-  else\r
-    Send Ó  ; (u+00d3) O with acute\r
-return\r
-\r
->!k::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Œ  ; (u+0152) ligature OE\r
-  else\r
-    Send œ  ; (u+0153) ligature oe\r
-return\r
->!+k::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send œ  ; (u+0153) ligature oe\r
-  else\r
-    Send Œ  ; (u+0152) ligature OE\r
-return\r
-\r
->!l::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ø  ; (u+00d8) O with stroke\r
-  else\r
-    Send ø  ; (u+00f8) o with stroke\r
-return\r
->!+l::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ø  ; (u+00f8) o with stroke\r
-  else\r
-    Send Ø  ; (u+00d8) O with stroke\r
-return\r
-\r
->!n::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ñ  ; (u+00d1) N with tilde\r
-  else\r
-    Send ñ  ; (u+00f1) n with tilde\r
-return\r
->!+n::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ñ  ; (u+00f1) n with tilde\r
-  else\r
-    Send Ñ  ; (u+00d1) N with tilde\r
-return\r
-\r
->!t::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Þ  ; (u+00de) capital letter thorn\r
-  else\r
-    Send þ  ; (u+00fe) small letter thorn\r
-return\r
->!+t::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send þ  ; (u+00fe) small letter thorn\r
-  else\r
-    Send Þ  ; (u+00de) capital letter thorn\r
-return\r
-\r
->!u::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ü  ; (u+00dc) U with diaeresis\r
-  else\r
-    Send ü  ; (u+00fc) u with diaeresis\r
-return\r
->!+u::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ü  ; (u+00fc) u with diaeresis\r
-  else\r
-    Send Ü  ; (u+00dc) U with diaeresis\r
-return\r
-\r
->!h::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ù  ; (u+00d9) U with grave\r
-  else\r
-    Send ù  ; (u+00f9) u with grave\r
-return\r
->!+h::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ù  ; (u+00f9) u with grave\r
-  else\r
-    Send Ù  ; (u+00d9) U with grave\r
-return\r
-\r
->!j::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ú  ; (u+00da) U with acute\r
-  else\r
-    Send ú  ; (u+00fa) u with acute\r
-return\r
->!+j::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ú  ; (u+00fa) u with acute\r
-  else\r
-    Send Ú  ; (u+00da) U with acute\r
-return\r
-\r
->!y::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ÿ  ; (u+0178) Y with diaeresis\r
-  else\r
-    Send ÿ  ; (u+00ff) y with diaeresis\r
-return\r
->!+y::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ÿ  ; (u+00ff) y with diaeresis\r
-  else\r
-    Send Ÿ  ; (u+0178) Y with diaeresis\r
-return\r
-\r
->!r::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send Ý  ; (u+00dd) Y with acute\r
-  else\r
-    Send ý  ; (u+00fd) y with acute\r
-return\r
->!+r::\r
-  if GetKeyState("CapsLock", "T")\r
-    Send ý  ; (u+00dd) y with acute\r
-  else\r
-    Send Ý  ; (u+00fd) Y with acute\r
-return\r
-\r
->!p::Send †   ; (u+2020) dagger\r
->!+p::Send ‡  ; (u+2021) double dagger\r
-\r
->!s::Send ß   ; (u+00df) small sharp s (Eszett)\r
->!+s::Send §  ; (u+00a7) section sign\r
-\r
->!/::Send ¿   ; (u+00bf) inverted question mark\r
->!?::Send ¶   ; (u+00b6) pilcrow sign\r
-\r
->!1::Send ¡   ; (u+00a1) inverted exclamation mark\r
->!+1::Send ¹  ; (u+00b9) superscript 1\r
-\r
->!2::Send ©   ; (u+00a9) copyright sign\r
->!+2::Send ²  ; (u+00b2) superscript 2\r
-\r
->!3::Send ±   ; (u+00b1) plus-minus sign\r
->!+3::Send ³  ; (u+00b3) superscript 3\r
-\r
->!4::Send £   ; (u+00a3) pound sign\r
->!+4::Send ¥  ; (u+00a5) yen sign\r
-\r
->!5::Send €   ; (u+20ac) euro sign\r
->!+5::Send ¢  ; (u+00a2) cent sign (dollar)\r
-\r
->!8::Send „   ; (u+201e) double low-9 quotation mark\r
->!+8::Send ‚  ; (u+201a) single low-9 quotation mark\r
-\r
->!9::Send “   ; (u+201c) left double quotation mark\r
->!+9::Send ‘  ; (u+2018) left single quotation mark\r
-\r
->!0::Send ”   ; (u+201d) right double quotation mark\r
->!+0::Send ’  ; (u+2019) right single quotation mark\r
-\r
->!=::Send ×   ; (u+00d7) multiplication sign\r
->!+=::Send ÷  ; (u+00f7) division sign\r
-\r
->![::Send «   ; (u+00ab) left-pointing double angle quotation mark\r
->!{::Send ‹   ; (u+2039) left-pointing single angle quotation mark\r
-\r
->!]::Send »   ; (u+00bb) right-pointing double angle quotation mark\r
->!}::Send ›   ; (u+203a) right-pointing single angle quotation mark\r
-\r
->!;::Send °   ; (u+00b0) degree sign\r
->!+;::Send ·  ; (u+00b7) middle dot\r
-\r
->!6::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkCircumflex.item(key)\r
-return\r
->!+6::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkCaron.item(key)\r
-return\r
-\r
->!7::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkRingDotAbove.item(key)\r
-return\r
->!+7::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkMacronStroke.item(key)\r
-return\r
-\r
->!-::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkCedillaOgonek.item(key)\r
-return\r
->!_::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkBreveSpecial.item(key)\r
-return\r
-\r
->!'::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkAcuteAccent.item(key)\r
-return\r
->!"::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkDiaeresis.item(key)\r
-return\r
-\r
->!`::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkGraveAccent.item(key)\r
-return\r
->!~::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkTilde.item(key)\r
-return\r
-\r
->!\::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkNotSign.item(key)\r
-return\r
->!|::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkBrokenBar.item(key)\r
-return\r
-\r
->!m::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkGreekAlphabet.item(key)\r
-return\r
->!+m::\r
-  Input, key, L1, {bs}{del}{esc}{home}{end}\r
-  Send % dkMathSymbols.item(key)\r
-return\r
-\r
->!space::Send     ; (u+00a0) non-breaking space\r
->!+space::Send    ; (u+00a0) non-breaking space\r