6d0b9db7e1
git-svn-id: https://svn.neo-layout.org@1423 b9310e46-f624-0410-8ea1-cfbb3a30dc96
275 lines
16 KiB
Text
275 lines
16 KiB
Text
== NEO 2.0 (beta) AutoHotkey‐Treiber ==
|
||
|
||
|
||
=== Autoren ===
|
||
Alle E‐Mail‐Adressen sind »kodiert«, um die Erfassung durch E‐Mail‐Spider (und darauf folgenden Spam) zu vermeiden:
|
||
|
||
Stefan Mayer <stm (at) neo‐layout. o r g>
|
||
Nora Geißler <nora_geissler (at) yahoo. d e>
|
||
Matthias Berg <neo (at) matthias‐berg. e u>
|
||
Martin Roppelt <m.p.roppelt (at) web. d e>
|
||
Dennis Heidsiek <heidsiekb (at) aol. c o m>
|
||
Matthias Wächter <matthias (at) waechter.wiz. a t>
|
||
|
||
|
||
=== To Do ===
|
||
‐ Ausgiebig testen … (besonders Vollständigkeit bei Deadkeys).
|
||
• Griechische Buchstaben ergänzen…
|
||
‐ Bessere Lösung für das Leeren von PriorDeadKey finden, damit die Sondertasten nicht mehr abgefangen werden müssen.
|
||
‐ Compose vollständig implementieren: Kombination mit Deadkeys.
|
||
• ♫Tab ermöglichen.
|
||
- Bildschirmtastatur in der All.ahk auch ohne vorherigen Aufruf der neo20.exe verfügbar machen.
|
||
|
||
=== Ideen und Vorschläge ===
|
||
‐ Modi für vertauschte Ziffern in der Zahlenreihe und auf der 4. Ebene.
|
||
|
||
=== Änderungshistorie ===
|
||
|
||
Revision 1057 (von Martin Roppelt)
|
||
- Bildschirmtastatur aktualisiert.
|
||
Revision 1046 (von Martin Roppelt)
|
||
- Anpassung an Referenz.
|
||
Revision 1039 (von Dennis Heidsiek)
|
||
- Lang-ſ-Modus wiederhergestellt (neo_s war defekt).
|
||
Revision 1016 (von Martin Roppelt)
|
||
- Tote Tasten fertig angepasst.
|
||
Revision 993 (von Martin Roppelt)
|
||
- Tote Tasten aktualisiert.
|
||
Revision 953 (von Martin Roppelt)
|
||
- 6-Ebenen-Ziffernblock eingepflegt.
|
||
Revision 929 (von Martin Roppelt)
|
||
- Compose.ahk aktualisiert.
|
||
- mod4+y sendet jetzt »KP+.« statt wie bisher ein einfaches ».«.
|
||
- mod4+return sendet jetzt »KP+return« (aka »enter«) statt wie bisher ein einfaches »return«.
|
||
Revision 899 (von Dennis Heidsiek)
|
||
- Build-Skript überarbeitet, sodass die Pfade zentral geändert werden können.
|
||
Revision 897 (von Dennis Heidsiek)
|
||
- Skript kompiliert wieder (alle .ahk-Dateien enden jetzt mit mindestens zwei Leezeilen)
|
||
- Ein Überbleibsel aus dem Build-Skript entfernt (bezog sich noch auf den Compose-Playground).
|
||
Revision 888 (von Martin Roppelt)
|
||
- Cokos mit 4 Tasten möglich.
|
||
- horizontalen Ellipsen-CompKey wiederhergestellt.
|
||
Revision 886 (von Stefan Mayer)
|
||
‐ Ellipse (horizontal und vertikal) wiederhergestellt.
|
||
Revision 873 (von Martin Roppelt)
|
||
‐ Tabulatoren entfernt.
|
||
Revision 872 (von Martin Roppelt)
|
||
‐ Alle Cokos automatisch eingefügt.
|
||
‐ Compose-Playground gelöscht.
|
||
‐ Anpassung an die Referenz.
|
||
Revision 864 (von Martin Roppelt)
|
||
‐ 253/2822 Cokos ≙ 9%.
|
||
Revision 849 (von Martin Roppelt)
|
||
‐ Ticket 31: Shift+(Strg und/oder Alt)+Ziffer sendet nicht mehr (Strg und/oder Alt)+(Ebene 2 der Ziffer).
|
||
Revision 846 (von Martin Roppelt)
|
||
‐ 233/1802 Cokos.
|
||
Revision 845 (von Martin Roppelt)
|
||
‐ Alle Cokos in die Compose.ahk migriert (Stand: 200/1805 Cokos).
|
||
Revision 842 (von Martin Roppelt)
|
||
‐ Ebenen 5+6 der Taste ›I‹ wiederhergestellt (Klammern vergessen).
|
||
Revision 841 (von Martin Roppelt)
|
||
‐ Ebenen 2‐6 der 1er-Taste wiederhergestellt (Klammern vergessen).
|
||
Revision 840 (von Martin Roppelt)
|
||
‐ Ein paar Bugs ausgebessert.
|
||
‐ Blinde Compose als Standard (unschöne Ausgabe bei Cokos mit drei Tasten aus der Compose.ahk).
|
||
Revision 838 (von Martin Roppelt)
|
||
‐ Compose.ahk als zentralen Ort für Cokos geschaffen.
|
||
‐ Weitere Vorbereitungen zur Aufnahme weiterer Cokos.
|
||
‐ ›©‹ jetzt auch wieder mit großem ›o‹.
|
||
Revision 833 (von Martin Roppelt)
|
||
‐ Cokos: ›‼‹, ›⁇‹ über ♫?2/♫!2.
|
||
‐ Blinde Compose jetzt auch bei SendUnicodeChar().
|
||
‐ SendUnicodeChar belegt CompKey mit dem Argument.
|
||
‐ Nicht‐blinde Compose wiederhergestellt.
|
||
‐ Vorbereitungen zur Aufnahme weiterer Cokos.
|
||
‐ Begrenzung der (blinden) Compose auf 2 Zeichen, wenn keine Übereinstimmung mit Coko vorliegt.
|
||
‐ »ẗ« zu den Tokos hinzugefügt.
|
||
‐ "DeadKey :=" in die dead*‐Methoden verschoben.
|
||
‐ OutputChar in OutputChar12 umbenannt, OutputChar hat nur noch ein Argument.
|
||
‐ Code zusammengefasst, Formatierungen angepasst.
|
||
Revisionen 827‐830 (von Martin Roppelt)
|
||
‐ 2 Achtelnoten (Composesymbol) auf 3(4).
|
||
‐ CapsLock‐Bug Ⅱ.: CapsLock funktionierte nicht mehr, wenn eine Taste gedrückt wurde, auf die CapsLock nicht wirkt (Ziffernreihe/‐block, Akzente, Punkt, Komma), da die Zeile »NoCaps = 0« in der isShiftPressed() nie ausgeführt wird.
|
||
‐ CapsLock‐Licht wird jetzt beim (Neu‐)Laden des Treibers ausgeschaltet.
|
||
Revision 820 (von Martin Roppelt)
|
||
‐ Weitere Cokos ergänzt: ›Ə‹, ›dž‹, ›Dž‹, ›DŽ‹, glyphengleiche griechische Majuskeln.
|
||
‐ Echter Bindestich durch Shift+Mod3+Zirkumflex, Leertaste.
|
||
Revision 815 (von Martin Roppelt)
|
||
‐ AHK um Verbindungszeichen bei doppelten toten Tasten ergänzt.
|
||
‐ Bei CapsLock, Mod3 und Shift wird jetzt ›+‹ statt ›*‹ gesendet.
|
||
Revision 812 (von Martin Roppelt)
|
||
‐ Überflüssigen Code entfernt.
|
||
‐ Code gestrafft.
|
||
Revision 810 (von Martin Roppelt)
|
||
‐ DeadCompose implementiert, uncomp…‐Methoden gelöscht, »return 0«‐Zeilen entfernt (wird sowieso gemacht).
|
||
‐ checkComp ausgebessert: »global« hatte gefehlt.
|
||
• Damit wurde ›ſt‹ ermöglicht (war defekt).
|
||
‐ ahkTreiberKombi rausgeschmissen (war für den gelöschten msklc‐Treiber gedacht).
|
||
‐ Massenweise Formatierungen normalisiert.
|
||
‐ Zusätzliche Compose‐Aktivierung über Mod3+Mod3.
|
||
‐ Einhand‐ und Lernmodus wiederhergestellt.
|
||
Revision 806 (von Dennis Heidsiek)
|
||
‐ Die automatisch erzeugte Datei neo20.ahk wird wieder um die SVN‐Keywords (Date, Author, Revision) ergänzt.
|
||
Revision 804 (von Martin Roppelt)
|
||
‐ Formatierung vereinfacht und vereinheitlicht.
|
||
‐ Compose‐Ligaturen implementiert: ›fl‹, ›ffl‹(♫Fl), ›fi‹, ›ffi‹(♫Fi), ›ff‹, ›st‹, ›ſt‹.
|
||
Revision 789 (von Martin Roppelt)
|
||
‐ NumLock‐Bug ausgebessert (NumLock konnte nach dem Beenden von Neo nicht mehr aktiviert werden).
|
||
Revision 778 (von Martin Roppelt)
|
||
‐ CapsLock+Shift‐Fehler ausgebessert.
|
||
Revision 777 (von Martin Roppelt)
|
||
‐ Syntaxfehler ausgebessert.
|
||
Revision 776 (von Martin Roppelt)
|
||
‐ Modularisierung des AHK konsequent weitergeführt.
|
||
‐ Global‐Part.ahk, Keys‐Neo.ahk: ZeigeLockBoxen in ZeigeLockBox umbenannt.
|
||
‐ Keys‐Neo.ahk: Fehler ausgebessert, Quelltext neu ausgerichtet, Numpad an die Referenz angeglichen (Ebenen 2 und 4 vertauscht), Ebenen 7 und 8 ergänzt.
|
||
‐ Methods‐Layers.ahk: Mod3‐Lock abgeschafft, CapsLock neu geschrieben.
|
||
Revision 749 (von Dennis Heidsiek)
|
||
‐ »?« und »¿« funktionieren wieder (Klammer vergessen).
|
||
Revision 748 (von Dennis Heidsiek)
|
||
‐ Neue globale Variable »zeigeLockBoxen«: Soll mit MsgBoxen explizit auf das Ein‐ und Ausschalten des Mod{3,4}‐Locks hingewiesen werden?
|
||
Revision 746 (von Martin Roppelt)
|
||
‐ Zurücksetzen der Tastatur über M4+Esc.
|
||
‐ #[2] sendet nicht mehr »'«.
|
||
‐ Variablen Ebene7 und Ebene8 zum Abfragen eingeführt.
|
||
‐ s(12)[2s]‐Bug von Matthias Wächter behoben (= Lang‐ſ‐Tastatur repariert).
|
||
Revision 744 (von Stefan Mayer)
|
||
‐ Ebene4‐Ziffernblock: auf neo_d nun Komma (wie Referenz), »NumPadKomma« gibt es nicht.
|
||
Revision 743 (von Matthias Wächter)
|
||
‐ Ebene4‐Ziffernblock: NumPadAdd und NumPadSub korrigiert.
|
||
Revision 740 (von Matthias Wächter) – »Mega‐Patch«
|
||
‐ Straffung der Syntax bei der Abfrage der Ebenen und der Behandlung der toten Tasten und der Compose.
|
||
‐ Umstellung auf Virtual‐Key‐Scancodes; umgeht den AHK‐Bug, dass Scancodemarken durch SendUnicodeChar angesprungen werden.
|
||
‐ Die Scancodes für das Numpad (jeweils für ein‐ und ausgeschaltetes NumLock) haben jetzt paarweise Sprungmarken, um die Tastenbehandlung untereinander konsistent zu halten.
|
||
‐ Wiederherstellung der Modifier‐Locks.
|
||
‐ Reparatur der Bildschirmtastatur in der All.ahk.
|
||
‐ Modifier werder seltener und nur noch innerhalb der Sprungmarken abgefragt.
|
||
‐ Blinde tote Tasten auf M4+F9 (Toggle).
|
||
‐ Blinde Compose auf M4+F10 (Toggle) (noch nicht implementiert).
|
||
Revision 728 (von Dennis Heidsiek):
|
||
‐ Ist die Datei »%APPDATA%\NEO2\NEO2.ini« vorhanden, werden dort eventuell vorhandene Werte für die Globalen Schalter beim Start übernommen.
|
||
‐ »LangSTastaturStandardmäßigEingeschaltet.ahk« wird nicht mehr unterstützt, weil sonst immer neu kompiliert werden muss.
|
||
Revision 707 (von Dennis Heidsiek):
|
||
‐ Die Resourcen‐Dateien (PNGs, ICOs) werden nun nach »%TEMP%\NEO2\« extrahiert und nicht mehr in das Verzeichnis, in dem sich die EXE befindet.
|
||
‐ Die doppelten französischen Anführungszeichen werden nun ebenfalls über SendUnicodeChar gesendet.
|
||
Revision 694 (von Martin Roppelt):
|
||
‐ Lang‐ſ‐Tastatur auf M4+F11.
|
||
‐ Entwickler können durch das Erstellen einer Datei »LangSTastaturStandardmäßigEingeschaltet.ahk« mit dem Inhalt »LangSTastatur := 1« diese standardmäßig aktivieren.
|
||
‐ Interne Darstellung der Ebenen (4 und 5 bei den toton Tasten wieder richtig getauscht.
|
||
Revision 687 (von Dennis Heidsiek):
|
||
‐ Die SendUnicodeChar‐Methode um den GDK‐Workarround von Matthias Wächter ergänzt.
|
||
‐ (An/Aus) Icons an das Favicon der neuen Homepage angepasst.
|
||
Revision 645 (von Martin Roppelt):
|
||
‐ Ellipse (…) zusätzlich auf M3+x.
|
||
‐ Lang‐ſ‐Tastatur probeweise auf M4+Esc.
|
||
Revision 640 (von Dennis Heidsiek):
|
||
‐ Der untote Zirkumflex (^) auf Ebene 3 funktioniert jetzt auch in Java‐Programmen.
|
||
Revision 639 (von Martin Roppelt):
|
||
‐ Lang‐ſ‐Tastatur kann nicht mehr durch einen Hotkey aktiviert werden.
|
||
Revision 629 (von Martin Roppelt):
|
||
‐ Spitze Klammern (bra und ket) auf M5+8/9.
|
||
Revision 624 (von Martin Roppelt):
|
||
‐ Lang‐ſ‐Tastatur (ein‐ und auszuschalten durch Mod4+ß) hinzugefügt: »s« wird zu »ſ«, »ß« wird zu »s« und »ſ« wird zu »ß«.
|
||
Revision 616 (von Dennis Heidsiek):
|
||
‐ Der nicht funktionierende Mod5‐Lock‐Fix wurde wieder entfernt, da er sogar neue Fehler produzierte.
|
||
Revision 615 (von Dennis Heidsiek):
|
||
‐ Erfolgloser Versuch, den Mod4‐Lock wiederherzustellen (durch eine Tilde vor den Scancodes der Bildschirmtastatur).
|
||
‐ Rechtschreibfehler korrigiert.
|
||
‐ Zwei AHK‐Links eingefügt.
|
||
Revision 609 (von Dennis Heidsiek):
|
||
‐ Vorläufiger Abschluss der AHK‐Modularisierung.
|
||
‐ Bessere Testmöglichkeit »All.ahk« für AHK‐Entwickler hinzugefügt, bei der sich die Zeilenangaben in Fehlermeldungen auf die tatsächlichen Module und nicht auf das große »vereinigte« Skript beziehen.
|
||
Revision 608 (von Martin Roppelt):
|
||
‐ Rechtschreibfehler korrigiert und Dateinamen aktualisiert und sortiert.
|
||
Revision 590 (von Dennis Heidsiek):
|
||
‐ Erste technische Vorarbeiten zur logischen Modularisierung des viel zu lange gewordenen AHK‐Quellcodes.
|
||
‐ Neue Batch‐Datei Build‐Update.bat zur einfachen Aktualisierung der EXE‐Datei.
|
||
Revision 583 (von Dennis Heidsiek):
|
||
‐ Kleinere Korrekturen ((5)(3), (5)(5) und (9)(3) stimmen wieder mit der Referenz überein).
|
||
Revision 580 (von Matthias Berg):
|
||
‐ Bildschirmtastatur jetzt mit Mod4+F* statt Strg+F*, dies deaktiviert jedoch leider den Mod4‐Lock.
|
||
Revision 570 (von Matthias Berg):
|
||
‐ Hotkeys für einHandNeo und lernModus durch entsprechende ScanCodes ersetzt.
|
||
Revision 568 (von Matthias Berg):
|
||
‐ Sonderzeichen, Umlaute, z und y durch ScanCodes ersetzt.
|
||
• jetzt wird auch bei eingestelltem US Layout Neo verwendet (z.B. für Chinesische InputMethodEditors).
|
||
• rechter Mod3 geht noch nicht bei US‐Layout (weder ScanCode noch »\«).
|
||
Revision 567 (von Dennis Heidsiek):
|
||
‐ Aktivierter Mod4‐Lock wird jetzt über die Rollen‐LED des Keybord angezeigt (analog zu CapsLock), die Num‐LED behält ihr bisheriges Verhalten.
|
||
‐ Neue Option im Skript: UseMod4Light.
|
||
Revision 561 (von Matthias Berg):
|
||
‐ M4+Tab verhält sich jetzt wie das andere Tab dank »goto neo_tab«.
|
||
Revision 560 (von Dennis Heidsiek):
|
||
‐ Neue Option im Skript: bildschirmTastaturEinbinden bindet die PNG‐Bilder der Bildschirmtastur mit in die exe‐Datei ein, so dass sich der Benutzer nur eine Datei herunterladen muss.
|
||
Revision 559 (von Matthias Berg):
|
||
‐ Shift+Alt+Tab Problem gelöst (muss noch mehr auf Nebeneffekte getestet werden).
|
||
Revision 558 (von Matthias Berg):
|
||
‐ Icon‐Bug behoben
|
||
• Hotkeys dürfen nicht vor der folgenden Zeile stehen: »menu, tray, icon, neo.ico,,1«
|
||
‐ lernModus‐Konfigurations‐Bug behoben: or statt and(not).
|
||
‐ Ein paar leere Else‐Fälle eingebaut (um die Verständlichkeit zu erhöhen und mögliche Compilerprobleme zu vermeiden).
|
||
Revision 556 (von Matthias Berg):
|
||
‐ lernModus (an/aus mit Strg+Komma)
|
||
• im Skript konfigurierbar.
|
||
• Schaltet z.B. Qwertz Tasten aus, die es auf der 4. Ebene gibt (Return, Backspace, …).
|
||
• Kann auch Backspace und/oder Entfernen der 4. Ebene ausschalten (gut zum Lernen, richtig zu schreiben).
|
||
‐ Bug aufgetaucht: Icons werden nicht mehr angezeigt.
|
||
Revision 544 (von Stefan Mayer):
|
||
‐ »,.:;« auf dem Mod4‐Ziffernblock an die aktuelle Referenz angepasst.
|
||
‐ Versionen von rho, theta, kappa und phi an die aktuelle Referenz angepasst.
|
||
Revision 542 (von Matthias Berg):
|
||
‐ Bei EinHandNeo ist jetzt Space+y auch Mod4.
|
||
‐ AltGr‐Bug hoffentlich wieder behoben. Diesmal mit extra altGrPressed Variable.
|
||
‐ nurEbenenFuenfUndSechs umbenannt in ahkTreiberKombi und auf Ebene 4 statt 5 und 6 geändert.
|
||
Revision 540 (von Matthias Berg):
|
||
‐ Stark überarbeitet um Wartbarkeit zu erhöhen und Redundanz zu verringern.
|
||
‐ nurEbenenFuenfUndSechs sollte nun auch auf Neo Treiber statt Qwertz laufen.
|
||
• aber es muss noch jemand testen.
|
||
• Problem: was kann man abfangen, wenn eine tote Taste gedrückt wird.
|
||
‐ einHandNeo:
|
||
• An‐/Ausschalten mit Strg+Punkt.
|
||
• Buchstaben der rechten Hand werden mit Space zur linken Hand.
|
||
• Nebeneffekt: es gibt beim Festhalten von Space keine wiederholten Leerzeichen mehr.
|
||
Revision 532 (von Matthias Berg):
|
||
‐ BildschirmTastatur
|
||
• aktiviert mit Strg+F1 bis 7, schaltet Keyboard ein oder aus.
|
||
• Strg+F7 zeigt die zuletzt angezeigte Ebene an (und wieder aus).
|
||
• Strg+F8 schaltet AlwaysOnTop um.
|
||
Revision 529 (von Stefan Mayer):
|
||
‐ Icon wird automatisch geladen, falls .ico‐Dateien im selbem Ordner.
|
||
‐ In der .exe sind die .ico mitgespeichert und werden automatisch geladen.
|
||
Revision 528 (von Matthias Berg):
|
||
‐ Neo‐Icon ersetzt das bisherige Autohotkey‐Standard‐Icon im Tray‐Bereich.
|
||
‐ Neo‐Prozess jetzt automatisch auf hoher Priorität (siehe globale Schalter).
|
||
‐ Mod3‐Lock (nur wenn rechtes Mod3 zuerst gedrückt wird, andere Lösung führte zum Caps‐Bug).
|
||
‐ Mod4‐Lock (nur wenn das linke Mod4 zuerst gedrückt wird, andere Lösung führte zum AltGr‐Bug).
|
||
‐ Ein paar falsche Zeichen korrigiert.
|
||
Revision 527 (von Matthias Berg):
|
||
‐ AltGr‐Problem hoffentlich behoben.
|
||
‐ Umschalt+Mod4‐Bug behoben.
|
||
Revision 526 (von Matthias Berg):
|
||
‐ Ebenen 1 bis 4 ausschalten per Umschalter siehe erste Codezeile nurEbenenFuenfUndSechs = 0.
|
||
‐ Mod4‐Lock durch Mod4+Mod4.
|
||
‐ EbenenAktualisierung neu geschrieben.
|
||
‐ Ebene 6 über Mod3+Mod4.
|
||
‐ Ebenen (besonders Matheebene) an Referenz angepasst (allerdings kaum um Ebenen 1&2 gekümmert, besonders Compose könnte noch überholt werden).
|
||
Revision 525 (von Matthias Berg):
|
||
‐ Capslock bei Zahlen und Sonderzeichen berücksichtigt.
|
||
Revision 524 (von Matthias Berg):
|
||
‐ umgekehrtes ^ für o, a, ü,i sowie für die großen vokale (3. Ton chinesisch).
|
||
• damit wird jetzt PinYin vollständig unterstützt: caron, macron, akut, grave auf uiaeoü.
|
||
‐ Sonderzeichen senden wieder blind ‐> Shortcuts funktionieren, Capslock ist leider Shiftlock.
|
||
Revision 523 (von Matthias Berg):
|
||
‐ CapsLock geht jetzt auch bei allen Zeichen (»send Zeichen« statt »send {blind} Zeichen«).
|
||
‐ vertikale Ellipse (⋮) eingebaut.
|
||
‐ Umschalt+Umschalt für Capslock statt Mod3+Mod3.
|
||
‐ bei Suspend wird jetzt wirklich togglesuspend aufgerufen (auch beim Aktivieren per shift+pause).
|
||
Revsion 490 (von Stefan Mayer):
|
||
‐ SUBSCRIPT von 0 bis 9 sowie (auf Ziffernblock) + und ‐
|
||
• auch bei Ziffernblock auf der 5. Ebene
|
||
‐ Kein Parsen über die Zwischenablage mehr.
|
||
‐ Vista‐kompatibel.
|
||
‐ Compose‐Taste
|
||
• Brüche (auf Zahlenreihe und Hardware‐Ziffernblock).
|
||
• römische Zahlen.
|
||
• Ligaturen und Copyright.
|