]> shimmer.witbreuk.eu Git - UltimateKEYS.git/blob - UltimateKEYS - 2019-12-15.ahk
dee6a2349805a8e8afcc69224d7d984326dc3eec
[UltimateKEYS.git] / UltimateKEYS - 2019-12-15.ahk
1 ; UltimateKEYS - 2019-12-15.ahk
2
3 ; Author : Pieter Degroote
4
5 ; License : GNU General Public License Version 3
6
7 ; Website : https://github.com/pieter-degroote/UltimateKEYS
8
9
10 ; Requirements :
11
12 ; Keyboard layout (on Windows OS) : US-QWERTY
13
14 ; AutoHotkey v1.1 (https://www.autohotkey.com/)
15
16
17
18 ; Dead Key : Circumflex Accent
19
20 dkCircumflex := ComObjCreate("Scripting.Dictionary")
21 dkCircumflex.item("a") := "â" ; a with circumflex
22 dkCircumflex.item("A") := "Â" ; A with circumflex
23 dkCircumflex.item("c") := "ĉ" ; c with circumflex
24 dkCircumflex.item("C") := "Ĉ" ; C with circumflex
25 dkCircumflex.item("e") := "ê" ; e with circumflex
26 dkCircumflex.item("E") := "Ê" ; E with circumflex
27 dkCircumflex.item("g") := "ĝ" ; g with circumflex
28 dkCircumflex.item("G") := "Ĝ" ; G with circumflex
29 dkCircumflex.item("h") := "ĥ" ; h with circumflex
30 dkCircumflex.item("H") := "Ĥ" ; H with circumflex
31 dkCircumflex.item("i") := "î" ; i with circumflex
32 dkCircumflex.item("I") := "Î" ; I with circumflex
33 dkCircumflex.item("j") := "ĵ" ; j with circumflex
34 dkCircumflex.item("J") := "Ĵ" ; J with circumflex
35 dkCircumflex.item("o") := "ô" ; o with circumflex
36 dkCircumflex.item("O") := "Ô" ; O with circumflex
37 dkCircumflex.item("s") := "ŝ" ; s with circumflex
38 dkCircumflex.item("S") := "Ŝ" ; S with circumflex
39 dkCircumflex.item("u") := "û" ; u with circumflex
40 dkCircumflex.item("U") := "Û" ; U with circumflex
41 dkCircumflex.item("w") := "ŵ" ; w with circumflex
42 dkCircumflex.item("W") := "Ŵ" ; W with circumflex
43 dkCircumflex.item("y") := "ŷ" ; y with circumflex
44 dkCircumflex.item("Y") := "Ŷ" ; Y with circumflex
45 dkCircumflex.item("z") := "ẑ" ; z with circumflex
46 dkCircumflex.item("Z") := "Ẑ" ; Z with circumflex
47 dkCircumflex.item("^") := "{^}" ; circumflex accent
48 dkCircumflex.item(" ") := "{^}" ; circumflex accent
49
50
51 ; Dead Key : Caron
52
53 dkCaron := ComObjCreate("Scripting.Dictionary")
54 dkCaron.item("a") := "ǎ" ; a with caron
55 dkCaron.item("A") := "Ǎ" ; A with caron
56 dkCaron.item("c") := "č" ; c with caron
57 dkCaron.item("C") := "Č" ; C with caron
58 dkCaron.item("d") := "ď" ; d with caron
59 dkCaron.item("D") := "Ď" ; D with caron
60 dkCaron.item("e") := "ě" ; e with caron
61 dkCaron.item("E") := "Ě" ; E with caron
62 dkCaron.item("g") := "ǧ" ; g with caron
63 dkCaron.item("G") := "Ǧ" ; G with caron
64 dkCaron.item("h") := "ȟ" ; h with caron
65 dkCaron.item("H") := "Ȟ" ; H with caron
66 dkCaron.item("i") := "ǐ" ; i with caron
67 dkCaron.item("I") := "Ǐ" ; I with caron
68 dkCaron.item("j") := "ǰ" ; j with caron
69 dkCaron.item("k") := "ǩ" ; k with caron
70 dkCaron.item("K") := "Ǩ" ; K with caron
71 dkCaron.item("l") := "ľ" ; l with caron
72 dkCaron.item("L") := "Ľ" ; L with caron
73 dkCaron.item("n") := "ň" ; n with caron
74 dkCaron.item("N") := "Ň" ; N with caron
75 dkCaron.item("o") := "ǒ" ; o with caron
76 dkCaron.item("O") := "Ǒ" ; O with caron
77 dkCaron.item("r") := "ř" ; r with caron
78 dkCaron.item("R") := "Ř" ; R with caron
79 dkCaron.item("s") := "š" ; s with caron
80 dkCaron.item("S") := "Š" ; S with caron
81 dkCaron.item("t") := "ť" ; t with caron
82 dkCaron.item("T") := "Ť" ; T with caron
83 dkCaron.item("u") := "ǔ" ; u with caron
84 dkCaron.item("U") := "Ǔ" ; U with caron
85 dkCaron.item("z") := "ž" ; z with caron
86 dkCaron.item("Z") := "Ž" ; Z with caron
87 dkCaron.item(" ") := "ˇ" ; caron
88
89
90 ; Dead Key : Ring/Dot Above
91
92 dkRingDotAbove := ComObjCreate("Scripting.Dictionary")
93 dkRingDotAbove.item("a") := "å" ; a with ring above
94 dkRingDotAbove.item("A") := "Å" ; A with ring above
95 dkRingDotAbove.item("ä") := "ȧ" ; a with dot above
96 dkRingDotAbove.item("Ä") := "Ȧ" ; a with dot above
97 dkRingDotAbove.item("b") := "ḃ" ; b with dot above
98 dkRingDotAbove.item("B") := "Ḃ" ; B with dot above
99 dkRingDotAbove.item("c") := "ċ" ; c with dot above
100 dkRingDotAbove.item("C") := "Ċ" ; C with dot above
101 dkRingDotAbove.item("d") := "ḋ" ; d with dot above
102 dkRingDotAbove.item("D") := "Ḋ" ; D with dot above
103 dkRingDotAbove.item("e") := "ė" ; e with dot above
104 dkRingDotAbove.item("E") := "Ė" ; E with dot above
105 dkRingDotAbove.item("f") := "ḟ" ; f with dot above
106 dkRingDotAbove.item("F") := "Ḟ" ; F with dot above
107 dkRingDotAbove.item("g") := "ġ" ; g with dot above
108 dkRingDotAbove.item("G") := "Ġ" ; G with dot above
109 dkRingDotAbove.item("h") := "ḣ" ; h with dot above
110 dkRingDotAbove.item("H") := "Ḣ" ; H with dot above
111 dkRingDotAbove.item("i") := "ı" ; dotless i (Turkish, Azerbaijani)
112 dkRingDotAbove.item("I") := "İ" ; I with dot above (Turkish, Azerbaijani)
113 dkRingDotAbove.item("j") := "ȷ" ; dotless j
114 dkRingDotAbove.item("l") := "ŀ" ; l with middle dot
115 dkRingDotAbove.item("L") := "Ŀ" ; L with middle dot
116 dkRingDotAbove.item("m") := "ṁ" ; m with dot above
117 dkRingDotAbove.item("M") := "Ṁ" ; M with dot above
118 dkRingDotAbove.item("n") := "ṅ" ; n with dot above
119 dkRingDotAbove.item("N") := "Ṅ" ; N with dot above
120 dkRingDotAbove.item("o") := "ȯ" ; o with dot above
121 dkRingDotAbove.item("O") := "Ȯ" ; O with dot above
122 dkRingDotAbove.item("p") := "ṗ" ; p with dot above
123 dkRingDotAbove.item("P") := "Ṗ" ; P with dot above
124 dkRingDotAbove.item("r") := "ṙ" ; r with dot above
125 dkRingDotAbove.item("R") := "Ṙ" ; R with dot above
126 dkRingDotAbove.item("s") := "ṡ" ; s with dot above
127 dkRingDotAbove.item("S") := "Ṡ" ; S with dot above
128 dkRingDotAbove.item("t") := "ṫ" ; t with dot above
129 dkRingDotAbove.item("T") := "Ṫ" ; T with dot above
130 dkRingDotAbove.item("u") := "ů" ; u with ring above
131 dkRingDotAbove.item("U") := "Ů" ; U with ring above
132 dkRingDotAbove.item("w") := "ẘ" ; w with ring above
133 dkRingDotAbove.item("å") := "ẇ" ; w with dot above
134 dkRingDotAbove.item("Å") := "Ẇ" ; W with dot above
135 dkRingDotAbove.item("x") := "ẋ" ; x with dot above
136 dkRingDotAbove.item("X") := "Ẋ" ; X with dot above
137 dkRingDotAbove.item("y") := "ẙ" ; y with ring above
138 dkRingDotAbove.item("ÿ") := "ẏ" ; y with dot above
139 dkRingDotAbove.item("Ÿ") := "Ẏ" ; Y with dot above
140 dkRingDotAbove.item("z") := "ż" ; z with dot above
141 dkRingDotAbove.item("Z") := "Ż" ; Z with dot above
142 dkRingDotAbove.item(" ") := "˙" ; dot above
143
144
145 ; Dead Key : Macron
146
147 dkMacron := ComObjCreate("Scripting.Dictionary")
148 dkMacron.item("a") := "ā" ; a with macron
149 dkMacron.item("A") := "Ā" ; A with macron
150 dkMacron.item("æ") := "ǣ" ; ae with macron
151 dkMacron.item("Æ") := "Ǣ" ; AE with macron
152 dkMacron.item("b") := "ƀ" ; b with stroke
153 dkMacron.item("B") := "Ƀ" ; B with stroke
154 dkMacron.item("d") := "đ" ; d with stroke
155 dkMacron.item("D") := "Đ" ; D with stroke
156 dkMacron.item("e") := "ē" ; e with macron
157 dkMacron.item("E") := "Ē" ; E with macron
158 dkMacron.item("g") := "ḡ" ; g with macron
159 dkMacron.item("G") := "Ḡ" ; G with macron
160 dkMacron.item("h") := "ħ" ; h with stroke
161 dkMacron.item("H") := "Ħ" ; H with stroke
162 dkMacron.item("i") := "ī" ; i with macron
163 dkMacron.item("I") := "Ī" ; I with macron
164 dkMacron.item("l") := "ł" ; l with stroke
165 dkMacron.item("L") := "Ł" ; L with stroke
166 dkMacron.item("ø") := "ḻ" ; l with line below
167 dkMacron.item("Ø") := "Ḻ" ; L with line below
168 dkMacron.item("o") := "ō" ; o with macron
169 dkMacron.item("O") := "Ō" ; O with macron
170 dkMacron.item("t") := "ŧ" ; t with stroke
171 dkMacron.item("T") := "Ŧ" ; T with stroke
172 dkMacron.item("u") := "ū" ; u with macron
173 dkMacron.item("U") := "Ū" ; U with macron
174 dkMacron.item("y") := "ȳ" ; y with macron
175 dkMacron.item("Y") := "Ȳ" ; Y with macron
176 dkMacron.item("z") := "ƶ" ; z with stroke
177 dkMacron.item("Z") := "Ƶ" ; Z with stroke
178 dkMacron.item(" ") := "¯" ; macron
179
180
181 ; Dead Key : Cedilla/Ogonek
182
183 dkCedillaOgonek := ComObjCreate("Scripting.Dictionary")
184 dkCedillaOgonek.item("a") := "ą" ; a with ogonek
185 dkCedillaOgonek.item("A") := "Ą" ; A with ogonek
186 dkCedillaOgonek.item("c") := "ç" ; c with cedilla
187 dkCedillaOgonek.item("C") := "Ç" ; C with cedilla
188 dkCedillaOgonek.item("d") := "ḑ" ; d with cedilla
189 dkCedillaOgonek.item("D") := "Ḑ" ; D with cedilla
190 dkCedillaOgonek.item("e") := "ę" ; e with ogonek
191 dkCedillaOgonek.item("E") := "Ę" ; E with ogonek
192 dkCedillaOgonek.item("ë") := "ȩ" ; e with cedilla
193 dkCedillaOgonek.item("Ë") := "Ȩ" ; E with cedilla
194 dkCedillaOgonek.item("g") := "ģ" ; g with cedilla
195 dkCedillaOgonek.item("G") := "Ģ" ; G with cedilla
196 dkCedillaOgonek.item("h") := "ḩ" ; h with cedilla
197 dkCedillaOgonek.item("H") := "Ḩ" ; H with cedilla
198 dkCedillaOgonek.item("i") := "į" ; i with ogonek
199 dkCedillaOgonek.item("I") := "Į" ; I with ogonek
200 dkCedillaOgonek.item("k") := "ķ" ; k with cedilla
201 dkCedillaOgonek.item("K") := "Ķ" ; K with cedilla
202 dkCedillaOgonek.item("l") := "ļ" ; l with cedilla
203 dkCedillaOgonek.item("L") := "Ļ" ; L with cedilla
204 dkCedillaOgonek.item("n") := "ņ" ; n with cedilla
205 dkCedillaOgonek.item("N") := "Ņ" ; N with cedilla
206 dkCedillaOgonek.item("o") := "ǫ" ; o with ogonek
207 dkCedillaOgonek.item("O") := "Ǫ" ; O with ogonek
208 dkCedillaOgonek.item("ö") := "ǭ" ; o with ogonek and macron
209 dkCedillaOgonek.item("Ö") := "Ǭ" ; O with ogonek and macron
210 dkCedillaOgonek.item("r") := "ŗ" ; r with cedilla
211 dkCedillaOgonek.item("R") := "Ŗ" ; R with cedilla
212 dkCedillaOgonek.item("s") := "ş" ; s with cedilla
213 dkCedillaOgonek.item("S") := "Ş" ; S with cedilla
214 dkCedillaOgonek.item("t") := "ţ" ; t with cedilla
215 dkCedillaOgonek.item("T") := "Ţ" ; T with cedilla
216 dkCedillaOgonek.item("u") := "ų" ; u with ogonek
217 dkCedillaOgonek.item("U") := "Ų" ; U with ogonek
218 dkCedillaOgonek.item(".") := "˛" ; ogonek
219 dkCedillaOgonek.item(" ") := "¸" ; cedilla
220
221
222 ; Dead Key : Breve/Special
223
224 dkBreveSpecial := ComObjCreate("Scripting.Dictionary")
225 dkBreveSpecial.item("a") := "ă" ; a with breve
226 dkBreveSpecial.item("A") := "Ă" ; A with breve
227 dkBreveSpecial.item("d") := "ɖ" ; small letter d with tail
228 dkBreveSpecial.item("D") := "Ɖ" ; capital letter African D
229 dkBreveSpecial.item("e") := "ĕ" ; e with breve
230 dkBreveSpecial.item("E") := "Ĕ" ; E with breve
231 dkBreveSpecial.item("ë") := "ǝ" ; small turned e
232 dkBreveSpecial.item("Ë") := "Ǝ" ; capital reversed E
233 dkBreveSpecial.item("f") := "ə" ; small letter schwa (Azerbaijani)
234 dkBreveSpecial.item("F") := "Ə" ; capital letter schwa (Azerbaijani)
235 dkBreveSpecial.item("g") := "ğ" ; g with breve
236 dkBreveSpecial.item("G") := "Ğ" ; G with breve
237 dkBreveSpecial.item("é") := "ɣ" ; latin small gamma
238 dkBreveSpecial.item("É") := "Ɣ" ; latin capital gamma
239 dkBreveSpecial.item("i") := "ĭ" ; i with breve
240 dkBreveSpecial.item("I") := "Ĭ" ; I with breve
241 dkBreveSpecial.item("j") := "ij" ; ligature ij
242 dkBreveSpecial.item("J") := "IJ" ; ligature IJ
243 dkBreveSpecial.item("k") := "ĸ" ; small letter kra
244 dkBreveSpecial.item("n") := "ŋ" ; small letter eng(ma)
245 dkBreveSpecial.item("N") := "Ŋ" ; capital letter eng(ma)
246 dkBreveSpecial.item("o") := "ŏ" ; o with breve
247 dkBreveSpecial.item("O") := "Ŏ" ; O with breve
248 dkBreveSpecial.item("ö") := "ɔ" ; small open o
249 dkBreveSpecial.item("Ö") := "Ɔ" ; capital open O
250 dkBreveSpecial.item("s") := "ș" ; s with comma below (Romanian)
251 dkBreveSpecial.item("S") := "Ș" ; S with comma below (Romanian)
252 dkBreveSpecial.item("ß") := "ʃ" ; small letter esh
253 dkBreveSpecial.item("ẞ") := "Ʃ" ; capital letter esh
254 dkBreveSpecial.item("t") := "ț" ; t with comma below (Romanian)
255 dkBreveSpecial.item("T") := "Ț" ; T with comma below (Romanian)
256 dkBreveSpecial.item("u") := "ŭ" ; u with breve
257 dkBreveSpecial.item("U") := "Ŭ" ; U with breve
258 dkBreveSpecial.item("w") := "ƿ" ; small letter wynn
259 dkBreveSpecial.item("W") := "Ƿ" ; capital letter wynn
260 dkBreveSpecial.item("y") := "ȝ" ; small letter yogh
261 dkBreveSpecial.item("Y") := "Ȝ" ; capital letter yogh
262 dkBreveSpecial.item("z") := "ʒ" ; small letter ezh
263 dkBreveSpecial.item("Z") := "Ʒ" ; capital letter ezh
264 dkBreveSpecial.item("à") := "ǯ" ; small letter ezh with caron
265 dkBreveSpecial.item("À") := "Ǯ" ; capital letter ezh with caron
266 dkBreveSpecial.item(" ") := "˘" ; breve
267
268
269 ; Dead Key : Acute Accent
270
271 dkAcuteAccent := ComObjCreate("Scripting.Dictionary")
272 dkAcuteAccent.item("a") := "á" ; a with acute
273 dkAcuteAccent.item("A") := "Á" ; A with acute
274 dkAcuteAccent.item("c") := "ć" ; c with acute
275 dkAcuteAccent.item("C") := "Ć" ; C with acute
276 dkAcuteAccent.item("ç") := "ḉ" ; c with cedilla and acute
277 dkAcuteAccent.item("Ç") := "Ḉ" ; C with cedilla and acute
278 dkAcuteAccent.item("e") := "é" ; e with acute
279 dkAcuteAccent.item("E") := "É" ; E with acute
280 dkAcuteAccent.item("g") := "ǵ" ; g with acute
281 dkAcuteAccent.item("G") := "Ǵ" ; G with acute
282 dkAcuteAccent.item("i") := "í" ; i with acute
283 dkAcuteAccent.item("I") := "Í" ; I with acute
284 dkAcuteAccent.item("j") := "ij" ; ligature ij
285 dkAcuteAccent.item("J") := "IJ" ; ligature IJ
286 dkAcuteAccent.item("k") := "ḱ" ; k with acute
287 dkAcuteAccent.item("K") := "Ḱ" ; K with acute
288 dkAcuteAccent.item("l") := "ĺ" ; l with acute
289 dkAcuteAccent.item("L") := "Ĺ" ; L with acute
290 dkAcuteAccent.item("m") := "ḿ" ; m with acute
291 dkAcuteAccent.item("M") := "Ḿ" ; M with acute
292 dkAcuteAccent.item("n") := "ń" ; n with acute
293 dkAcuteAccent.item("N") := "Ń" ; N with acute
294 dkAcuteAccent.item("o") := "ó" ; o with acute
295 dkAcuteAccent.item("O") := "Ó" ; O with acute
296 dkAcuteAccent.item("ö") := "ő" ; o with double acute
297 dkAcuteAccent.item("Ö") := "Ő" ; O with double acute
298 dkAcuteAccent.item("p") := "ṕ" ; p with acute
299 dkAcuteAccent.item("P") := "Ṕ" ; P with acute
300 dkAcuteAccent.item("r") := "ŕ" ; r with acute
301 dkAcuteAccent.item("R") := "Ŕ" ; R with acute
302 dkAcuteAccent.item("s") := "ś" ; s with acute
303 dkAcuteAccent.item("S") := "Ś" ; S with acute
304 dkAcuteAccent.item("u") := "ú" ; u with acute
305 dkAcuteAccent.item("U") := "Ú" ; U with acute
306 dkAcuteAccent.item("ü") := "ű" ; u with double acute
307 dkAcuteAccent.item("Ü") := "Ű" ; U with double acute
308 dkAcuteAccent.item("w") := "ẃ" ; w with acute
309 dkAcuteAccent.item("W") := "Ẃ" ; W with acute
310 dkAcuteAccent.item("y") := "ý" ; y with acute
311 dkAcuteAccent.item("Y") := "Ý" ; Y with acute
312 dkAcuteAccent.item("z") := "ź" ; z with acute
313 dkAcuteAccent.item("Z") := "Ź" ; Z with acute
314 dkAcuteAccent.item("å") := "ǻ" ; a with ring above and acute
315 dkAcuteAccent.item("Å") := "Ǻ" ; A with ring above and acute
316 dkAcuteAccent.item("æ") := "ǽ" ; ae with acute
317 dkAcuteAccent.item("Æ") := "Ǽ" ; AE with acute
318 dkAcuteAccent.item("ø") := "ǿ" ; o with stroke and acute
319 dkAcuteAccent.item("Ø") := "Ǿ" ; O with stroke and acute
320 dkAcuteAccent.item("'") := "´" ; acute accent
321 dkAcuteAccent.item(" ") := "´" ; acute accent
322
323
324 ; Dead Key : Diaeresis and Hook
325
326 dkDiaeresis := ComObjCreate("Scripting.Dictionary")
327 dkDiaeresis.item("a") := "ä" ; a with diaeresis
328 dkDiaeresis.item("A") := "Ä" ; A with diaeresis
329 dkDiaeresis.item("b") := "ɓ" ; b with hook
330 dkDiaeresis.item("B") := "Ɓ" ; B with hook
331 dkDiaeresis.item("c") := "ƈ" ; c with hook
332 dkDiaeresis.item("C") := "Ƈ" ; C with hook
333 dkDiaeresis.item("d") := "ɗ" ; d with hook
334 dkDiaeresis.item("D") := "Ɗ" ; D with hook
335 dkDiaeresis.item("e") := "ë" ; e with diaeresis
336 dkDiaeresis.item("E") := "Ë" ; E with diaeresis
337 dkDiaeresis.item("ë") := "ɛ" ; small open e (latin small epsilon)
338 dkDiaeresis.item("Ë") := "Ɛ" ; capital open E (latin capital epsilon)
339 dkDiaeresis.item("f") := "ƒ" ; f with hook
340 dkDiaeresis.item("F") := "Ƒ" ; F with hook
341 dkDiaeresis.item("g") := "ɠ" ; g with hook
342 dkDiaeresis.item("G") := "Ɠ" ; G with hook
343 dkDiaeresis.item("h") := "ḧ" ; h with diaeresis
344 dkDiaeresis.item("H") := "Ḧ" ; H with diaeresis
345 dkDiaeresis.item("i") := "ï" ; i with diaeresis
346 dkDiaeresis.item("I") := "Ï" ; I with diaeresis
347 dkDiaeresis.item("k") := "ƙ" ; k with hook
348 dkDiaeresis.item("K") := "Ƙ" ; K with hook
349 dkDiaeresis.item("o") := "ö" ; o with diaeresis
350 dkDiaeresis.item("O") := "Ö" ; O with diaeresis
351 dkDiaeresis.item("ö") := "ơ" ; o with horn
352 dkDiaeresis.item("Ö") := "Ơ" ; O with horn
353 dkDiaeresis.item("p") := "ƥ" ; p with hook
354 dkDiaeresis.item("P") := "Ƥ" ; P with hook
355 dkDiaeresis.item("s") := "ſ" ; small long s
356 dkDiaeresis.item("t") := "ẗ" ; t with diaeresis
357 dkDiaeresis.item("þ") := "ƭ" ; t with hook
358 dkDiaeresis.item("Þ") := "Ƭ" ; T with hook
359 dkDiaeresis.item("u") := "ü" ; u with diaeresis
360 dkDiaeresis.item("U") := "Ü" ; U with diaeresis
361 dkDiaeresis.item("ü") := "ư" ; u with horn
362 dkDiaeresis.item("Ü") := "Ư" ; U with horn
363 dkDiaeresis.item("v") := "ʋ" ; v with hook
364 dkDiaeresis.item("V") := "Ʋ" ; V with hook
365 dkDiaeresis.item("w") := "ẅ" ; w with diaeresis
366 dkDiaeresis.item("W") := "Ẅ" ; W with diaeresis
367 dkDiaeresis.item("x") := "ẍ" ; x with diaeresis
368 dkDiaeresis.item("X") := "Ẍ" ; X with diaeresis
369 dkDiaeresis.item("y") := "ÿ" ; y with diaeresis
370 dkDiaeresis.item("Y") := "Ÿ" ; Y with diaeresis
371 dkDiaeresis.item("ÿ") := "ƴ" ; y with hook
372 dkDiaeresis.item("Ÿ") := "Ƴ" ; Y with hook
373 dkDiaeresis.item("""") := "¨" ; diaeresis
374 dkDiaeresis.item(" ") := "¨" ; diaeresis
375
376
377 ; Dead Key : Grave Accent
378
379 dkGraveAccent := ComObjCreate("Scripting.Dictionary")
380 dkGraveAccent.item("a") := "à" ; a with grave
381 dkGraveAccent.item("A") := "À" ; A with grave
382 dkGraveAccent.item("e") := "è" ; e with grave
383 dkGraveAccent.item("E") := "È" ; E with grave
384 dkGraveAccent.item("i") := "ì" ; i with grave
385 dkGraveAccent.item("I") := "Ì" ; I with grave
386 dkGraveAccent.item("n") := "ǹ" ; n with grave
387 dkGraveAccent.item("N") := "Ǹ" ; N with grave
388 dkGraveAccent.item("o") := "ò" ; o with grave
389 dkGraveAccent.item("O") := "Ò" ; O with grave
390 dkGraveAccent.item("u") := "ù" ; u with grave
391 dkGraveAccent.item("U") := "Ù" ; U with grave
392 dkGraveAccent.item("w") := "ẁ" ; w with grave
393 dkGraveAccent.item("W") := "Ẁ" ; W with grave
394 dkGraveAccent.item("y") := "ỳ" ; y with grave
395 dkGraveAccent.item("Y") := "Ỳ" ; Y with grave
396 dkGraveAccent.item("``") := "``" ; grave accent
397 dkGraveAccent.item(" ") := "``" ; grave accent
398
399
400 ; Dead Key : Tilde
401
402 dkTilde := ComObjCreate("Scripting.Dictionary")
403 dkTilde.item("a") := "ã" ; a with tilde
404 dkTilde.item("A") := "Ã" ; A with tilde
405 dkTilde.item("e") := "ẽ" ; e with tilde
406 dkTilde.item("E") := "Ẽ" ; E with tilde
407 dkTilde.item("i") := "ĩ" ; i with tilde
408 dkTilde.item("I") := "Ĩ" ; I with tilde
409 dkTilde.item("n") := "ñ" ; n with tilde
410 dkTilde.item("N") := "Ñ" ; N with tilde
411 dkTilde.item("o") := "õ" ; o with tilde
412 dkTilde.item("O") := "Õ" ; O with tilde
413 dkTilde.item("u") := "ũ" ; u with tilde
414 dkTilde.item("U") := "Ũ" ; U with tilde
415 dkTilde.item("v") := "ṽ" ; v with tilde
416 dkTilde.item("V") := "Ṽ" ; V with tilde
417 dkTilde.item("y") := "ỹ" ; y with tilde
418 dkTilde.item("Y") := "Ỹ" ; Y with tilde
419 dkTilde.item("~") := "~" ; tilde
420 dkTilde.item(" ") := "~" ; tilde
421
422
423 ; Dead Key : Greek Alphabet
424
425 dkGreekAlphabet := ComObjCreate("Scripting.Dictionary")
426 dkGreekAlphabet.item("a") := "α" ; small alpha
427 dkGreekAlphabet.item("A") := "Α" ; capital alpha
428 dkGreekAlphabet.item("b") := "β" ; small beta
429 dkGreekAlphabet.item("B") := "Β" ; capital beta
430 dkGreekAlphabet.item("v") := "β" ; small beta
431 dkGreekAlphabet.item("V") := "Β" ; capital beta
432 dkGreekAlphabet.item("g") := "γ" ; small gamma
433 dkGreekAlphabet.item("G") := "Γ" ; capital gamma
434 dkGreekAlphabet.item("d") := "δ" ; small delta
435 dkGreekAlphabet.item("D") := "Δ" ; capital delta
436 dkGreekAlphabet.item("e") := "ε" ; small epsilon
437 dkGreekAlphabet.item("E") := "Ε" ; capital epsilon
438 dkGreekAlphabet.item("z") := "ζ" ; small zeta
439 dkGreekAlphabet.item("Z") := "Ζ" ; capital zeta
440 dkGreekAlphabet.item("i") := "η" ; small eta
441 dkGreekAlphabet.item("I") := "Η" ; capital eta
442 dkGreekAlphabet.item("h") := "θ" ; small theta
443 dkGreekAlphabet.item("H") := "Θ" ; capital theta
444 dkGreekAlphabet.item("j") := "ι" ; small iota
445 dkGreekAlphabet.item("J") := "Ι" ; capital iota
446 dkGreekAlphabet.item("k") := "κ" ; small kappa
447 dkGreekAlphabet.item("K") := "Κ" ; capital kappa
448 dkGreekAlphabet.item("l") := "λ" ; small lambda
449 dkGreekAlphabet.item("L") := "Λ" ; capital lambda
450 dkGreekAlphabet.item("m") := "μ" ; small mu
451 dkGreekAlphabet.item("M") := "Μ" ; capital mu
452 dkGreekAlphabet.item("n") := "ν" ; small nu
453 dkGreekAlphabet.item("N") := "Ν" ; capital nu
454 dkGreekAlphabet.item("x") := "ξ" ; small xi
455 dkGreekAlphabet.item("X") := "Ξ" ; capital xi
456 dkGreekAlphabet.item("o") := "ο" ; small omikron
457 dkGreekAlphabet.item("O") := "Ο" ; capital omikron
458 dkGreekAlphabet.item("p") := "π" ; small pi
459 dkGreekAlphabet.item("P") := "Π" ; capital pi
460 dkGreekAlphabet.item("r") := "ρ" ; small rho
461 dkGreekAlphabet.item("R") := "Ρ" ; capital rho
462 dkGreekAlphabet.item("s") := "σ" ; small sigma
463 dkGreekAlphabet.item("S") := "Σ" ; capital sigma
464 dkGreekAlphabet.item("ß") := "ς" ; small sigma, in word-final position
465 dkGreekAlphabet.item("ẞ") := "Σ" ; capital sigma
466 dkGreekAlphabet.item("t") := "τ" ; small tau
467 dkGreekAlphabet.item("T") := "Τ" ; capital tau
468 dkGreekAlphabet.item("y") := "υ" ; small upsilon
469 dkGreekAlphabet.item("Y") := "Υ" ; capital upsilon
470 dkGreekAlphabet.item("f") := "φ" ; small phi
471 dkGreekAlphabet.item("F") := "Φ" ; capital phi
472 dkGreekAlphabet.item("c") := "χ" ; small chi
473 dkGreekAlphabet.item("C") := "Χ" ; capital chi
474 dkGreekAlphabet.item("w") := "ψ" ; small psi
475 dkGreekAlphabet.item("W") := "Ψ" ; capital psi
476 dkGreekAlphabet.item("q") := "ω" ; small omega
477 dkGreekAlphabet.item("Q") := "Ω" ; capital omega
478 dkGreekAlphabet.item("u") := "ω" ; small omega
479 dkGreekAlphabet.item("U") := "Ω" ; capital omega
480 dkGreekAlphabet.item(" ") := "μ" ; small mu
481
482
483 ; Dead Key : Symbols
484
485 dkSymbols := ComObjCreate("Scripting.Dictionary")
486 dkSymbols.item("a") := "ª" ; feminine ordinal indicator (Spanish, Portuguese, Italian, Galician)
487 dkSymbols.item("A") := "ª" ; feminine ordinal indicator (Spanish, Portuguese, Italian, Galician)
488 dkSymbols.item("b") := "•" ; bullet
489 dkSymbols.item("B") := "¦" ; broken bar
490 dkSymbols.item("c") := "©" ; copyright sign
491 dkSymbols.item("C") := "¤" ; currency sign
492 dkSymbols.item("d") := "†" ; dagger
493 dkSymbols.item("D") := "‡" ; double dagger
494 dkSymbols.item("e") := "℮" ; estimated symbol
495 dkSymbols.item("E") := "…" ; ellipsis
496 dkSymbols.item("f") := "♀" ; Venus symbol (female)
497 dkSymbols.item("F") := "♀" ; Venus symbol (female)
498 dkSymbols.item("h") := "⁃" ; hyphen bullet
499 dkSymbols.item("H") := "⁃" ; hyphen bullet
500 dkSymbols.item("i") := "∞" ; infinity symbol
501 dkSymbols.item("I") := "∞" ; infinity symbol
502 dkSymbols.item("l") := "ℓ" ; script small l
503 dkSymbols.item("L") := "ℓ" ; script small l
504 dkSymbols.item("m") := "♂" ; Mars symbol (male)
505 dkSymbols.item("M") := "♂" ; Mars symbol (male)
506 dkSymbols.item("n") := "ⁿ" ; superscript n
507 dkSymbols.item("N") := "¬" ; not sign
508 dkSymbols.item("o") := "º" ; masculine ordinal indicator (Spanish, Portuguese, Italian, Galician)
509 dkSymbols.item("O") := "º" ; masculine ordinal indicator (Spanish, Portuguese, Italian, Galician)
510 dkSymbols.item("p") := "¶" ; pilcrow sign
511 dkSymbols.item("P") := "¶" ; pilcrow sign
512 dkSymbols.item("r") := "®" ; registered sign
513 dkSymbols.item("R") := "®" ; registered sign
514 dkSymbols.item("s") := "§" ; section sign
515 dkSymbols.item("S") := "§" ; section sign
516 dkSymbols.item("t") := "™" ; trademark symbol
517 dkSymbols.item("T") := "™" ; trademark symbol
518 dkSymbols.item("v") := "→" ; rightwards arrow
519 dkSymbols.item("V") := "⇒" ; rightwards double arrow
520 dkSymbols.item("x") := "✗" ; ballot x
521 dkSymbols.item("X") := "✗" ; ballot x
522 dkSymbols.item("y") := "✓" ; check mark
523 dkSymbols.item("Y") := "✓" ; check mark
524 dkSymbols.item("z") := "←" ; leftwards arrow
525 dkSymbols.item("Z") := "⇐" ; leftwards double arrow
526 dkSymbols.item("1") := "≠" ; not equal to
527 dkSymbols.item("!") := "≠" ; not equal to
528 dkSymbols.item("2") := "√" ; square root
529 dkSymbols.item("@") := "√" ; square root
530 dkSymbols.item("3") := "∛" ; cube root
531 dkSymbols.item("#") := "∛" ; cube root
532 dkSymbols.item("4") := "∜" ; fourth root
533 dkSymbols.item("$") := "∜" ; fourth root
534 dkSymbols.item("5") := "‰" ; per mille sign
535 dkSymbols.item("%") := "‰" ; per mille sign
536 dkSymbols.item("6") := "ƒ" ; f with hook
537 dkSymbols.item("^") := "ƒ" ; f with hook
538 dkSymbols.item("7") := "№" ; numero sign
539 dkSymbols.item("&") := "№" ; numero sign
540 dkSymbols.item("8") := "·" ; middle dot
541 dkSymbols.item("*") := "·" ; middle dot
542 dkSymbols.item("``") := "≈" ; almost equal to
543 dkSymbols.item("~") := "≈" ; almost equal to
544 dkSymbols.item("=") := "↔" ; left right arrow
545 dkSymbols.item("+") := "⇔" ; left right double arrow
546 dkSymbols.item(",") := "≤" ; less-than or equal to
547 dkSymbols.item("<") := "≤" ; less-than or equal to
548 dkSymbols.item(".") := "≥" ; greater-than or equal to
549 dkSymbols.item(">") := "≥" ; greater-than or equal to
550 dkSymbols.item("-") := "±" ; plus-minus sign
551 dkSymbols.item("_") := "±" ; plus-minus sign
552 dkSymbols.item("\") := "⁞" ; vertical four dots
553 dkSymbols.item("|") := "⁞" ; vertical four dots
554 dkSymbols.item(" ") := "·" ; middle dot
555
556
557 ; Configuration : AltGr modifiers for US-QWERTY
558
559 >!+a::
560 if GetKeyState("CapsLock", "T")
561 Send ä ; a with diaeresis
562 else
563 Send Ä ; A with diaeresis
564 return
565 >!a::
566 if GetKeyState("CapsLock", "T")
567 Send Ä ; A with diaeresis
568 else
569 Send ä ; a with diaeresis
570 return
571
572 >!+z::
573 if GetKeyState("CapsLock", "T")
574 Send à ; a with grave
575 else
576 Send À ; A with grave
577 return
578 >!z::
579 if GetKeyState("CapsLock", "T")
580 Send À ; A with grave
581 else
582 Send à ; a with grave
583 return
584
585 >!+x::
586 if GetKeyState("CapsLock", "T")
587 Send á ; a with acute
588 else
589 Send Á ; A with acute
590 return
591 >!x::
592 if GetKeyState("CapsLock", "T")
593 Send Á ; A with acute
594 else
595 Send á ; a with acute
596 return
597
598 >!+q::
599 if GetKeyState("CapsLock", "T")
600 Send æ ; letter ae
601 else
602 Send Æ ; letter AE
603 return
604 >!q::
605 if GetKeyState("CapsLock", "T")
606 Send Æ ; letter AE
607 else
608 Send æ ; letter ae
609 return
610
611 >!+w::
612 if GetKeyState("CapsLock", "T")
613 Send å ; a with ring above
614 else
615 Send Å ; A with ring above
616 return
617 >!w::
618 if GetKeyState("CapsLock", "T")
619 Send Å ; A with ring above
620 else
621 Send å ; a with ring above
622 return
623
624 >!+c::
625 if GetKeyState("CapsLock", "T")
626 Send ç ; c with cedilla
627 else
628 Send Ç ; C with cedilla
629 return
630 >!c::
631 if GetKeyState("CapsLock", "T")
632 Send Ç ; C with cedilla
633 else
634 Send ç ; c with cedilla
635 return
636
637 >!+d::
638 if GetKeyState("CapsLock", "T")
639 Send ð ; small letter eth
640 else
641 Send Ð ; capital letter eth
642 return
643 >!d::
644 if GetKeyState("CapsLock", "T")
645 Send Ð ; capital letter eth
646 else
647 Send ð ; small letter eth
648 return
649
650 >!+e::
651 if GetKeyState("CapsLock", "T")
652 Send ë ; e with diaeresis
653 else
654 Send Ë ; E with diaeresis
655 return
656 >!e::
657 if GetKeyState("CapsLock", "T")
658 Send Ë ; E with diaeresis
659 else
660 Send ë ; e with diaeresis
661 return
662
663 >!+f::
664 if GetKeyState("CapsLock", "T")
665 Send è ; e with grave
666 else
667 Send È ; E with grave
668 return
669 >!f::
670 if GetKeyState("CapsLock", "T")
671 Send È ; E with grave
672 else
673 Send è ; e with grave
674 return
675
676 >!+g::
677 if GetKeyState("CapsLock", "T")
678 Send é ; e with acute
679 else
680 Send É ; E with acute
681 return
682 >!g::
683 if GetKeyState("CapsLock", "T")
684 Send É ; E with acute
685 else
686 Send é ; e with acute
687 return
688
689 >!+i::
690 if GetKeyState("CapsLock", "T")
691 Send ï ; i with diaeresis
692 else
693 Send Ï ; I with diaeresis
694 return
695 >!i::
696 if GetKeyState("CapsLock", "T")
697 Send Ï ; I with diaeresis
698 else
699 Send ï ; i with diaeresis
700 return
701
702 >!+v::
703 if GetKeyState("CapsLock", "T")
704 Send ì ; i with grave
705 else
706 Send Ì ; I with grave
707 return
708 >!v::
709 if GetKeyState("CapsLock", "T")
710 Send Ì ; I with grave
711 else
712 Send ì ; i with grave
713 return
714
715 >!+b::
716 if GetKeyState("CapsLock", "T")
717 Send í ; i with acute
718 else
719 Send Í ; I with acute
720 return
721 >!b::
722 if GetKeyState("CapsLock", "T")
723 Send Í ; I with acute
724 else
725 Send í ; i with acute
726 return
727
728 >!+o::
729 if GetKeyState("CapsLock", "T")
730 Send ö ; o with diaeresis
731 else
732 Send Ö ; O with diaeresis
733 return
734 >!o::
735 if GetKeyState("CapsLock", "T")
736 Send Ö ; O with diaeresis
737 else
738 Send ö ; o with diaeresis
739 return
740
741 >!<::
742 if GetKeyState("CapsLock", "T")
743 Send ò ; o with grave
744 else
745 Send Ò ; O with grave
746 return
747 >!,::
748 if GetKeyState("CapsLock", "T")
749 Send Ò ; O with grave
750 else
751 Send ò ; o with grave
752 return
753
754 >!>::
755 if GetKeyState("CapsLock", "T")
756 Send ó ; o with acute
757 else
758 Send Ó ; O with acute
759 return
760 >!.::
761 if GetKeyState("CapsLock", "T")
762 Send Ó ; O with acute
763 else
764 Send ó ; o with acute
765 return
766
767 >!+l::
768 if GetKeyState("CapsLock", "T")
769 Send ø ; o with stroke
770 else
771 Send Ø ; O with stroke
772 return
773 >!l::
774 if GetKeyState("CapsLock", "T")
775 Send Ø ; O with stroke
776 else
777 Send ø ; o with stroke
778 return
779
780 >!+p::
781 if GetKeyState("CapsLock", "T")
782 Send œ ; ligature oe
783 else
784 Send Œ ; ligature OE
785 return
786 >!p::
787 if GetKeyState("CapsLock", "T")
788 Send Œ ; ligature OE
789 else
790 Send œ ; ligature oe
791 return
792
793 >!+n::
794 if GetKeyState("CapsLock", "T")
795 Send ñ ; n with tilde
796 else
797 Send Ñ ; N with tilde
798 return
799 >!n::
800 if GetKeyState("CapsLock", "T")
801 Send Ñ ; N with tilde
802 else
803 Send ñ ; n with tilde
804 return
805
806 >!+s::
807 if GetKeyState("CapsLock", "T")
808 Send ß ; small sharp s (Eszett)
809 else
810 Send ẞ ; capital sharp S (capital Eszett)
811 return
812 >!s::
813 if GetKeyState("CapsLock", "T")
814 Send ẞ ; capital sharp S (capital Eszett)
815 else
816 Send ß ; small sharp s (Eszett)
817 return
818
819 >!+t::
820 if GetKeyState("CapsLock", "T")
821 Send þ ; small letter thorn
822 else
823 Send Þ ; capital letter thorn
824 return
825 >!t::
826 if GetKeyState("CapsLock", "T")
827 Send Þ ; capital letter thorn
828 else
829 Send þ ; small letter thorn
830 return
831
832 >!+u::
833 if GetKeyState("CapsLock", "T")
834 Send ü ; u with diaeresis
835 else
836 Send Ü ; U with diaeresis
837 return
838 >!u::
839 if GetKeyState("CapsLock", "T")
840 Send Ü ; U with diaeresis
841 else
842 Send ü ; u with diaeresis
843 return
844
845 >!+h::
846 if GetKeyState("CapsLock", "T")
847 Send ù ; u with grave
848 else
849 Send Ù ; U with grave
850 return
851 >!h::
852 if GetKeyState("CapsLock", "T")
853 Send Ù ; U with grave
854 else
855 Send ù ; u with grave
856 return
857
858 >!+j::
859 if GetKeyState("CapsLock", "T")
860 Send ú ; u with acute
861 else
862 Send Ú ; U with acute
863 return
864 >!j::
865 if GetKeyState("CapsLock", "T")
866 Send Ú ; U with acute
867 else
868 Send ú ; u with acute
869 return
870
871 >!+y::
872 if GetKeyState("CapsLock", "T")
873 Send ÿ ; y with diaeresis
874 else
875 Send Ÿ ; Y with diaeresis
876 return
877 >!y::
878 if GetKeyState("CapsLock", "T")
879 Send Ÿ ; Y with diaeresis
880 else
881 Send ÿ ; y with diaeresis
882 return
883
884 >!+r::
885 if GetKeyState("CapsLock", "T")
886 Send ý ; y with acute
887 else
888 Send Ý ; Y with acute
889 return
890 >!r::
891 if GetKeyState("CapsLock", "T")
892 Send Ý ; Y with acute
893 else
894 Send ý ; y with acute
895 return
896
897 >!k::Send † ; dagger
898 >!+k::Send ‡ ; double dagger
899
900 >!/::Send ¿ ; inverted question mark
901 >!?::Send § ; section sign
902
903 >!1::Send ¡ ; inverted exclamation mark
904 >!+1::Send ¹ ; superscript 1
905
906 >!2::Send © ; copyright sign
907 >!+2::Send ² ; superscript 2
908
909 >!3::Send ± ; plus-minus sign
910 >!+3::Send ³ ; superscript 3
911
912 >!4::Send £ ; pound sign
913 >!+4::Send ¥ ; yen sign
914
915 >!5::Send € ; euro sign
916 >!+5::Send ¢ ; cent sign (dollar)
917
918 >!8::Send „ ; double low-9 quotation mark
919 >!+8::Send ‚ ; single low-9 quotation mark
920
921 >!9::Send “ ; left double quotation mark
922 >!+9::Send ‘ ; left single quotation mark
923
924 >!0::Send ” ; right double quotation mark
925 >!+0::Send ’ ; right single quotation mark
926
927 >!=::Send × ; multiplication sign
928 >!+=::Send ÷ ; division sign
929
930 >![::Send « ; left-pointing double angle quotation mark
931 >!{::Send ‹ ; left-pointing single angle quotation mark
932
933 >!]::Send » ; right-pointing double angle quotation mark
934 >!}::Send › ; right-pointing single angle quotation mark
935
936 >!;::Send ° ; degree sign
937 >!+;::Send ¶ ; pilcrow sign
938
939 >!\::Send ¬ ; not sign
940 >!|::Send ¦ ; broken bar
941
942 >!6::
943 Input, key, L1, {delete}{esc}{home}{end}
944 Send % dkCircumflex.item(key)
945 return
946 >!+6::
947 Input, key, L1, {delete}{esc}{home}{end}
948 Send % dkCaron.item(key)
949 return
950
951 >!7::
952 Input, key, L1, {delete}{esc}{home}{end}
953 Send % dkRingDotAbove.item(key)
954 return
955 >!+7::
956 Input, key, L1, {delete}{esc}{home}{end}
957 Send % dkMacron.item(key)
958 return
959
960 >!-::
961 Input, key, L1, {delete}{esc}{home}{end}
962 Send % dkCedillaOgonek.item(key)
963 return
964 >!_::
965 Input, key, L1, {delete}{esc}{home}{end}
966 Send % dkBreveSpecial.item(key)
967 return
968
969 >!'::
970 Input, key, L1, {delete}{esc}{home}{end}
971 Send % dkAcuteAccent.item(key)
972 return
973 >!"::
974 Input, key, L1, {delete}{esc}{home}{end}
975 Send % dkDiaeresis.item(key)
976 return
977
978 >!`::
979 Input, key, L1, {delete}{esc}{home}{end}
980 Send % dkGraveAccent.item(key)
981 return
982 >!~::
983 Input, key, L1, {delete}{esc}{home}{end}
984 Send % dkTilde.item(key)
985 return
986
987 >!m::
988 Input, key, L1, {delete}{esc}{home}{end}
989 Send % dkGreekAlphabet.item(key)
990 return
991 >!+m::
992 Input, key, L1, {delete}{esc}{home}{end}
993 Send % dkSymbols.item(key)
994 return
995
996 >!space::Send   ; no-break space