diff options
Diffstat (limited to 'windows')
| -rw-r--r-- | windows/autohotkey/Changelog-and-Todo.txt | 2 | ||||
| -rw-r--r-- | windows/autohotkey/Source/All.ahk | 23 | ||||
| -rw-r--r-- | windows/autohotkey/Source/Global-Part.ahk | 62 | ||||
| -rw-r--r-- | windows/autohotkey/Source/Keys-Neo.ahk | 987 | ||||
| -rw-r--r-- | windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk | 649 | ||||
| -rw-r--r-- | windows/autohotkey/Source/Methods-Layers.ahk | 2 | ||||
| -rw-r--r-- | windows/autohotkey/Source/Methods-Lights.ahk | 4 | ||||
| -rw-r--r-- | windows/autohotkey/Source/Methods-Other.ahk | 140 | ||||
| -rw-r--r-- | windows/autohotkey/Source/Methods-ScreenKeyboard.ahk | 1 | ||||
| -rw-r--r-- | windows/autohotkey/Source/Methods-Unicode.ahk | 1 | ||||
| -rw-r--r-- | windows/autohotkey/Source/Warning.ahk | 2 | 
11 files changed, 773 insertions, 1100 deletions
| diff --git a/windows/autohotkey/Changelog-and-Todo.txt b/windows/autohotkey/Changelog-and-Todo.txt index 76f2a88..2fa15c0 100644 --- a/windows/autohotkey/Changelog-and-Todo.txt +++ b/windows/autohotkey/Changelog-and-Todo.txt @@ -184,5 +184,3 @@ Revsion 490 (von Stefan Mayer):    • Brüche (auf Zahlenreihe und Hardware-Ziffernblock).
    • römische Zahlen.
    • Ligaturen und Copyright.
 -
 -
 diff --git a/windows/autohotkey/Source/All.ahk b/windows/autohotkey/Source/All.ahk index ec516bf..931180c 100644 --- a/windows/autohotkey/Source/All.ahk +++ b/windows/autohotkey/Source/All.ahk @@ -1,16 +1,15 @@  /* 
 -   ------------------------------------------------------
 -   All.ahk:
 -   Diese Datei ist für Entwickler zum schnellen Testen von Änderungen vorgesehen. Bei Syntaxfehlern bietet sie zudem den Vorteil, dass die Zeilennummern relativ zu den einzelnen Modulen angezeigt werden.
 -
 -   Die Reihenfolge der Includes *ist* relevant!
 -   Denn: Vor dem Menü in der Global-Part.ahk dürfen keine Tastenkombinationen definiert werden. Ansonsten können Sie die Dateien hier beliebig anordnen. :-)
 -
 -   Siehe auch:
 -   http://www.autohotkey.com/docs/commands/_Include.htm
 +  ------------------------------------------------------
 +  All.ahk:
 +  Diese Datei ist für Entwickler zum schnellen Testen von Änderungen vorgesehen. Bei Syntaxfehlern bietet sie zudem den Vorteil, dass die Zeilennummern relativ zu den einzelnen Modulen angezeigt werden.
 +  Die Reihenfolge der Includes *ist* relevant!
 +  Denn: Vor dem Menü in der Global-Part.ahk dürfen keine Tastenkombinationen definiert werden. Ansonsten können Sie die Dateien hier beliebig anordnen. :-)
 +  Siehe auch:
 +  http://www.autohotkey.com/docs/commands/_Include.htm
     ------------------------------------------------------
  */
 +
  #Include %a_scriptdir%\Warning.ahk
  #Include %a_scriptdir%\Global-Part.ahk
  #Include %a_scriptdir%\Methods-Layers.ahk
 @@ -20,6 +19,6 @@  #Include %a_scriptdir%\Methods-Other.ahk
  #Include %a_scriptdir%\Methods-Unicode.ahk
  #Include %a_scriptdir%\Methods-ScreenKeyboard.ahk
 -; Eines schönen Tages sollten auch die Compose-Kombinationen automatisch aus der Referenz erzeugt werden. Derzeitig gibt es nur den (höchst instabilen und experimentellen!) Compose-Playground:
 -;#Include *i %a_scriptdir%\..\Compose\Compose-all-in-one.ahk
 -
 +; Eines schönen Tages sollten auch die Compose-Kombinationen automatisch aus der Referenz erzeugt werden. 
 +; Derzeitig gibt es nur den (höchst instabilen und experimentellen!) Compose-Playground:
 +; #Include *i %a_scriptdir%\..\Compose\Compose-all-in-one.ahk
 diff --git a/windows/autohotkey/Source/Global-Part.ahk b/windows/autohotkey/Source/Global-Part.ahk index bcb96eb..0a748ad 100644 --- a/windows/autohotkey/Source/Global-Part.ahk +++ b/windows/autohotkey/Source/Global-Part.ahk @@ -111,9 +111,7 @@ if(FileExist("neo.ico")&&FileExist("neo_disabled.ico"))  */
  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
 -{
 +if (inputlocalealias<>inputlocale=%inputlocalealias% and inputlocale<>00000407) {
    suspend   
    regread,inputlocale,HKEY_LOCAL_MACHINE,SYSTEM\CurrentControlSet\Control\Keyboard Layouts\%inputlocale%,Layout Text
    msgbox, 48, Warnung!,
 @@ -162,47 +160,41 @@ menu,tray,tip,%name%  */
  ;Blinde/Sichtbare Tote Tasten
  *F9::
 -  if (isMod4pressed())
 -    DeadSilence := not(DeadSilence)
 -  else
 -    send {blind}{F9}
 +  if isMod4pressed()
 +    DeadSilence := !(DeadSilence)
 +  else send {blind}{F9}
  return
  ;Blinde/Sichtbare Compose
  *F10::
 -  if (isMod4pressed())
 -    DeadCompose := not(DeadCompose)
 -  else
 -    send {blind}{F10}
 +  if isMod4pressed()
 +    DeadCompose := !(DeadCompose)
 +  else send {blind}{F10}
  return
  ;Lang-s-Tastatur:
  *F11::
 -  if (isMod4pressed()){
 -    LangSTastatur := not(LangSTastatur)
 +  if isMod4pressed() {
 +    LangSTastatur := !(LangSTastatur)
      if LangSTastatur
        KeyboardLED(2,"on")
      else KeyboardLED(2,"off")
 -  } 
 -  else
 -    send {blind}{F11}
 +  } else send {blind}{F11}
  return
  ;Alle Modi und Locks in den Normalzustand versetzen
  ;bzw. Skript neu laden:
  *Esc::
 -  if (isMod4pressed())
 +  if isMod4pressed()
      reload
 -  else
 -    send {blind}{Esc}
 +  else send {blind}{Esc}
  return
  *pause::
  Suspend, Permit
    if isShiftpressed()
      goto togglesuspend
 -  else=
 -    send {blind}{pause}
 +  else send {blind}{pause}
  return
  /*****************
 @@ -210,26 +202,22 @@ return  ******************
  */
  togglesuspend:
 -  if A_IsSuspended
 -  {
 +  if A_IsSuspended {
      menu, tray, rename, %enable%, %disable%
      menu, tray, tip, %name%
      if (iconBenutzen)
        menu, tray, icon, %ResourceFolder%\neo.ico,,1
      suspend , off ; Schaltet Suspend aus -> NEO
 -  }
 -  else
 -  {
 +  } else {
      menu, tray, rename, %disable%, %enable%
      menu, tray, tip, %name% : Deaktiviert
      if (iconBenutzen)
        menu, tray, icon, %ResourceFolder%\neo_disabled.ico,,1
      suspend , on  ; Schaltet Suspend ein -> QWERTZ
 -  }
 -return
 +  } return
  help:
 -   Run, %A_WinDir%\hh mk:@MSITStore:autohotkey.chm
 +  Run, %A_WinDir%\hh mk:@MSITStore:autohotkey.chm
  return
  about:
 @@ -250,31 +238,31 @@ about:  return
  neo:
 -   run http://neo-layout.org/
 +  run http://neo-layout.org/
  return
  autohotkey:
 -   run http://autohotkey.com/
 +  run http://autohotkey.com/
  return
  open:
 -   ListLines ; shows the Autohotkey window
 +  ListLines ; shows the Autohotkey window
  return
  edit:
 -   edit
 +  edit
  return
  reload:
 -   Reload
 +  Reload
  return
  hide:
 -   menu, tray, noicon
 +  menu, tray, noicon
  return
  exitprogram:
 -   exitapp
 +  exitapp
  return
  /**************************
 @@ -348,5 +336,3 @@ gespiegelt_m = neo_p  gespiegelt_komma = neo_ä
  gespiegelt_punkt = neo_ö
  gespiegelt_j = neo_ü
 -
 -
 diff --git a/windows/autohotkey/Source/Keys-Neo.ahk b/windows/autohotkey/Source/Keys-Neo.ahk index df557dc..ac6868a 100644 --- a/windows/autohotkey/Source/Keys-Neo.ahk +++ b/windows/autohotkey/Source/Keys-Neo.ahk @@ -1,14 +1,5 @@  /*
 -Die eigentliche NEO-Belegung und der Hauptteil des AHK-Treibers.
 -
 -  Ablauf bei toten Tasten:
 -  1. Ebene Aktualisieren.
 -  2. Abhängig von der Variablen "Ebene" Zeichen ausgeben und die Variable "PriorDeadKey" setzen.
 -
 -  Ablauf bei "untoten" Tasten:
 -  1. Ebene Aktualisieren.
 -  2. Abhängig von den Variablen "Ebene" und "PriorDeadKey" Zeichen ausgeben.
 -  3. "PriorDeadKey" mit leerem String überschreiben.
 +  Die eigentliche NEO-Belegung und der Hauptteil des AHK-Treibers.
    Reihe 1
  */
 @@ -16,60 +7,60 @@ Die eigentliche NEO-Belegung und der Hauptteil des AHK-Treibers.  neo_tot1:
    noCaps=1
    EbeneAktualisieren()
 -  if(Ebene=1){
 -    deadUni(0x02C6) ; Zirkumflex, tot
 -    DeadKey=c1
 -  }else if(Ebene = 2){
 -    deadUni(0x02C7) ; Caron, tot
 -    DeadKey=c2
 -  }else if(Ebene = 3){
 +  if (Ebene=1) {
 +     deadUni(0x02C6) ; Zirkumflex, tot
 +     DeadKey = c1
 +  } else if (Ebene = 2) {
 +     deadUni(0x02C7) ; Caron, tot
 +     DeadKey = c2
 +  } else if (Ebene = 3) {
      deadUni(0x02D8) ; Brevis, tot
 -    DeadKey=c3
 -  }else if Ebene7
 +    DeadKey = c3
 +  } else if Ebene7
      SendUnicodeChar(0x0302) ; Verbindungszeichen Zirkumflex
    else if Ebene8
      SendUnicodeChar(0x0306) ; Verbindungszeichen Brevis
 -  else if(Ebene = 4){
 +  else if (Ebene = 4) {
      deadUni(0x00B7) ; Mittenpunkt, tot
 -    DeadKey=c4
 -  }else if(Ebene = 5){
 +    DeadKey = c4
 +  } else if (Ebene = 5) {
      deadUni(0x002D) ; Querstrich, tot
 -    DeadKey=c5
 -  }else if(Ebene = 6){
 +    DeadKey = c5
 +  } else if (Ebene = 6) {
      deadUni(0x0323) ; Punkt drunter (Colon), tot
 -    DeadKey=c6
 -  }CompKey := PriorCompKey
 +    DeadKey = c6
 +  } CompKey := PriorCompKey
  return
  neo_1:
    noCaps=1
    EbeneAktualisieren()
 -  if Ebene12{
 -    if!(CheckDeadUni("c1",0x00B9) ; Hochgestellte 1
 +  if Ebene12 {
 +    if !(CheckDeadUni("c1",0x00B9) ; Hochgestellte 1
        or CheckDeadUni("c5",0x2081) ; Tiefgestellte 1
        or CheckComp3Uni("r_1",0x217A) ; Römisch xi
        or CheckComp3Uni("R_1",0x216A)) ; Römisch XI
        outputChar(1,"°")
 -    if!(checkComp(1))
 -    if(PriorCompKey == "r")
 +    if !(checkComp(1))
 +    if (PriorCompKey == "r")
        CompKey := "r_1"
 -    else if(PriorCompkey == "R")
 +    else if (PriorCompkey == "R")
        CompKey := "R_1"
 -  }else if(Ebene = 3)
 +  } else if (Ebene = 3)
      SendUnicodeChar(0x00B9) ; Hochgestellte 1
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      SendUnicodeChar(0x2022) ; Bullet
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x2640) ; Piktogramm weiblich
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x00AC) ; Nicht-Symbol
  return
  neo_2:
    noCaps = 1
    EbeneAktualisieren()
 -  if(Ebene = 1){
 -    if!(CheckDeadUni("c1",0x00B2) ; Hochgestellte 2
 +  if (Ebene = 1) {
 +    if !(CheckDeadUni("c1",0x00B2) ; Hochgestellte 2
        or CheckDeadUni("c5",0x2082) ; Tiefgestellte 2
        or CheckCompUni("r",0x2171) ; Römisch ii
        or CheckCompUni("R",0x2161) ; Römisch II
 @@ -77,66 +68,66 @@ neo_2:        or CheckComp3Uni("R_1",0x216B)) ; Römisch XII
        outputChar(2,"")
      checkComp(2)
 -  }else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x2116) ; Numero
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x00B2) ; Hochgestellte 2
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      SendUnicodeChar(0x2023) ; Aufzählungspfeil
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x26A5) ; Piktogramm Zwitter
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2228) ; Logisches Oder
  return
  neo_3:
    noCaps = 1
    EbeneAktualisieren()
 -  if Ebene12{
 -    if!(CheckDeadUni("c1",0x00B3)
 -      or CheckDeadUni("c5",0x2083)
 +  if Ebene12 {
 +    if !(CheckDeadUni("c1",0x00B3) ; Hochgestellte 3
 +      or CheckDeadUni("c5",0x2083) ; Tiefgestellte 3
        or CheckCompUni("1",0x2153) ; 1/3
        or CheckCompUni("2",0x2154) ; 2/3
        or CheckCompUni("r",0x2172) ; Römisch iii
        or CheckCompUni("R",0x2162)) ; Römisch III
        outputChar(3,"§")
      checkComp(3)
 -  }else if(Ebene = 3)
 +  } else if (Ebene = 3)
      SendUnicodeChar(0x00B3) ; Hochgestellte 3
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x2642) ; Piktogramm Mann
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2227) ; Logisches Und
  return
  neo_4:
    noCaps = 1
    EbeneAktualisieren()
 -  if(Ebene = 1){
 -    if!(CheckDeadUni("c1",0x2074)
 -      or CheckDeadUni("c5",0x2084)
 +  if (Ebene = 1) {
 +    if !(CheckDeadUni("c1",0x2074) ; Hochgestellte 4
 +      or CheckDeadUni("c5",0x2084) ; Tiefgestellte 4
        or CheckCompUni("r",0x2173) ; Römisch iv
        or CheckCompUni("R",0x2163)) ; Römisch IV
        outputChar(4,"")
      checkComp(4)
 -  }else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x00BB) ; Double guillemot right
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      Send {blind}› ; Single guillemot right
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}{PgUp}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x2113) ; Script small L
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x22A5) ; Senkrecht
  return
  neo_5:
    noCaps = 1
    EbeneAktualisieren()
 -  if(Ebene = 1){ 
 -    if!(CheckDeadUni("c1",0x2075)
 -      or CheckDeadUni("c5",0x2085)
 +  if (Ebene = 1) { 
 +    if !(CheckDeadUni("c1",0x2075) ; Hochgestellte 5
 +      or CheckDeadUni("c5",0x2085) ; Tiefgestellte 5
        or CheckCompUni("1",0x2155) ; 1/5
        or CheckCompUni("2",0x2156) ; 2/5
        or CheckCompUni("3",0x2157) ; 3/5
 @@ -145,64 +136,64 @@ neo_5:        or CheckCompUni("R",0x2164)) ; Römisch V
        outputChar(5,"")
      checkComp(5)
 -  }else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x00AB) ; Double guillemot left
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      Send {blind}‹ ; Single guillemot left
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x2020) ; Kreuz (Dagger)
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2221) ; Winkel
  return
  neo_6:
    noCaps = 1
    EbeneAktualisieren()
 -  if(Ebene = 1){
 -    if!(CheckDeadUni("c1",0x2076)
 -      or CheckDeadUni("c5",0x2086)
 +  if (Ebene = 1) {
 +    if !(CheckDeadUni("c1",0x2076) ; Hochgestellte 6
 +      or CheckDeadUni("c5",0x2086) ; Tiefgestellte 6
        or CheckCompUni("1",0x2159) ; 1/6
        or CheckCompUni("5",0x215A) ; 5/6
        or CheckCompUni("r",0x2175) ; Römisch vi
        or CheckCompUni("R",0x2165)) ; Römisch VI
        outputChar(6,"")
      checkComp(6)
 -  }else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x20AC)
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}¢
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      send {blind}£
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2225) ; parallel
  return
  neo_7:
    noCaps = 1
    EbeneAktualisieren()
 -  if Ebene12{
 -    if!(CheckDeadUni("c1",0x2077)
 -      or CheckDeadUni("c5",0x2087)
 +  if Ebene12 {
 +    if !(CheckDeadUni("c1",0x2077) ; Hochgestellte 7
 +      or CheckDeadUni("c5",0x2087) ; Tiefgestellte 7
        or CheckCompUni("r",0x2176) ; Römisch vii
        or CheckCompUni("R",0x2166)) ; Römisch VII
        outputChar(7,"$")
      checkComp(7)
 -  }else if(Ebene = 3)
 +  } else if (Ebene = 3)
      send {blind}¥
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      send {blind}¤
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03BA) ; greek small letter kappa
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2209) ; nicht Element von
  return
  neo_8:
    noCaps = 1
    EbeneAktualisieren()
 -  if Ebene12{
 -    if!(CheckDeadUni("c1",0x2078)
 -      or CheckDeadUni("c5",0x2088)
 +  if Ebene12 {
 +    if !(CheckDeadUni("c1",0x2078) ; Hochgestellte 8
 +      or CheckDeadUni("c5",0x2088) ; Tiefgestellte 8
        or CheckCompUni("1",0x215B) ; 1/8
        or CheckCompUni("3",0x215C) ; 3/8
        or CheckCompUni("5",0x215D) ; 5/8
 @@ -211,90 +202,91 @@ neo_8:        or CheckCompUni("R",0x2167)) ; Römisch VIII
        outputChar(8,"„")
      checkComp(8)
 -  }else if(Ebene = 3)
 +  } else if (Ebene = 3)
      send {blind}‚
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}{NumpadDiv}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x27E8) ; bra (öffnende spitze Klammer)
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2204) ; es existiert nicht
  return
  neo_9:
    noCaps = 1
    EbeneAktualisieren()
 -  if Ebene12{
 -    if!(CheckDeadUni("c1",0x2079)
 -      or CheckDeadUni("c5",0x2089)
 +  if Ebene12 {
 +    if !(CheckDeadUni("c1",0x2079) ; Hochgestellte 9
 +      or CheckDeadUni("c5",0x2089) ; Tiefgestellte 9
        or CheckCompUni("r",0x2178) ; Römisch ix
        or CheckCompUni("R",0x2168)) ; Römisch IX
        outputChar(9,"“")
      checkComp(9)
 -  }else if(Ebene = 3)
 +  } else if (Ebene = 3)
      send {blind}‘
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}{NumpadMult}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x27E9) ; ket (schließende spitze Klammer)
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2226) ; nicht parallel
  return
  neo_0:
    noCaps = 1
    EbeneAktualisieren()
 -  if Ebene12{
 -    if!(CheckDeadUni("c1",0x2070)
 -      or CheckDeadUni("c5",0x2080) ; Römisch x
 +  if Ebene12 {
 +    if !(CheckDeadUni("c1",0x2070) ; Hochgestellte 0
 +      or CheckDeadUni("c5",0x2080) ; Tiefgestellte 0 
 +      or CheckDeadUni("r_1",0x2177) ; Römisch x
        or CheckComp3Uni("R_1",0x2169)) ; Römisch X
        outputChar(0,"”")
        checkComp(0)
 -   }else if(Ebene = 3)
 +   } else if (Ebene = 3)
        send {blind}’
 -   else if(Ebene = 4)
 +   else if (Ebene = 4)
        Send {blind}{NumpadSub}
 -   else if(Ebene = 6)
 +   else if (Ebene = 6)
        SendUnicodeChar(0x2205) ; leere Menge
  return
  neo_strich:
    noCaps = 1
    EbeneAktualisieren()
 -  if(Ebene = 1)
 +  if (Ebene = 1)
      outputChar("-","") ; Bindestrich-Minus
 -  else if(Ebene = 2)
 +  else if (Ebene = 2)
      SendUnicodeChar(0x2013) ; Gedankenstrich
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2014) ; Englischer Gedankenstrich (Geviertstrich)
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x2011) ; geschützter Bindestrich (Bindestrich ohne Zeilenumbruch)
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x00AD) ; weicher Bindestrich
  return
  neo_tot2:
    noCaps = 1
    EbeneAktualisieren()
 -  if(Ebene = 1){
 +  if (Ebene = 1) {
      deadAsc("{´}{space}") ; Akut, tot
      DeadKey := "a1"
 -  }else if(Ebene = 2){
 +  } else if (Ebene = 2) {
      deadAsc("``{space}") ; Gravis, tot
      DeadKey := "a2"
 -  }else if(Ebene = 3){
 +  } else if (Ebene = 3) {
      deadAsc("¸") ; Cedilla, tot
      DeadKey := "a3"
 -  }else if(Ebene = 4){
 +  } else if (Ebene = 4) {
      deadUni(0x02D9) ; Punkt oben
      DeadKey := "a4"
 -  }else if(Ebene = 5){
 +  } else if (Ebene = 5) {
      deadUni(0x02DB) ; Ogonek
      DeadKey := "a5"
 -  }else if(Ebene = 6){
 +  } else if (Ebene = 6) {
      deadUni(0x02DA) ; Ring oben
      DeadKey := "a6"
 -  }CompKey := PriorCompKey
 +  } CompKey := PriorCompKey
  return
 @@ -306,29 +298,28 @@ return  neo_x:
    EbeneAktualisieren()
 -  if(Ebene12)
 +  if (Ebene12)
      OutputChar("x","X")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2026) ; Ellipse horizontal
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      SendUnicodeChar(0x22EE) ; Ellipse vertikal
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03BE) ; xi
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x039E) ; Xi
  return
  neo_v:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("c6",0x1E7F,0x1E7E)))
 +  if (Ebene12 and !(CheckDeadUni12("c6",0x1E7F,0x1E7E)))
      OutputChar("v","V")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}_
 -  else if(Ebene = 4)
 -    if(not(lernModus) or lernModus_neo_Backspace)
 +  else if (Ebene = 4) and (!lernModus or lernModus_neo_Backspace)
        Send {blind}{Backspace}
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2259) ; estimates
  return
 @@ -336,170 +327,165 @@ return  neo_l:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x013A,0x0139)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x013A,0x0139)
                   or CheckDeadUni12("a3",0x013C,0x013B)
                   or CheckDeadUni12("c2",0x013E,0x013D)
                   or CheckDeadUni12("c4",0x0140,0x013F)
                   or CheckDeadUni12("c6",0x1E37,0x1E36)
 -                 or CheckDeadUni12("t4",0x0142,0x0141)))
 +                 or CheckDeadUni12("t4",0x0142,0x0141)
 +                 or CheckCompUni("f",0xFB02)
 +                 or CheckCompUni("F",0xFB04)))
      OutputChar("l","L")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}[
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {Blind}{Up}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03BB) ; lambda
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x039B) ; Lambda
  return
  neo_c:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x0107,0x0106)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x0107,0x0106)
                   or CheckDeadUni12("a3",0x00E7,0x00E6)
                   or CheckDeadUni12("a4",0x010B,0x010A)
                   or CheckDeadUni12("c1",0x0109,0x0108)
                   or CheckDeadUni12("c2",0x010D,0x010C)
                   or CheckCompAsc("o","©")))
      OutputChar("c","C")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}]
 -  else if(Ebene = 4)
 -    if(not(lernModus) or lernModus_neo_Entf)
 +  else if (Ebene = 4)
 +    if (not(lernModus) or lernModus_neo_Entf)
        Send {blind}{Del}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03C7) ; chi
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2102) ; C (Komplexe Zahlen)
  return
  neo_w:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("c1",0x0175,0x0174)))
 +  if (Ebene12 and !(CheckDeadUni12("c1",0x0175,0x0174)))
      OutputChar("w","W")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x005E) ; Zirkumflex
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}{Insert} ; Einfg
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03C9) ; omega
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x03A9) ; Omega
  return
  neo_k:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a3",0x0137,0x0136)
 +  if (Ebene12 and !(CheckDeadUni12("a3",0x0137,0x0136)
                   or CheckDeadUni12("c6",0x1E33,0x1E32)))
      OutputChar("k","K")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}{!}
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send ¡
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03F0) ; kappa symbol (varkappa)
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x221A) ; Wurzel
  return
  neo_h:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a4",0x1E23,0x1E22)
 +  if (Ebene12 and !(CheckDeadUni12("a4",0x1E23,0x1E22)
                   or CheckDeadUni12("c1",0x0125,0x0124)
                   or CheckDeadUni12("c5",0x0127,0x0126)
                   or CheckDeadUni12("c6",0x1E25,0x1E24)))
      OutputChar("h","H")
 -  else if((Ebene = 3) and !(CheckDeadUni("c5",0x2264))) ; kleiner gleich
 +  else if ((Ebene = 3) and !(CheckDeadUni("c5",0x2264))) ; kleiner gleich
      send {blind}<
 -  else if((Ebene = 4) and !(CheckDeadUni("c1",0x2077)
 -                  or CheckDeadUni("c5",0x2087)))
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2077)
 +                          or CheckDeadUni("c5",0x2087)))
      Send {blind}{NumPad7}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03C8) ; psi
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x03A8) ; Psi
  return
  neo_g:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a3",0x0123,0x0122)
 +  if (Ebene12 and !(CheckDeadUni12("a3",0x0123,0x0122)
                   or CheckDeadUni12("a4",0x0121,0x0120)
                   or CheckDeadUni12("c1",0x011D,0x011C)
                   or CheckDeadUni12("c3",0x011F,0x011E)))
      OutputChar("g","G")
 -  else if((Ebene = 3) and !(CheckDeadUni("c5",0x2265))) ; größer gleich
 +  else if ((Ebene = 3) and !(CheckDeadUni("c5",0x2265))) ; größer gleich
      send {blind}>
 -  else if((Ebene = 4) and !(CheckDeadUni("c1",0x2078)
 -                         or CheckDeadUni("c5",0x2088)))
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2078)
 +                          or CheckDeadUni("c5",0x2088)))
      Send {blind}{NumPad8}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03B3) ; gamma
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x0393) ; Gamma
  return
  neo_f:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a4",0x1E1F,0x1E1E)
 -            or CheckDeadUni12("t4",0x0192,0x0191)))
 +  if (Ebene12 and !(CheckDeadUni12("a4",0x1E1F,0x1E1E)
 +                 or CheckDeadUni12("t4",0x0192,0x0191)
 +                 or CheckCompUni("f",0xFB00)))
      OutputChar("f","F")
 -  else if((Ebene = 3) and !(CheckDeadUni("a6",0x2257) ; ring equal to
 -                         or CheckDeadUni("c1",0x2259) ; entspricht
 -                         or CheckDeadUni("c2",0x225A) ; EQUIANGULAR TO
 -                         or CheckDeadUni("c5",0x2261) ; identisch
 -                         or CheckDeadUni("t1",0x2245) ; ungefähr gleich
 -                         or CheckDeadUni("t4",0x2260))) ; ungleich
 +  else if ((Ebene = 3) and !(CheckDeadUni("a6",0x2257) ; ring equal to
 +                          or CheckDeadUni("c1",0x2259) ; entspricht
 +                          or CheckDeadUni("c2",0x225A) ; EQUIANGULAR TO
 +                          or CheckDeadUni("c5",0x2261) ; identisch
 +                          or CheckDeadUni("t1",0x2245) ; ungefähr gleich
 +                          or CheckDeadUni("t4",0x2260))) ; ungleich
      send {blind}`=
 -  else if((Ebene = 4) and !(CheckDeadUni("c1",0x2079)
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2079)
                            or CheckDeadUni("c5",0x2089)))
      send {blind}{NumPad9}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03C6) ; phi
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x03A6) ; Phi
  return
  neo_q:
 -   EbeneAktualisieren()
 -   if(Ebene12)
 -      OutputChar("q","Q")
 -   else if(Ebene = 3)
 -      send {blind}{&}
 -   else if((Ebene = 4) and !(CheckDeadUni("c1",0x207A)
 -                           or CheckDeadUni("c5",0x208A)))
 -      Send {blind}{NumPadAdd}
 -   else if(Ebene = 5)
 -      SendUnicodeChar(0x03D5) ; phi symbol (varphi)
 -   else if(Ebene = 6)
 -      SendUnicodeChar(0x211A) ; Q (rationale Zahlen)
 +  EbeneAktualisieren()
 +  if (Ebene12)
 +     OutputChar("q","Q")
 +  else if (Ebene = 3)
 +     send {blind}{&}
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x207A)
 +                          or CheckDeadUni("c5",0x208A)))
 +    Send {blind}{NumPadAdd}
 +  else if (Ebene = 5)
 +     SendUnicodeChar(0x03D5) ; phi symbol (varphi)
 +  else if (Ebene = 6)
 +     SendUnicodeChar(0x211A) ; Q (rationale Zahlen)
  return
  neo_sz:
    EbeneAktualisieren()
 -  if(Ebene = 1)
 -    if(GetKeyState("CapsLock","T"))
 -      SendUnicodeChar(0x1E9E) ; versal-ß
 -    else if LangSTastatur
 -      send {blind}s
 -    else
 -      send ß
 -  else if(Ebene = 2)
 -    if(GetKeyState("CapsLock","T"))
 -      if LangSTastatur
 -        send {blind}s
 -      else
 -        send ß
 -    else
 -      SendUnicodeChar(0x1E9E) ; versal-ß
 -  else if(Ebene = 3)
 +  if (Ebene = 1)
 +    if LangSTastatur
 +      outputChar("s","")
 +    else send ß
 +  else if (Ebene = 2)
 +    SendUnicodeChar(0x1E9E) ; versal-ß
 +  else if (Ebene = 3)
      if LangSTastatur
        send ß
 -    else
 +    else {
        SendUnicodeChar(0x017F) ; langes s
 -  else if(Ebene = 5)
 +      CheckComp("lang_s")
 +  } else if (Ebene = 5)
      SendUnicodeChar(0x03C2) ; varsigma
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2218) ; Verknüpfungsoperator
  return
 @@ -507,33 +493,24 @@ return  neo_tot3:
    noCaps = 1
    EbeneAktualisieren()
 -  if(Ebene = 1)
 -  {
 +  if (Ebene = 1) {
      deadUni(0x02DC) ; Tilde, tot
      DeadKey := "t1"
 -  }
 -  else if(Ebene = 2)
 -  {
 +  } else if (Ebene = 2) {
      deadUni(0x00AF) ; Macron, tot
      DeadKey := "t2"
 -  }
 -  else if(Ebene = 3)
 -  {
 +  } else if (Ebene = 3) {
      deadUni(0x00A8) ; Diärese
      DeadKey := "t3"
 -  }
 -  else if(Ebene = 4)
 -  {
 +  } else if Ebene7
 +    SendUnicodeChar(0x0308) ; Verbindungszeichen Diärese
 +  else if (Ebene = 4) {
      deadUni(0x002F) ; Schrägstrich, tot
      DeadKey := "t4"
 -  }
 -  else if(Ebene = 5)
 -  {
 +  } else if (Ebene = 5) {
      deadUni(0x02DD) ; Doppelakut
      DeadKey := "t5"
 -  }
 -  else if(Ebene = 6)
 -  {
 +  } else if (Ebene = 6) {
      deadUni(0x02CF) ; Komma drunter, tot
      DeadKey := "t6"
    }
 @@ -549,7 +526,7 @@ return  neo_u:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x00FA,0x00DA)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x00FA,0x00DA)
                   or CheckDeadUni12("a2",0x00F9,0x00D9)
                   or CheckDeadUni12("a5",0x0173,0x0172)
                   or CheckDeadUni12("a6",0x016F,0x016E)
 @@ -561,22 +538,20 @@ neo_u:                   or CheckDeadAsc12("t3","ü","Ü")
                   or CheckDeadUni12("t5",0x0171,0x0170)))
      OutputChar("u","U")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}\
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}{Home}
 -  else if(Ebene = 5) ; leer
 -  {
 +  else if (Ebene = 5) { ; leer
       CompKey := PriorCompKey
       DeadKey := PriorDeadKey
 -  }
 -  else if(Ebene = 6)
 +  } else if (Ebene = 6)
      SendUnicodeChar(0x222E) ; contour integral
  return
  neo_i:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x00ED,0x00CD)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x00ED,0x00CD)
                   or CheckDeadUni12("a2",0x00EC,0x00CC)
                   or CheckDeadUni12("a4",0x012F,0x012E)
                   or CheckDeadUni12("a5",0x0131,0x0130)
 @@ -585,21 +560,23 @@ neo_i:                   or CheckDeadUni12("c3",0x012D,0x012C)
                   or CheckDeadUni12("t1",0x0129,0x0128)
                   or CheckDeadUni12("t2",0x012B,0x012A)
 -                 or CheckDeadAsc12("t3","ï","Ï")))
 +                 or CheckDeadAsc12("t3","ï","Ï")
 +                 or CheckCompUni("f",0xFB01)
 +                 or CheckCompUni("F",0xFB03)))
      OutputChar("i","I")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}`/
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {Blind}{Left}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03B9) ; iota
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x222B) ; integral
  return
  neo_a:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x00E1,0x00C1)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x00E1,0x00C1)
                  or CheckDeadUni12("a2",0x00E0,0x00C0)
                  or CheckDeadUni12("a5",0x0105,0x0104)
                  or CheckDeadAsc12("a6","å","Å")
 @@ -610,25 +587,26 @@ neo_a:                  or CheckDeadUni12("t2",0x0101,0x0100)
                  or CheckDeadAsc12("t3","ä","Ä")))
      OutputChar("a","A")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}{{}
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {Blind}{Down}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03B1) ; alpha
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2200) ; für alle
  return
  neo_e:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x00E9,0x00C9)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x00E9,0x00C9)
                   or CheckDeadUni12("a2",0x00E8,0x00C8)
                   or CheckDeadUni12("a4",0x0117,0x0116)
                   or CheckDeadUni12("a5",0x0119,0x0118)
                   or CheckDeadUni12("c1",0x00EA,0x00CA)
                   or CheckDeadUni12("c2",0x011B,0x011A)
                   or CheckDeadUni12("c3",0x0115,0x0114)
 +                 or CheckDeadUni12("t1",0x1EBD,0x1EBC)
                   or CheckDeadUni12("t2",0x0113,0x0112)
                   or CheckDeadAsc12("t3","ë","Ë")
                   or CheckCompAsc12("a","æ","Æ")
 @@ -636,19 +614,19 @@ neo_e:                   or CheckCompAsc12("o","œ","Œ")
                   or CheckCompAsc12("O","Œ","Œ")))
      OutputChar("e","E")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}{}}
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {Blind}{Right}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
        SendUnicodeChar(0x03B5) ; epsilon
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
        SendUnicodeChar(0x2203) ; es existiert
  return
  neo_o:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x00F3,0x00D3)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x00F3,0x00D3)
                   or CheckDeadUni12("a2",0x00F2,0x00D2)
                   or CheckDeadUni12("a5",0x01EB,0x01EA)
                   or CheckDeadUni12("c1",0x00F4,0x00D4)
 @@ -660,102 +638,61 @@ neo_o:                   or CheckDeadUni12("t4",0x00F8,0x00D8)
                   or CheckDeadUni12("t5",0x0151,0x0150)))
      OutputChar("o","O")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}*
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}{End}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03BF) ; omicron
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2208) ; element of
  return
  neo_s:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x015B,0x015A)
 -                   or CheckDeadUni12("a3",0x015F,0x015E)
 -                   or CheckDeadUni12("a4",0x1E61,0x1E60)
 -                   or CheckDeadUni12("c1",0x015D,0x015C)
 -                   or CheckDeadUni12("c2",0x0161,0x0160)
 -                   or CheckDeadUni12("c6",0x1E63,0x1A62)))
 -   {
 -      if(Ebene = 1)
 -      {
 -        if LangSTastatur
 -          if(GetKeyState("CapsLock","T"))
 -          {
 -            send {blind}s
 -            if(PriorDeadKey = "comp")
 -              Compkey := "s"
 -          }
 -          else
 -          {
 -            SendUnicodeChar(0x017F) ;langes S
 -            if(PriorDeadKey = "comp")
 -              CompKey := "lang_s"
 -          }
 -        else
 -        {
 -          send {blind}s
 -          if(PriorDeadKey = "comp")
 -            CompKey := "s"
 -        }
 -      }
 -      else if(Ebene = 2)
 -      {
 -        if LangSTastatur
 -          if(GetKeyState("CapsLock","T"))
 -          {
 -            SendUnicodeChar(0x017F) ;langes S
 -            if(PriorDeadKey = "comp")
 -              CompKey := "lang_s"
 -          }
 -          else
 -          {
 -            send {blind}S
 -            if(PriorDeadKey = "comp")
 -              CompKey := "s"
 -          }
 -        else
 -        {
 -          send {blind}S
 -          if(PriorDeadKey = "comp")
 -            CompKey := "S"
 -        }
 -      }
 -  }
 -  else if(Ebene = 3)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x015B,0x015A)
 +                 or CheckDeadUni12("a3",0x015F,0x015E)
 +                 or CheckDeadUni12("a4",0x1E61,0x1E60)
 +                 or CheckDeadUni12("c1",0x015D,0x015C)
 +                 or CheckDeadUni12("c2",0x0161,0x0160)
 +                 or CheckDeadUni12("c6",0x1E63,0x1A62)))
 +    {
 +      if LangSTastatur and (Ebene = 1) {
 +        SendUnicodeChar(0x017F) ;langes S
 +        CheckComp("lang_s")
 +      } else outputChar("s","S")
 +    } else if (Ebene = 3)
      send {blind}?
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send ¿
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03C3) ;sigma
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x03A3) ;Sigma
  return
  neo_n:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x0144,0x0143)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x0144,0x0143)
                   or CheckDeadUni12("a3",0x0146,0x0145)
                   or CheckDeadUni12("a4",0x1E45,0x1E44)
                   or CheckDeadUni12("c2",0x0148,0x0147)
                   or CheckDeadUni12("t1",0x00F1,0x00D1)))
      OutputChar("n","N")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}(
 -  else if((Ebene = 4) and !(CheckDeadUni("c1",0x2074)
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2074)
                            or CheckDeadUni("c5",0x2084)))
      Send {blind}{NumPad4}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03BD) ; nu
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2115) ; N (natürliche Zahlen)
  return
  neo_r:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x0155,0x0154)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x0155,0x0154)
                   or CheckDeadUni12("a3",0x0157,0x0156)
                   or CheckDeadUni12("a4",0x0E59,0x0E58)
                   or CheckDeadUni12("c2",0x0159,0x0158)
 @@ -763,67 +700,69 @@ neo_r:                   or CheckCompAsc12("o","®","®")
                   or CheckCompAsc12("O","®","®")))
      OutputChar("r","R")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind})
 -  else if((Ebene = 4) and !(CheckDeadUni("c1",0x2075)
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2075)
                            or CheckDeadUni("c5",0x2085)))
      Send {blind}{NumPad5}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03F1) ; rho symbol (varrho)
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x211D) ; R (reelle Zahlen)
  return
  neo_t:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a3",0x0163,0x0162)
 +  if (Ebene12 and !(CheckDeadUni12("a3",0x0163,0x0162)
                   or CheckDeadUni12("a4",0x1E6B,0x1E6A)
                   or CheckDeadUni12("c2",0x0165,0x0164)
                   or CheckDeadUni12("c5",0x0167,0x0166)
 -                 or CheckDeadUni12("c6",0x1E6D,0x1E6C)))
 +                 or CheckDeadUni12("c6",0x1E6D,0x1E6C)
 +                 or CheckCompUni("lang_s",0xFB05)
 +                 or CheckCompUni("s",0xFB06)))
      OutputChar("t","T")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}- ; Bisstrich
 -  else if((Ebene = 4) and !(CheckDeadUni("c1",0x2076)
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x2076)
                    or CheckDeadUni("c5",0x2086)))
      Send {blind}{NumPad6}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03C4) ; tau
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2202) ; partielle Ableitung
  return
  neo_d:
     EbeneAktualisieren()
 -   if(Ebene12 and !(CheckDeadUni12("a4",0x1E0B,0x1E0A)
 +   if (Ebene12 and !(CheckDeadUni12("a4",0x1E0B,0x1E0A)
                    or CheckDeadUni12("c2",0x010F,0x010E)
                    or CheckDeadUni12("c5",0x0111,0x0110)
                    or CheckDeadUni12("c6",0x1E0D,0x1E0C)
                    or CheckDeadUni12("t4",0x00F0,0x00D0)))
        OutputChar("d","D")
 -   else if(Ebene = 3)
 +   else if (Ebene = 3)
        send {blind}:
 -   else if(Ebene = 4)
 +   else if (Ebene = 4)
  		send `,
 -   else if(Ebene = 5)
 +   else if (Ebene = 5)
        SendUnicodeChar(0x03B4) ; delta
 -   else if(Ebene = 6)
 +   else if (Ebene = 6)
        SendUnicodeChar(0x0394) ; Delta
  return
  neo_y:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x00FD,0x00DD)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x00FD,0x00DD)
                   or CheckDeadUni12("c1",0x0177,0x0176)
                   or CheckDeadAsc12("t3","ÿ","Ÿ")))
      OutputChar("y","Y")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}@
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}.
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03C5) ; upsilon
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2207) ; nabla
  return
 @@ -835,167 +774,161 @@ return  neo_ü:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x01D8,0x01D7)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x01D8,0x01D7)
                   or CheckDeadUni12("a2",0x01DC,0x01DB)
                   or CheckDeadUni12("c2",0x01DA,0x01D9)
                   or CheckDeadUni12("t2",0x01D6,0x01D5)))
      OutputChar("ü","Ü")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {#}
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}{Esc}
 -  else if(Ebene = 5) ; leer
 -  {
 +  else if (Ebene = 5) { ; leer
      DeadKey := PriorDeadKey
      CompKey := PriorCompKey
 -  }
 -  else if(Ebene = 6)
 +  } else if (Ebene = 6)
      SendUnicodeChar(0x221D) ; proportional
  return
  neo_ö:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("t2",0x022B,0x022A)))
 +  if (Ebene12 and !(CheckDeadUni12("t2",0x022B,0x022A)))
      OutputChar("ö","Ö")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}$
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      send {blind}{Tab}
 -  else if(Ebene = 5)
 -  {
 +  else if (Ebene = 5) { ; leer
      DeadKey := PriorDeadKey
      CompKey := PriorCompKey
 -  } ; leer
 -  else if(Ebene = 6)
 +  } else if (Ebene = 6)
      SendUnicodeChar(0x2111) ; Fraktur I
  return
  neo_ä:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("t2",0x01DF,0x01DE)))
 +  if (Ebene12 and !(CheckDeadUni12("t2",0x01DF,0x01DE)))
      OutputChar("ä","Ä")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}|
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}{PgDn} ; Next
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03B7) ; eta
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x211C) ; Fraktur R
  return
  neo_p:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a4",0x1E57,0x1E56)))
 +  if (Ebene12 and !(CheckDeadUni12("a4",0x1E57,0x1E56)))
      OutputChar("p","P")
 -  else if((Ebene = 3) and !(CheckDeadUni("t1",0x2248)))
 +  else if ((Ebene = 3) and !(CheckDeadUni("t1",0x2248)))
      send {blind}~
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
        Send {blind}{Enter}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03C0) ; pi
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x03A0) ; Pi
  return
  neo_z:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a1",0x017A,0x0179)
 +  if (Ebene12 and !(CheckDeadUni12("a1",0x017A,0x0179)
                   or CheckDeadUni12("a4",0x017C,0x017B)
                   or CheckDeadUni12("c2",0x017E,0x017D)
                   or CheckDeadUni12("c6",0x1E93,0x1E92)))
      OutputChar("z","Z")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send ``{space} ; untot
 -  else if(Ebene = 4)
 -  {
 +  else if (Ebene = 4) { ; leer
      DeadKey := PriorDeadKey
      CompKey := PriorCompKey
 -  } ; leer
 -  else if(Ebene = 5)
 +  } else if (Ebene = 5)
      SendUnicodeChar(0x03B6) ; zeta
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2124) ; Z (ganze Zahlen)
  return
  neo_b:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a4",0x1E03,0x1E02)))
 +  if (Ebene12 and !(CheckDeadUni12("a4",0x1E03,0x1E02)))
      OutputChar("b","B")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}{+}
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      send {blind}:
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03B2) ; beta
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x21D2) ; Doppel-Pfeil rechts
  return
  neo_m:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("a4",0x1E41,0x1E40)
 +  if (Ebene12 and !(CheckDeadUni12("a4",0x1E41,0x1E40)
                        or CheckDeadUni12("c6",0x1E43,0x1E42)
                        or CheckCompUni12("t",0x2122,0x2122) ; TM
                        or CheckCompUni12("s",0x2120,0x2120))) ; SM
      OutputChar("m","M")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}`%
 -  else if((Ebene = 4) and !(CheckDeadUni("c1",0x00B9)
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x00B9)
                            or CheckDeadUni("c5",0x2081)))
      Send {blind}{NumPad1}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03BC) ; griechisch mu, micro wäre 0x00B5
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x21D4) ; doppelter Doppelpfeil (genau dann wenn)
  return
  neo_komma:
    noCaps = 1
    EbeneAktualisieren()
 -  if(Ebene = 1)
 -    if(GetKeyState("CapsLock","T"))
 -      send {blind}{Shift down},{Shift up}
 +  if (Ebene = 1)
 +    if isMod2Locked
 +      send {blind}{Shift down} , {Shift up}
      else
        send {blind},
 -  else if(Ebene = 2)
 +  else if (Ebene = 2)
       SendUnicodeChar(0x22EE) ; vertikale ellipse
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}"
 -  else if((Ebene = 4) and !(CheckDeadUni("c1",0x00B2)
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x00B2)
                            or CheckDeadUni("c5",0x2082)))
      Send {blind}{NumPad2}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03C1) ; rho
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x21D0) ; Doppelpfeil links
  return
  neo_punkt:
    noCaps = 1
    EbeneAktualisieren()
 -  if(Ebene = 1)
 -    if(GetKeyState("CapsLock","T"))
 -      send {blind}{Shift down}.{Shift up}
 +  if (Ebene = 1)
 +    if isMod2Locked
 +      send {blind}{Shift down} . {Shift up}
      else
        send {blind}.
 -  else if(Ebene = 2)
 +  else if (Ebene = 2)
      SendUnicodeChar(0x2026) ; ellipse
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}'
 -  else if((Ebene = 4) and !(CheckDeadUni("c1",0x00B3)
 +  else if ((Ebene = 4) and !(CheckDeadUni("c1",0x00B3)
                            or CheckDeadUni("c5",0x2083)))
      Send {blind}{NumPad3}
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03D1) ; theta symbol (vartheta)
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x0398) ; Theta
  return
  neo_j:
    EbeneAktualisieren()
 -  if(Ebene12 and !(CheckDeadUni12("c1",0x0135,0x0134)
 +  if (Ebene12 and !(CheckDeadUni12("c1",0x0135,0x0134)
              or CheckDeadUni12("c2",0x01F0,"")
              or CheckCompUni("i",0x0133) ; ij
              or CheckCompUni("l",0x01C9) ; lj
 @@ -1004,13 +937,13 @@ neo_j:              or CheckCompUni12("L",0x01C8,0x01C7) ; Lj/LJ
              or CheckCompUni12("N",0x01CB,0x01CA))) ; Nj/NJ
      OutputChar("j","J")
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}`;
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      Send {blind}`;
 -  else if(Ebene = 5)
 +  else if (Ebene = 5)
      SendUnicodeChar(0x03B8) ; theta
 -  else if(Ebene = 6)
 +  else if (Ebene = 6)
      SendUnicodeChar(0x2261) ; identisch
  return
 @@ -1022,16 +955,15 @@ return  neo_NumLock:
    EbeneAktualisieren()
 -  if(Ebene = 1)
 +  if (Ebene = 1)
      send `=
 -  if(Ebene = 2) ; Funktioniert nicht
 -  {
 +  if (Ebene = 2) { ; Funktioniert nicht
      SetNumLockState
      send {NumLock}
    }
 -  if(Ebene = 3)
 +  if (Ebene = 3)
      SendUnicodeChar(0x2248) ; Fast gleich
 -  if(Ebene = 4)
 +  if (Ebene = 4)
      SendUnicodeChar(0x2260) ; Ungleich zu
  return
 @@ -1039,9 +971,9 @@ neo_NumpadDiv:    EbeneAktualisieren()
    if Ebene14
      send {blind}{NumpadDiv}
 -  else if(Ebene = 2)
 +  else if (Ebene = 2)
      SendUnicodeChar(0x2215) ; Slash
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}÷
  return
 @@ -1049,29 +981,29 @@ neo_NumpadMult:    EbeneAktualisieren()
    if Ebene14
      send {blind}{NumpadMult}
 -  else if(Ebene = 2)
 +  else if (Ebene = 2)
      SendUnicodeChar(0x22C5) ; Cdot
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}×
  return
  neo_NumpadSub:
    EbeneAktualisieren()
 -  if(Ebene14 and !(CheckDeadUni("c1",0x207B)
 +  if (Ebene14 and !(CheckDeadUni("c1",0x207B)
                   or CheckDeadUni("c5",0x208B)))
      send {blind}{NumpadSub}
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2212) ; Echtes Minus
  return
  neo_NumpadAdd:
    EbeneAktualisieren()
 -  if(Ebene14 and !(CheckDeadUni("c1",0x207A)
 +  if (Ebene14 and !(CheckDeadUni("c1",0x207A)
                   or CheckDeadUni("c5",0x208A)))
      send {blind}{NumpadAdd}
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}±
 -  else if(Ebene = 2)
 +  else if (Ebene = 2)
      SendUnicodeChar(0x2213) ; Inverses ±
  return
 @@ -1081,20 +1013,18 @@ return  neo_Numpad7:
    EbeneAktualisieren()
 -  if(Ebene = 1)
 -  {
 +  if (Ebene = 1) {
      if NumLock
        send {blind}{Numpad7}
      else
 -      send {blind){Shift up}{Numpad7}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad7}
 +    if (PriorDeadKey = "comp")
        CompKey := "7"
 -  }
 -  else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x2020) ; Kreuz
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2195) ; Hoch-Runter-Pfeil
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadHome}
      else
 @@ -1103,23 +1033,21 @@ return  neo_Numpad8:
    EbeneAktualisieren()
 -  if((Ebene = 1) and !(CheckCompUni("1",0x215B) ; 1/8
 +  if ((Ebene = 1) and !(CheckCompUni("1",0x215B) ; 1/8
                       or CheckCompUni("3",0x215C) ; 3/8
                       or CheckCompUni("5",0x215D) ; 5/8
 -                     or CheckCompUni("7",0x215E))) ; 7/8
 -  {
 +                     or CheckCompUni("7",0x215E))) { ; 7/8
      if NumLock
        send {blind}{Numpad8}
      else
 -      send {blind){Shift up}{Numpad8}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad8}
 +    if (PriorDeadKey = "comp")
        CompKey := "8"
 -  }
 -  else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x2229) ; Durchschnitt
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2191) ; Hochpfeil
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadUp}
      else
 @@ -1128,20 +1056,18 @@ return  neo_Numpad9:
    EbeneAktualisieren()
 -  if(Ebene = 1)
 -  {
 +  if (Ebene = 1) {
      if NumLock
        send {blind}{Numpad9}
      else
 -      send {blind){Shift up}{Numpad9}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad9}
 +    if (PriorDeadKey = "comp")
        CompKey := "9"
 -  }
 -  else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x2297) ; Tensorprodukt / Vektor in die Ebene zeigend
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x220D) ; Kleines umgekehrtes Elementzeichen
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadPgUp}
      else
 @@ -1150,21 +1076,19 @@ return  neo_Numpad4:
    EbeneAktualisieren()
 -  if((Ebene = 1) and !(CheckCompUni("1",0x00BC) ; 1/4
 -                     or CheckCompUni("3",0x00BE))) ; 3/4
 -  {
 +  if ((Ebene = 1) and !(CheckCompUni("1",0x00BC) ; 1/4
 +                     or CheckCompUni("3",0x00BE))) { ; 3/4
      if NumLock
        send {blind}{Numpad4}
      else
 -      send {blind){Shift up}{Numpad4}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad4}
 +    if (PriorDeadKey = "comp")
        CompKey := "4"
 -  }
 -  else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x2282) ; Teilmenge
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2190) ; Linkspfeil
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadLeft}
      else
 @@ -1173,23 +1097,21 @@ return  neo_Numpad5:
    EbeneAktualisieren()
 -  if((Ebene = 1) and !(CheckCompUni("1",0x2155) ; 1/5
 +  if ((Ebene = 1) and !(CheckCompUni("1",0x2155) ; 1/5
                       or CheckCompUni("2",0x2156) ; 2/5
                       or CheckCompUni("3",0x2157) ; 3/5
 -                     or CheckCompUni("4",0x2158))) ; 4/5
 -  {
 +                     or CheckCompUni("4",0x2158))) { ; 4/5
      if NumLock
        send {blind}{Numpad5}
      else
 -      send {blind){Shift up}{Numpad5}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad5}
 +    if (PriorDeadKey = "comp")
        CompKey := "5"
 -  }
 -  else if(Ebene = 3)
 +  } else if (Ebene = 3)
      SendUnicodeChar(0x221E) ; Unendlich
 -  else if(Ebene = 2)
 +  else if (Ebene = 2)
      SendUnicodeChar(0x20AC) ; Euro
 -  else if(Ebene = 4) ; Beg
 +  else if (Ebene = 4) ; Beg
      if NumLock
        send {NumPad5}
      else
 @@ -1198,21 +1120,19 @@ return  neo_Numpad6:
    EbeneAktualisieren()
 -  if((Ebene = 1) and !(CheckCompUni("1",0x2159) ; 1/6
 -                     or CheckCompUni("5",0x215a))) ; 5/6
 -  {
 +  if ((Ebene = 1) and !(CheckCompUni("1",0x2159) ; 1/6
 +                     or CheckCompUni("5",0x215a))) { ; 5/6
      if NumLock
        send {blind}{Numpad6}
      else
 -      send {blind){Shift up}{Numpad6}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad6}
 +    if (PriorDeadKey = "comp")
        CompKey := "6"
 -  }
 -  else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x2283) ; Obermenge
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2192) ; Rechtspfeil
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadRight}
      else
 @@ -1221,20 +1141,18 @@ return  neo_Numpad1:
    EbeneAktualisieren()
 -  if(Ebene = 1)
 -  {
 +  if (Ebene = 1) {
      if NumLock
        send {blind}{Numpad1}
      else
 -      send {blind){Shift up}{Numpad1}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad1}
 +    if (PriorDeadKey = "comp")
        CompKey := "1"
 -  }
 -  else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x2714) ; Häkchen
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2194) ; Links-Rechts-Pfeil
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadEnd}
      else
 @@ -1243,20 +1161,18 @@ return  neo_Numpad2:
    EbeneAktualisieren()
 -  if((Ebene = 1) and !(CheckCompUni("1",0x00BD))) ; 1/2
 -  {
 +  if ((Ebene = 1) and !(CheckCompUni("1",0x00BD))) { ; 1/2
      if NumLock
        send {blind}{Numpad2}
      else
 -      send {blind){Shift up}{Numpad2}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad2}
 +    if (PriorDeadKey = "comp")
        CompKey := "2"
 -  }
 -  else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x222A) ; Vereinigung
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2192) ; Untenpfeil
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadDown}
      else
 @@ -1265,21 +1181,19 @@ return  neo_Numpad3:
    EbeneAktualisieren()
 -  if((Ebene = 1) and !(CheckCompUni("1",0x2153) ; 1/3
 -                     or CheckCompUni("5",0x2154))) ; 2/3
 -  {
 +  if ((Ebene = 1) and !(CheckCompUni("1",0x2153) ; 1/3
 +                     or CheckCompUni("5",0x2154))) { ; 2/3
      if NumLock
        send {blind}{Numpad3}
      else
 -      send {blind){Shift up}{Numpad3}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad3}
 +    if (PriorDeadKey = "comp")
        CompKey := "3"
 -  }
 -  else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x2718) ; Kreuzchen
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x2192) ; Rechtspfeil
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadPgDn}
      else
 @@ -1288,20 +1202,18 @@ return  neo_Numpad0:
    EbeneAktualisieren()
 -  if(Ebene = 1)
 -  {
 +  if (Ebene = 1) {
      if NumLock
        send {blind}{Numpad0}
      else
 -      send {blind){Shift up}{Numpad0}
 -    if(PriorDeadKey = "comp")
 +      send {blind) {Shift up}{Numpad0}
 +    if (PriorDeadKey = "comp")
        CompKey := "0"
 -  }
 -  else if(Ebene = 2)
 +  } else if (Ebene = 2)
      SendUnicodeChar(0x2030) ; Promille
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      SendUnicodeChar(0x0025) ; Prozent
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadIns}
      else
 @@ -1310,18 +1222,16 @@ return  neo_NumpadDot:
    EbeneAktualisieren()
 -  if(Ebene = 1)
 -  {
 +  if (Ebene = 1) {
      if NumLock
        send {blind}{NumpadDot}
      else	
 -      send {blind){Shift up}{NumpadDot}
 -  }
 -  else if(Ebene = 2)
 +      send {blind) {Shift up}{NumpadDot}
 +  } else if (Ebene = 2)
      send `,
 -  else if(Ebene = 3)
 +  else if (Ebene = 3)
      send {blind}.
 -  else if(Ebene = 4)
 +  else if (Ebene = 4)
      if NumLock
        send {blind}{Shift up}{NumpadDel}
      else
 @@ -1335,42 +1245,39 @@ return  */
  *space::
 -  if((einHandNeo))
 +  if ((einHandNeo))
     spacepressed := 1
    else
     goto neo_SpaceUp
  return
  *space up::
 -  if((einHandNeo))
 -  {
 -    if((keypressed))
 +  if ((einHandNeo)) {
 +    if ((keypressed))
      {
       keypressed := 0
       spacepressed := 0
 -    }
 -    else
 +    } else
      {
        goto neo_SpaceUp
      }
 -  }
 -  else
 -    { } ;do nothing
 +  } else
 +    {} ;do nothing
  return
  neo_SpaceUp:
      EbeneAktualisieren()
 -    if((Ebene = 1) and !(CheckComp3Uni("r_1",0x2170) ; Römisch i
 +    if ((Ebene = 1) and !(CheckComp3Uni("r_1",0x2170) ; Römisch i
                      or CheckComp3Uni("R_1",0x2160))) ; Römisch I
        Send {blind}{Space}
      else if ((Ebene = 2) or (Ebene = 3))
        Send {blind}{Space}
 -    else if(Ebene = 4 and !(CheckDeadUni("c1",0x2070)
 +    else if (Ebene = 4 and !(CheckDeadUni("c1",0x2070)
                         or CheckDeadUni("c5",0x2080)))
        Send {blind}{NumPad0}
 -    else if(Ebene = 5)
 +    else if (Ebene = 5)
        SendUnicodeChar(0x00A0) ; geschütztes Leerzeichen
 -    else if(Ebene = 6)
 +    else if (Ebene = 6)
        SendUnicodeChar(0x202F) ; schmales geschütztes Leerzeichen
      DeadKey := "" CompKey := ""
    spacepressed := 0
 @@ -1384,28 +1291,24 @@ return  */
  *Enter::
 -  if(not(lernModus) or lernModus_std_Return)
 -  {
 +  if (not(lernModus) or lernModus_std_Return) {
      send {Blind}{Enter}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
  *Backspace::
 -  if(not(lernModus) or lernModus_std_Backspace)
 -  {
 +  if (not(lernModus) or lernModus_std_Backspace) {
      send {Blind}{Backspace}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
  *Del::
 -  if(not(lernModus) or lernModus_std_Entf)
 +  if (not(lernModus) or lernModus_std_Entf)
      send {Blind}{Del}
  return
  *Ins::
 -  if(not(lernModus) or lernModus_std_Einf)
 +  if (not(lernModus) or lernModus_std_Einf)
      send {Blind}{Ins}
  return
 @@ -1414,79 +1317,59 @@ Auf Mod3+Tab liegt Compose.  */
  neo_tab:
 -  if(IsMod3Pressed())
 -  {
 +  if (IsMod3Pressed()) {
      DeadKey := "comp"
      CompKey := ""
 -  }
 -  else
 -  {
 +  } else {
      send {blind}{Tab}
      DeadKey := ""
      CompKey := ""
 -  }
 -return
 +  } return
  *Home::
 -  if(not(lernModus) or lernModus_std_Pos1)
 -  {
 +  if (not(lernModus) or lernModus_std_Pos1) {
      send {Blind}{Home}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
  *End::
 -  if(not(lernModus) or lernModus_std_Ende)
 -  {
 +  if (not(lernModus) or lernModus_std_Ende) {
      send {Blind}{End}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
  *PgUp::
 -  if(not(lernModus) or lernModus_std_PgUp)
 -  {
 +  if (not(lernModus) or lernModus_std_PgUp) {
      send {Blind}{PgUp}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
  *PgDn::
 -  if(not(lernModus) or lernModus_std_PgDn)
 -  {
 +  if (not(lernModus) or lernModus_std_PgDn) {
      send {Blind}{PgDn}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
  *Up::
 -  if(not(lernModus) or lernModus_std_Hoch)
 -  {
 +  if (not(lernModus) or lernModus_std_Hoch) {
      send {Blind}{Up}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
  *Down::
 -  if(not(lernModus) or lernModus_std_Runter)
 -  {
 +  if (not(lernModus) or lernModus_std_Runter) {
      send {Blind}{Down}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
  *Left::
 -  if(not(lernModus) or lernModus_std_Links)
 -  {
 +  if (not(lernModus) or lernModus_std_Links) {
      send {Blind}{Left}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
  *Right::
 -  if(not(lernModus) or lernModus_std_Rechts)
 -  {
 +  if (not(lernModus) or lernModus_std_Rechts) {
      send {Blind}{Right}
      DeadKey := "" CompKey := ""
 -  }
 -return
 +  } return
 diff --git a/windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk b/windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk index 062fcb2..0c14f19 100644 --- a/windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk +++ b/windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk @@ -3,8 +3,9 @@     QWERTZ->Neo umwandlung
     ------------------------------------------------------
  */
 +
  ; Reihe 1
 -*VKDCSC029::goto neo_tot1  ; Zirkumflex ^
 +*VKDCSC029::goto neo_tot1 ; Zirkumflex
  *VK31SC002::goto neo_1
  *VK32SC003::goto neo_2
  *VK33SC004::goto neo_3
 @@ -12,435 +13,266 @@  *VK35SC006::goto neo_5
  *VK36SC007::goto neo_6
  *VK37SC008::
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_7
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_7%
 -      }
 +  if (!(einHandNeo) or !(spacepressed))
 +    goto neo_7
 +  else {
 +    keypressed := 1
 +    goto %gespiegelt_7%
 +  } 
  *VK38SC009::
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_8
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_8%
 -      }
 +  if(!(einHandNeo) or !(spacepressed))
 +    goto neo_8
 +  else {
 +    keypressed := 1
 +    goto %gespiegelt_8%
 +  }
  *VK39SC00A::
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_9
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_9%
 -      }
 +  if(!(einHandNeo) or !(spacepressed))
 +    goto neo_9
 +  else {
 +    keypressed := 1
 +    goto %gespiegelt_9%
 +  }
  *VK30SC00B::
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_0
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_0%
 -      }
 -*VKDBSC00C:: ; ß
 -  if ( not(ahkTreiberKombi) )
 -  {
 -       if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_strich
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_strich%
 -      }
 -   }
 -  else
 -  {
 -     goto neo_sz   
 +  if(!(einHandNeo) or !(spacepressed))
 +    goto neo_0
 +  else {
 +    keypressed := 1
 +    goto %gespiegelt_0%
    }
 -*VKDDSC00D::goto neo_tot2  ; Akut			
 +*VKDBSC00C:: ; ß
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_strich
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_strich%
 +    }
 +  } else goto neo_sz   
 +*VKDDSC00D::goto neo_tot2 ; Akut
 +
  ; Reihe 2
 +
  VK09SC00F::goto neo_tab
  *VK51SC010:: ; q (x)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_x
 -  }
 -  else
 -  {
 -     goto neo_q   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_x
 +  else goto neo_q   
  *VK57SC011:: ; w (v)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_v
 -  }
 -  else
 -  {
 -     goto neo_w   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_v
 +  else goto neo_w   
  *VK45SC012:: ; e (l)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_l
 -  }
 -  else
 -  {
 -     goto neo_e   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_l
 +  else goto neo_e   
  *VK52SC013:: ; r (c)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_c
 -  }
 -  else
 -  {
 -     goto neo_r   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_c
 +  else goto neo_r   
  *VK54SC014:: ; t (w)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_w
 -  }
 -  else
 -  {
 -     goto neo_t   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_w
 +  else goto neo_t   
  *VK5ASC015:: ; z (k) 
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_k
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_k%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_z   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_k
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_k%
 +    }
 +  }
 +  else goto neo_z   
  *VK55SC016:: ; u (h)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_h
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_h%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_u   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_h
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_h%
 +    }
 +  } else goto neo_u   
  *VK49SC017:: ; i (g)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_g
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_g%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_i   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_g
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_g%
 +    }
 +  }
 +  else goto neo_i   
  *VK4FSC018:: ; o (f)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_f
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_f%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_o   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_f
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_f%
 +    }
 +  }
 +  else goto neo_o   
  *VK50SC019:: ; p (q)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_q
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_q%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_p   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_q
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_q%
 +    }
 +  }
 +  else goto neo_p   
  *VKBASC01A:: ; ü (ß)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_sz
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_sz%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_ü   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_sz
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_sz%
 +    }
 +  } else goto neo_ü   
  *VKBBSC01B:: ; + (tot3)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_tot3
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_tot3%
 -      }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_tot3
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_tot3%
 +    }
    }
 -  else
 -  { } ; this should never happen
  ; Reihe 3
  *VK41SC01E:: ; a (u)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_u
 -  }
 -  else
 -  {
 -     goto neo_a   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_u
 +  else goto neo_a   
  *VK53SC01F:: ; s (i)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_i
 -  }
 -  else
 -  {
 -     goto neo_s   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_i
 +  else goto neo_s   
  *VK44SC020:: ; d (a)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_a
 -  }
 -  else
 -  {
 -     goto neo_d   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_a
 +  else goto neo_d   
  *VK46SC021:: ; f (e)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_e
 -  }
 -  else
 -  {
 -     goto neo_f   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_e
 +  else goto neo_f   
  *VK47SC022:: ; g (o)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_o
 -  }
 -  else
 -  {
 -     goto neo_g   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_o
 +  else goto neo_g   
  *VK48SC023:: ; h (s)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_s
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_s%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_h   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_s
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_s%
 +    }
 +  } else goto neo_h   
  *VK4ASC024:: ; j (n)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_n
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_n%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_j   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_n
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_n%
 +    }
 +  } else goto neo_j   
  *VK4BSC025:: ; k (r)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_r
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_r%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_k   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_r
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_r%
 +    }
 +  } else goto neo_k   
  *VK4CSC026:: ; l (t)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_t
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_t%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_l   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_t
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_t%
 +    }
 +  } else goto neo_l   
  *VKC0SC027:: ; ö (d)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_d
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_d%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_ö   
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_d
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_d%
 +    }
 +  } else goto neo_ö   
  *VKDESC028:: ; ä (y)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_y
 -  }
 -  else
 -  {
 -     goto neo_ä
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_y
 +  else goto neo_ä
  ; Reihe 4
  *VK59SC02C:: ; y (ü)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_ü
 -  }
 -  else
 -  {
 -     goto neo_y   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_ü
 +  else goto neo_y   
  *VK58SC02D:: ; x (ö)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_ö
 -  }
 -  else
 -  {
 -     goto neo_x   
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_ö
 +  else goto neo_x   
  *VK43SC02E:: ; c (ä)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_ä
 -  }
 -  else
 -  {
 -     goto neo_c
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_ä
 +  else goto neo_c
  *VK56SC02F:: ; v (p)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_p
 -  }
 -  else
 -  {
 -     goto neo_v
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_p
 +  else goto neo_v
  *VK42SC030:: ; b (z)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     goto neo_z
 -  }
 -  else
 -  {
 -     goto neo_b
 -  }
 +  if !ahkTreiberKombi 
 +    goto neo_z
 +  else goto neo_b
  *VK4ESC031:: ; n (b)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 -       goto neo_b
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_b%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_n
 -  }
 +  if !ahkTreiberKombi {
 +    if(!(einHandNeo) or !(spacepressed))
 +      goto neo_b
 +    else {
 +      keypressed := 1
 +      goto %gespiegelt_b%
 +    }
 +  } else goto neo_n
  *VK4DSC032:: ; m (m)
 -     if( not(einHandNeo) or not(spacepressed) )
 +     if(!(einHandNeo) or !(spacepressed))
         goto neo_m
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_m%
 +     else {
 +       keypressed := 1
 +       goto %gespiegelt_m%
        }
  *VKBCSC033:: ; , (,)
 -     if( not(einHandNeo) or not(spacepressed) )
 +     if(!(einHandNeo) or !(spacepressed))
         goto neo_komma
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_komma%
 -      }
 +     else {
 +       keypressed := 1
 +       goto %gespiegelt_komma%
 +     }
  *VKBESC034:: ; . (.)
 -     if( not(einHandNeo) or not(spacepressed) )
 +     if(!(einHandNeo) or !(spacepressed))
         goto neo_punkt
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_punkt%
 -      }
 +     else {
 +       keypressed := 1
 +       goto %gespiegelt_punkt%
 +     }
  *VKBDSC035:: ; - (j)
 -  if ( not(ahkTreiberKombi) )
 -  {
 -     if( not(einHandNeo) or not(spacepressed) )
 +  if !ahkTreiberKombi {
 +     if(!(einHandNeo) or !(spacepressed))
         goto neo_j
 -     else
 -      {
 -        keypressed := 1
 -        goto %gespiegelt_j%
 -      }
 -  }
 -  else
 -  {
 -     goto neo_strich
 -  }
 +     else {
 +       keypressed := 1
 +       goto %gespiegelt_j%
 +     }
 +  } else goto neo_strich
  ; Numpad
  *VK90SC145::goto neo_NumLock
 @@ -449,36 +281,25 @@ VK09SC00F::goto neo_tab  *VK6DSC04A::goto neo_NumpadSub
  *VK6BSC04E::goto neo_NumpadAdd
  *VK0DSC11C::goto neo_NumpadEnter
 -
 -*VK67SC047::                      ; NumPad7    (mit NumLock  und ohne Shift)
 -*VK24SC047::goto neo_Numpad7      ; NumPadHome (ohne Numlock oder mit Shift)
 -
 -*VK68SC048::                      ; NumPad8    (mit NumLock  und ohne Shift)
 -*VK26SC048::goto neo_Numpad8      ; NumPadUp   (ohne Numlock oder mit Shift)
 -
 -*VK69SC049::                      ; NumPad9    (mit NumLock  und ohne Shift)
 -*VK21SC049::goto neo_Numpad9      ; NumPadPgUp (ohne Numlock oder mit Shift)
 -
 -*VK64SC04B::                      ; NumPad4    (mit NumLock  und ohne Shift)
 -*VK25SC04B::goto neo_Numpad4      ; NumPadLeft (ohne Numlock oder mit Shift)
 -
 -*VK65SC04C::                      ; NumPad5    (mit NumLock  und ohne Shift)
 -*VK0CSC04C::goto neo_Numpad5      ; NumPadClear(ohne Numlock oder mit Shift)
 -
 -*VK66SC04D::                      ; NumPad6    (mit NumLock  und ohne Shift)
 -*VK27SC04D::goto neo_Numpad6      ; NumPadRight(ohne Numlock oder mit Shift)
 -
 -*VK61SC04F::                      ; NumPad1    (mit NumLock  und ohne Shift)
 -*VK23SC04F::goto neo_Numpad1      ; NumPadEnd  (ohne Numlock oder mit Shift)
 -
 -*VK62SC050::                      ; NumPad2    (mit NumLock  und ohne Shift)
 -*VK28SC050::goto neo_Numpad2      ; NumPadDown (ohne Numlock oder mit Shift)
 -
 -*VK63SC051::                      ; NumPad3    (mit NumLock  und ohne Shift)
 -*VK22SC051::goto neo_Numpad3      ; NumPadPgDn (ohne Numlock oder mit Shift)
 -
 -*VK60SC052::                      ; NumPad0    (mit NumLock  und ohne Shift)
 -*VK2DSC052::goto neo_Numpad0      ; NumPadIns  (ohne Numlock oder mit Shift)
 -
 -*VK6ESC053::                      ; NumPadDot  (mit NumLock  und ohne Shift)
 -*VK2ESC053::goto neo_NumpadDot    ; NumPadIns  (ohne Numlock oder mit Shift)
 +*VK67SC047::                   ; NumPad7
 +*VK24SC047::goto neo_Numpad7   ; NumPadHome
 +*VK68SC048::                   ; NumPad8
 +*VK26SC048::goto neo_Numpad8   ; NumPadUp
 +*VK69SC049::                   ; NumPad9
 +*VK21SC049::goto neo_Numpad9   ; NumPadPgUp
 +*VK64SC04B::                   ; NumPad4
 +*VK25SC04B::goto neo_Numpad4   ; NumPadLeft
 +*VK65SC04C::                   ; NumPad5
 +*VK0CSC04C::goto neo_Numpad5   ; NumPadClear
 +*VK66SC04D::                   ; NumPad6
 +*VK27SC04D::goto neo_Numpad6   ; NumPadRight
 +*VK61SC04F::                   ; NumPad1
 +*VK23SC04F::goto neo_Numpad1   ; NumPadEnd
 +*VK62SC050::                   ; NumPad2
 +*VK28SC050::goto neo_Numpad2   ; NumPadDown
 +*VK63SC051::                   ; NumPad3
 +*VK22SC051::goto neo_Numpad3   ; NumPadPgDn
 +*VK60SC052::                   ; NumPad0
 +*VK2DSC052::goto neo_Numpad0   ; NumPadIns
 +*VK6ESC053::                   ; NumPadDot
 +*VK2ESC053::goto neo_NumpadDot ; NumPadIns
 diff --git a/windows/autohotkey/Source/Methods-Layers.ahk b/windows/autohotkey/Source/Methods-Layers.ahk index dd63c4c..ef12e58 100644 --- a/windows/autohotkey/Source/Methods-Layers.ahk +++ b/windows/autohotkey/Source/Methods-Layers.ahk @@ -140,5 +140,3 @@ IsMod4Pressed()       else
         return ( GetKeyState("<","P") or GetKeyState("SC138","P") or GetKeyState("ä","P"))
  }
 -
 -
 diff --git a/windows/autohotkey/Source/Methods-Lights.ahk b/windows/autohotkey/Source/Methods-Lights.ahk index d62af27..d74a4e3 100644 --- a/windows/autohotkey/Source/Methods-Lights.ahk +++ b/windows/autohotkey/Source/Methods-Lights.ahk @@ -105,7 +105,3 @@ InsertIntegerLED(pInteger, ByRef pDest, pOffset = 0, pSize = 4){    Loop %pSize%  ; Copy each byte in the integer into the structure as raw binary data. 
      DllCall("RtlFillMemory", "UInt", &pDest + pOffset + A_Index-1, "UInt", 1, "UChar", pInteger >> 8*(A_Index-1) & 0xFF) 
  }
 -
 -
 -
 -
 diff --git a/windows/autohotkey/Source/Methods-Other.ahk b/windows/autohotkey/Source/Methods-Other.ahk index 2e9c928..cb95c99 100644 --- a/windows/autohotkey/Source/Methods-Other.ahk +++ b/windows/autohotkey/Source/Methods-Other.ahk @@ -1,18 +1,18 @@ -deadAsc(val){
 +deadAsc(val) {
    global
 -  if!(DeadSilence)
 +  if !DeadSilence
      send % val
  }
 -deadUni(val){
 +deadUni(val) {
    global
 -  if!(DeadSilence)
 +  if !DeadSilence
      SendUnicodeChar(val)
  }
 -undeadAsc(val){
 +undeadAsc(val) {
    global
 -  if(DeadSilence)
 +  if DeadSilence
      send % val
    else
      send % "{bs}" . val
 @@ -20,167 +20,163 @@ undeadAsc(val){  undeadUni(val){
    global
 -  if!(DeadSilence)
 +  if !DeadSilence
      send {bs}
    SendUnicodeChar(val)
  }
 -CheckDeadAsc(d,val){
 +CheckDeadAsc(d,val) {
    global
 -  if(PriorDeadKey == d){
 +  if (PriorDeadKey == d) {
      undeadAsc(val)
      return 1
 -  }else return 0
 +  } else return 0
  }
 -CheckDeadUni(d,val){
 +CheckDeadUni(d,val) {
    global
 -  if(PriorDeadKey == d){
 +  if (PriorDeadKey == d) {
      undeadUni(val)
      return 1
 -  }else return 0
 +  } else return 0
  }
 -CheckDeadAsc12(d,val1,val2){
 +CheckDeadAsc12(d,val1,val2) {
    global
 -  if(PriorDeadKey == d){
 -    if((Ebene = 1) and (val1 != "")){
 +  if (PriorDeadKey == d){
 +    if (Ebene = 1) and (val1 != "") {
        undeadAsc(val1)
        return 1
 -    }else if((Ebene = 2) and (val2 != "")){
 +    } else if (Ebene = 2) and (val2 != "") {
        undeadAsc(val2)
        return 1
 -    }else return 0
 -  }else return 0
 +    } else return 0
 +  } else return 0
  }
 -CheckDeadUni12(d,val1,val2){
 +CheckDeadUni12(d,val1,val2) {
    global
 -  if(PriorDeadKey == d){
 -    if((Ebene = 1) and (val1 != "")){
 +  if(PriorDeadKey == d) {
 +    if (Ebene = 1) and (val1 != "") {
        undeadUni(val1)
        return 1
 -    }else if((Ebene = 2) and (val2 != "")){
 +    } else if (Ebene = 2) and (val2 != "") {
        undeadUni(val2)
        return 1
 -    }else return 0
 -  }else return 0
 +    } else return 0
 +  } else return 0
  }
 -compAsc(val){
 +compAsc(val) {
    global
 -  if!(DeadCompose)
 +  if !DeadCompose
      send % val
  }
 -compUni(val){
 +compUni(val) {
    global
 -  if!(DeadCompose)
 +  if !DeadCompose
      SendUnicodeChar(val)
  }
 -uncompAsc(val){
 +uncompAsc(val) {
    global
 -  if(DeadCompose)
 +  if DeadCompose
      send % val
    else send % "{bs}" . val
  }
 -uncompUni(val)
 -{
 +uncompUni(val) {
    global
 -  if!(DeadCompose)
 +  if !DeadCompose
      send {bs}
    SendUnicodeChar(val)    
  }
 -uncomp3Uni(val)
 -{
 +uncomp3Uni(val) {
    global
 -  if!(DeadCompose)
 +  if !DeadCompose
      send {bs}{bs}
    SendUnicodeChar(val)    
  }
 -CheckCompAsc(d,val){
 +CheckCompAsc(d,val) {
    global
 -  if(PriorCompKey == d){
 +  if (PriorCompKey == d) {
      uncompAsc(val)
      return 1
 -  }else return 0
 +  } else return 0
  }
 -CheckCompAsc12(d,val1,val2){
 +CheckCompAsc12(d,val1,val2) {
    global
 -  if(PriorCompKey == d)
 -    if((Ebene = 1) and (val1 != "")){
 +  if (PriorCompKey == d)
 +    if (Ebene = 1) and (val1 != "") {
        uncompAsc(val1)
        return 1
 -    }else if((Ebene = 2) and (val2 != "")){
 +    } else if (Ebene = 2) and (val2 != "") {
        uncompAsc(val2)
        return 1
 -    }else return 0
 +    } else return 0
    else return 0
  }
 -CheckCompUni(d,val){
 +CheckCompUni(d,val) {
    global
 -  if(PriorCompKey == d){
 +  if (PriorCompKey == d) {
      uncompUni(val)
      return 1
 -  }else return 0
 +  } else return 0
  }
  CheckCompUni12(d,val1,val2){
    global
 -  if(PriorCompKey == d){
 -    if     ((Ebene = 1) and (val1 != "")){
 +  if (PriorCompKey == d) {
 +    if (Ebene = 1) and (val1 != "") {
        uncompUni(val1)
        return 1
 -    }else if((Ebene = 2) and (val2 != "")){
 +    }else if (Ebene = 2) and (val2 != "") {
        uncompUni(val2)
        return 1
 -    }else return 0
 -  }else return 0
 +    } else return 0
 +  } else return 0
  }
 -CheckComp3Uni(d,val){
 +CheckComp3Uni(d,val) {
    global
 -  if(PriorCompKey == d){
 +  if (PriorCompKey == d) {
      uncomp3Uni(val)
      return 1
 -  }else return 0
 +  } else return 0
  }
 -CheckComp3Uni12(d,val1,val2){
 +CheckComp3Uni12(d,val1,val2) {
    global
 -  if(PriorCompKey == d){
 -    if((Ebene = 1) and (val1 != "")){
 +  if (PriorCompKey == d) {
 +    if (Ebene = 1) and (val1 != "") {
        uncomp3Uni(val1)
        return 1
 -    }else if((Ebene = 2) and (val2 != "")){
 +    } else if (Ebene = 2) and (val2 != "") {
        uncomp3Uni(val2)
        return 1
 -    }else return 0
 -  }else return 0
 +    } else return 0
 +  } else return 0
  }
 -outputChar(val1,val2){
 +outputChar(val1,val2) {
    global
 -  if(Ebene = 1)
 +  if (Ebene = 1)
      c := val1
 -  else
 -    c := val2
 -  if 	GetKeyState("Shift","P") and isMod2Locked
 +  else c := val2
 +  if GetKeyState("Shift","P") and isMod2Locked
      send % "{blind}{Shift Up}" . c . "{Shift Down}"
 -  else
 -    send % "{blind}" . c
 -  if(PriorDeadKey = "comp")
 +  else send % "{blind}" . c
 +  if (PriorDeadKey = "comp")
      CompKey := c
  }
 -checkComp(d){
 -  if(PriorDeadKey = "comp"){
 +checkComp(d) {
 +  if (PriorDeadKey = "comp") {
      CompKey := d
      return 1
    }
 diff --git a/windows/autohotkey/Source/Methods-ScreenKeyboard.ahk b/windows/autohotkey/Source/Methods-ScreenKeyboard.ahk index 5cfd18b..824fc76 100644 --- a/windows/autohotkey/Source/Methods-ScreenKeyboard.ahk +++ b/windows/autohotkey/Source/Methods-ScreenKeyboard.ahk @@ -166,4 +166,3 @@ ToggleAlwaysOnTop:        alwaysOnTop = 1
      }
  Return
 -
 diff --git a/windows/autohotkey/Source/Methods-Unicode.ahk b/windows/autohotkey/Source/Methods-Unicode.ahk index b29f7ed..deaf5e0 100644 --- a/windows/autohotkey/Source/Methods-Unicode.ahk +++ b/windows/autohotkey/Source/Methods-Unicode.ahk @@ -28,4 +28,3 @@ SendUnicodeChar(charCode){  EncodeInteger(ref,val){
    DllCall("ntdll\RtlFillMemoryUlong","Uint",ref,"Uint",4,"Uint",val)
  }
 -
 diff --git a/windows/autohotkey/Source/Warning.ahk b/windows/autohotkey/Source/Warning.ahk index 514b391..513b43f 100644 --- a/windows/autohotkey/Source/Warning.ahk +++ b/windows/autohotkey/Source/Warning.ahk @@ -35,5 +35,3 @@ Das war die letzte WARNUNG, ich hoffe nur dass  Sie wirklich wissen was Sie hier tun wollen ...
  *******************************************
  */
 -
 -
 | 
