diff options
-rw-r--r-- | windows/XP/autohotkey/neo20-all-in-one.ahk | 875 |
1 files changed, 479 insertions, 396 deletions
diff --git a/windows/XP/autohotkey/neo20-all-in-one.ahk b/windows/XP/autohotkey/neo20-all-in-one.ahk index 8ee91da..289d738 100644 --- a/windows/XP/autohotkey/neo20-all-in-one.ahk +++ b/windows/XP/autohotkey/neo20-all-in-one.ahk @@ -1,8 +1,13 @@ /*
- Titel: NEO Autohotkey-Treiber
- Version: 0.01b
- Datum: 28.05.2007
- Basiert auf: Neo-Layout und Neo-Remap vom 25.05.2007
+ Titel: NEO Autohotkey-Treiber
+ Version: 0.03b
+ Datum: 29.05.2007
+ Basiert auf: Neo-Layout und Neo-Remap vom 25.05.2007
+
+ TODO: - Nummernblock hinzufgen
+ - DeadKeys tot machen (?)
+ - Men des Tasksymbols
+ - Symbol ndern?
*/
; aus Nora's script kopiert:
@@ -48,8 +53,6 @@ if inputlocale <> 00000407 exitapp
}
-
-
; Variablen initialisieren
Ebene = 1
myPriorHotkey = ""
@@ -72,8 +75,12 @@ return ; Mod5-Tasten einen Hotkey zuweisen, damit die QWERTZ-Entsprechung nicht mehr ausgegeben wird:
*<::
-*<^>!::
-return
+*SC138::
+ if GetKeyState("<","P") and GetKeyState("SC138","P")
+ {
+ send {numpaddot}
+ }
+ return
@@ -91,6 +98,12 @@ return */
+/*
+ ------------------------------------------------------
+ Reihe 1
+ ------------------------------------------------------
+*/
+
*^::
EbeneAktualisieren()
if Ebene = 1
@@ -105,18 +118,22 @@ return }
else if Ebene = 3
{
+ Unicode("˘") ; brevis
myPriorHotkey = "c3"
}
else if Ebene = 4
{
+ send - ; querstrich, tot
myPriorHotkey = "c4"
}
else if Ebene = 5
{
+ Unicode("·") ; Mittenpunkt, tot
myPriorHotkey = "c5"
}
else if Ebene = 6
{
+ Send . ; punkt darunter
myPriorHotkey = "c6"
}
return
@@ -132,15 +149,11 @@ return }
else if Ebene = 2
send
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 4
+ send
+ else if Ebene = 5
+ Unicode("⅛") ; 1/8
+ myPriorHotkey = ""
return
*2::
@@ -154,15 +167,9 @@ return }
else if Ebene = 2
send
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 4
+ send
+ myPriorHotkey = ""
return
*3::
@@ -176,15 +183,11 @@ return }
else if Ebene = 2
send
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 4
+ send
+ else if Ebene = 5
+ Unicode("⅜") ; 3/8
+ myPriorHotkey = ""
return
*4::
@@ -193,15 +196,15 @@ return send 4
else if Ebene = 2
send $
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send
+ else if Ebene = 4
+ send
+ else if Ebene = 5
+ Send {PgUp} ; Prev
+ else if Ebene = 6
+ Send +{Prev}
+ myPriorHotkey = ""
return
*5::
@@ -210,15 +213,15 @@ return send 5
else if Ebene = 2
send
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send
+ else if Ebene = 4
+ send
+ else if Ebene = 5
+ Unicode("⅝") ; 5/8
+ else if Ebene = 6
+ Unicode("⇒") ; Implikation
+ myPriorHotkey = ""
return
*6::
@@ -227,15 +230,13 @@ return send 6
else if Ebene = 2
send
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send
+ else if Ebene = 4
+ send
+ else if Ebene = 6
+ Unicode("⇔") ; quivalenz
+ myPriorHotkey = ""
return
*7::
@@ -244,15 +245,14 @@ return send 7
else if Ebene = 2
send
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send
+ else if Ebene = 4
+ send
+ else if Ebene = 5
+ Unicode("⅞") ; 7/8
+ else if Ebene = 6
+ myPriorHotkey = ""
return
*8::
@@ -261,15 +261,15 @@ return send 8
else if Ebene = 2
send
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send
+ else if Ebene = 4
+ send
+ else if Ebene = 5
+ Send /
+ else if Ebene = 6
+ Unicode("∃") ; Existenzquantor
+ myPriorHotkey = ""
return
*9::
@@ -278,15 +278,15 @@ return send 9
else if Ebene = 2
send
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send
+ else if Ebene = 4
+ send
+ else if Ebene = 5
+ Send *
+ else if Ebene = 6
+ Unicode("∀") ; Allquantor
+ myPriorHotkey = ""
return
*0::
@@ -295,15 +295,15 @@ return send 0
else if Ebene = 2
send
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send
+ else if Ebene = 4
+ send
+ else if Ebene = 5
+ Send -
+ else if Ebene = 6
+ Send
+ myPriorHotkey = ""
return
*::
@@ -312,22 +312,20 @@ return send - ; Bind
else if Ebene = 2
Unicode("–") ; Ged
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ Unicode("—")
+ else if Ebene = 4
+ send
+ else if Ebene = 6
+ Unicode("∨") ; logisch oder
+ myPriorHotkey = ""
return
*::
EbeneAktualisieren()
if Ebene = 1
{
- send {"a1"}{space} ; akut, tot
+ send {}{space} ; akut, tot
myPriorHotkey = "a1"
}
else if Ebene = 2
@@ -337,38 +335,46 @@ return }
else if Ebene = 3
{
+ send ; cedilla
myPriorHotkey = "a3"
}
else if Ebene = 4
{
+ Unicode("˛") ; ogonek
myPriorHotkey = "a4"
}
else if Ebene = 5
{
+ Unicode("˙") ; punkt oben drber
myPriorHotkey = "a5"
}
else if Ebene = 6
{
+ Unicode("˚") ; ring obendrauf
myPriorHotkey = "a6"
}
return
+/*
+ ------------------------------------------------------
+ Reihe 2
+ ------------------------------------------------------
+*/
+
*q::
EbeneAktualisieren()
if Ebene = 1
sendinput {blind}x
else if Ebene = 2
sendinput {blind}X
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send @
+ else if Ebene = 4
+ Unicode("ξ") ;xi
+ else if Ebene = 6
+ Unicode("Ξ") ; Xi
+ myPriorHotkey = ""
return
@@ -388,15 +394,13 @@ return Else
sendinput {blind}V
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send _
+ else if Ebene = 5
+ Send {Backspace}
+ else if Ebene = 6
+ Unicode("Λ") ; Lambda
+ myPriorHotkey = ""
return
@@ -438,15 +442,15 @@ return sendinput {blind}L
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send [
+ else if Ebene = 4
+ Unicode("λ") ;lambda
+ else if Ebene = 5
+ Send {Up}
+ else if Ebene = 6
+ Send +{Up}
+ myPriorHotkey = ""
return
@@ -482,15 +486,15 @@ return Else
sendinput {blind}C
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send ]
+ else if Ebene = 4
+ Unicode("χ") ;chi
+ else if Ebene = 5
+ Send {Tab}
+ else if Ebene = 6
+ Send +{Tab}
+ myPriorHotkey = ""
return
*t::
@@ -509,15 +513,13 @@ return Else
sendinput {blind}W
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send {^}{space} ; untot
+ else if Ebene = 5
+ Send {Insert}
+ else if Ebene = 6
+ Send +{Insert}
+ myPriorHotkey = ""
return
*z::
@@ -540,15 +542,15 @@ return Else
sendinput {blind}K
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ sendraw !
+ else if Ebene = 4
+ Unicode("κ") ;kappa
+ else if Ebene = 5
+ Send
+ else if Ebene = 6
+ Send
+ myPriorHotkey = ""
return
*u::
@@ -577,15 +579,20 @@ return BSUnicode("Ḥ")
Else sendinput {blind}H
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ {
+ If myPriorHotkey = "c4" ; Querstrich
+ BSUnicode("≤")
+ Else
+ send <
+ }
+ else if Ebene = 4
+ Unicode("ψ") ;psi
+ else if Ebene = 5
+ Send 7
+ else if Ebene = 6
+ Unicode("Ψ") ; Phi
+ myPriorHotkey = ""
return
*i::
@@ -614,15 +621,20 @@ return BSUnicode("Ġ")
Else sendinput {blind}G
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ {
+ If myPriorHotkey = "c4" ; Querstrich
+ BSUnicode("≥")
+ Else
+ send >
+ }
+ else if Ebene = 4
+ Unicode("γ") ;gamma
+ else if Ebene = 5
+ Send 8
+ else if Ebene = 6
+ Unicode("Γ") ; Gamma
+ myPriorHotkey = ""
return
*o::
@@ -643,15 +655,40 @@ return BSUnicode("Ḟ")
Else sendinput {blind}F
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ {
+ If myPriorHotkey = "c1" ; circumflex
+ BSUnicode("≙")
+ Else If myPriorHotkey = "t1" ; tilde
+ BSUnicode("≅")
+ Else If myPriorHotkey = "t5" ; Schrgstrich
+ BSUnicode("≠")
+ Else If myPriorHotkey = "c4" ; Querstrich
+ BSUnicode("≡")
+ Else If myPriorHotkey = "c2" ; caron
+ BSUnicode("≚")
+ Else If myPriorHotkey = "a6" ; ring drber
+ BSUnicode("≗")
+
+
+
+/*
+ was bedeutet dieser PriorHotkey?
+ ich steig da irgendwie nicht durch...
+*/
+
+ Else If myPriorHotkey = +1 ; Grad
+ BSUnicode("≗")
+ Else
+ send `=
+ }
+ else if Ebene = 4
+ Unicode("φ") ;phi
+ else if Ebene = 5
+ Send 9
+ else if Ebene = 6
+ Unicode("Φ") ; Psi
+ myPriorHotkey = ""
return
*p::
@@ -660,15 +697,13 @@ return sendinput {blind}q
else if Ebene = 2
sendinput {blind}Q
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send {&}
+ else if Ebene = 5
+ Send {+}
+ else if Ebene = 6
+ Unicode("∧") ; logisches Und
+ myPriorHotkey = ""
return
*::
@@ -677,15 +712,15 @@ return sendinput {blind}
else if Ebene = 2
send SS ; wird versal-
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ Unicode("ij") ; ij
+ else if Ebene = 4
+ Unicode("IJ") ;IJ
+ else if Ebene = 5
+ Unicode("ə") ; schwa
+ else if Ebene = 6
+ Unicode("Ə") ; Schwa
+ myPriorHotkey = ""
return
@@ -703,23 +738,33 @@ return }
else if Ebene = 3
{
+ Unicode("¨") ; Diaerese
myPriorHotkey = "t3"
}
else if Ebene = 4
{
+ send " ;doppelakut
myPriorHotkey = "t4"
}
else if Ebene = 5
{
+ Unicode("/") ; Schrgstrich, tot
myPriorHotkey = "t5"
}
else if Ebene = 6
{
+ Unicode("ˏ") ; komma drunter, tot
myPriorHotkey = "t6"
}
return
+/*
+ ------------------------------------------------------
+ Reihe 3
+ ------------------------------------------------------
+*/
+
*a::
EbeneAktualisieren()
if Ebene = 1
@@ -776,15 +821,13 @@ return Else
sendinput {blind}U
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send \
+ else if Ebene = 5
+ Send {Home}
+ else if Ebene = 6
+ Send +{Home}
+ myPriorHotkey = ""
return
*s::
@@ -835,15 +878,15 @@ return Else
sendinput {blind}I
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send `/
+ else if Ebene = 4
+ Unicode("ι") ;iota
+ else if Ebene = 5
+ Send {Left}
+ else if Ebene = 6
+ Send +{Left}
+ myPriorHotkey = ""
return
*d::
@@ -894,16 +937,15 @@ return Else
sendinput {blind}A
}
-
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ sendraw {
+ else if Ebene = 4
+ Unicode("α") ;alpha
+ else if Ebene = 5
+ Send {Down}
+ else if Ebene = 6
+ Send +{Down}
+ myPriorHotkey = ""
return
*f::
@@ -954,15 +996,15 @@ return Else
sendinput {blind}E
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ sendraw }
+ else if Ebene = 4
+ Unicode("ε") ;epsilon
+ else if Ebene = 5
+ Send {Right}
+ else if Ebene = 6
+ Send +{Right}
+ myPriorHotkey = ""
return
*g::
@@ -1013,15 +1055,15 @@ return Else
sendinput {blind}O
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send *
+ else if Ebene = 4
+ Unicode("ω") ;omega
+ else if Ebene = 5
+ Send {End}
+ else if Ebene = 6
+ Send +{End}
+ myPriorHotkey = ""
return
*h::
@@ -1060,16 +1102,15 @@ return Else
sendinput {blind}S
}
-
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send ?
+ else if Ebene = 4
+ Unicode("σ") ;sigma
+ else if Ebene = 5
+ Send
+ else if Ebene = 6
+ Unicode("Σ") ; Sigma
+ myPriorHotkey = ""
return
*j::
@@ -1104,15 +1145,15 @@ return Else
sendinput {blind}N
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send (
+ else if Ebene = 4
+ Unicode("ν") ;nu
+ else if Ebene = 5
+ Send 4
+ else if Ebene = 6
+ Unicode("№") ; No
+ myPriorHotkey = ""
return
*k::
@@ -1147,15 +1188,15 @@ return Else
sendinput {blind}R
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send )
+ else if Ebene = 4
+ Unicode("ρ") ;rho
+ else if Ebene = 5
+ Send 5
+ else if Ebene = 6
+ Unicode("®") ; (R)
+ myPriorHotkey = ""
return
*l::
@@ -1190,15 +1231,15 @@ return Else
sendinput {blind}T
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send - ; Bind
+ else if Ebene = 4
+ Unicode("τ") ;tau
+ else if Ebene = 5
+ Send 6
+ else if Ebene = 6
+ Unicode("™") ; TM
+ myPriorHotkey = ""
return
*::
@@ -1232,15 +1273,15 @@ return BSUnicode("Ḍ")
Else sendinput {blind}D
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
- myPriorHotkey = ""
+ else if Ebene = 3
+ send :
+ else if Ebene = 4
+ Unicode("δ") ;delta
+ else if Ebene = 5
+ Send `,
+ else if Ebene = 6
+ Unicode("Δ") ; Delta
+ myPriorHotkey = ""
return
*::
@@ -1267,34 +1308,36 @@ return Else
sendinput {blind}Y
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 4
+ Unicode("υ") ;upsilon
+ else if Ebene = 5
+ Send ; thorn
+ else if Ebene = 6
+ Send ; Thorn
myPriorHotkey = ""
return
;SC02B (#) wird zu Mod3
+
+/*
+ ------------------------------------------------------
+ Reihe 4
+ ------------------------------------------------------
+*/
+
;SC056 (<) wird zu Mod5
+
*y::
EbeneAktualisieren()
if Ebene = 1
sendinput {blind}
else if Ebene = 2
sendinput {blind}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ send {#}
+ else if Ebene = 5
+ Send {Esc}
myPriorHotkey = ""
return
@@ -1304,14 +1347,12 @@ return sendinput {blind}
else if Ebene = 2
sendinput {blind}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ send $
+ else if Ebene = 5
+ Send {Del}
+ else if Ebene = 6
+ Unicode("∫") ; Int
myPriorHotkey = ""
return
@@ -1321,14 +1362,14 @@ return sendinput {blind}
else if Ebene = 2
sendinput {blind}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ send |
+ else if Ebene = 4
+ Unicode("η") ;eta
+ else if Ebene = 5
+ Send {PgDn} ; Next
+ else if Ebene = 6
+ Send +{PgDn}
myPriorHotkey = ""
return
@@ -1348,15 +1389,19 @@ return Else
sendinput {blind}P
}
-
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ {
+ If myPriorHotkey = "t1" ; tilde
+ BSUnicode("≈")
+ Else
+ sendraw ~
+ }
+ else if Ebene = 4
+ Unicode("π") ;pi
+ else if Ebene = 5
+ Send {Enter}
+ else if Ebene = 6
+ Unicode("Π") ; Pi
myPriorHotkey = ""
return
@@ -1386,15 +1431,12 @@ return Else
sendinput {blind}Z
}
-
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ send ``{space} ; untot
+ else if Ebene = 4
+ Unicode("ζ") ;zeta
+ else if Ebene = 6
+ Unicode("Ω") ; Omega
myPriorHotkey = ""
return
@@ -1414,15 +1456,14 @@ return Else
sendinput {blind}B
}
-
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ send {+}
+ else if Ebene = 4
+ Unicode("β") ;beta
+ else if Ebene = 5
+ Unicode("∞") ;infty
+ else if Ebene = 6
+ Unicode("•") ; bullet
myPriorHotkey = ""
return
@@ -1446,15 +1487,12 @@ return Else
sendinput {blind}M
}
-
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ send `%
+ else if Ebene = 4
+ Unicode("µ") ;micro, mu wre μ
+ else if Ebene = 5
+ Send 1
myPriorHotkey = ""
return
@@ -1462,16 +1500,14 @@ return EbeneAktualisieren()
if Ebene = 1
send `,
-; else if Ebene = 2
-
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ send '
+ else if Ebene = 4
+ Unicode("ϑ") ;vartheta?
+ else if Ebene = 5
+ Send 2
+ else if Ebene = 6
+ Unicode("√") ; sqrt
myPriorHotkey = ""
return
@@ -1481,14 +1517,14 @@ return send .
else if Ebene = 2
Unicode("…") ; ellipse
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ send "
+ else if Ebene = 4
+ Unicode("θ") ;theta
+ else if Ebene = 5
+ Send 3
+ else if Ebene = 6
+ Unicode("Θ") ; Theta
myPriorHotkey = ""
return
@@ -1509,22 +1545,50 @@ return Else
sendinput {blind}J
}
- ;else if Ebene = 3
-
- ;else if Ebene = 4
-
- ;else if Ebene = 5
-
- ;else if Ebene = 6
-
+ else if Ebene = 3
+ send `;
+ else if Ebene = 5
+ Send .
+ else if Ebene = 6
+ Unicode("∇") ; Nabla
myPriorHotkey = ""
return
+/*
+ ------------------------------------------------------
+ Sondertasten
+ ------------------------------------------------------
+*/
+
+*Space::
+ EbeneAktualisieren()
+ if Ebene = 4
+ SendUnicodeChar(0x00A0) ; geschtztes Leerzeichen
+ else if Ebene = 5
+ Send 0
+ else if Ebene = 6
+ SendUnicodeChar(0x2009) ; schmales Leerzeichen
+ else
+ Send {Space}
+ myPriorHotkey = ""
+return
+
+*Enter::
+ Send {Enter}
+ myPriorhotkey = ""
+return
-; Funktionen
-; ------------------------------------------------------
+*Backspace::
+ Send {Backspace}
+ myPriorhotkey = ""
+return
+/*
+ ------------------------------------------------------
+ Funktionen
+ ------------------------------------------------------
+*/
EbeneAktualisieren()
{
@@ -1542,7 +1606,7 @@ EbeneAktualisieren() Ebene += 2
}
; ist Mod5 down? Mod3 hat Vorrang!
- else if ( GetKeyState("<","P") or GetKeyState("<^>!","P") )
+ else if ( GetKeyState("<","P") or GetKeyState("SC138","P") )
{
Ebene += 4
}
@@ -1564,4 +1628,23 @@ BSUnicode(code) Transform, Clipboard, Unicode, %code%
send {bs}^v
Clipboard := saved_clipboard
+}
+
+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)
+}
+
+EncodeInteger(ref, val)
+{
+ DllCall("ntdll\RtlFillMemoryUlong", "Uint", ref, "Uint", 4, "Uint", val)
}
\ No newline at end of file |