From c5acf91f2bf11c143d56bffe71f5cb1234bde1bc Mon Sep 17 00:00:00 2001 From: martin_r Date: Tue, 8 Jul 2008 17:02:22 +0000 Subject: Rechtschreibfehler korrigiert, Syntaxen korrigiert, Lang-s-Tastatur-Option hinzugefügt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.neo-layout.org@624 b9310e46-f624-0410-8ea1-cfbb3a30dc96 --- windows/autohotkey/Source/All.ahk | 26 +++--- windows/autohotkey/Source/Changelog-and-Todo.ahk | 19 ++-- windows/autohotkey/Source/Global-Part.ahk | 11 +-- windows/autohotkey/Source/Keys-Neo.ahk | 109 ++++++++++++++++------- windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk | 2 +- windows/autohotkey/Source/Methods-Layers.ahk | 16 ++-- windows/autohotkey/Source/Methods-Other.ahk | 8 +- 7 files changed, 114 insertions(+), 77 deletions(-) (limited to 'windows/autohotkey/Source') diff --git a/windows/autohotkey/Source/All.ahk b/windows/autohotkey/Source/All.ahk index 2ba1f2e..86681fd 100644 --- a/windows/autohotkey/Source/All.ahk +++ b/windows/autohotkey/Source/All.ahk @@ -6,24 +6,18 @@ Siehe auch: http://www.autohotkey.com/docs/commands/_Include.htm - - - ToDo: - if(exist(compose.ahk)) then (include(compose.ahk)) einbauen - + ------------------------------------------------------ */ -#Include Warning.ahk -#Include Changelog-and-Todo.ahk -#Include Global-Part.ahk -#Include Methods-Layers.ahk -#Include Keys-Qwert-to-Neo.ahk -#Include Keys-Neo.ahk -#Include Methods-Lights.ahk -#Include Methods-Other.ahk - - - +#Include %a_scriptdir%\Warning.ahk +#Include %a_scriptdir%\Changelog-and-Todo.ahk +#Include %a_scriptdir%\Global-Part.ahk +#Include %a_scriptdir%\Methods-Layers.ahk +#Include %a_scriptdir%\Keys-Qwert-to-Neo.ahk +#Include %a_scriptdir%\Keys-Neo.ahk +#Include %a_scriptdir%\Methods-Lights.ahk +#Include %a_scriptdir%\Methods-Other.ahk +;#Include %a_scriptdir%\..\Compose\Compose-all-in-one.ahk diff --git a/windows/autohotkey/Source/Changelog-and-Todo.ahk b/windows/autohotkey/Source/Changelog-and-Todo.ahk index 485f408..1d874d6 100644 --- a/windows/autohotkey/Source/Changelog-and-Todo.ahk +++ b/windows/autohotkey/Source/Changelog-and-Todo.ahk @@ -1,7 +1,7 @@ /* Titel: NEO 2.0 beta Autohotkey-Treiber - $Revision: 583 $ - $Date: 2008-06-28 02:23:42 +0200 (Sa, 28 Jun 2008) $ + $Revision: 624 $ + $Date: 2008-07-08 18:50:00 +0200 (Di, 07 Jul 2008) $ Autor: Stefan Mayer Basiert auf: neo20-all-in-one.ahk vom 29.06.2007 @@ -10,29 +10,28 @@ nicht mehr abgefangen werden müssen. - Testen ob die Capslocklösung (siehe *1:: ebene 1) auch für Numpad gebraucht wird - Sind Ebenen vom Touchpad noch richtig? - - Die Bildschirmtastatur mit Mod4 deaktiviert den Mod4-Lock + - Die Bildschirmtastatur mit Mod4 deaktiviert den Mod4-Lock Ideen: - Symbol ändern (Neo-Logo abwarten) - bei Ebene 4 rechte Hand (Numpad) z.B. Numpad5 statt 5 senden - CHANGEHISTORY: - - + CHANGEHISTORY: - Revision: 616 + Revision 624(von Martin Roppelt): + - Lang-s-Tastatur (ein- und auszuschalten durch Mod4+ß) Revision 616 (von Dennis Heidsiek): - - Der nicht funktionierender Mod5-Lock-Fix wurde wieder entfernt, da + - 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 von den Scancodes der Bildschirmtastatur). + (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 grosse »vereinigte« Skript beziehen. + 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): diff --git a/windows/autohotkey/Source/Global-Part.ahk b/windows/autohotkey/Source/Global-Part.ahk index ccf5c2f..10bdf92 100644 --- a/windows/autohotkey/Source/Global-Part.ahk +++ b/windows/autohotkey/Source/Global-Part.ahk @@ -5,11 +5,12 @@ */ ; Im folgenden gilt (soweit nicht anders angegeben) Ja = 1, Nein = 0: -ahkTreiberKombi := 0 ; Sollen Ebenen 1-4 ignoriert werden? (kann z.B. vom dll Treiber übernommen werden) -einHandNeo := 0 ; Soll der Treiber im Einhandmodus betrieben werden? -lernModus := 0 ; Soll der Lernmodus aktiviert werden? -bildschirmTastaturEinbinden := 1 ; Sollen die Bilder für die Bildschirmtastatur in die EXE-Datei miteingebunden werden (Nachteil: grössere Dateigrösse, Vorteil: Referenz für Anfanger stets einfach verfügbar) -UseMod4Light := 1 ; Aktivierter Mod4 Lock wird über die Rollen-LED des Keybord angezeigt (analog zu CapsLock) +ahkTreiberKombi := 0 ; Sollen Ebenen 1-4 ignoriert werden? (kann z.B. vom dll Treiber übernommen werden) +einHandNeo := 0 ; Soll der Treiber im Einhandmodus betrieben werden? +lernModus := 0 ; Soll der Lernmodus aktiviert werden? +bildschirmTastaturEinbinden := 1 ; Sollen die Bilder für die Bildschirmtastatur in die EXE-Datei miteingebunden werden (Nachteil: grössere Dateigrösse, Vorteil: Referenz für Anfänger stets einfach verfügbar) +UseMod4Light := 1 ; Aktivierter Mod4 Lock wird über die Rollen-LED des Keybord angezeigt (analog zu CapsLock) +LangSTastatur := 0 ; Sollen Lang-s auf s, s auf ß und ß auf M3+ß gelegt werden? Process, Priority,, High diff --git a/windows/autohotkey/Source/Keys-Neo.ahk b/windows/autohotkey/Source/Keys-Neo.ahk index 5c269ad..2de91a6 100644 --- a/windows/autohotkey/Source/Keys-Neo.ahk +++ b/windows/autohotkey/Source/Keys-Neo.ahk @@ -6,7 +6,7 @@ Die eigentliche NEO-Belegung und der Hauptteil des AHK-Treibers. 1. Ebene Aktualisieren 2. Abhängig von der Variablen "Ebene" Zeichen ausgeben und die Variable "PriorDeadKey" setzen - Ablauf bei "lebenden" (sagt man das?) Tasten: + Ablauf bei "untoten" Tasten: 1. Ebene Aktualisieren 2. Abhängig von den Variablen "Ebene" und "PriorDeadKey" Zeichen ausgeben 3. "PriorDeadKey" mit leerem String überschreiben @@ -26,27 +26,27 @@ neo_tot1: } else if Ebene = 2 { - SendUnicodeChar(0x02C7) ; caron, tot + SendUnicodeChar(0x02C7) ; caron, tot PriorDeadKey := "c2" } else if Ebene = 3 { - SendUnicodeChar(0x02D8) ; brevis + SendUnicodeChar(0x02D8) ; brevis PriorDeadKey := "c3" } else if Ebene = 4 { - SendUnicodeChar(0x00B7) ; Mittenpunkt, tot + SendUnicodeChar(0x00B7) ; Mittenpunkt, tot PriorDeadKey := "c5" } else if Ebene = 5 { - send - ; querstrich, tot + send - ; querstrich, tot PriorDeadKey := "c4" } else if Ebene = 6 { - Send . ; punkt darunter (colon) + Send . ; punkt darunter (colon) PriorDeadKey := "c6" } return @@ -1165,13 +1165,13 @@ neo_f: BSSendUnicodeChar(0x2259) ; entspricht else if (PriorDeadKey = "t1") ; tilde BSSendUnicodeChar(0x2245) ; ungefähr gleich - else if (PriorDeadKey = "t5") ; Schrägstrich + else if (PriorDeadKey = "t5") ; Schrägstrich BSSendUnicodeChar(0x2260) ; ungleich - else if (PriorDeadKey = "c4") ; Querstrich + else if (PriorDeadKey = "c4") ; Querstrich BSSendUnicodeChar(0x2261) ; identisch - else if (PriorDeadKey = "c2") ; caron + else if (PriorDeadKey = "c2") ; caron BSSendUnicodeChar(0x225A) ; EQUIANGULAR TO - else if (PriorDeadKey = "a6") ; ring drüber + else if (PriorDeadKey = "a6") ; ring drüber BSSendUnicodeChar(0x2257) ; ring equal to else send `= @@ -1210,7 +1210,7 @@ neo_q: Send {+} } else if Ebene = 5 - SendUnicodeChar(0x03D5) ; phi symbol (varphi) + SendUnicodeChar(0x03D5) ; phi symbol (varphi) else if Ebene = 6 SendUnicodeChar(0x211A) ; Q (rationale Zahlen) PriorDeadKey := "" CompKey := "" @@ -1221,29 +1221,50 @@ neo_sz: if Ebene = 1 if GetKeyState("CapsLock","T") { - SendUnicodeChar(0x1E9E) ; versal-ß + SendUnicodeChar(0x1E9E) ; verssal-ß } else { - send ß - } + if (LangSTastatur = 1) + { + sendinput {blind}s + } + else + { + send ß + } + } else if Ebene = 2 if GetKeyState("CapsLock","T") { - send ß + if (LangSTastatur = 1) + { + sendinput {blind}s + } + else + { + send ß + } } else { SendUnicodeChar(0x1E9E) ; versal-ß } else if Ebene = 3 - SendUnicodeChar(0x017F) ; langes s + { + if (LangSTastatur = 1) + send ß + else + SendUnicodeChar(0x017F) ; langes s + } else if Ebene = 4 - {} ; leer + { + LangSTastatur := not(LangSTastatur) ; schaltet die Lang-s-Tastatur ein und aus + } else if Ebene = 5 SendUnicodeChar(0x03C2) ; varsigma else if Ebene = 6 - SendUnicodeChar(0x2218) ; Verknüpfungsoperator + SendUnicodeChar(0x2218) ; Verknüpfungsoperator PriorDeadKey := "" CompKey := "" return @@ -1692,20 +1713,30 @@ neo_s: EbeneAktualisieren() if Ebene = 1 { - if (PriorDeadKey = "c1") ; circumflex + if (PriorDeadKey = "c1") ; circumflex BSSendUnicodeChar(0x015D) - else if (PriorDeadKey = "a1") ; akut + else if (PriorDeadKey = "a1") ; akut BSSendUnicodeChar(0x015B) - else if (PriorDeadKey = "c2") ; caron + else if (PriorDeadKey = "c2") ; caron BSSendUnicodeChar(0x0161) - else if (PriorDeadKey = "a3") ; cedilla + else if (PriorDeadKey = "a3") ; cedilla BSSendUnicodeChar(0x015F) - else if (PriorDeadKey = "a5") ; punkt darüber + else if (PriorDeadKey = "a5") ; punkt darüber BSSendUnicodeChar(0x1E61) else if (PriorDeadKey = "c6") ; punkt darunter BSSendUnicodeChar(0x1E63) - else - sendinput {blind}s + else + { + if (LangSTastatur = 1) + { + if GetKeyState("CapsLock","T") + sendinput {blind}s + else + SendUnicodeChar(0x017F) ; langes s + } + else + sendinput {blind}s + } if (PriorDeadKey = "comp") CompKey := "s_small" else @@ -1713,20 +1744,25 @@ neo_s: } else if Ebene = 2 { - if (PriorDeadKey = "c1") ; circumflex + if (PriorDeadKey = "c1") ; circumflex BSSendUnicodeChar(0x015C) - else if (PriorDeadKey = "c2") ; caron + else if (PriorDeadKey = "c2") ; caron BSSendUnicodeChar(0x0160) - else if (PriorDeadKey = "a1") ; akut + else if (PriorDeadKey = "a1") ; akut BSSendUnicodeChar(0x015A) - else if (PriorDeadKey = "a3") ; cedilla + else if (PriorDeadKey = "a3") ; cedilla BSSendUnicodeChar(0x015E) - else if (PriorDeadKey = "a5") ; punkt darüber + else if (PriorDeadKey = "a5") ; punkt darüber BSSendUnicodeChar(0x1E60) else if (PriorDeadKey = "c6") ; punkt darunter BSSendUnicodeChar(0x1E62) else - sendinput {blind}S + { + if GetKeyState("CapsLock","T") && (LangSTastatur = 1) + SendUnicodeChar(0x017F) + else + sendinput {blind}S + } if (PriorDeadKey = "comp") CompKey := "s_capital" else @@ -2283,7 +2319,8 @@ neo_komma: } } - else { + else + { send {blind}, } } @@ -3305,11 +3342,15 @@ neo_tab: } */ } - else if (IsMod3Pressed()) { ;# + else if (IsMod3Pressed()) ;# + { PriorDeadKey := "comp" CompKey := "" + ;#include *i %a_include%\Compose.ahk + ;#include *i %a_include%\Source\Compose.ahk } - else { + else + { send {blind}{Tab} PriorDeadKey := "" CompKey := "" diff --git a/windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk b/windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk index facfa50..2f3490a 100644 --- a/windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk +++ b/windows/autohotkey/Source/Keys-Qwert-to-Neo.ahk @@ -62,7 +62,7 @@ return { goto neo_sz } -*SC00D::goto neo_tot2 ; Akkut +*SC00D::goto neo_tot2 ; Akut ; Reihe 2 *Tab::goto neo_tab *q:: diff --git a/windows/autohotkey/Source/Methods-Layers.ahk b/windows/autohotkey/Source/Methods-Layers.ahk index b88724b..e2d4bb7 100644 --- a/windows/autohotkey/Source/Methods-Layers.ahk +++ b/windows/autohotkey/Source/Methods-Layers.ahk @@ -39,22 +39,24 @@ IsMod4Locked := 0 < & *SC138:: if (IsMod4Locked) { -; MsgBox Mod4-Feststellung aufgebehoben + MsgBox Mod4-Feststellung aufgebehoben IsMod4Locked = 0 - if (UseMod4Light==1) { + if (UseMod4Light==1) + { KeyboardLED(1,"off") } } else { -; MsgBox Mod4 festgestellt: Um Mod4 wieder zu lösen drücke beide Mod4 Tasten gleichzeitig + MsgBox Mod4 festgestellt: Um Mod4 wieder zu lösen drücke beide Mod4 Tasten gleichzeitig IsMod4Locked = 1 - if (UseMod4Light==1) { + if (UseMod4Light==1) + { KeyboardLED(1,"on") } - } return + *SC138:: altGrPressed := 1 return ; Damit AltGr nicht extra etwas schickt und als stiller Modifier geht. @@ -62,7 +64,7 @@ return ; Damit AltGr nicht extra etwas schickt und als stiller Modifier geht. altGrPressed := 0 return -/* ; das folgende wird seltsamerweise nicht gebraucht :) oder führt zum AltGr Bug; Umschalt+‹ (Mod4) Zeigt ‹ +; das folgende wird seltsamerweise nicht gebraucht :) oder führt zum AltGr Bug; Umschalt+‹ (Mod4) Zeigt ‹ SC138 & *<:: if (IsMod4Locked) { @@ -75,7 +77,7 @@ SC138 & *<:: IsMod4Locked = 1 } return -*/ + ; Mod3-Lock durch Mod3+Mod3 IsMod3Locked := 0 diff --git a/windows/autohotkey/Source/Methods-Other.ahk b/windows/autohotkey/Source/Methods-Other.ahk index b3da1a6..16967d1 100644 --- a/windows/autohotkey/Source/Methods-Other.ahk +++ b/windows/autohotkey/Source/Methods-Other.ahk @@ -7,7 +7,7 @@ /* Ebenen laut Referenz: 1. Ebene (kein Mod) 4. Ebene (Mod4) -2. Ebene (Umschalt) 5. Ebene (Mod3+Umschalt) +2. Ebene (Umschalt) 5. Ebene (Umschalt+Mod3) 3. Ebene (Mod3) 6. Ebene (Mod3+Mod4) */ @@ -32,7 +32,7 @@ EbeneAktualisieren() if ( IsMod3Pressed() ) { ; Umschalt UND Mod3 if ( IsMod4Pressed() ) - { ; Umschald UND Mod3 UND Mod4 + { ; Umschalt UND Mod3 UND Mod4 ; Ebene 8 impliziert Ebene 6 Ebene = 6 } @@ -44,12 +44,12 @@ EbeneAktualisieren() else { ; Umschalt NICHT Mod3 if ( IsMod4Pressed() ) - { ; Umschald UND Mod4 NICHT Mod3 + { ; Umschalt UND Mod4 NICHT Mod3 ; Ebene 7 impliziert Ebene 4 Ebene = 4 } else - { ; Umschald NICHT Mod3 NICHT Mod4 + { ; Umschalt NICHT Mod3 NICHT Mod4 Ebene = 2 } } -- cgit v1.2.3