Wie kann ich diese Schlüssel neu zuordnen?

469
Torben Gundtofte-Bruun

Ich ordne das Qwerty-Layout mithilfe von AHK erneut zu Dvorak zu, da ich keine benutzerdefinierten Tastaturlayouts auf diesem Computer installieren kann. Die meisten meiner Remappings folgen einfach einem einfachen Muster, und das funktioniert gut:

:*:n::b ; remap "n" to "b". This automagically also works for "N"-->"B". :*:,::w ; remap comma to lowercase "w". :*:;::W ; uppercase comma must be specifically coded. 

Problem: Das dänische Layout enthält drei Sonderzeichen, die keine Neuzuordnung auslösen. Das Problem ist (wahrscheinlich?) Für alle drei Tasten gleich, also schauen wir uns nur einen von ihnen an, den "A-Ring" in der obersten Reihe.

Wie kann ich diese Schlüssel neu zuordnen?

Ich habe mehrere Triggervarianten ausprobiert, aber das Problem scheint zu sein, dass AHK in einigen Fällen den Trigger ignoriert und nur den physischen Schlüssel ausgibt. Das gesamte Remapping-Skript scheint danach unterbrochen zu werden, funktioniert aber nach dem Suspendieren und Fortsetzen des Skripts wieder. Es gibt keine Warnungen oder Fehler, und andere Skripts funktionieren weiterhin.
(Natürlich probiere ich jeweils nur eine davon aus, aber hier werden sie alle gezeigt, nicht auskommentiert.)

:*:å::< ;-- erroneously still produces "å". :*:Å::> ;-- erroneously still produces "Å". :*C:å::< ;-- erroneously still produces "å". :*C:Å::> ;-- erroneously still produces "Å". 

oder es wird an der Triggerdefinition im Skript verstoßen:

å::send < ;-- Ã¥ invalid hotkey. Å::send > ;-- Ã… invalid hotkey. ::send < ;-- ASC 0229} invalid hotkey. ::send > ;-- ASC 0197} invalid hotkey. 

Wie soll der Auslöser formuliert werden, um diese Schlüssel zu erfassen?

0
Wenn jemand interessiert ist, hier mein Code: http://paste.ubuntu.com/7404307/ Torben Gundtofte-Bruun vor 9 Jahren 0

2 Antworten auf die Frage

1
Torben Gundtofte-Bruun

AHK verfügt über eine KeyHistory- Funktion, die den Scan-Code jedes physischen Schlüssels anzeigen kann. Damit habe ich festgestellt, dass die "a-ring" -Taste SC01Adie in AHK referenziert werden kann:

SC01A::< ; the "a-ring" key should produce a "<" character. 

Großbuchstaben werden automatisch gehandhabt, das ist also wirklich alles!

Beachten Sie, dass AHK-Scan-Codes sich stark von dem unterscheiden können, was Sie sehen würden, wenn Sie bei Google Images nach Tastatur-Scan-Code-Diagrammen suchen.

0
Twisted Code

Der im KeyHistory-Fenster eines Skripts bereitgestellte Scan-Code und virtuelle Schlüsselcode kann als Ersatz für den Namen eines normalen Schlüssels in Hotkeys, Neuzuordnungen und ich denke, dass ich auch Send-Befehle finde. Um das KeyHistory-Fenster zu öffnen, können Sie entweder den Befehl Key History verwenden (mit der hinzugefügten Funktion, dass Sie die Anzahl der Keys ändern können, die der Key History speichert, indem Sie nach dem Befehl eine Zahl von bis zu 500 eingeben) oder klicken Sie mit der rechten Maustaste auf das Das Benachrichtigungs-Taskleistensymbol des Skripts und klicken Sie auf den Verlauf. Sie können es auch anzeigen, indem Sie im Hintergrundfenster eines Skripts auf das Ansichtsmenü klicken. Beachten Sie, dass der Tastaturhaken MUSS, damit im Key History alles aufgezeichnet werden kann, außer bei Ereignissen, die vom Skript selbst ausgelöst werdenim Skript installiert sein. Was ich für Mystery Keys mache, ist einfach ein Skript auszuführen, das nur den Tastaturhaken installiert hat, und dann die Taste drücken, für die ich den Code finden muss. Eigentlich hat meine Tastatur keine Geheimtasten, aber ich kann keine Hotkeys für Dinge wie das Semikolon machen.

Bearbeiten (extrem späte Antwort auf den ersten Kommentar): Entschuldigung für die späte Antwort. Sie müssen eine Direktive #InstallKeybdHook verwenden, um sie zu installieren

Danke - können Sie bitte erläutern, was es bedeutet, dass der Tastaturhaken installiert werden muss? "Ist das ein bestimmter Befehl, den ich zum Skript hinzufügen könnte? Torben Gundtofte-Bruun vor 9 Jahren 0