root/windows/autohotkey/Source/Keys-Neo.ahk @ 886

Revision 886, 34.7 KB (checked in by stmayer, 5 years ago)

Ellipse (vertikal und horizontal) wiederhergestellt (ahk)

Line 
1/*
2  Die eigentliche NEO-Belegung und der Hauptteil des AHK-Treibers.
3
4  Reihe 1
5*/
6
7neo_tot1:
8  noCaps = 1
9  EbeneAktualisieren()
10  if (Ebene = 1) and !CheckDeadUni("c1",0x0302)
11    deadUni(0x02C6, "dead_circumflex", "c1") ; Zirkumflex, tot
12  else if (Ebene = 2) and !CheckDeadUni("c2",0x030C)
13    deadUni(0x02C7, "dead_caron", "c2") ; Caron, tot
14  else if (Ebene = 3) and !CheckDeadUni("c3",0x0306)
15    deadUni(0x02D8, "dead_breve", "c3") ; Brevis, tot
16  ;CompKey := PriorCompKey
17return
18
19neo_1:
20  noCaps=1
21  EbeneAktualisieren()
22  if Ebene12 and !(CheckDeadUni("c1",0x00B9) ; Hochgestellte 1
23                or CheckDeadUni("c5",0x2081)) ; Tiefgestellte 1
24    OutputChar12(1,"�",1,"degree")
25  else if (Ebene = 3)
26    SendUnicodeChar(0x00B9, "onesuperior") ; Hochgestellte 1
27  else if (Ebene = 4)
28    SendUnicodeChar(0x2022, "enfilledcircbullet") ; Bullet
29  else if (Ebene = 5)
30    SendUnicodeChar(0x2081, "U2081") ; Tiefgestellte 1
31  else if (Ebene = 6)
32    SendUnicodeChar(0x00AC, "notsign") ; Nicht-Symbol
33return
34
35neo_2:
36  noCaps = 1
37  EbeneAktualisieren()
38  if (Ebene = 1 and !(CheckDeadUni("c1",0x00B2) ; Hochgestellte 2
39                   or CheckDeadUni("c5",0x2082))) ; Tiefgestellte 2
40    OutputChar(2,2)
41  else if (Ebene = 2)
42    SendUnicodeChar(0x2116, "numerosign") ; Numero
43  else if (Ebene = 3)
44    SendUnicodeChar(0x00B2, "twosuperior") ; Hochgestellte 2
45  else if (Ebene = 4)
46    SendUnicodeChar(0x2023, "U2023") ; Aufz�hlungspfeil
47  else if (Ebene = 5)
48    SendUnicodeChar(0x2082, "U2082") ; Tiefgestellte 2
49  else if (Ebene = 6)
50    SendUnicodeChar(0x2228, "logicalor") ; Logisches Oder
51return
52
53neo_3:
54  noCaps = 1
55  EbeneAktualisieren()
56  if Ebene12 and !(CheckDeadUni("c1",0x00B3) ; Hochgestellte 3
57                or CheckDeadUni("c5",0x2083)) ; Tiefgestellte 3
58    OutputChar12(3,"�",3,"section")
59  else if (Ebene = 3)
60    SendUnicodeChar(0x00B3, "threesuperior") ; Hochgestellte 3
61  else if (Ebene = 4)
62    SendUnicodeChar(0x266B, "U226B") ; 2 Achtelnoten
63  else if (Ebene = 5)
64    SendUnicodeChar(0x2083, "U2083") ; Tiefgestellte 3
65  else if (Ebene = 6)
66    SendUnicodeChar(0x2227, "logicaland") ; Logisches Und
67return
68
69neo_4:
70  noCaps = 1
71  EbeneAktualisieren()
72  if (Ebene = 1) and !(CheckDeadUni("c1",0x2074) ; Hochgestellte 4
73                    or CheckDeadUni("c5",0x2084)) ; Tiefgestellte 4
74    OutputChar(4,4)
75  else if (Ebene = 2)
76    SendUnicodeChar(0x00BB, "guillemotright") ; Double guillemot right
77  else if (Ebene = 3)
78    OutputChar("�", "U230A") ; Single guillemot right
79  else if (Ebene = 4)
80    OutputChar("{PgUp}", "Prior") ; Bild auf
81  else if (Ebene = 5)
82    SendUnicodeChar(0x2113, "U2213") ; Script small L
83  else if (Ebene = 6)
84    SendUnicodeChar(0x22A5, "uptack") ; Senkrecht
85return
86
87neo_5:
88  noCaps = 1
89  EbeneAktualisieren()
90  if (Ebene = 1) and !(CheckDeadUni("c1",0x2075) ; Hochgestellte 5
91                    or CheckDeadUni("c5",0x2085)) ; Tiefgestellte 5
92    OutputChar(5,5)
93  else if (Ebene = 2)
94    SendUnicodeChar(0x00AB, "guillemotleft") ; Double guillemot left
95  else if (Ebene = 3)
96    OutputChar("�", "U2039") ; Single guillemot left
97  else if (Ebene = 5)
98    SendUnicodeChar(0x0AF8, "femalesymbol") ; Kreuz (Dagger)
99  else if (Ebene = 6)
100    SendUnicodeChar(0x2221, "U2221") ; Winkel
101return
102
103neo_6:
104  noCaps = 1
105  EbeneAktualisieren()
106  if (Ebene = 1) and !(CheckDeadUni("c1",0x2076) ; Hochgestellte 6
107                    or CheckDeadUni("c5",0x2086)) ; Tiefgestellte 6
108    OutputChar(6,6)
109  else if (Ebene = 2)
110    SendUnicodeChar(0x20AC, "EuroSign")
111  else if (Ebene = 3)
112    OutputChar("�", "cent")
113  else if (Ebene = 4)
114    OutputChar("�", "sterling")
115  else if (Ebene = 5)
116    SendUnicodeChar(0x0AF7, "malesymbol")
117  else if (Ebene = 6)
118    SendUnicodeChar(0x2225, "U2225") ; parallel
119return
120
121neo_7:
122  noCaps = 1
123  EbeneAktualisieren()
124  if Ebene12 and !(CheckDeadUni("c1",0x2077) ; Hochgestellte 7
125                or CheckDeadUni("c5",0x2087)) ; Tiefgestellte 7
126    OutputChar12(7,"$",7,"dollar")
127  else if (Ebene = 3)
128    OutputChar("�", "yen")
129  else if (Ebene = 4)
130    OutputChar("�", "currency")
131  else if (Ebene = 5)
132    SendUnicodeChar(0x03BA, "Greek_kappa") ; greek small letter kappa
133  else if (Ebene = 6)
134    SendUnicodeChar(0x2209, "notelementof") ; nicht Element von
135return
136
137neo_8:
138  noCaps = 1
139  EbeneAktualisieren()
140  if Ebene12 and !(CheckDeadUni("c1",0x2078) ; Hochgestellte 8
141            or CheckDeadUni("c5",0x2088)) ; Tiefgestellte 8
142    OutputChar12(8,"�",8,"doublelowquotemark")
143  else if (Ebene = 3)
144    OutputChar("�", "singlelowquotemark")
145  else if (Ebene = 4)
146    OutputChar("{NumpadDiv}", "KP_Divide")
147  else if (Ebene = 5)
148    SendUnicodeChar(0x27E8, "U27E8") ; bra (�ffnende spitze Klammer)
149  else if (Ebene = 6)
150    SendUnicodeChar(0x2204, "U2204") ; es existiert nicht
151return
152
153neo_9:
154  noCaps = 1
155  EbeneAktualisieren()
156  if Ebene12 and !(CheckDeadUni("c1",0x2079) ; Hochgestellte 9
157      or CheckDeadUni("c5",0x2089)) ; Tiefgestellte 9
158    OutputChar12(9,"�",9,"leftdoublequotemark")
159  else if (Ebene = 3)
160    OutputChar("�", "leftsinglequotemark")
161  else if (Ebene = 4)
162    OutputChar("{NumpadMult}", "KP_Multiply")
163  else if (Ebene = 5)
164    SendUnicodeChar(0x27E9, "U27E9") ; ket (schlie�ende spitze Klammer)
165  else if (Ebene = 6)
166    SendUnicodeChar(0x2226, "U2226") ; nicht parallel
167return
168
169neo_0:
170  noCaps = 1
171  EbeneAktualisieren()
172  if Ebene12 and !(CheckDeadUni("c1",0x2070) ; Hochgestellte 0
173      or CheckDeadUni("c5",0x2080)) ; Tiefgestellte 0
174    OutputChar12(0,"�",0,"rightdoublequotemark")
175   else if (Ebene = 3)
176     OutputChar("�", "rightsingleqoutemark")
177   else if (Ebene = 4)
178     OutputChar("{NumpadSub}", "minus") ; s. Mail vom Sun, 14 Sep 2008 00:33:47 +0200
179   else if (Ebene = 6)
180     SendUnicodeChar(0x2205, "emptyset") ; leere Menge
181return
182
183neo_strich:
184  noCaps = 1
185  EbeneAktualisieren()
186  if (Ebene = 1)
187    OutputChar("-", "minus") ; Bindestrich-Minus
188  else if (Ebene = 2)
189    SendUnicodeChar(0x2013, "endash") ; Gedankenstrich
190  else if (Ebene = 3)
191    SendUnicodeChar(0x2014, "emdash") ; Englischer Gedankenstrich (Geviertstrich)
192  else if (Ebene = 5)
193    SendUnicodeChar(0x2011, "U2011") ; gesch�tzter Bindestrich (Bindestrich ohne Zeilenumbruch)
194  else if (Ebene = 6)
195    SendUnicodeChar(0x00AD, "hyphen") ; weicher Bindestrich
196return
197
198neo_tot2:
199  noCaps = 1
200  EbeneAktualisieren()
201  if (Ebene = 1) and !CheckDeadUni("a1",0x0301)
202    deadAsc("{�}{space}", "dead_acute", "a1") ; Akut, tot
203  else if (Ebene = 2) and !CheckDeadUni("a2",0x0300)
204    deadAsc("``{space}", "dead_grave", "a2") ; Gravis, tot
205  else if (Ebene = 3) and !CheckDeadUni("a3",0x0327)
206    deadAsc("�", "dead_cedilla", "a3") ; Cedilla, tot
207  else if (Ebene = 4) and !CheckDeadUni("a4",0x0307)
208    deadUni(0x02D9, "dead_abovedot", "a4") ; Punkt oben
209  else if (Ebene = 5) and !CheckDeadUni("a5",0x0328)
210    deadUni(0x02DB, "dead_ogonek", "a5") ; Ogonek
211  else if (Ebene = 6) and !CheckDeadUni("a6",0x030A)
212    deadUni(0x02DA, "dead_abovering", "a6") ; Ring oben
213  CompKey := PriorCompKey
214return
215
216
217/*
218
219  Reihe 2
220
221*/
222
223neo_x:
224  EbeneAktualisieren()
225  if Ebene12
226    OutputChar12("x","X","x","X")
227  else if (Ebene = 3)
228    SendUnicodeChar(0x2026, "ellipsis") ; Ellipse horizontal
229  else if (Ebene = 4)
230    SendUnicodeChar(0x22EE, "U22EE") ; Ellipse vertikal
231  else if (Ebene = 5)
232    SendUnicodeChar(0x03BE, "Greek_xi") ; xi
233  else if (Ebene = 6)
234    SendUnicodeChar(0x039E, "Greek_XI") ; Xi
235return
236
237neo_v:
238  EbeneAktualisieren()
239  if (Ebene12 and !(CheckDeadUni12("c6",0x1E7F,0x1E7E)))
240    OutputChar12("v","V","v","V")
241  else if (Ebene = 3)
242    OutputChar("_","underscore")
243  else if (Ebene = 4) and (!lernModus or lernModus_neo_Backspace)
244    OutputChar("{Backspace}", "BackSpace")
245  else if (Ebene = 6)
246    SendUnicodeChar(0x2259, "U2259") ; estimates/entspricht
247return
248
249neo_l:
250  EbeneAktualisieren()
251  if (Ebene12 and !(CheckDeadUni12("a1",0x013A,0x0139)
252                 or CheckDeadUni12("a3",0x013C,0x013B)
253                 or CheckDeadUni12("c2",0x013E,0x013D)
254                 or CheckDeadUni12("c4",0x0140,0x013F)
255                 or CheckDeadUni12("c6",0x1E37,0x1E36)
256                 or CheckDeadUni12("t4",0x0142,0x0141)))
257    OutputChar12("l","L","l","L")
258  else if (Ebene = 3)
259    OutputChar("[", "bracketleft")
260  else if (Ebene = 4)
261    OutputChar("{Up}", "Up")
262  else if (Ebene = 5)
263    SendUnicodeChar(0x03BB, "Greek_lambda") ; lambda
264  else if (Ebene = 6)
265    SendUnicodeChar(0x039B, "Greek_LAMBDA") ; Lambda
266return
267
268neo_c:
269  EbeneAktualisieren()
270  if (Ebene12 and !(CheckDeadUni12("a1",0x0107,0x0106)
271                 or CheckDeadUni12("a3",0x00E7,0x00E6)
272                 or CheckDeadUni12("a4",0x010B,0x010A)
273                 or CheckDeadUni12("c1",0x0109,0x0108)
274                 or CheckDeadUni12("c2",0x010D,0x010C)))
275    OutputChar12("c","C","c","C")
276  else if (Ebene = 3)
277    OutputChar("]", "bracketright")
278  else if (Ebene = 4) and (!lernModus or lernModus_neo_Entf)
279    OutputChar("{Del}", "Delete")
280  else if (Ebene = 5)
281    SendUnicodeChar(0x03C7, "Greek_chi") ; chi
282  else if (Ebene = 6)
283    SendUnicodeChar(0x2102, "U2102") ; C (Komplexe Zahlen)]
284return
285
286neo_w:
287  EbeneAktualisieren()
288  if (Ebene12 and !(CheckDeadUni12("c1",0x0175,0x0174)))
289    OutputChar12("w","W","w","W")
290  else if (Ebene = 3)
291    SendUnicodeChar(0x005E, "asciicircum") ; Zirkumflex
292  else if (Ebene = 4)
293    OutputChar("{Insert}", "Insert") ; Einfg
294  else if (Ebene = 5)
295    SendUnicodeChar(0x03C9, "Greek_omega") ; omega
296  else if (Ebene = 6)
297    SendUnicodeChar(0x03A9, "Greek_OMEGA") ; Omega
298return
299
300neo_k:
301  EbeneAktualisieren()
302  if (Ebene12 and !(CheckDeadUni12("a3",0x0137,0x0136)
303                 or CheckDeadUni12("c6",0x1E33,0x1E32)))
304    OutputChar12("k","K","k","K")
305  else if (Ebene = 3)
306    OutputChar("{!}", "exclam")
307  else if (Ebene = 4)
308    OutputChar("�", "exclamdown")
309  else if (Ebene = 5)
310    SendUnicodeChar(0x03F0, "U03F0") ; kappa symbol (varkappa)
311  else if (Ebene = 6)
312    SendUnicodeChar(0x221A, "radical") ; Wurzel
313return
314
315neo_h:
316  EbeneAktualisieren()
317  if (Ebene12 and !(CheckDeadUni12("a4",0x1E23,0x1E22)
318                 or CheckDeadUni12("c1",0x0125,0x0124)
319                 or CheckDeadUni12("c5",0x0127,0x0126)
320                 or CheckDeadUni12("c6",0x1E25,0x1E24)))
321    OutputChar12("h","H","h","H")
322  else if ((Ebene = 3) and !(CheckDeadUni("t4",0x2264))) ; kleiner gleich
323    OutputChar("<", "less")
324  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2077)
325                          or CheckDeadUni("t4",0x2087)))
326    OutputChar("{Numpad7}", "KP_7")
327  else if (Ebene = 5)
328    SendUnicodeChar(0x03C8, "Greek_psi") ; psi
329  else if (Ebene = 6)
330    SendUnicodeChar(0x03A8, "Greek_PSI") ; Psi
331return
332
333neo_g:
334  EbeneAktualisieren()
335  if (Ebene12 and !(CheckDeadUni12("a3",0x0123,0x0122)
336                 or CheckDeadUni12("a4",0x0121,0x0120)
337                 or CheckDeadUni12("c1",0x011D,0x011C)
338                 or CheckDeadUni12("c3",0x011F,0x011E)))
339    OutputChar12("g","G","g","G")
340  else if ((Ebene = 3) and !(CheckDeadUni("t4",0x2265))) ; gr��er gleich
341    OutputChar(">", "greater")
342  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2078)
343                          or CheckDeadUni("t4",0x2088)))
344    OutputChar("{Numpad8}", "KP_8")
345  else if (Ebene = 5)
346    SendUnicodeChar(0x03B3, "Greek_gamma") ; gamma
347  else if (Ebene = 6)
348    SendUnicodeChar(0x0393, "Greek_GAMMA") ; Gamma
349return
350
351neo_f:
352  EbeneAktualisieren()
353  if (Ebene12 and !(CheckDeadUni12("a4",0x1E1F,0x1E1E)
354                 or CheckDeadUni12("t4",0x0192,0x0191)))
355    OutputChar12("f","F","f","F")
356  else if ((Ebene = 3) and !(CheckDeadUni("a6",0x2257) ; ring equal to
357                          or CheckDeadUni("c1",0x2259) ; entspricht
358                          or CheckDeadUni("c2",0x225A) ; EQUIANGULAR TO
359                          or CheckDeadUni("t2",0x2261) ; identisch
360                          or CheckDeadUni("t1",0x2245) ; ungef�hr gleich
361                          or CheckDeadUni("t4",0x2260))) ; ungleich
362    OutputChar("`=", "equal")
363  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2079)
364                          or CheckDeadUni("t4",0x2089)))
365    OutputChar("{Numpad9}", "KP_9")
366  else if (Ebene = 5)
367    SendUnicodeChar(0x03C6, "Greek_phi") ; phi
368  else if (Ebene = 6)
369    SendUnicodeChar(0x03A6, "Greek_PHI") ; Phi
370return
371
372neo_q:
373  EbeneAktualisieren()
374  if (Ebene12)
375     OutputChar12("q","Q","q","Q")
376  else if (Ebene = 3)
377    OutputChar("{&}", "ampersand")
378  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x207A)
379                          or CheckDeadUni("c5",0x208A)))
380    OutputChar("{NumPadAdd}", "plus") ; !!!
381  else if (Ebene = 5)
382     SendUnicodeChar(0x03D5, "U03D5") ; phi symbol (varphi)
383  else if (Ebene = 6)
384     SendUnicodeChar(0x211A, "U211A") ; Q (rationale Zahlen)
385return
386
387neo_sz:
388  EbeneAktualisieren()
389  if (Ebene = 1)
390    if LangSTastatur
391      OutputChar("s", "s")
392    else OutputChar("�", "ssharp")
393  else if (Ebene = 2)
394    SendUnicodeChar(0x1E9E, "U1E9E") ; versal-�
395  else if (Ebene = 3)
396    if LangSTastatur
397      OutputChar("�", "ssharp")
398    else SendUnicodeChar(0x017F, "17F") ; langes s
399  else if (Ebene = 5)
400    SendUnicodeChar(0x03C2, "Greek_finalsmallsigma") ; varsigma
401  else if (Ebene = 6)
402    SendUnicodeChar(0x2218, "jot") ; Verkn�pfungsoperator
403return
404
405
406neo_tot3:
407  noCaps = 1
408  EbeneAktualisieren()
409  if (Ebene = 1) and !CheckDeadUni("t1",0x0303)
410    deadUni(0x02DC, "dead_tilde", "t1") ; Tilde, tot
411  else if (Ebene = 2) and !CheckDeadUni("t2",0x0304)
412    deadUni(0x00AF, "dead_macron", "t2") ; Macron, tot
413  else if (Ebene = 3) and !CheckDeadUni("t3",0x0308)
414    deadUni(0x00A8, "dead_diaeresis", "t3") ; Di�rese
415  else if (Ebene = 4) and !CheckDeadUni("t4",0x0338)
416    deadUni(0x002F, "", "t4") ; Schr�gstrich, tot
417  else if (Ebene = 5) and !CheckDeadUni("t5",0x030B)
418    deadUni(0x02DD, "dead_doubleacute", "t5") ; Doppelakut
419  else if (Ebene = 6) and !CheckDeadUni("t6",0x0326)
420    deadUni(0x02CF, "", "t6") ; Komma drunter, tot
421return
422
423
424/*
425
426  Reihe 3
427
428*/
429
430neo_u:
431  EbeneAktualisieren()
432  if (Ebene12 and !(CheckDeadUni12("a1",0x00FA,0x00DA)
433                 or CheckDeadUni12("a2",0x00F9,0x00D9)
434                 or CheckDeadUni12("a5",0x0173,0x0172)
435                 or CheckDeadUni12("a6",0x016F,0x016E)
436                 or CheckDeadUni12("c1",0x00FB,0x00DB)
437                 or CheckDeadUni12("c2",0x01D4,0x01D3)
438                 or CheckDeadUni12("c3",0x016D,0x016C)
439                 or CheckDeadUni12("t1",0x0169,0x0168)
440                 or CheckDeadUni12("t2",0x016B,0x016A)
441                 or CheckDeadAsc12("t3","�","�")
442                 or CheckDeadUni12("t5",0x0171,0x0170)))
443    OutputChar12("u","U","u","U")
444  else if (Ebene = 3)
445    OutputChar("\", "backslash")
446  else if (Ebene = 4)
447    OutputChar("{Home}", "Home")
448  else if (Ebene = 6)
449    SendUnicodeChar(0x222E, "U222E") ; contour integral
450return
451
452neo_i:
453  EbeneAktualisieren()
454  if (Ebene12 and !(CheckDeadUni12("a1",0x00ED,0x00CD)
455                 or CheckDeadUni12("a2",0x00EC,0x00CC)
456                 or CheckDeadUni12("a4",0x012F,0x012E)
457                 or CheckDeadUni12("a5",0x0131,0x0130)
458                 or CheckDeadUni12("c1",0x00EE,0x00CE)
459                 or CheckDeadUni12("c2",0x01D0,0x01CF)
460                 or CheckDeadUni12("c3",0x012D,0x012C)
461                 or CheckDeadUni12("t1",0x0129,0x0128)
462                 or CheckDeadUni12("t2",0x012B,0x012A)
463                 or CheckDeadAsc12("t3","�","�")))
464    OutputChar12("i","I","i","I")
465  else if (Ebene = 3)
466    OutputChar("`/", "slash")
467  else if (Ebene = 4)
468    OutputChar("{Left}", "Left")
469  else if (Ebene = 5)
470    SendUnicodeChar(0x03B9, "Greek_iota") ; iota
471  else if (Ebene = 6)
472    SendUnicodeChar(0x222B, "integral") ; integral
473return
474
475neo_a:
476  EbeneAktualisieren()
477  if (Ebene12 and !(CheckDeadUni12("a1",0x00E1,0x00C1)
478                or CheckDeadUni12("a2",0x00E0,0x00C0)
479                or CheckDeadUni12("a5",0x0105,0x0104)
480                or CheckDeadAsc12("a6","�","�")
481                or CheckDeadUni12("c1",0x00E2,0x00C2)
482                or CheckDeadUni12("c2",0x01CE,0x01CD)
483                or CheckDeadUni12("c3",0x0103,0x0102)
484                or CheckDeadUni12("t1",0x00E3,0x00C3)
485                or CheckDeadUni12("t2",0x0101,0x0100)
486                or CheckDeadAsc12("t3","�","�")))
487    OutputChar12("a","A","a","A")
488  else if (Ebene = 3)
489    OutputChar("{{}", "braceleft")
490  else if (Ebene = 4)
491    OutputChar("{Down}", "Down")
492  else if (Ebene = 5)
493    SendUnicodeChar(0x03B1, "Greek_alpha") ; alpha
494  else if (Ebene = 6)
495    SendUnicodeChar(0x2200, "U2200") ; f�r alle
496return
497
498neo_e:
499  EbeneAktualisieren()
500  if (Ebene12 and !(CheckDeadUni12("a1",0x00E9,0x00C9)
501                 or CheckDeadUni12("a2",0x00E8,0x00C8)
502                 or CheckDeadUni12("a4",0x0117,0x0116)
503                 or CheckDeadUni12("a5",0x0119,0x0118)
504                 or CheckDeadUni12("c1",0x00EA,0x00CA)
505                 or CheckDeadUni12("c2",0x011B,0x011A)
506                 or CheckDeadUni12("c3",0x0115,0x0114)
507                 or CheckDeadUni12("t1",0x1EBD,0x1EBC)
508                 or CheckDeadUni12("t2",0x0113,0x0112)
509                 or CheckDeadAsc12("t3","�","�")))
510    OutputChar12("e","E","e","E")
511  else if (Ebene = 3)
512    OutputChar("{}}", "braceright")
513  else if (Ebene = 4)
514    OutputChar("{Right}", "Right")
515  else if (Ebene = 5)
516    SendUnicodeChar(0x03B5, "Greek_epsilon") ; epsilon
517  else if (Ebene = 6)
518    SendUnicodeChar(0x2203, "U2203") ; es existiert
519return
520
521neo_o:
522  EbeneAktualisieren()
523  if (Ebene12 and !(CheckDeadUni12("a1",0x00F3,0x00D3)
524                 or CheckDeadUni12("a2",0x00F2,0x00D2)
525                 or CheckDeadUni12("a5",0x01EB,0x01EA)
526                 or CheckDeadUni12("c1",0x00F4,0x00D4)
527                 or CheckDeadUni12("c2",0x01D2,0x01D1)
528                 or CheckDeadUni12("c3",0x014F,0x014E)
529                 or CheckDeadUni12("t1",0x00F5,0x00D5)
530                 or CheckDeadUni12("t2",0x014D,0x014C)
531                 or CheckDeadAsc12("t3","�","�")
532                 or CheckDeadUni12("t4",0x00F8,0x00D8)
533                 or CheckDeadUni12("t5",0x0151,0x0150)))
534    OutputChar12("o","O","o","O")
535  else if (Ebene = 3)
536    OutputChar("*", "asterisk")
537  else if (Ebene = 4)
538    OutputChar("{End}", "End")
539  else if (Ebene = 5)
540    SendUnicodeChar(0x03BF, "Greek_omicron") ; omicron
541  else if (Ebene = 6)
542    SendUnicodeChar(0x2208, "elementof") ; element of
543return
544
545neo_s:
546  EbeneAktualisieren()
547  if (Ebene12 and !(CheckDeadUni12("a1",0x015B,0x015A)
548                 or CheckDeadUni12("a3",0x015F,0x015E)
549                 or CheckDeadUni12("a4",0x1E61,0x1E60)
550                 or CheckDeadUni12("c1",0x015D,0x015C)
551                 or CheckDeadUni12("c2",0x0161,0x0160)
552                 or CheckDeadUni12("c6",0x1E63,0x1A62))) {
553    if LangSTastatur and (Ebene = 1)
554      SendUnicodeChar(0x017F, "17F") ; langes s
555    else OutputChar12("s","S","s","S")
556  } else if (Ebene = 3)
557    OutputChar("?", "question")
558  else if Ebene7 {
559    if LangSTastatur
560      OutputChar("s", "s")
561    else SendUnicodeChar(0x017F, "17F")
562  } else if (Ebene = 4)
563    OutputChar("�", "questiondown")
564  else if (Ebene = 5)
565    SendUnicodeChar(0x03C3, "Greek_sigma") ;sigma
566  else if (Ebene = 6)
567    SendUnicodeChar(0x03A3, "Greek_SIGMA") ;Sigma
568return
569
570neo_n:
571  EbeneAktualisieren()
572  if (Ebene12 and !(CheckDeadUni12("a1",0x0144,0x0143)
573                 or CheckDeadUni12("a3",0x0146,0x0145)
574                 or CheckDeadUni12("a4",0x1E45,0x1E44)
575                 or CheckDeadUni12("c2",0x0148,0x0147)
576                 or CheckDeadUni12("t1",0x00F1,0x00D1)))
577    OutputChar12("n","N","n","N")
578  else if (Ebene = 3)
579    OutputChar("(", "parenleft")
580  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2074)
581                          or CheckDeadUni("t4",0x2084)))
582    OutputChar("{Numpad4}", "KP_4")
583  else if (Ebene = 5)
584    SendUnicodeChar(0x03BD, "Greek_nu") ; nu
585  else if (Ebene = 6)
586    SendUnicodeChar(0x2115, "U2115") ; N (nat�rliche Zahlen)
587return
588
589neo_r:
590  EbeneAktualisieren()
591  if (Ebene12 and !(CheckDeadUni12("a1",0x0155,0x0154)
592                 or CheckDeadUni12("a3",0x0157,0x0156)
593                 or CheckDeadUni12("a4",0x0E59,0x0E58)
594                 or CheckDeadUni12("c2",0x0159,0x0158)
595                 or CheckDeadUni12("t3",0x1E5B,0x1E5A)))
596    OutputChar12("r","R","r","R")
597  else if (Ebene = 3)
598    OutputChar(")", "parenright")
599  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2075)
600                          or CheckDeadUni("t4",0x2085)))
601    OutputChar("{Numpad5}", "KP_5")
602  else if (Ebene = 5)
603    SendUnicodeChar(0x03F1, "U03F1") ; rho symbol (varrho)
604  else if (Ebene = 6)
605    SendUnicodeChar(0x211D, "U221D") ; R (reelle Zahlen)
606return
607
608neo_t:
609  EbeneAktualisieren()
610  if (Ebene12 and !(CheckDeadUni12("a3",0x0163,0x0162)
611                 or CheckDeadUni12("a4",0x1E6B,0x1E6A)
612                 or CheckDeadUni12("c2",0x0165,0x0164)
613                 or CheckDeadUni12("c5",0x0167,0x0166)
614                 or CheckDeadUni12("t4",0x1E6D,0x1E6C)
615                 or CheckDeadUni("t3",0x1E97)))
616    OutputChar12("t","T","t","T")
617  else if (Ebene = 3)
618    OutputChar("-", "minus") ; Bisstrich
619  else if (Ebene = 4) and !(CheckDeadUni("c1",0x2076)
620                          or CheckDeadUni("c5",0x2086))
621    OutputChar("{Numpad6}", "KP_6")
622  else if (Ebene = 5)
623    SendUnicodeChar(0x03C4, "Greek_tau") ; tau
624  else if (Ebene = 6)
625    SendUnicodeChar(0x2202, "partialderivative") ; partielle Ableitung
626return
627
628neo_d:
629   EbeneAktualisieren()
630   if (Ebene12 and !(CheckDeadUni12("a4",0x1E0B,0x1E0A)
631                  or CheckDeadUni12("c2",0x010F,0x010E)
632                  or CheckDeadUni12("t2",0x0111,0x0110)
633                  or CheckDeadUni12("t3",0x1E0D,0x1E0C)
634                  or CheckDeadUni12("t4",0x00F0,0x00D0)))
635     OutputChar12("d","D","d","D")
636   else if (Ebene = 3)
637     OutputChar(":", "colon")
638   else if (Ebene = 4)
639     OutputChar("`,", "comma")
640   else if (Ebene = 5)
641      SendUnicodeChar(0x03B4, "Greek_delta") ; delta
642   else if (Ebene = 6)
643      SendUnicodeChar(0x0394, "Greek_DELTA") ; Delta
644return
645
646neo_y:
647  EbeneAktualisieren()
648  if (Ebene12 and !(CheckDeadUni12("a1",0x00FD,0x00DD)
649                 or CheckDeadUni12("c1",0x0177,0x0176)
650                 or CheckDeadAsc12("t3","�","�")))
651    OutputChar12("y","Y","y","Y")
652  else if (Ebene = 3)
653    OutputChar("@", "at")
654  else if (Ebene = 4)
655    OutputChar(".", "period")
656  else if (Ebene = 5)
657    SendUnicodeChar(0x03C5, "Greek_upsilon") ; upsilon
658  else if (Ebene = 6)
659    SendUnicodeChar(0x2207, "nabla") ; nabla
660return
661
662/*
663
664  Reihe 4
665
666*/
667
668neo_�:
669  EbeneAktualisieren()
670  if (Ebene12 and !(CheckDeadUni12("a1",0x01D8,0x01D7)
671                 or CheckDeadUni12("a2",0x01DC,0x01DB)
672                 or CheckDeadUni12("c2",0x01DA,0x01D9)
673                 or CheckDeadUni12("t2",0x01D6,0x01D5)))
674    OutputChar12("�","�","udiaeresis","Udiaeresis")
675  else if (Ebene = 3)
676    if isMod2Locked
677      OutputChar("{Shift Up}{#}", "numbersign")
678    else OutputChar("{blind}{#}", "numbersign")
679  else if (Ebene = 4)
680    OutputChar("{Esc}", "Escape")
681  else if (Ebene = 6)
682    SendUnicodeChar(0x221D, "variation") ; proportional
683return
684
685neo_�:
686  EbeneAktualisieren()
687  if (Ebene12 and !(CheckDeadUni12("t2",0x022B,0x022A)))
688    OutputChar12("�","�","odiaeresis","Odiaeresis")
689  else if (Ebene = 3)
690    OutputChar("$", "dollar")
691  else if (Ebene = 4)
692    OutputChar("{Tab}", "Tab")
693  else if (Ebene = 6)
694    SendUnicodeChar(0x2111, "U2221") ; Fraktur I
695return
696
697neo_�:
698  EbeneAktualisieren()
699  if (Ebene12 and !(CheckDeadUni12("t2",0x01DF,0x01DE)))
700    OutputChar12("�","�","adiaeresis","Adiaeresis")
701  else if (Ebene = 3)
702    OutputChar("|", "bar")
703  else if (Ebene = 4)
704    OutputChar("{PgDn}", "Next")
705  else if (Ebene = 5)
706    SendUnicodeChar(0x03B7, "Greek_eta") ; eta
707  else if (Ebene = 6)
708    SendUnicodeChar(0x211C, "U221C") ; Fraktur R
709return
710
711neo_p:
712  EbeneAktualisieren()
713  if (Ebene12 and !(CheckDeadUni12("a4",0x1E57,0x1E56)))
714    OutputChar12("p","P","p","P")
715  else if ((Ebene = 3) and !(CheckDeadUni("t1",0x2248)))
716    OutputChar("~", "asciitilde")
717  else if (Ebene = 4)
718    OutputChar("{Enter}", "Return")
719  else if (Ebene = 5)
720    SendUnicodeChar(0x03C0, "Greek_pi") ; pi
721  else if (Ebene = 6)
722    SendUnicodeChar(0x03A0, "Greek_PI") ; Pi
723return
724
725neo_z:
726  EbeneAktualisieren()
727  if (Ebene12 and !(CheckDeadUni12("a1",0x017A,0x0179)
728                 or CheckDeadUni12("a4",0x017C,0x017B)
729                 or CheckDeadUni12("c2",0x017E,0x017D)
730                 or CheckDeadUni12("c6",0x1E93,0x1E92)))
731    OutputChar12("z","Z","z","Z")
732  else if (Ebene = 3)
733    OutputChar("``{space}", "grave") ; untot
734  else if (Ebene = 5)
735    SendUnicodeChar(0x03B6, "Greek_zeta") ; zeta
736  else if (Ebene = 6)
737    SendUnicodeChar(0x2124, "U2124") ; Z (ganze Zahlen)
738return
739
740neo_b:
741  EbeneAktualisieren()
742  if (Ebene12 and !(CheckDeadUni12("a4",0x1E03,0x1E02)))
743    OutputChar12("b","B","b","B")
744  else if (Ebene = 3)
745    if isMod2Locked
746      OutputChar("{Shift Up}{+}", "plus")
747    else OutputChar("{blind}{+}", "plus")
748  else if (Ebene = 4)
749    OutputChar(":", "colon")
750  else if (Ebene = 5)
751    SendUnicodeChar(0x03B2, "Greek_beta") ; beta
752  else if (Ebene = 6)
753    SendUnicodeChar(0x21D2, "implies") ; Doppel-Pfeil rechts
754return
755
756neo_m:
757  EbeneAktualisieren()
758  if (Ebene12 and !(CheckDeadUni12("a4",0x1E41,0x1E40)
759                 or CheckDeadUni12("c6",0x1E43,0x1E42)))
760    OutputChar12("m","M","m","M")
761  else if (Ebene = 3)
762    OutputChar("`%", "percent")
763  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x00B9)
764                          or CheckDeadUni("t4",0x2081)))
765    OutputChar("{Numpad1}", "KP_1")
766  else if (Ebene = 5)
767    SendUnicodeChar(0x03BC, "Greek_mu") ; griechisch mu, micro w�re 0x00B5
768  else if (Ebene = 6)
769    SendUnicodeChar(0x21D4, "ifonlyif") ; doppelter Doppelpfeil (genau dann wenn)
770return
771
772neo_komma:
773  noCaps = 1
774  EbeneAktualisieren()
775  if (Ebene = 1)
776    OutputChar(",", "comma")
777  else if (Ebene = 2)
778    SendUnicodeChar(0x22EE, "U22EE") ; vertikale Ellipse
779  else if (Ebene = 3)
780    OutputChar(Chr(34), "quotedbl")
781  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x00B2)
782                          or CheckDeadUni("c5",0x2082)))
783    OutputChar("{Numpad2}", "KP_2")
784  else if (Ebene = 5)
785    SendUnicodeChar(0x03C1, "Greek_rho") ; rho
786  else if (Ebene = 6)
787    SendUnicodeChar(0x21D0, "U21D0") ; Doppelpfeil links
788return
789
790neo_punkt:
791  noCaps = 1
792  EbeneAktualisieren()
793  if (Ebene = 1)
794    OutputChar(".", "period")
795  else if (Ebene = 2)
796    SendUnicodeChar("0x2026", "U2026") ; Ellipse
797  else if (Ebene = 3)
798    OutputChar("'", "apostrophe")
799  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x00B3)
800                          or CheckDeadUni("t4",0x2083)))
801    OutputChar("{Numpad3}", "KP_3")
802  else if (Ebene = 5)
803    SendUnicodeChar(0x03D1, "U03D1") ; theta symbol (vartheta)
804  else if (Ebene = 6)
805    SendUnicodeChar(0x0398, "Greek_THETA") ; Theta
806return
807
808
809neo_j:
810  EbeneAktualisieren()
811  if (Ebene12 and !(CheckDeadUni12("c1",0x0135,0x0134)
812                 or CheckDeadUni("c2",0x01F0)))
813    OutputChar12("j","J","j","J")
814  else if (Ebene = 3)
815    OutputChar("`;", "semicolon")
816  else if (Ebene = 4)
817    OutputChar("`;", "semicolon")
818  else if (Ebene = 5)
819    SendUnicodeChar(0x03B8, "Greek_theta") ; theta
820  else if (Ebene = 6)
821    SendUnicodeChar(0x2261, "identical") ; identisch
822return
823
824/*
825
826  Numpad
827
828*/
829
830neo_NumLock:
831  EbeneAktualisieren()
832  if (Ebene = 1) ;�
833    OutputChar("`=", "equal")
834  if (Ebene = 3)
835    SendUnicodeChar(0x2248, "U2248") ; Fast gleich
836  if (Ebene = 2)
837    SendUnicodeChar(0x2260, "U2260") ; Ungleich zu
838return
839
840neo_NumpadDiv:
841  EbeneAktualisieren()
842  if Ebene12
843    OutputChar("{NumpadDiv}", "KP_Divide")
844  else if (Ebene = 4)
845    SendUnicodeChar(0x2215, "division") ; Slash
846  else if (Ebene = 3)
847    OutputChar("�", "U2044")
848return
849
850neo_NumpadMult:
851  EbeneAktualisieren()
852  if Ebene12
853    send {blind}{NumpadMult}
854  else if (Ebene = 3)
855    SendUnicodeChar(0x22C5, "multiply") ; Cdot
856  else if (Ebene = 4)
857    OutputChar("�", "U2219")
858return
859
860neo_NumpadSub:
861  EbeneAktualisieren()
862  if (Ebene12 and !(CheckDeadUni("c1",0x207B)
863                 or CheckDeadUni("t4",0x208B)))
864    send {blind}{NumpadSub}
865  else if (Ebene = 3) or (Ebene = 4)
866    SendUnicodeChar(0x2212, "U2212") ; Echtes Minus
867return
868
869neo_NumpadAdd:
870  EbeneAktualisieren()
871  if (Ebene12 and !(CheckDeadUni("c1",0x207A)
872                 or CheckDeadUni("c5",0x208A)))
873    send {blind}{NumpadAdd}
874  else if (Ebene = 3)
875    OutputChar("�", "plusminus")
876  else if (Ebene = 4)
877    SendUnicodeChar(0x2213, "U2213") ; Inverses �
878return
879
880neo_NumpadEnter:
881  send {blind}{NumpadEnter}
882return
883
884neo_Numpad7:
885  EbeneAktualisieren()
886  if (Ebene = 1)
887    OutputChar("{Numpad7}", "KP_7")
888  else if (Ebene = 2)
889    SendUnicodeChar(0x2020, "dagger") ; Kreuz
890  else if (Ebene = 3)
891    SendUnicodeChar(0x2195, "U2195") ; Hoch-Runter-Pfeil
892  else if (Ebene = 4)
893    send {blind}{NumpadHome}
894return
895
896neo_Numpad8:
897  EbeneAktualisieren()
898  if (Ebene = 1)
899    OutputChar("{Numpad8}", "KP_8")
900  else if (Ebene = 2)
901    SendUnicodeChar(0x2229, "intersection") ; Durchschnitt
902  else if (Ebene = 3)
903    SendUnicodeChar(0x2191, "uparrow") ; Hochpfeil
904  else if (Ebene = 4)
905    send {blind}{NumpadUp}
906return
907
908neo_Numpad9:
909  EbeneAktualisieren()
910  if (Ebene = 1)
911    OutputChar("{Numpad9}", "KP_9")
912  else if (Ebene = 2)
913    SendUnicodeChar(0x2297, "U2297") ; Tensorprodukt / Vektor in die Ebene zeigend
914  else if (Ebene = 3)
915    SendUnicodeChar(0x220D, "U220D") ; Kleines umgekehrtes Elementzeichen
916  else if (Ebene = 4)
917    send {blind}{NumpadPgUp}
918return
919
920neo_Numpad4:
921  EbeneAktualisieren()
922  if (Ebene = 1)
923    OutputChar("{Numpad4}", "KP_4")
924  else if (Ebene = 2)
925    SendUnicodeChar(0x2282, "includein") ; Teilmenge
926  else if (Ebene = 3)
927    SendUnicodeChar(0x2190, "leftarrow") ; Linkspfeil
928  else if (Ebene = 4)
929    send {blind}{NumpadLeft}
930return
931
932neo_Numpad5:
933  EbeneAktualisieren()
934  if (Ebene = 1)
935    OutputChar("{Numpad5}", "KP_5")
936  else if (Ebene = 2)
937    SendUnicodeChar(0x20AC, "EuroSign") ; Euro
938  else if (Ebene = 3)
939    SendUnicodeChar(0x221E, "infinity") ; Unendlich
940  else if (Ebene = 4) ; Beg
941      send {blind}{NumPadClear}
942return
943
944neo_Numpad6:
945  EbeneAktualisieren()
946  if (Ebene = 1)
947    OutputChar("{Numpad6}", "KP_6")
948  else if (Ebene = 2)
949    SendUnicodeChar(0x2283, "includes") ; Obermenge
950  else if (Ebene = 3)
951    SendUnicodeChar(0x2192, "rightarrow") ; Rechtspfeil
952  else if (Ebene = 4)
953    send {blind}{NumpadRight}
954return
955
956neo_Numpad1:
957  EbeneAktualisieren()
958  if (Ebene = 1)
959    OutputChar("{Numpad1}", "KP_1")
960  else if (Ebene = 2)
961    SendUnicodeChar(0x2714, "U2714") ; H�kchen
962  else if (Ebene = 3)
963    SendUnicodeChar(0x2194, "U2194") ; Links-Rechts-Pfeil
964  else if (Ebene = 4)
965    send {blind}{NumpadEnd}
966return
967
968neo_Numpad2:
969  EbeneAktualisieren()
970  if (Ebene = 1)
971    OutputChar("{Numpad2}", "KP_2")
972  else if (Ebene = 2)
973    SendUnicodeChar(0x222A, "union") ; Vereinigung
974  else if (Ebene = 3)
975    SendUnicodeChar(0x2192, "downarrow") ; Untenpfeil
976  else if (Ebene = 4)
977    send {blind}{NumpadDown}
978return
979
980neo_Numpad3:
981  EbeneAktualisieren()
982  if (Ebene = 1)
983    OutputChar("{Numpad3}", "KP_3")
984  else if (Ebene = 2)
985    SendUnicodeChar(0x2718, "U2718") ; Kreuzchen
986  else if (Ebene = 3)
987    SendUnicodeChar(0x21CC, "U21CC") ; Harpune
988  else if (Ebene = 4)
989    send {blind}{NumpadPgDn}
990return
991
992neo_Numpad0:
993  EbeneAktualisieren()
994  if (Ebene = 1)
995    OutputChar("{Numpad0}", "KP_0")
996  else if (Ebene = 2)
997    SendUnicodeChar(0x0025, "percent") ; Prozent
998  else if (Ebene = 3)
999    SendUnicodeChar(0x2030, "U2030") ; Promille
1000  else if (Ebene = 4)
1001    send {blind}{NumpadIns}
1002return
1003
1004neo_NumpadDot:
1005  EbeneAktualisieren()
1006  if (Ebene = 1)
1007    send {blind}{NumpadDot}
1008  else if (Ebene = 2)
1009    send `,
1010  else if (Ebene = 3)
1011    send {blind}.
1012  else if (Ebene = 4)
1013    send {blind}{NumpadDel}
1014return
1015
1016/*
1017
1018  Sondertasten
1019
1020*/
1021
1022*space::
1023  if einHandNeo
1024    spacepressed := 1
1025  else goto neo_SpaceUp
1026return
1027
1028*space up::
1029  if einHandNeo
1030    if keypressed {
1031     keypressed := 0
1032     spacepressed := 0
1033    } else goto neo_SpaceUp
1034  return
1035
1036neo_SpaceUp:
1037  EbeneAktualisieren()
1038  if (Ebene = 1) and !CheckDeadUni("t4",0x2010)  ; Echter Bindestrich
1039    OutputChar("{Space}", "Space")
1040  else if (Ebene = 2) or (Ebene = 3)
1041    Send {blind}{Space}
1042  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2070)
1043                        or CheckDeadUni("c5",0x2080)))
1044   OutputChar("{Numpad0}", "KP_0")
1045  else if (Ebene = 5)
1046    SendUnicodeChar(0x00A0, "U00A0") ; gesch�tztes Leerzeichen
1047  else if (Ebene = 6)
1048    SendUnicodeChar(0x202F, "U202F") ; schmales gesch�tztes Leerzeichen
1049  DeadKey := ""
1050  CompKey := ""
1051  spacepressed := 0
1052  keypressed := 0
1053return
1054
1055/*
1056  Folgende Tasten sind nur aufgef�hrt, um DeadKey zu leeren.
1057  Irgendwie sieht das noch nicht sch�n aus. Vielleicht l�sst sich dieses
1058  Problem auch eleganter l�sen...
1059*/
1060
1061*Enter::
1062  if !lernModus or lernModus_std_Return {
1063    send {Blind}{Enter}
1064    DeadKey := ""
1065    CompKey := ""
1066  } return
1067
1068*Backspace::
1069  if !lernModus or lernModus_std_Backspace {
1070    send {Blind}{Backspace}
1071    DeadKey := ""
1072    CompKey := ""
1073  } return
1074
1075*Del::
1076  if !lernModus or lernModus_std_Entf
1077    send {Blind}{Del}
1078return
1079
1080*Ins::
1081  if !lernModus or lernModus_std_Einf
1082    send {Blind}{Ins}
1083return
1084
1085/*
1086Auf Mod3+Tab liegt Compose.
1087*/
1088
1089neo_tab:
1090  if (IsMod3Pressed()) {
1091    DeadKey := "comp"
1092    CompKey := ""
1093  } else {
1094    send {blind}{Tab}
1095    DeadKey := ""
1096    CompKey := ""
1097  } return
1098
1099*Home::
1100  if !lernModus or lernModus_std_Pos1 {
1101    send {Blind}{Home}
1102    DeadKey := ""
1103    CompKey := ""
1104  } return
1105
1106*End::
1107  if !lernModus or lernModus_std_Ende {
1108    send {Blind}{End}
1109    DeadKey := ""
1110    CompKey := ""
1111  } return
1112
1113*PgUp::
1114  if !lernModus or lernModus_std_PgUp {
1115    send {Blind}{PgUp}
1116    DeadKey := ""
1117    CompKey := ""
1118  } return
1119
1120*PgDn::
1121  if !lernModus or lernModus_std_PgDn {
1122    send {Blind}{PgDn}
1123    DeadKey := ""
1124    CompKey := ""
1125  } return
1126
1127*Up::
1128  if !lernModus or lernModus_std_Hoch {
1129    send {Blind}{Up}
1130    DeadKey := ""
1131    CompKey := ""
1132  } return
1133
1134*Down::
1135  if !lernModus or lernModus_std_Runter {
1136    send {Blind}{Down}
1137    DeadKey := ""
1138    CompKey := ""
1139  } return
1140
1141*Left::
1142  if !lernModus or lernModus_std_Links {
1143    send {Blind}{Left}
1144    DeadKey := ""
1145    CompKey := ""
1146  } return
1147
1148*Right::
1149  if !lernModus or lernModus_std_Rechts {
1150    send {Blind}{Right}
1151    DeadKey := ""
1152    CompKey := ""
1153  } return
Note: See TracBrowser for help on using the browser.