2008-05-06 11:41:19 +00:00
|
|
|
|
/*
|
|
|
|
|
Titel: NEO 2.0 beta Autohotkey-Treiber
|
2008-06-10 20:35:23 +00:00
|
|
|
|
$Revision$
|
|
|
|
|
$Date$
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Autor: Stefan Mayer <stm (at) neo-layout.org>
|
|
|
|
|
Basiert auf: neo20-all-in-one.ahk vom 29.06.2007
|
|
|
|
|
|
2008-06-11 17:08:16 +00:00
|
|
|
|
TODO: - ausgiebig testen... (besonders Vollst<EFBFBD>ndigkeit bei Deadkeys)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
- Bessere L<EFBFBD>sung f<EFBFBD>r das leeren von PriorDeadKey finden, damit die Sondertasten
|
|
|
|
|
nicht mehr abgefangen werden m<EFBFBD>ssen.
|
2008-06-10 20:35:23 +00:00
|
|
|
|
- Alt+Tab+Shift sollte Alt+Tab umkehrt
|
2008-06-11 17:08:16 +00:00
|
|
|
|
- Testen ob die Capslockl<EFBFBD>sung (siehe *1:: ebene 1) auch f<EFBFBD>r Numpad gebraucht wird
|
2008-06-14 11:43:05 +00:00
|
|
|
|
- Sind Ebenen vom Touchpad noch richtig?
|
2008-06-10 20:35:23 +00:00
|
|
|
|
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Ideen: - Symbol <EFBFBD>ndern (Neo-Logo abwarten)
|
|
|
|
|
- bei Ebene 4 rechte Hand (Numpad) z.B. Numpad5 statt 5 senden
|
2008-06-14 20:31:51 +00:00
|
|
|
|
CHANGEHISTORY:
|
2008-06-21 19:27:39 +00:00
|
|
|
|
Aktuelle Revision (von Matthias Berg):
|
2008-06-22 00:21:54 +00:00
|
|
|
|
- Icon-Bug behoben
|
|
|
|
|
* Hotkeys d<EFBFBD>rfen nicht vor der folgenden Zeile stehen:
|
|
|
|
|
"menu, tray, icon, neo.ico,,1"
|
|
|
|
|
- lernModus-Konfigurations-Bug behoben: or statt and(not)
|
2008-06-22 00:24:15 +00:00
|
|
|
|
- Ein paar leere Else-F<EFBFBD>lle eingebaut (Verst<EFBFBD>ndlichkeit, m<EFBFBD>gliche Compilerprobleme vermeiden)
|
2008-06-22 00:21:54 +00:00
|
|
|
|
Revision 556 (von Matthias Berg):
|
2008-06-21 19:27:39 +00:00
|
|
|
|
- lernModus (an/aus mit Strg+Komma)
|
|
|
|
|
* im Skript konfigurierbar
|
|
|
|
|
* Schaltet z.B. Qwertz Tasten aus, die es auf der 4. Ebene gibt (Return, Backspace,...)
|
|
|
|
|
* Kann auch Backspace und/oder Entfernen der 4. Ebene ausschalten (gut zum Lernen richtig zu schreiben)
|
|
|
|
|
- Bug aufgetaucht: Icons werden nicht mehr angezeigt
|
|
|
|
|
Revision 544 (von Stefan Mayer):
|
2008-06-21 18:36:19 +00:00
|
|
|
|
- ,.:; auf dem Mod4-Ziffernblock an die aktuelle Referenz angepasst
|
|
|
|
|
- Versionen von rho, theta, kappa und phi an die aktuelle Referenz angepasst
|
|
|
|
|
Revision 542 (von Matthias Berg):
|
2008-06-19 09:24:55 +00:00
|
|
|
|
- bei EinHandNeo ist jetzt Space+y auch Mod4
|
|
|
|
|
- AltGr-Bug hoffentlich wieder behoben. Diesmal mit extra altGrPressed Variable
|
|
|
|
|
- nurEbenenFuenfUndSechs umbenannt in ahkTreiberKombi und auf Ebene 4 statt 5 und 6 ge<EFBFBD>ndert
|
|
|
|
|
Revision 540 (von Matthias Berg):
|
2008-06-18 23:26:43 +00:00
|
|
|
|
- stark <EFBFBD>berarbeitet um Wartbarkeit zu erh<EFBFBD>hen und Redundanz zu veringern
|
2008-06-19 09:24:55 +00:00
|
|
|
|
- nurEbenenFuenfUndSechs sollte nun auch auf Neo Treiber statt Qwertz laufen
|
2008-06-18 23:26:43 +00:00
|
|
|
|
* aber es muss noch jemand testen
|
|
|
|
|
* Problem: was kann man abfangen, wenn eine tote Taste gedr<EFBFBD>ckt wird
|
|
|
|
|
- einHandNeo:
|
|
|
|
|
* An-/Ausschalten mit STRG+Punkt
|
|
|
|
|
* Buchstaben der rechten Hand werden mit Space zur linken Hand
|
|
|
|
|
* Nebeneffekt: es gibt beim Festhalten von Space keine wiederholten Leerzeichen mehr
|
|
|
|
|
Revision 532 (von Matthias Berg):
|
2008-06-16 17:29:58 +00:00
|
|
|
|
- BildschirmTastatur
|
|
|
|
|
* aktiviert mit strg+F1 bis 7 schaltet Keyboard ein oder aus
|
|
|
|
|
* strg+F7 zeigt die zuletzt angezeigte Ebene an (und wieder aus).
|
|
|
|
|
* strg+F8 schaltet AlwaysOnTop um
|
|
|
|
|
Revision 529 (von Stefan Mayer):
|
2008-06-14 21:24:20 +00:00
|
|
|
|
- Icon wird automatisch geladen, falls .ico-Dateien im selbem Ordner
|
|
|
|
|
- in der .exe sind die .ico mitgespeichert und werden geladen
|
|
|
|
|
Revision 528 (von Matthias Berg):
|
2008-06-14 20:31:51 +00:00
|
|
|
|
- Neo-Icon
|
|
|
|
|
- Neo-Prozess jetzt automatisch auf hoher Prioritaet
|
|
|
|
|
(siehe globale Schalter)
|
|
|
|
|
- Mod3-Lock (nur wenn rechtes Mod3 zuerst gedr<EFBFBD>ckt wird, andere L<EFBFBD>sung f<EFBFBD>hrte zum Caps-Bug)
|
|
|
|
|
- Mod4-Lock (nur wenn das linke Mod4 zuerst gedr<EFBFBD>ckt wird, andere L<EFBFBD>sung f<EFBFBD>hte zum AltGr-Bug)
|
|
|
|
|
- Ein paar falsche Zeichen korrigiert
|
|
|
|
|
Revision 527 (von Matthias Berg):
|
2008-06-14 12:48:46 +00:00
|
|
|
|
- AltGr Problem hoffentlich behoben
|
|
|
|
|
- Umschalt+Mod4 Bug behoben
|
|
|
|
|
Revision 526 (von Matthias Berg):
|
2008-06-14 11:43:05 +00:00
|
|
|
|
- Ebenen 1 bis 4 ausschalten per Umschalter siehe erste Codezeile
|
|
|
|
|
nurEbenenFuenfUndSechs = 0
|
|
|
|
|
- Mod4-Lock durch Mod4+Mod4
|
|
|
|
|
- EbenenAktualisierung neu geschrieben
|
|
|
|
|
- Ebene 6 <EFBFBD>ber Mod3+Mod4
|
|
|
|
|
- Ebenen (besonders Matheebene) an Referenz angepasst
|
|
|
|
|
(allerdings kaum um Ebenen 1&2 gek<EFBFBD>mmert, besonders Compose k<EFBFBD>nnte noch <EFBFBD>berholt werden)
|
2008-06-11 17:08:16 +00:00
|
|
|
|
Revision 525 (von Matthias Berg):
|
|
|
|
|
- Capslock bei Zahlen und Sonderzeichen ber<EFBFBD>cksichtigt
|
|
|
|
|
Revision 524 (von Matthias Berg):
|
|
|
|
|
- umgekehrtes ^ f<EFBFBD>r o, a, <EFBFBD>,i sowie f<EFBFBD>r die grossen vokale ( 3. ton chinesisch)
|
|
|
|
|
<EFBFBD> damit wird jetzt PinYin vollst<EFBFBD>ndig unterst<EFBFBD>tzt caron, macron, akut, grave auf uiaeo<EFBFBD>
|
|
|
|
|
- Sonderzeichen senden wieder blind -> Shortcuts funktionieren, Capslock ist leider Shiftlock
|
|
|
|
|
Revision 523 (von Matthias Berg):
|
|
|
|
|
- CapsLock geht jetzt auch bei allen Zeichen ('send Zeichen' statt 'send {blind} Zeichen')
|
|
|
|
|
- vertikale Ellipse eingebaut
|
|
|
|
|
- Umschalt+Umschalt f<EFBFBD>r Capslock statt Mod3+Mod3
|
|
|
|
|
- bei Suspend wird jetzt wirklich togglesuspend aufgerufen (auch beim aktivieren per shift+pause)
|
|
|
|
|
Revsion 490 (von Stefan Mayer):
|
|
|
|
|
- SUBSCRIPT von 0 bis 9 sowie (auf Ziffernblock) + und -
|
|
|
|
|
<EFBFBD> auch bei Ziffernblock auf der 5. Ebene
|
2008-05-06 11:41:19 +00:00
|
|
|
|
- Kein Parsen <EFBFBD>ber die Zwischenablage mehr
|
|
|
|
|
- Vista-kompatibel
|
|
|
|
|
- Compose-Taste
|
2008-06-11 17:08:16 +00:00
|
|
|
|
<EFBFBD> Br<EFBFBD>che (auf Zahlenreihe und Hardware-Ziffernblock)
|
|
|
|
|
<EFBFBD> r<EFBFBD>mische Zahlen
|
|
|
|
|
<EFBFBD> Ligaturen und Copyright
|
2008-05-06 11:41:19 +00:00
|
|
|
|
*/
|
|
|
|
|
|
2008-06-14 11:43:05 +00:00
|
|
|
|
|
|
|
|
|
/******************
|
|
|
|
|
Globale Schalter *
|
2008-06-14 12:48:46 +00:00
|
|
|
|
*****************
|
|
|
|
|
*/
|
2008-06-14 11:43:05 +00:00
|
|
|
|
; Sollen Ebenen 1-4 ignoriert werden? (kann z.B. vom dll Treiber <20>bernommen werden) Ja = 1, Nein = 0
|
2008-06-19 09:24:55 +00:00
|
|
|
|
ahkTreiberKombi := 0
|
2008-06-18 23:35:22 +00:00
|
|
|
|
einHandNeo := 0
|
2008-06-21 19:27:39 +00:00
|
|
|
|
lernModus := 0
|
2008-06-18 23:26:43 +00:00
|
|
|
|
|
|
|
|
|
Process, Priority,, High
|
|
|
|
|
|
2008-06-16 17:29:58 +00:00
|
|
|
|
if ( FileExist("ebene1.png") && FileExist("ebene2.png") && FileExist("ebene3.png") && FileExist("ebene4.png") && FileExist("ebene5.png") && FileExist("ebene6.png") )
|
|
|
|
|
zeigeBildschirmTastatur = 1
|
|
|
|
|
|
|
|
|
|
if ( FileExist("neo.ico") && FileExist("neo_disabled.ico") )
|
2008-06-14 21:24:20 +00:00
|
|
|
|
iconBenutzen = 1
|
|
|
|
|
FileInstall, neo.ico, neo.ico, 1
|
|
|
|
|
FileInstall, neo_disabled.ico, neo_disabled.ico, 1
|
2008-06-14 20:31:51 +00:00
|
|
|
|
|
2008-06-21 19:27:39 +00:00
|
|
|
|
|
|
|
|
|
/*************************
|
|
|
|
|
lernModus Konfiguration *
|
|
|
|
|
nur relevant wenn *
|
|
|
|
|
lernModus = 1 *
|
|
|
|
|
Strg+Komma schaltet um *
|
|
|
|
|
**************************
|
|
|
|
|
*/
|
|
|
|
|
; 0 = aus, 1 = an
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
; die Nachfolgenden sind n<>tzlich um sich die Qwertz-Tasten abzugew<65>hnen, da alle auf der 4. Ebene vorhanden.
|
|
|
|
|
lernModus_std_Return = 0
|
|
|
|
|
lernModus_std_Backspace = 0
|
|
|
|
|
lernModus_std_PgUp = 0
|
|
|
|
|
lernModus_std_PgDn = 0
|
|
|
|
|
lernModus_std_Einf = 0
|
|
|
|
|
lernModus_std_Entf = 0
|
2008-06-22 00:21:54 +00:00
|
|
|
|
lernModus_std_Pos0 = 0
|
2008-06-21 19:27:39 +00:00
|
|
|
|
lernModus_std_Ende = 0
|
|
|
|
|
lernModus_std_Hoch = 0
|
|
|
|
|
lernModus_std_Runter = 0
|
|
|
|
|
lernModus_std_Links = 0
|
|
|
|
|
lernModus_std_Rechts = 0
|
|
|
|
|
lernModus_std_ZahlenReihe = 0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
; im folgenden kann man auch noch ein paar Tasten der 4. Ebene deaktivieren
|
|
|
|
|
; n<>tzlich um sich zu zwingen, richtig zu schreiben
|
|
|
|
|
lernModus_neo_Backspace = 0
|
|
|
|
|
lernModus_neo_Entf = 1
|
|
|
|
|
|
|
|
|
|
|
2008-06-14 21:24:20 +00:00
|
|
|
|
|
2008-06-14 11:43:05 +00:00
|
|
|
|
|
2008-05-06 11:41:19 +00:00
|
|
|
|
; aus Noras script kopiert:
|
|
|
|
|
#usehook on
|
|
|
|
|
#singleinstance force
|
|
|
|
|
#LTrim
|
|
|
|
|
; Quelltext kann einger<65>ckt werden,
|
|
|
|
|
; msgbox ist trotzdem linksb<73>ndig
|
|
|
|
|
|
|
|
|
|
SetTitleMatchMode 2
|
2008-06-08 13:58:50 +00:00
|
|
|
|
SendMode Input
|
2008-05-06 11:41:19 +00:00
|
|
|
|
|
|
|
|
|
name = Neo 2.0
|
|
|
|
|
enable = Aktiviere %name%
|
|
|
|
|
disable = Deaktiviere %name%
|
|
|
|
|
|
|
|
|
|
; <20>berpr<70>fung auf deutsches Tastaturlayout
|
|
|
|
|
; ----------------------------------------
|
|
|
|
|
|
|
|
|
|
regread, inputlocale, HKEY_CURRENT_USER, Keyboard Layout\Preload, 1
|
|
|
|
|
regread, inputlocalealias, HKEY_CURRENT_USER
|
|
|
|
|
, Keyboard Layout\Substitutes, %inputlocale%
|
|
|
|
|
if inputlocalealias <>
|
|
|
|
|
inputlocale = %inputlocalealias%
|
|
|
|
|
if inputlocale <> 00000407
|
|
|
|
|
{
|
|
|
|
|
suspend
|
|
|
|
|
regread, inputlocale, HKEY_LOCAL_MACHINE
|
|
|
|
|
, SYSTEM\CurrentControlSet\Control\Keyboard Layouts\%inputlocale%
|
|
|
|
|
, Layout Text
|
|
|
|
|
msgbox, 48, Warnung!,
|
|
|
|
|
(
|
|
|
|
|
Nicht kompatibles Tastaturlayout:
|
|
|
|
|
`t%inputlocale%
|
|
|
|
|
`nDas deutsche QWERTZ muss als Standardlayout eingestellt
|
|
|
|
|
sein, damit %name% wie erwartet funktioniert.
|
|
|
|
|
`n<EFBFBD>ndern Sie die Tastatureinstellung unter
|
|
|
|
|
`tSystemsteuerung
|
|
|
|
|
`t-> Regions- und Sprachoptionen
|
|
|
|
|
`t-> Sprachen
|
|
|
|
|
`t-> Details... `n
|
|
|
|
|
)
|
|
|
|
|
exitapp
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
; Men<65> des Systray-Icons
|
|
|
|
|
; ----------------------
|
|
|
|
|
|
2008-06-14 20:31:51 +00:00
|
|
|
|
if (iconBenutzen)
|
|
|
|
|
menu, tray, icon, neo.ico,,1
|
2008-05-06 11:41:19 +00:00
|
|
|
|
menu, tray, nostandard
|
|
|
|
|
menu, tray, add, <EFBFBD>ffnen, open
|
|
|
|
|
menu, helpmenu, add, About, about
|
|
|
|
|
menu, helpmenu, add, Autohotkey-Hilfe, help
|
|
|
|
|
menu, helpmenu, add
|
|
|
|
|
menu, helpmenu, add, http://&autohotkey.com/, autohotkey
|
|
|
|
|
menu, helpmenu, add, http://www.neo-layout.org/, neo
|
2008-06-10 20:35:23 +00:00
|
|
|
|
menu, tray, add, Hilfe, :helpmenu
|
2008-05-06 11:41:19 +00:00
|
|
|
|
menu, tray, add
|
|
|
|
|
menu, tray, add, %disable%, togglesuspend
|
|
|
|
|
menu, tray, default, %disable%
|
|
|
|
|
menu, tray, add
|
|
|
|
|
menu, tray, add, Edit, edit
|
|
|
|
|
menu, tray, add, Reload, reload
|
|
|
|
|
menu, tray, add
|
|
|
|
|
menu, tray, add, Nicht im Systray anzeigen, hide
|
|
|
|
|
menu, tray, add, %name% beenden, exitprogram
|
|
|
|
|
menu, tray, tip, %name%
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
Variablen initialisieren
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
Ebene = 1
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
EinHandNeo
|
|
|
|
|
*/
|
|
|
|
|
spacepressed := 0
|
|
|
|
|
keypressed:= 0
|
|
|
|
|
|
|
|
|
|
; Reihe 1
|
|
|
|
|
gespiegelt_7 = neo_6
|
|
|
|
|
gespiegelt_8 = neo_5
|
|
|
|
|
gespiegelt_9 = neo_4
|
|
|
|
|
gespiegelt_0 = neo_3
|
|
|
|
|
gespiegelt_strich = neo_2
|
|
|
|
|
gespiegelt_tot2 = neo_1
|
|
|
|
|
|
|
|
|
|
; Reihe 2
|
|
|
|
|
gespiegelt_k = neo_w
|
|
|
|
|
gespiegelt_h = neo_c
|
|
|
|
|
gespiegelt_g = neo_l
|
|
|
|
|
gespiegelt_f = neo_v
|
|
|
|
|
gespiegelt_q = neo_x
|
|
|
|
|
gespiegelt_sz = neo_tab
|
|
|
|
|
gespiegelt_tot3 = neo_tot1
|
|
|
|
|
|
|
|
|
|
; Reihe 3
|
|
|
|
|
gespiegelt_s = neo_o
|
|
|
|
|
gespiegelt_n = neo_e
|
|
|
|
|
gespiegelt_r = neo_a
|
|
|
|
|
gespiegelt_t = neo_i
|
|
|
|
|
gespiegelt_d = neo_u
|
|
|
|
|
|
|
|
|
|
; Reihe 4
|
|
|
|
|
gespiegelt_b = neo_z
|
|
|
|
|
gespiegelt_m = neo_p
|
|
|
|
|
gespiegelt_komma = neo_<EFBFBD>
|
|
|
|
|
gespiegelt_punkt = neo_<EFBFBD>
|
|
|
|
|
gespiegelt_j = neo_<EFBFBD>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-05-06 11:41:19 +00:00
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
Modifier
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
|
2008-06-10 20:35:23 +00:00
|
|
|
|
|
|
|
|
|
; CapsLock durch Umschalt+Umschalt
|
2008-06-14 20:31:51 +00:00
|
|
|
|
;*CapsLock::return ; Nichts machen beim Capslock release event (weil es Mod3 ist)
|
2008-06-11 17:08:16 +00:00
|
|
|
|
|
2008-06-10 20:35:23 +00:00
|
|
|
|
*#::return ; Nichts machen beim # release event (weil es Mod3 ist)
|
|
|
|
|
|
|
|
|
|
;RShift wenn vorher LShift gedr<64>ckt wurde
|
|
|
|
|
LShift & ~RShift::
|
|
|
|
|
if GetKeyState("CapsLock","T")
|
|
|
|
|
{
|
|
|
|
|
setcapslockstate, off
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
setcapslockstate, on
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
;LShift wenn vorher RShift gedr<64>ckt wurde
|
|
|
|
|
RShift & ~LShift::
|
2008-05-06 11:41:19 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
|
|
|
|
{
|
|
|
|
|
setcapslockstate, off
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
setcapslockstate, on
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-14 11:43:05 +00:00
|
|
|
|
; Mod4-Lock durch Mod4+Mod4
|
|
|
|
|
IsMod4Locked := 0
|
|
|
|
|
< & *SC138::
|
|
|
|
|
if (IsMod4Locked)
|
|
|
|
|
{
|
|
|
|
|
MsgBox Mod4-Feststellung aufgebehoben
|
|
|
|
|
IsMod4Locked = 0
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
MsgBox Mod4 festgestellt: Um Mod4 wieder zu l<EFBFBD>sen dr<EFBFBD>cke beide Mod4 Tasten gleichzeitig
|
|
|
|
|
IsMod4Locked = 1
|
|
|
|
|
}
|
|
|
|
|
return
|
2008-06-19 09:24:55 +00:00
|
|
|
|
*SC138::
|
|
|
|
|
altGrPressed := 1
|
|
|
|
|
return ; Damit AltGr nicht extra etwas schickt und als stiller Modifier geht.
|
|
|
|
|
*SC138 up::
|
|
|
|
|
altGrPressed := 0
|
|
|
|
|
return
|
2008-06-14 12:48:46 +00:00
|
|
|
|
|
2008-06-14 11:43:05 +00:00
|
|
|
|
/* ; das folgende wird seltsamerweise nicht gebraucht :)
|
|
|
|
|
SC138 & *<::
|
|
|
|
|
if (IsMod4Locked)
|
|
|
|
|
{
|
|
|
|
|
MsgBox Mod4-Feststellung aufgebehoben
|
|
|
|
|
IsMod4Locked = 0
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
MsgBox Mod4 festgestellt: Um Mod4 wieder zu l<EFBFBD>sen dr<EFBFBD>cke beide Mod4 Tasten gleichzeitig
|
|
|
|
|
IsMod4Locked = 1
|
|
|
|
|
}
|
|
|
|
|
return
|
2008-06-14 12:48:46 +00:00
|
|
|
|
|
2008-06-14 20:31:51 +00:00
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
; Mod3-Lock durch Mod3+Mod3
|
|
|
|
|
IsMod3Locked := 0
|
|
|
|
|
# & *Capslock::
|
|
|
|
|
if (GetKeyState("#","P"))
|
|
|
|
|
{
|
|
|
|
|
if (IsMod3Locked)
|
|
|
|
|
{
|
|
|
|
|
MsgBox Mod3-Feststellung aufgebehoben
|
|
|
|
|
IsMod3Locked = 0
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
MsgBox Mod3 festgestellt: Um Mod3 wieder zu l<EFBFBD>sen dr<EFBFBD>cke beide Mod3 Tasten gleichzeitig
|
|
|
|
|
IsMod3Locked = 1
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
MsgBox nothing
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
;Capslock::MsgBox hallo
|
|
|
|
|
*Capslock:: return
|
|
|
|
|
/*
|
|
|
|
|
Capslock & *#::
|
|
|
|
|
if (IsMod3Locked)
|
|
|
|
|
{
|
|
|
|
|
MsgBox Mod3-Feststellung aufgebehoben
|
|
|
|
|
IsMod3Locked = 0
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
MsgBox Mod3 festgestellt: Um Mod3 wieder zu l<EFBFBD>sen dr<EFBFBD>cke beide Mod3 Tasten gleichzeitig
|
|
|
|
|
IsMod3Locked = 1
|
|
|
|
|
}
|
|
|
|
|
return
|
2008-06-14 11:43:05 +00:00
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
; Wird nicht mehr gebraucht weil jetzt auf b (bzw. *n::)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
; KP_Decimal durch Mod4+Mod4
|
|
|
|
|
*<::
|
|
|
|
|
*SC138::
|
|
|
|
|
if GetKeyState("<","P") and GetKeyState("SC138","P")
|
|
|
|
|
{
|
|
|
|
|
send {numpaddot}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*/
|
2008-06-18 23:26:43 +00:00
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
QWERTZ->Neo umwandlung
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
; Reihe 1
|
|
|
|
|
*^::goto neo_tot1
|
|
|
|
|
*1::goto neo_1
|
|
|
|
|
*2::goto neo_2
|
|
|
|
|
*3::goto neo_3
|
|
|
|
|
*4::goto neo_4
|
|
|
|
|
*5::goto neo_5
|
|
|
|
|
*6::goto neo_6
|
|
|
|
|
*7::
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_7
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_7%
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
*8::
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_8
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_8%
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
*9::
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_9
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_9%
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
*0::
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_0
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_0%
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
*<EFBFBD>::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_strich
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_strich%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_sz
|
|
|
|
|
}
|
|
|
|
|
*<EFBFBD>::goto neo_tot2
|
|
|
|
|
; Reihe 2
|
|
|
|
|
*Tab::goto neo_tab
|
|
|
|
|
*q::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_x
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_q
|
|
|
|
|
}
|
|
|
|
|
*w::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_v
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_w
|
|
|
|
|
}
|
|
|
|
|
*e::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_l
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_e
|
|
|
|
|
}
|
|
|
|
|
*r::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_c
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_r
|
|
|
|
|
}
|
|
|
|
|
*t::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_w
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_t
|
|
|
|
|
}
|
|
|
|
|
*z::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_k
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_k%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_z
|
|
|
|
|
}
|
|
|
|
|
*u::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_h
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_h%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_u
|
|
|
|
|
}
|
|
|
|
|
*i::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_g
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_g%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_i
|
|
|
|
|
}
|
|
|
|
|
*o::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_f
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_f%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_o
|
|
|
|
|
}
|
|
|
|
|
*p::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_q
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_q%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_p
|
|
|
|
|
}
|
|
|
|
|
*<EFBFBD>::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_sz
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_sz%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_<EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
*+::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_tot3
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_tot3%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{ } ; this should never happen
|
|
|
|
|
; Reihe 3
|
|
|
|
|
*a::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_u
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_a
|
|
|
|
|
}
|
|
|
|
|
*s::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_i
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_s
|
|
|
|
|
}
|
|
|
|
|
*d::goto neo_a
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_a
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_d
|
|
|
|
|
}
|
|
|
|
|
*f::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_e
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_f
|
|
|
|
|
}
|
|
|
|
|
*g::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_o
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_g
|
|
|
|
|
}
|
|
|
|
|
*h::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_s
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_s%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_h
|
|
|
|
|
}
|
|
|
|
|
*j::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_n
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_n%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_j
|
|
|
|
|
}
|
|
|
|
|
*k::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_r
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_r%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_k
|
|
|
|
|
}
|
|
|
|
|
*l::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_t
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_t%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_l
|
|
|
|
|
}
|
|
|
|
|
*<EFBFBD>::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_d
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_d%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_<EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
*<EFBFBD>::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_y
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_<EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
; Reihe 4
|
|
|
|
|
*y::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_<EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_y
|
|
|
|
|
}
|
|
|
|
|
*x::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_<EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_x
|
|
|
|
|
}
|
|
|
|
|
*c::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_<EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_c
|
|
|
|
|
}
|
|
|
|
|
*v::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_p
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_v
|
|
|
|
|
}
|
|
|
|
|
*b::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
goto neo_z
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_b
|
|
|
|
|
}
|
|
|
|
|
*n::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_b
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_b%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_n
|
|
|
|
|
}
|
|
|
|
|
*m::
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_m
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_m%
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
*,::
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_komma
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_komma%
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
*.::
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_punkt
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_punkt%
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
*-::
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( not(ahkTreiberKombi) )
|
2008-06-18 23:26:43 +00:00
|
|
|
|
{
|
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
|
|
|
|
goto neo_j
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
keypressed := 1
|
|
|
|
|
goto %gespiegelt_j%
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_strich
|
|
|
|
|
}
|
|
|
|
|
; Numpad
|
|
|
|
|
*NumpadDiv::goto neo_NumpadDiv
|
|
|
|
|
*NumpadMult::goto neo_NumpadMult
|
|
|
|
|
*NumpadSub::goto neo_NumpadSub
|
|
|
|
|
*NumpadAdd::goto neo_NumpadAdd
|
|
|
|
|
*NumpadEnter::goto neo_NumpadEnter
|
|
|
|
|
*Numpad7::goto neo_Numpad7
|
|
|
|
|
*Numpad8::goto neo_Numpad8
|
|
|
|
|
*Numpad9::goto neo_Numpad9
|
|
|
|
|
*Numpad4::goto neo_Numpad4
|
|
|
|
|
*Numpad5::goto neo_Numpad5
|
|
|
|
|
*Numpad6::goto neo_Numpad6
|
|
|
|
|
*Numpad1::goto neo_Numpad1
|
|
|
|
|
*Numpad2::goto neo_Numpad2
|
|
|
|
|
*Numpad3::goto neo_Numpad3
|
|
|
|
|
*Numpad0::goto neo_Numpad0
|
|
|
|
|
*NumpadDot::goto neo_NumpadDot
|
|
|
|
|
*NumpadHome::goto neo_NumpadHome
|
|
|
|
|
*NumpadUp::goto neo_NumpadUp
|
|
|
|
|
*NumpadPgUp::goto neo_NumpadPgUp
|
|
|
|
|
*NumpadLeft::goto neo_NumpadLeft
|
|
|
|
|
*NumpadClear::goto neo_NumpadClear
|
|
|
|
|
*NumpadRight::goto neo_NumpadRight
|
|
|
|
|
*NumpadEnd::goto neo_NumpadEnd
|
|
|
|
|
*NumpadDown::goto neo_NumpadDown
|
|
|
|
|
*NumpadPgDn::goto neo_NumpadPgDn
|
|
|
|
|
*NumpadIns::goto neo_NumpadIns
|
|
|
|
|
*NumpadDel::goto neo_NumpadDel
|
|
|
|
|
|
|
|
|
|
|
2008-06-14 11:43:05 +00:00
|
|
|
|
|
2008-05-06 11:41:19 +00:00
|
|
|
|
/*
|
|
|
|
|
Ablauf bei toten Tasten:
|
|
|
|
|
1. Ebene Aktualisieren
|
|
|
|
|
2. Abh<EFBFBD>ngig von der Variablen "Ebene" Zeichen ausgeben und die Variable "PriorDeadKey" setzen
|
|
|
|
|
|
|
|
|
|
Ablauf bei "lebenden" (sagt man das?) Tasten:
|
|
|
|
|
1. Ebene Aktualisieren
|
|
|
|
|
2. Abh<EFBFBD>ngig von den Variablen "Ebene" und "PriorDeadKey" Zeichen ausgeben
|
|
|
|
|
3. "PriorDeadKey" mit leerem String <EFBFBD>berschreiben
|
|
|
|
|
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
Reihe 1
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
2008-06-18 23:26:43 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
neo_tot1:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x02C6) ; circumflex, tot
|
|
|
|
|
PriorDeadKey := "c1"
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x02C7) ; caron, tot
|
|
|
|
|
PriorDeadKey := "c2"
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x02D8) ; brevis
|
|
|
|
|
PriorDeadKey := "c3"
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x00B7) ; Mittenpunkt, tot
|
|
|
|
|
PriorDeadKey := "c5"
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
send - ; querstrich, tot
|
|
|
|
|
PriorDeadKey := "c4"
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
Send . ; punkt darunter (colon)
|
|
|
|
|
PriorDeadKey := "c6"
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_1:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex 1
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00B9)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2081)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Comp3UnicodeChar(0x217A) ; r<>misch xi
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Comp3UnicodeChar(0x216A) ; r<>misch XI
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}1
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send 1
|
2008-06-14 11:43:05 +00:00
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}1
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "1"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "r_small_1"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "r_capital_1"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x00B9) ; 2 Hochgestellte
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2022) ; bullet
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2640) ; Piktogramm weiblich
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x00AC) ; Nicht-Symbol
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_2:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00B2)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2082)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2171) ; r<>misch ii
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2161) ; r<>misch II
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Comp3UnicodeChar(0x217B) ; r<>misch xii
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Comp3UnicodeChar(0x216B) ; r<>misch XII
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}2
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send 2
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}2
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "2"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2116) ; numero
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x00B2) ; 2 Hochgestellte
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2023) ; aufzaehlungspfeil
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x26A5) ; Piktogramm Zwitter
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2228) ; Logisches Oder
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_3:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00B3)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2083)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2153) ; 1/3
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "2")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2154) ; 2/3
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2172) ; r<>misch iii
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2162) ; r<>misch III
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}3
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-21 19:27:39 +00:00
|
|
|
|
send 3
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}3
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "3"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x00B3) ; 3 Hochgestellte
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 4
|
2008-06-14 11:43:05 +00:00
|
|
|
|
{ } ; leer
|
|
|
|
|
else if Ebene = 5
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2642) ; Piktogramm Mann
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2227) ; Logisches Und
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_4:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2074)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2084)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2173) ; r<>misch iv
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2163) ; r<>misch IV
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}4
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send 4
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-21 19:27:39 +00:00
|
|
|
|
else
|
|
|
|
|
{
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}4
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "4"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 3
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
Send {PgUp} ; Prev
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2113) ; Script small L
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x22A5) ; Senkrecht
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_5:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2075)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2085)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2155) ; 1/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "2")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2156) ; 2/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "3")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2157) ; 3/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "4")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2158) ; 4/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2174) ; r<>misch v
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2164) ; r<>misch V
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}5
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send 5
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}5
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "5"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{ } ; leer
|
|
|
|
|
else if Ebene = 5
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2020) ; Kreuz (Dagger)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2221) ; Winkel
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_6:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2076)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2086)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2159) ; 1/6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "5")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215A) ; 5/6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2175) ; r<>misch vi
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2165) ; r<>misch VI
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}6
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send 6
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}6
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "6"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
send <EFBFBD>
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
send <EFBFBD>
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{ } ; leer
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2225) ; parallel
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_7:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2077)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2087)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2176) ; r<>misch vii
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2166) ; r<>misch VII
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}7
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send 7
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}7
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "7"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send $
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
send <EFBFBD>
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-21 16:18:44 +00:00
|
|
|
|
SendUnicodeChar(0x03BA) ; greek small letter kappa
|
2008-06-14 11:43:05 +00:00
|
|
|
|
CompKey := ""
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2209) ; nicht Element von
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_8:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2078)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2088)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215B) ; 1/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "3")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215C) ; 3/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "5")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215D) ; 5/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "7")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215E) ; 7/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2177) ; r<>misch viii
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2167) ; r<>misch VIII
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}8
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send 8
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}8
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "8"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
Send /
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{ } ; leer
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2204) ; es existiert nicht
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_9:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2079)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2089)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2178) ; r<>misch ix
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2168) ; r<>misch IX
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}9
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send 9
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}9
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "9"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
Send *
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{ } ; leer
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2226) ; nicht parallel
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_0:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2070)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2080)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_small_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Comp3UnicodeChar(0x2179) ; r<>misch x
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Comp3UnicodeChar(0x2169) ; r<>misch X
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}0
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send 0
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_ZahlenReihe) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}0
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "0"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
Send -
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{ } ; leer
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2205) ; leere Menge
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_strich:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}-
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send -
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}- ;Bindestrich
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
SendUnicodeChar(0x2013) ; Gedankenstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 3
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2014) ; Englische Gedankenstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 4
|
2008-06-14 11:43:05 +00:00
|
|
|
|
{ } ; leer ... SendUnicodeChar(0x254C)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2011) ; gesch<63>tzter Bindestrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x00AD) ; weicher Trennstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_tot2:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {<EFBFBD>}{space} ; akut, tot
|
|
|
|
|
PriorDeadKey := "a1"
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send ``{space}
|
|
|
|
|
PriorDeadKey := "a2"
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD> ; cedilla
|
|
|
|
|
PriorDeadKey := "a3"
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x02D9) ; punkt oben dr<64>ber
|
|
|
|
|
PriorDeadKey := "a5"
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x02DB) ; ogonek
|
|
|
|
|
PriorDeadKey := "a4"
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x02DA) ; ring obendrauf
|
|
|
|
|
PriorDeadKey := "a6"
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
Reihe 2
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_x:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
sendinput {blind}x
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
sendinput {blind}X
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
2008-05-06 11:41:19 +00:00
|
|
|
|
SendUnicodeChar(0x03BE) ;xi
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x039E) ; Xi
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_v:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E7F)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}v
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E7E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}V
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send _
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_neo_Backspace) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
Send {Backspace}
|
|
|
|
|
}
|
2008-06-22 00:21:54 +00:00
|
|
|
|
else
|
|
|
|
|
{} ; leer
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2259) ; estimates
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_l:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t5") ; Schr<68>gstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0142)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x013A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x013E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x013C)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c5") ; Mittenpunkt
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0140)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E37)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}l
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "l_small"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0139)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x013D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x013B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t5") ; Schr<68>gstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0141)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c5") ; Mittenpunkt
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x013F)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E36)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}L
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "l_capital"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else CompKey := ""
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send [
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
Sendinput {Blind}{Up}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x03BB) ; lambda
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x039B) ; Lambda
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_c:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0109)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x010D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0107)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00E7)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x010B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if ( (CompKey = "o_small") or (CompKey = "o_capital") )
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-19 09:24:55 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {blind}c
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "c_small"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0108)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x010C)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0106)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00E6)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x010A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if ( (CompKey = "o_small") or (CompKey = "o_capital") )
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}C
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey = "c_capital"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send ]
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_neo_Entf) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
Send {Del}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-22 00:21:54 +00:00
|
|
|
|
else
|
|
|
|
|
{} ; leer
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x03C7) ;chi
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2102) ; C (Komplexe Zahlen)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_w:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0175)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}w
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0174)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}W
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send {^}{space} ; untot
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {Insert}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03C9) ; omega
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x03A9) ; Omega
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_k:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0137)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E33)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}k
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0136)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E32)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}K
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
sendraw !
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
Send <EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-21 16:18:44 +00:00
|
|
|
|
SendUnicodeChar(0x03F0) ;kappa symbol (varkappa)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x221A) ; Wurzel
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_h:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0125)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; Querstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0127)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E23)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E25)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else sendinput {blind}h
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0124)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; Querstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0126)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E22)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E24)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else sendinput {blind}H
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c4") ; Querstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2264) ; kleiner gleich
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}<
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2077)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2087)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send 7
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03C8) ;psi
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x03A8) ; Psi
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_g:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x011D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x011F)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0123)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0121)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else sendinput {blind}g
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x011C)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x011E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0122)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0120)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else sendinput {blind}G
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c4") ; Querstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
SendUnicodeChar(0x2265) ; gr<67><72>er gleich
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send >
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2078)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2088)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send 8
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03B3) ;gamma
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x0393) ; Gamma
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_f:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t5") ; durchgestrichen
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0192)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E1F)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else sendinput {blind}f
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t5") ; durchgestrichen
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0191)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E1E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else sendinput {blind}F
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2259) ; entspricht
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2245) ; ungef<65>hr gleich
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t5") ; Schr<68>gstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2260) ; ungleich
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; Querstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2261) ; identisch
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x225A) ; EQUIANGULAR TO
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a6") ; ring dr<64>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2257) ; ring equal to
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send `=
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2079)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2089)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send 9
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-21 16:18:44 +00:00
|
|
|
|
SendUnicodeChar(0x03C6) ; phi
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x03A6) ; Phi
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_q:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
sendinput {blind}q
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
sendinput {blind}Q
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send {&}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x207A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x208A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {+}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-21 16:18:44 +00:00
|
|
|
|
SendUnicodeChar(0x03D5) ; phi symbol (varphi)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x211A) ; Q (rationale Zahlen)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_sz:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
if GetKeyState("CapsLock","T")
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x1E9E) ; versal-<2D>
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
if GetKeyState("CapsLock","T")
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x1E9E) ; versal-<2D>
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
SendUnicodeChar(0x017F) ; langes s
|
|
|
|
|
else if Ebene = 4
|
2008-06-14 11:43:05 +00:00
|
|
|
|
{} ; leer
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x03C2) ; varsigma
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2218) ; Verkn<6B>pfungsoperator
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_tot3:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x02DC) ; tilde, tot
|
|
|
|
|
PriorDeadKey := "t1"
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x00AF) ; macron, tot
|
|
|
|
|
PriorDeadKey := "t2"
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x00A8) ; Diaerese
|
|
|
|
|
PriorDeadKey := "t3"
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x002F) ; Schr<68>gstrich, tot
|
|
|
|
|
PriorDeadKey := "t5"
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
send " ;doppelakut
|
|
|
|
|
PriorDeadKey := "t4"
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x02CF) ; komma drunter, tot
|
|
|
|
|
PriorDeadKey := "t6"
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
Reihe 3
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_u:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00FB)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00FA)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00F9)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send, {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t4") ; doppelakut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0171)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x016D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x016B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0173)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a6") ; Ring
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x016F)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0169)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D4)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}u
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00DB)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00DA)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00D9)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send, {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a6") ; Ring
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x016E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x016C)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t4") ; doppelakut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0170)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D3)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x016A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0172)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0168)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}U
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send \
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {blind}{Home}
|
2008-06-14 20:31:51 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{ } ; leer
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x222E) ; contour integral
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_i:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00EE)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00ED)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00EC)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send, {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x012B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x012D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x012F)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0129)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; (ohne) punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0131)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D0)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}i
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "i_small"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00CE)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00CD)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00CC)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send, {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x012A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x012C)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x012E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0128)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0130)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01CF)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}I
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "i_capital"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send `/
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
Sendinput {Blind}{Left}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 20:31:51 +00:00
|
|
|
|
else if Ebene = 5
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x03B9) ; iota
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x222B) ; integral
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_a:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00E2)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00E1)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00E0)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a6") ; Ring
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00E3)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0105)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0101)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0103)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01CE)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}a
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "a_small"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00C2)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00C1)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00C0)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00C3)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a6") ; Ring
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0100)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0102)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0104)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01CD)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}A
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "a_capital"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
sendraw {
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
Sendinput {Blind}{Down}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x03B1) ;alpha
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2200) ;fuer alle
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_e:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00EA)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00E9)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00E8)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send, {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0119)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0113)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0115)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x011B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0117)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "a_small") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
Send {bs}<EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "o_small") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
Send {bs}<EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}e
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00CA)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00C9)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00C8)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send, {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x011A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0112)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0114)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0118)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0116)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "a_capital") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
Send {bs}<EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "o_capital") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
Send {bs}<EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}E
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
sendraw }
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
Sendinput {Blind}{Right}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03B5) ;epsilon
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2203) ;es existiert
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_o:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00F4)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00F3)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00F2)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send, {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00F5)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t4") ; doppelakut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0151)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t5") ; Schr<68>gstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00F8)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x014D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x014F)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01EB)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D2)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}o
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "o_small"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00D4)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00D3)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00D2)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t5") ; Schr<68>gstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00D8)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00D5)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t4") ; doppelakut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0150)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t2") ; macron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x014C)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c3") ; brevis
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x014E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a4") ; ogonek
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01EA)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D1)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}O
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "o_capital"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send *
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
Send {blind}{End}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 20:31:51 +00:00
|
|
|
|
SendUnicodeChar(0x03BF) ; omicron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2208) ; element of
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_s:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x015D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x015B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0161)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x015F)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E61)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E63)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}s
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "s_small"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x015C)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0160)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x015A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x015E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E60)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E62)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}S
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "s_capital"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send ?
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
Send <EFBFBD>
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x03C3) ;sigma
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x03A3) ; Sigma
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_n:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0144)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00F1)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0148)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0146)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E45)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}n
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0147)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00D1)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0143)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0145)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E44)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}N
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send (
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2074)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2084)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send 4
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03BD) ; nu
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x2115) ; N (nat<61>rliche Zahlen)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_r:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0155)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0159)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0157)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0E59)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E5B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}r
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "r_small"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0158)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0154)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0156)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E58)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E5A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}R
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "r_capital"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send )
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
|
|
|
|
BSSendUnicodeChar(0x2075)
|
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
|
|
|
|
BSSendUnicodeChar(0x2085)
|
|
|
|
|
else
|
|
|
|
|
Send 5
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
2008-06-21 16:18:44 +00:00
|
|
|
|
SendUnicodeChar(0x03F1) ; rho symbol (varrho)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x211D) ; R (reelle Zahlen)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_t:
|
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
if (PriorDeadKey = "c2") ; caron
|
|
|
|
|
BSSendUnicodeChar(0x0165)
|
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
|
|
|
|
BSSendUnicodeChar(0x0163)
|
|
|
|
|
else if (PriorDeadKey = "c4") ; Querstrich
|
|
|
|
|
BSSendUnicodeChar(0x0167)
|
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
|
|
|
|
BSSendUnicodeChar(0x1E6B)
|
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
|
|
|
|
BSSendUnicodeChar(0x1E6D)
|
|
|
|
|
else
|
|
|
|
|
sendinput {blind}t
|
|
|
|
|
if (PriorDeadKey = "comp")
|
|
|
|
|
CompKey := "t_small"
|
|
|
|
|
else
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
if (PriorDeadKey = "c2") ; caron
|
|
|
|
|
BSSendUnicodeChar(0x0164)
|
|
|
|
|
else if (PriorDeadKey = "a3") ; cedilla
|
|
|
|
|
BSSendUnicodeChar(0x0162)
|
|
|
|
|
else if (PriorDeadKey = "c4") ; Querstrich
|
|
|
|
|
BSSendUnicodeChar(0x0166)
|
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
|
|
|
|
BSSendUnicodeChar(0x1E6A)
|
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
|
|
|
|
BSSendUnicodeChar(0x1E6C)
|
|
|
|
|
else
|
|
|
|
|
sendinput {blind}T
|
|
|
|
|
if (PriorDeadKey = "comp")
|
|
|
|
|
CompKey := "t_capital"
|
|
|
|
|
else
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send {blind}- ; Bis
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
|
|
|
|
BSSendUnicodeChar(0x2076)
|
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
|
|
|
|
BSSendUnicodeChar(0x2086)
|
|
|
|
|
else
|
|
|
|
|
Send 6
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x03C4) ; tau
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2202 ) ; partielle Ableitung
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_d:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c4") ; Querstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0111)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t5") ; Schr<68>gstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00F0)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x010F)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E0B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E0D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}d
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c4") ; Querstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0110)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t5") ; Schr<68>gstrich
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00D0)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x010E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E0A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E0D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else sendinput {blind}D
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send :
|
|
|
|
|
else if Ebene = 4
|
2008-06-21 16:03:40 +00:00
|
|
|
|
Send `,
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x03B4) ;delta
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x0394) ; Delta
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_y:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00FD)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0177)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}y
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00DD)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "t3") ; Diaerese
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {bs}<EFBFBD>
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0176)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}Y
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send @
|
|
|
|
|
else if Ebene = 4
|
2008-06-21 16:03:40 +00:00
|
|
|
|
Send .
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x03C5) ; upsilon
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2207) ; nabla
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
;SC02B (#) wird zu Mod3
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
Reihe 4
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
;SC056 (<) wird zu Mod4
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_<EFBFBD>:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t2") ; macron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D6)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D8)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01DC)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01DA)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
sendinput {blind}<EFBFBD>
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 2
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t2") ; macron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D5)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D7)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a2") ; grave
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01DB)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01D9)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
sendinput {blind}<EFBFBD>
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send {blind}{#}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {Esc}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{} ; leer
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x221D) ; proportional
|
|
|
|
|
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_<EFBFBD>:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t2") ; macron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x022B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
sendinput {blind}<EFBFBD>
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 2
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t2") ; macron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x022A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
sendinput {blind}<EFBFBD>
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send $
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 4
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send {Tab}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
{} ;leer
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2111) ; Fraktur I
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_<EFBFBD>:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t2") ; macron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x01DF)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
sendinput {blind}<EFBFBD>
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 2
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t2") ; macron
|
2008-06-11 17:08:16 +00:00
|
|
|
|
BSSendUnicodeChar(0x001DE)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
sendinput {blind}<EFBFBD>
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send |
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
Send {PgDn} ; Next
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03B7) ; eta
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x211C) ; altes R
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_p:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E57)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}p
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E56)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}P
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "t1") ; tilde
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2248)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendraw ~
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 4
|
2008-06-21 19:27:39 +00:00
|
|
|
|
Send {Enter}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03C0) ;pi
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x03A0) ; Pi
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_z:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x017E)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x017A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dr<64>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x017C)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt drunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E93)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}z
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x017D)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a1") ; akut
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0179)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x017B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt drunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E92)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}Z
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send ``{space} ; untot
|
2008-06-14 20:31:51 +00:00
|
|
|
|
else if Ebene = 4
|
2008-06-14 11:43:05 +00:00
|
|
|
|
{} ; leer
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03B6) ;zeta
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2124) ; Z (ganze Zahlen)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_b:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E03)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}b
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E02)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}B
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send {blind}{+}
|
|
|
|
|
else if Ebene = 4
|
2008-06-21 16:03:40 +00:00
|
|
|
|
send :
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03B2) ; beta
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x21D2) ; Doppel-Pfeil rechts
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_m:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E41)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E43)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if ( (CompKey = "t_small") or (CompKey = "t_capital") ) ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2122) ; TM
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if ( (CompKey = "s_small") or (CompKey = "s_capital") ) ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2120) ; SM
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}m
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "a5") ; punkt dar<61>ber
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E40)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c6") ; punkt darunter
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x1E42)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if ( (CompKey = "t_capital") or (CompKey = "t_small") ) ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2122) ; TM
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if ( (CompKey = "s_capital") or (CompKey = "s_small") ) ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2120) ; SM
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}M
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send `%
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00B9)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2081)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send 1
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x03BC) ; griechisch mu, micro w<>re 0x00B5
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x21D4) ; doppelter Doppelpfeil (genau dann wenn)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_komma:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind},
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send `,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind},
|
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-10 20:35:23 +00:00
|
|
|
|
else if Ebene = 2
|
|
|
|
|
SendUnicodeChar(0x22EE) ; vertikale ellipse
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send "
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00B2)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2082)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send 2
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-21 16:18:44 +00:00
|
|
|
|
SendUnicodeChar(0x03C1) ; rho
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x21D0) ; Doppelpfeil links
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_punkt:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if GetKeyState("CapsLock","T")
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (IsModifierPressed())
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send {blind}.
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{
|
|
|
|
|
send .
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else {
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}.
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
2008-05-06 11:41:19 +00:00
|
|
|
|
SendUnicodeChar(0x2026) ; ellipse
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send '
|
|
|
|
|
else if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x00B3)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2083)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send 3
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-21 16:18:44 +00:00
|
|
|
|
SendUnicodeChar(0x03D1) ; theta symbol (vartheta)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x0398) ; Theta
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_j:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0135)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c2") ; caron
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x01F0)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "i_small") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x0133) ; ij
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "l_small") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x01C9) ; lj
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "l_capital") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x01C8) ; Lj
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}j
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x0134)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "i_capital") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x0132) ; IJ
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "l_capital") ; compose
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x01C7) ; LJ
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
sendinput {blind}J
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send `;
|
|
|
|
|
else if Ebene = 4
|
2008-06-21 16:03:40 +00:00
|
|
|
|
Send `;
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 5
|
2008-06-21 16:18:44 +00:00
|
|
|
|
SendUnicodeChar(0x03B8) ; theta
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
SendUnicodeChar(0x2261) ; identisch
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
Numpad
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
folgende Tasten verhalten sich bei ein- und ausgeschaltetem
|
|
|
|
|
NumLock gleich:
|
|
|
|
|
*/
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadDiv:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if ( (Ebene = 1) or (Ebene = 2) )
|
|
|
|
|
send {NumpadDiv}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
SendUnicodeChar(0x2215) ; slash
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadMult:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if ( (Ebene = 1) or (Ebene = 2) )
|
|
|
|
|
send {NumpadMult}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
SendUnicodeChar(0x22C5) ; cdot
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadSub:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if ( (Ebene = 1) or (Ebene = 2) )
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x207B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x208B)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{NumpadSub}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
SendUnicodeChar(0x2212) ; echtes minus
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadAdd:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if ( (Ebene = 1) or (Ebene = 2) )
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x207A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x208A)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{NumpadAdd}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
SendUnicodeChar(0x2213) ; -+
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadEnter:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if ( (Ebene = 1) or (Ebene = 2) )
|
|
|
|
|
send {NumpadEnter}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
SendUnicodeChar(0x2260) ; neq
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
SendUnicodeChar(0x2248) ; approx
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
folgende Tasten verhalten sich bei ein- und ausgeschaltetem NumLock
|
|
|
|
|
unterschiedlich:
|
|
|
|
|
|
|
|
|
|
bei NumLock ein
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad7:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad7}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_7"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadHome}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2195) ; Hoch-Runter-Pfeil
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x226A) ; ll
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad8:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215B) ; 1/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_3")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215C) ; 3/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_5")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215D) ; 5/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_7")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215E) ; 7/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad8}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_8"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadUp}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2191) ; uparrow
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2229) ; intersection
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad9:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad9}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_9"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadPgUp}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x226B) ; gg
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad4:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x00BC) ; 1/4
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_3")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x00BE) ; 3/4
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad4}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_4"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadLeft}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2190) ; leftarrow
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2282) ; subset of
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad5:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2155) ; 1/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_2")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2156) ; 2/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_3")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2157) ; 3/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_4")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2158) ; 4/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad5}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_5"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadClear}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x220A) ; small element of
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad6:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2159) ; 1/6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_5")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215A) ; 5/6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad6}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_6"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadRight}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2192) ; rightarrow
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2283) ; superset of
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad1:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad1}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_1"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadEnd}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2194) ; Links-Rechts-Pfeil
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2264) ; leq
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad2:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x00BD) ; 1/2
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad2}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_2"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadDown}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2193) ; downarrow
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x222A) ; vereinigt
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad3:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2153) ; 1/3
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_2")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2154) ; 2/3
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad3}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_3"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
send {NumpadPgDn}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
SendUnicodeChar(0x21CC) ; RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
SendUnicodeChar(0x2265) ; geq
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_Numpad0:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Numpad0}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_0"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadIns}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send `%
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadDot:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadDot}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadDel}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send .
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
send `,
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
bei NumLock aus
|
|
|
|
|
*/
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadHome:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadHome}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {Numpad7}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_7"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x226A) ; ll
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadUp:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadUp}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215B) ; 1/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_3")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215C) ; 3/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_5")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215D) ; 5/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_7")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215E) ; 7/8
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send {Numpad8}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_8"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2191) ; uparrow
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2229) ; intersection
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadPgUp:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadPgUp}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {Numpad9}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_9"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x226B) ; gg
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadLeft:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadLeft}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x00BC) ; 1/4
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_3")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x00BE) ; 3/4
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send {Numpad4}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_4"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2190) ; leftarrow
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2282) ; subset of
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadClear:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadClear}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2155) ; 1/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_2")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2156) ; 2/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_3")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2157) ; 3/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_4")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2158) ; 4/5
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send {Numpad5}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_5"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x220A) ; small element of
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadRight:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadRight}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2159) ; 1/6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_5")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x215A) ; 5/6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send {Numpad6}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_6"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2192) ; rightarrow
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2283) ; superset of
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadEnd:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadEnd}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {Numpad1}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_1"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x21CB) ; LEFTWARDS HARPOON OVER RIGHTWARDS HARPOON
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2264) ; leq
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadDown:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadDown}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x00BD) ; 1/2
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send {Numpad2}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_2"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2193) ; downarrow
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x222A) ; vereinigt
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadPgDn:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadPgDn}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "Num_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2153) ; 1/3
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "Num_2")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompUnicodeChar(0x2154) ; 2/3
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
send {Numpad3}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_3"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x21CC) ; RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
SendUnicodeChar(0x2265) ; geq
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadIns:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadIns}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {Numpad0}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "comp")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := "Num_0"
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send `%
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
send <EFBFBD>
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_NumpadDel:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
send {NumpadDel}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 2
|
|
|
|
|
{
|
|
|
|
|
send {NumpadDot}
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 3
|
|
|
|
|
{
|
|
|
|
|
send .
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else if ( (Ebene = 4) or (Ebene = 5) )
|
|
|
|
|
{
|
|
|
|
|
send `,
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
Sondertasten
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
2008-06-18 23:26:43 +00:00
|
|
|
|
*space::
|
|
|
|
|
if (einHandNeo)
|
|
|
|
|
spacepressed := 1
|
|
|
|
|
else
|
|
|
|
|
goto neo_SpaceUp
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*space up::
|
|
|
|
|
if (einHandNeo)
|
|
|
|
|
{
|
|
|
|
|
if (keypressed)
|
|
|
|
|
{
|
|
|
|
|
keypressed := 0
|
|
|
|
|
spacepressed := 0
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
goto neo_SpaceUp
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{ } ;do nothing
|
|
|
|
|
return
|
2008-05-06 11:41:19 +00:00
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_SpaceUp:
|
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
|
|
|
|
if (CompKey = "r_small_1")
|
|
|
|
|
Comp3UnicodeChar(0x2170) ; r<>misch i
|
|
|
|
|
else if (CompKey = "r_capital_1")
|
|
|
|
|
Comp3UnicodeChar(0x2160) ; r<>misch I
|
|
|
|
|
else
|
|
|
|
|
Send {blind}{Space}
|
|
|
|
|
}
|
|
|
|
|
if Ebene = 2
|
|
|
|
|
Send {blind}{Space}
|
|
|
|
|
if Ebene = 3
|
|
|
|
|
Send {blind}{Space}
|
|
|
|
|
if Ebene = 4
|
|
|
|
|
{
|
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
|
|
|
|
BSSendUnicodeChar(0x2070)
|
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
|
|
|
|
BSSendUnicodeChar(0x2080)
|
|
|
|
|
else
|
|
|
|
|
Send 0
|
|
|
|
|
}
|
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x00A0) ; gesch<63>tztes Leerzeichen
|
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x202F) ; schmales Leerzeichen
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
spacepressed := 0
|
|
|
|
|
keypressed := 0
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
/*
|
2008-05-06 11:41:19 +00:00
|
|
|
|
*Space::
|
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
if Ebene = 1
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (CompKey = "r_small_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Comp3UnicodeChar(0x2170) ; r<>misch i
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (CompKey = "r_capital_1")
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Comp3UnicodeChar(0x2160) ; r<>misch I
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
Send {blind}{Space}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
if Ebene = 2
|
|
|
|
|
Send {blind}{Space}
|
|
|
|
|
if Ebene = 3
|
2008-06-11 17:08:16 +00:00
|
|
|
|
Send {blind}{Space}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
if Ebene = 4
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if (PriorDeadKey = "c1") ; circumflex
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2070)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if (PriorDeadKey = "c4") ; toter -
|
2008-05-06 11:41:19 +00:00
|
|
|
|
BSSendUnicodeChar(0x2080)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-05-06 11:41:19 +00:00
|
|
|
|
Send 0
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else if Ebene = 5
|
|
|
|
|
SendUnicodeChar(0x00A0) ; gesch<63>tztes Leerzeichen
|
2008-05-06 11:41:19 +00:00
|
|
|
|
else if Ebene = 6
|
|
|
|
|
SendUnicodeChar(0x202F) ; schmales Leerzeichen
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
2008-06-18 23:26:43 +00:00
|
|
|
|
*/
|
2008-05-06 11:41:19 +00:00
|
|
|
|
/*
|
|
|
|
|
Folgende Tasten sind nur aufgef<EFBFBD>hrt, um PriorDeadKey zu leeren.
|
|
|
|
|
Irgendwie sieht das noch nicht sch<EFBFBD>n aus. Vielleicht l<EFBFBD>sst sich dieses
|
|
|
|
|
Problem irgendwie eleganter l<EFBFBD>sen...
|
|
|
|
|
|
|
|
|
|
Nachtrag:
|
|
|
|
|
Weil es mit Alt+Tab Probleme gab, wird hier jetzt erstmal rumgeflickschustert,
|
|
|
|
|
bis eine allgemeinere L<EFBFBD>sung gefunden wurde.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
*Enter::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Return) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{Enter}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*Backspace::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Backspace) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{Backspace}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
2008-06-21 19:27:39 +00:00
|
|
|
|
*Del::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Entf) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{Del}
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*Ins::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Einf) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{Ins}
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2008-05-06 11:41:19 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
Auf Mod3+Tab liegt Compose. AltTab funktioniert, jedoch ShiftAltTab nicht.
|
|
|
|
|
Wenigstens kommt es jetzt nicht mehr zu komischen Ergebnissen, wenn man Tab
|
|
|
|
|
nach einem DeadKey dr<EFBFBD>ckt...
|
|
|
|
|
*/
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
neo_tab:
|
2008-05-06 11:41:19 +00:00
|
|
|
|
if ( GetKeyState("SC038","P") )
|
|
|
|
|
{
|
|
|
|
|
SC038 & Tab::AltTab ; http://de.autohotkey.com/docs/Hotkeys.htm#AltTabDetail
|
|
|
|
|
}
|
|
|
|
|
else if GetKeyState("#","P")
|
|
|
|
|
{
|
|
|
|
|
PriorDeadKey := "comp"
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{Tab}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := ""
|
|
|
|
|
CompKey := ""
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-19 09:24:55 +00:00
|
|
|
|
*SC038:: ; LAlt, damit AltTab funktioniert
|
2008-06-11 17:08:16 +00:00
|
|
|
|
send {blind}{LAlt}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
return
|
|
|
|
|
|
2008-06-21 19:27:39 +00:00
|
|
|
|
*Home::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Pos1) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{Home}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*End::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Ende) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{End}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*PgUp::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_PgUp) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{PgUp}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*PgDn::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_PgDn) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{PgDn}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*Up::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Hoch) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{Up}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*Down::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Runter) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{Down}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*Left::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Links) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{Left}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
*Right::
|
2008-06-22 00:21:54 +00:00
|
|
|
|
if ( not(lernModus) or (lernModus_std_Rechts) )
|
2008-06-21 19:27:39 +00:00
|
|
|
|
{
|
|
|
|
|
sendinput {Blind}{Right}
|
|
|
|
|
PriorDeadKey := "" CompKey := ""
|
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
Funktionen
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
|
2008-06-11 17:08:16 +00:00
|
|
|
|
/*
|
|
|
|
|
Ebenen laut Referenz:
|
|
|
|
|
1. Ebene (kein Mod) 4. Ebene (Mod4)
|
|
|
|
|
2. Ebene (Umschalt) 5. Ebene (Mod3+Umschalt)
|
|
|
|
|
3. Ebene (Mod3) 6. Ebene (Mod3+Mod4)
|
|
|
|
|
*/
|
2008-06-14 11:43:05 +00:00
|
|
|
|
/*
|
2008-05-06 11:41:19 +00:00
|
|
|
|
EbeneAktualisieren()
|
|
|
|
|
{
|
|
|
|
|
global
|
2008-06-14 11:43:05 +00:00
|
|
|
|
Ebene = 1
|
|
|
|
|
|
|
|
|
|
; ist Shift down?
|
|
|
|
|
if ( GetKeyState("Shift","P") )
|
|
|
|
|
{
|
|
|
|
|
Ebene += 1
|
|
|
|
|
}
|
|
|
|
|
; ist Mod3 down?
|
|
|
|
|
if ( GetKeyState("CapsLock","P") or GetKeyState("#","P") )
|
|
|
|
|
{
|
|
|
|
|
Ebene += 2
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
; ist Mod4 down? Mod3 hat Vorrang!
|
|
|
|
|
else if ( GetKeyState("<","P") or GetKeyState("SC138","P") )
|
|
|
|
|
{
|
|
|
|
|
Ebene += 4
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
EbeneAktualisieren()
|
2008-06-14 11:43:05 +00:00
|
|
|
|
{
|
|
|
|
|
global
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if (ahkTreiberKombi)
|
2008-06-14 11:43:05 +00:00
|
|
|
|
{
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if ( IsMod4Pressed() and not(IsShiftPressed()) and not(IsMod3Pressed()))
|
2008-06-14 11:43:05 +00:00
|
|
|
|
{
|
2008-06-19 09:24:55 +00:00
|
|
|
|
Ebene = 6
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Ebene = -1
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if ( IsShiftPressed() )
|
|
|
|
|
{ ; Umschalt
|
|
|
|
|
if ( IsMod3Pressed() )
|
|
|
|
|
{ ; Umschalt UND Mod3
|
|
|
|
|
if ( IsMod4Pressed() )
|
|
|
|
|
{ ; Umschald UND Mod3 UND Mod4
|
|
|
|
|
; Ebene 8 impliziert Ebene 6
|
2008-06-11 17:08:16 +00:00
|
|
|
|
Ebene = 6
|
2008-06-14 11:43:05 +00:00
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{ ; Umschald UND Mod3 NICHT Mod4
|
|
|
|
|
Ebene = 5
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{ ; Umschalt NICHT Mod3
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if ( IsMod4Pressed() )
|
|
|
|
|
{ ; Umschald UND Mod4 NICHT Mod3
|
|
|
|
|
; Ebene 7 impliziert Ebene 4
|
2008-06-14 12:48:46 +00:00
|
|
|
|
Ebene = 4
|
2008-06-14 11:43:05 +00:00
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{ ; Umschald NICHT Mod3 NICHT Mod4
|
2008-06-11 17:08:16 +00:00
|
|
|
|
Ebene = 2
|
2008-06-14 11:43:05 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{ ; NICHT Umschalt
|
|
|
|
|
if ( IsMod3Pressed() )
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{ ; Mod3 NICHT Umschalt
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if ( IsMod4Pressed() )
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{ ; Mod3 UND Mod4 NICHT Umschalt
|
|
|
|
|
Ebene = 6
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{ ; Mod3 NICHT Mod4 NICHT Umschalt
|
|
|
|
|
Ebene = 3
|
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{ ; NICHT Umschalt NICHT Mod3
|
2008-06-14 11:43:05 +00:00
|
|
|
|
if ( IsMod4Pressed() )
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{ ; Mod4 NICHT Umschalt NICHT Mod3
|
|
|
|
|
Ebene = 4
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
else
|
2008-06-11 17:08:16 +00:00
|
|
|
|
{ ; NICHT Umschalt NICHT Mod3 NICHT Mod4
|
|
|
|
|
Ebene = 1
|
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
|
2008-06-11 17:08:16 +00:00
|
|
|
|
IsShiftPressed()
|
|
|
|
|
{
|
|
|
|
|
return GetKeyState("Shift","P")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
IsMod3Pressed()
|
|
|
|
|
{
|
2008-06-14 20:31:51 +00:00
|
|
|
|
global
|
|
|
|
|
if (IsMod3Locked)
|
|
|
|
|
{
|
|
|
|
|
return (not ( GetKeyState("CapsLock","P") or GetKeyState("#","P") ))
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
return ( GetKeyState("CapsLock","P") or GetKeyState("#","P") )
|
|
|
|
|
}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
IsMod4Pressed()
|
|
|
|
|
{
|
2008-06-14 11:43:05 +00:00
|
|
|
|
global
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if( not(einHandNeo) or not(spacepressed) )
|
2008-06-14 11:43:05 +00:00
|
|
|
|
{
|
2008-06-19 09:24:55 +00:00
|
|
|
|
if (IsMod4Locked)
|
|
|
|
|
{
|
|
|
|
|
return (not ( GetKeyState("<","P") or GetKeyState("SC138","P") or altGrPressed ))
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
return ( GetKeyState("<","P") or GetKeyState("SC138","P") or altGrPressed )
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
}
|
2008-06-19 09:24:55 +00:00
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (IsMod4Locked)
|
|
|
|
|
{
|
|
|
|
|
return (not ( GetKeyState("<","P") or GetKeyState("SC138","P") or GetKeyState("<EFBFBD>","P") or altGrPressed ))
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
return ( GetKeyState("<","P") or GetKeyState("SC138","P") or GetKeyState("<EFBFBD>","P") or altGrPressed )
|
|
|
|
|
}
|
2008-06-14 11:43:05 +00:00
|
|
|
|
}
|
2008-06-19 09:24:55 +00:00
|
|
|
|
|
2008-06-11 17:08:16 +00:00
|
|
|
|
}
|
2008-05-06 11:41:19 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*************************
|
|
|
|
|
Alte Methoden
|
|
|
|
|
*************************/
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
Unicode(code)
|
|
|
|
|
{
|
|
|
|
|
saved_clipboard := ClipboardAll
|
|
|
|
|
Transform, Clipboard, Unicode, %code%
|
|
|
|
|
sendplay ^v
|
|
|
|
|
Clipboard := saved_clipboard
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
BSUnicode(code)
|
|
|
|
|
{
|
|
|
|
|
saved_clipboard := ClipboardAll
|
|
|
|
|
Transform, Clipboard, Unicode, %code%
|
|
|
|
|
sendplay {bs}^v
|
|
|
|
|
Clipboard := saved_clipboard
|
|
|
|
|
}
|
|
|
|
|
*/
|
|
|
|
|
|
2008-06-11 17:08:16 +00:00
|
|
|
|
IsModifierPressed()
|
|
|
|
|
{
|
|
|
|
|
if (GetKeyState("LControl","P") or GetKeyState("RControl","P") or GetKeyState("LAlt","P") or GetKeyState("RAltl","P") or GetKeyState("LWin","P") or GetKeyState("RWin","P") or GetKeyState("LShift","P") or GetKeyState("RShift","P") or GetKeyState("AltGr","P") )
|
|
|
|
|
{
|
|
|
|
|
return 1
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
return 0
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2008-05-06 11:41:19 +00:00
|
|
|
|
SendUnicodeChar(charCode)
|
|
|
|
|
{
|
|
|
|
|
VarSetCapacity(ki, 28 * 2, 0)
|
|
|
|
|
|
|
|
|
|
EncodeInteger(&ki + 0, 1)
|
|
|
|
|
EncodeInteger(&ki + 6, charCode)
|
|
|
|
|
EncodeInteger(&ki + 8, 4)
|
|
|
|
|
EncodeInteger(&ki +28, 1)
|
|
|
|
|
EncodeInteger(&ki +34, charCode)
|
|
|
|
|
EncodeInteger(&ki +36, 4|2)
|
|
|
|
|
|
|
|
|
|
DllCall("SendInput", "UInt", 2, "UInt", &ki, "Int", 28)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
BSSendUnicodeChar(charCode)
|
|
|
|
|
{
|
|
|
|
|
send {bs}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
SendUnicodeChar(charCode)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
CompUnicodeChar(charCode)
|
|
|
|
|
{
|
|
|
|
|
send {bs}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
SendUnicodeChar(charCode)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Comp3UnicodeChar(charCode)
|
|
|
|
|
{
|
|
|
|
|
send {bs}
|
|
|
|
|
send {bs}
|
2008-06-11 17:08:16 +00:00
|
|
|
|
SendUnicodeChar(charCode)
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
EncodeInteger(ref, val)
|
|
|
|
|
{
|
|
|
|
|
DllCall("ntdll\RtlFillMemoryUlong", "Uint", ref, "Uint", 4, "Uint", val)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2008-06-16 17:29:58 +00:00
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
BildschirmTastatur
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
guiErstellt = 0
|
|
|
|
|
alwaysOnTop = 1
|
|
|
|
|
aktuellesBild = ebene1.png
|
|
|
|
|
^~F1::
|
|
|
|
|
{
|
|
|
|
|
if (zeigeBildschirmTastatur)
|
|
|
|
|
goto Switch1
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
^~F2::
|
|
|
|
|
{
|
|
|
|
|
if (zeigeBildschirmTastatur)
|
|
|
|
|
goto Switch2
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
^~F3::
|
|
|
|
|
{
|
|
|
|
|
if (zeigeBildschirmTastatur)
|
|
|
|
|
goto Switch3
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
^~F4::
|
|
|
|
|
{
|
|
|
|
|
if (zeigeBildschirmTastatur)
|
|
|
|
|
goto Switch4
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
^~F5::
|
|
|
|
|
{
|
|
|
|
|
if (zeigeBildschirmTastatur)
|
|
|
|
|
goto Switch5
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
^~F6::
|
|
|
|
|
{
|
|
|
|
|
if (zeigeBildschirmTastatur)
|
|
|
|
|
goto Switch6
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
^~F7::
|
|
|
|
|
{
|
|
|
|
|
if (zeigeBildschirmTastatur)
|
|
|
|
|
goto Show
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
^~F8::
|
|
|
|
|
{
|
|
|
|
|
if (zeigeBildschirmTastatur)
|
|
|
|
|
goto ToggleAlwaysOnTop
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Switch1:
|
|
|
|
|
if (guiErstellt)
|
|
|
|
|
{
|
|
|
|
|
if (Image == "ebene1.png")
|
|
|
|
|
goto Close
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene1.png
|
|
|
|
|
SetTimer, Refresh
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene1.png
|
|
|
|
|
goto Show
|
|
|
|
|
}
|
|
|
|
|
Return
|
|
|
|
|
|
|
|
|
|
Switch2:
|
|
|
|
|
if (guiErstellt)
|
|
|
|
|
{
|
|
|
|
|
if (Image == "ebene2.png")
|
|
|
|
|
goto Close
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene2.png
|
|
|
|
|
SetTimer, Refresh
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene2.png
|
|
|
|
|
goto Show
|
|
|
|
|
}
|
|
|
|
|
Return
|
|
|
|
|
|
|
|
|
|
Switch3:
|
|
|
|
|
if (guiErstellt)
|
|
|
|
|
{
|
|
|
|
|
if (Image == "ebene3.png")
|
|
|
|
|
goto Close
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene3.png
|
|
|
|
|
SetTimer, Refresh
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene3.png
|
|
|
|
|
goto Show
|
|
|
|
|
}
|
|
|
|
|
Return
|
|
|
|
|
|
|
|
|
|
Switch4:
|
|
|
|
|
if (guiErstellt)
|
|
|
|
|
{
|
|
|
|
|
if (Image == "ebene4.png")
|
|
|
|
|
goto Close
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene4.png
|
|
|
|
|
SetTimer, Refresh
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene4.png
|
|
|
|
|
goto Show
|
|
|
|
|
}
|
|
|
|
|
Return
|
|
|
|
|
|
|
|
|
|
Switch5:
|
|
|
|
|
if (guiErstellt)
|
|
|
|
|
{
|
|
|
|
|
if (Image == "ebene5.png")
|
|
|
|
|
goto Close
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene5.png
|
|
|
|
|
SetTimer, Refresh
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene5.png
|
|
|
|
|
goto Show
|
|
|
|
|
}
|
|
|
|
|
Return
|
|
|
|
|
|
|
|
|
|
Switch6:
|
|
|
|
|
if (guiErstellt)
|
|
|
|
|
{
|
|
|
|
|
if (Image == "ebene6.png")
|
|
|
|
|
goto Close
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene6.png
|
|
|
|
|
SetTimer, Refresh
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Image = ebene6.png
|
|
|
|
|
goto Show
|
|
|
|
|
}
|
|
|
|
|
Return
|
|
|
|
|
|
|
|
|
|
Show:
|
|
|
|
|
if (guiErstellt)
|
|
|
|
|
{
|
|
|
|
|
goto Close
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (Image = "")
|
|
|
|
|
{
|
|
|
|
|
Image = ebene1.png
|
|
|
|
|
}
|
|
|
|
|
yPosition := A_ScreenHeight -270
|
|
|
|
|
Gui, Color, FFFFFF
|
|
|
|
|
Gui, Add, Button, xm+5 gSwitch1, F1
|
|
|
|
|
Gui, Add, Text, x+5, kleine Buchstaben
|
|
|
|
|
Gui, Add, Button, xm+5 gSwitch2, F2
|
|
|
|
|
Gui, Add, Text, x+5, gro<EFBFBD>e Buchstaben
|
|
|
|
|
Gui, Add, Button, xm+5 gSwitch3, F3
|
|
|
|
|
Gui, Add, Text, x+5, Satz-/Sonderzeichen
|
|
|
|
|
Gui, Add, Button, xm+5 gSwitch4, F4
|
|
|
|
|
Gui, Add, Text, x+5, Zahlen / Steuerung
|
|
|
|
|
Gui, Add, Button, xm+5 gSwitch5, F5
|
|
|
|
|
Gui, Add, Text, x+5, Sprachen
|
|
|
|
|
Gui, Add, Button, xm+5 gSwitch6, F6
|
|
|
|
|
Gui, Add, Text, x+5, Mathesymbole
|
|
|
|
|
Gui, Add, Button, xm+5 gShow, F7
|
|
|
|
|
Gui, Add, Text, x+5, An /
|
|
|
|
|
Gui, Add, Text, y+3, Aus
|
|
|
|
|
Gui, Add, Button, x+10 y+-30 gShow, F8
|
|
|
|
|
Gui, Add, Text, x+5, OnTop
|
|
|
|
|
Gui, Add, Picture,AltSubmit ys w564 h200 vPicture, %Image%
|
|
|
|
|
Gui, +AlwaysOnTop
|
|
|
|
|
Gui, Show, y%yposition% Autosize
|
|
|
|
|
SetTimer, Refresh
|
|
|
|
|
guiErstellt = 1
|
|
|
|
|
}
|
|
|
|
|
Return
|
|
|
|
|
|
|
|
|
|
Close:
|
|
|
|
|
guiErstellt = 0
|
|
|
|
|
Gui, Destroy
|
|
|
|
|
Return
|
|
|
|
|
|
|
|
|
|
Refresh:
|
|
|
|
|
If (Image != OldImage)
|
|
|
|
|
{
|
|
|
|
|
GuiControl, , Picture, %Image%
|
|
|
|
|
OldImage := Image
|
|
|
|
|
}
|
|
|
|
|
Return
|
|
|
|
|
|
|
|
|
|
ToggleAlwaysOnTop:
|
|
|
|
|
if (alwaysOnTop)
|
|
|
|
|
{
|
|
|
|
|
Gui, -AlwaysOnTop
|
|
|
|
|
alwaysOnTop = 0
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Gui, +AlwaysOnTop
|
|
|
|
|
alwaysOnTop = 1
|
|
|
|
|
}
|
|
|
|
|
Return
|
|
|
|
|
; Ende der BildschirmTastatur
|
|
|
|
|
|
|
|
|
|
|
2008-05-06 11:41:19 +00:00
|
|
|
|
/*
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
Shift+Pause "pausiert" das Script.
|
|
|
|
|
------------------------------------------------------
|
|
|
|
|
*/
|
|
|
|
|
|
2008-06-10 20:35:23 +00:00
|
|
|
|
+pause::
|
|
|
|
|
Suspend, Permit
|
|
|
|
|
goto togglesuspend
|
|
|
|
|
return
|
2008-05-06 11:41:19 +00:00
|
|
|
|
|
|
|
|
|
; ------------------------------------
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
^.::einHandNeo := not(einHandNeo)
|
2008-06-22 00:21:54 +00:00
|
|
|
|
^,::lernModus := not(lernModus)
|
|
|
|
|
|
2008-06-18 23:26:43 +00:00
|
|
|
|
|
2008-06-10 20:35:23 +00:00
|
|
|
|
|
2008-05-06 11:41:19 +00:00
|
|
|
|
togglesuspend:
|
2008-06-10 20:35:23 +00:00
|
|
|
|
if A_IsSuspended
|
2008-05-06 11:41:19 +00:00
|
|
|
|
{
|
|
|
|
|
menu, tray, rename, %enable%, %disable%
|
2008-06-10 20:35:23 +00:00
|
|
|
|
menu, tray, tip, %name%
|
2008-06-14 20:31:51 +00:00
|
|
|
|
if (iconBenutzen)
|
|
|
|
|
menu, tray, icon, neo.ico,,1
|
2008-06-10 20:35:23 +00:00
|
|
|
|
suspend , off ; Schaltet Suspend aus -> NEO
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
menu, tray, rename, %disable%, %enable%
|
2008-06-14 20:31:51 +00:00
|
|
|
|
menu, tray, tip, %name% : Deaktiviert
|
|
|
|
|
if (iconBenutzen)
|
|
|
|
|
menu, tray, icon, neo_disabled.ico,,1
|
2008-06-10 20:35:23 +00:00
|
|
|
|
suspend , on ; Schaltet Suspend ein -> QWERTZ
|
2008-05-06 11:41:19 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
help:
|
|
|
|
|
Run, %A_WinDir%\hh mk:@MSITStore:autohotkey.chm
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
about:
|
|
|
|
|
msgbox, 64, %name% <EFBFBD> Ergonomische Tastaturbelegung,
|
|
|
|
|
(
|
|
|
|
|
%name%
|
|
|
|
|
`nDas Neo-Layout ersetzt das <EFBFBD>bliche deutsche
|
|
|
|
|
Tastaturlayout mit der Alternative Neo,
|
|
|
|
|
beschrieben auf http://neo-layout.org/.
|
|
|
|
|
`nDazu sind keine Administratorrechte n<EFBFBD>tig.
|
|
|
|
|
`nWenn Autohotkey aktiviert ist, werden alle Tastendrucke
|
|
|
|
|
abgefangen und statt dessen eine <EFBFBD>bersetzung weitergeschickt.
|
|
|
|
|
`nDies geschieht transparent f<EFBFBD>r den Anwender,
|
|
|
|
|
es muss nichts installiert werden.
|
|
|
|
|
`nDie Zeichen<EFBFBD>bersetzung kann leicht <EFBFBD>ber das Icon im
|
|
|
|
|
Systemtray deaktiviert werden. `n
|
|
|
|
|
)
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
neo:
|
|
|
|
|
run http://neo-layout.org/
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
autohotkey:
|
|
|
|
|
run http://autohotkey.com/
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
open:
|
|
|
|
|
ListLines ; shows the Autohotkey window
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
edit:
|
|
|
|
|
edit
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
reload:
|
|
|
|
|
Reload
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
hide:
|
|
|
|
|
menu, tray, noicon
|
|
|
|
|
return
|
|
|
|
|
|
|
|
|
|
exitprogram:
|
|
|
|
|
exitapp
|
|
|
|
|
return
|