Wie kann ich die NumLock-Lampe erneut verwenden, um sie anzuzeigen, wenn der Kana-Modifikator aktiv ist?

629
Ryan Hilbert

Ich bin zu der Erkenntnis gekommen, dass der NumLockSchlüssel nutzlos ist. Soweit ich das beurteilen kann, ist der einzige Grund für das Bestehen, dass ich jedes Mal, wenn ich ihn versehentlich ausschalte, einige Sekunden der Frustration verursacht.

Bei meinem Kreuzzug gegen diesen bösartigen Schlüssel habe ich ihn beim Start automatisch aktiviert und ihn mit KbdEdit dem Kana Modifier-Key neu zugeordnet, der anscheinend ein obskurer Modifikator ist, ähnlich Ctrloder Shift, außer dass er ein- CapsLockoder ausgeschaltet werden kann wie oder NumLock. Das ist großartig und hat mir erlaubt, einige nützliche neue Funktionen zu meiner Tastatur hinzuzufügen, aber jetzt NumLockleuchtet das Licht permanent, was meinen Dauerstatus überflüssig signalisiert NumLock.

Als letzten Schritt in diesem Kampf um die Zweckmäßigkeit möchte ich dieses Licht erneut verwenden, um zu zeigen, ob der KanaModifikator derzeit aktiv ist oder nicht . Wie kann ich das machen?

In der Reihenfolge ihrer Bedeutung eine ideale Lösung:

  1. Funktioniert konsequent
  2. Verwendet minimale externe Software
  3. Funktioniert auf mehreren Windows-Versionen
3

2 Antworten auf die Frage

3
FrozenFlower

Dank des Links aus der obigen Antwort und der Tatsache, dass ich ein AutoHotKey-Benutzer bin. Ich könnte ein reines AutoHotkey-Skript für die geforderte Funktionalität bereitstellen.

Was die Kana-Taste bewirkt, ändert sich der Input von Kana in Romanji und umgekehrt. Ich habe es getestet und dieses Verhalten erhalten.

Dank der bereits ausgeführten LED-Implementierung von: https://autohotkey.com/board/topic/9587-keyboard-led-control-capslocknumlockscrolllock-lights/ macht das alles ganz einfach. (Vielen Dank, Ross Presser, dass Sie sich wertvolle Zeit genommen haben, um ihn zu verlinken.) Wenn Sie den Code als selbstverständlich betrachten und bereits importieren ... In AutoHotKey würde es wie folgt verwendet werden:

 Kana_Romanji := false ; Now making a hotkey for Kana Modifier Key (0x15 / VK_Kana, in AHK = vk15) vk15::  if Kana_Romanji ; swap the off and switch to swap the LED state for it. Currently: Romanji when it is on, Kana when it is off. KeyboardLED(2, "off")  else KeyboardLED(2, "switch")  Kana_Romanji := not Kana_Romanji return 

Ein reines AutoHotKey-Skript für dieselbe Funktionalität wäre:

 Kana_Romanji := false ; Now making a hotkey for NumLock NumLock:: ; Change this to "VK15::" if your layout is using the key and delete the send or comment this and uncomment the below one. Send ; Actual Kana_Modifier key as given from MSDN sleep 10 ; Needs some delay because without delay Windows picks up the actual NumLock state and turns the light off. At least it did when I tried without it. if Kana_Romanji ; swap the off and switch to swap the LED state for it. Currently: Romanji when it is on, Kana when it is off. KeyboardLED(2, "off")  else KeyboardLED(2, "switch")  Kana_Romanji := not Kana_Romanji return 

Ein fertiges Skript, das für Sie funktionieren sollte: https://pastebin.com/c3dcD8Gs (Lesen / Überprüfen Sie es, speichern Sie es als .ahk und öffnen Sie es mit AutoHotKey.)

PS: Ich bin auch ein NumLock-Hasser. Nur halte ich es immer aus und verwende es niemals, um die Zahlen einzugeben. Es wurde in der veralteten Vanilla-Version von AutoHotKey (Version 1.0.48.05) getestet, sollte jedoch auch auf den neueren Versionen funktionieren.

Ich hoffe es ist was du brauchst. Viel Glück.

Ich musste das `vk15 ::` - Mapping in `$ vk15 :: send ` ändern, um zu verhindern, dass die normale Funktion der Taste unterdrückt wird, aber es scheint auch, dass die Funktion KeyboardLED () für mich einfach keine Wirkung hat ; Ich habe ein bisschen mit dem Skript herumgespielt (mit Version 1.0.48.05), um sicherzustellen, dass es tatsächlich aufgerufen wird. Wie auch immer, ich schätze die Mühe wirklich und werde später auf jeden Fall einen weiteren Blick darauf werfen, ob ich herausfinden kann, was schief läuft! Ryan Hilbert vor 6 Jahren 0
1
Ross Presser

Ich denke, Sie müssen sich auf andere Software verlassen. Zum Beispiel kann AutoHotkey die Beleuchtung getrennt von den tatsächlichen Funktionen steuern . Da der Kana-Modifikator jedoch in der AutoHotkey-Welt wenig bekannt ist, müssen Sie Ihr eigenes Skript schreiben, damit das Licht diesen Status widerspiegelt.

Ich weiß, dass dies für eine Antwort hier nicht wirklich reicht, aber für einen Kommentar schien es zu lang. Ross Presser vor 6 Jahren 0
Es ist möglicherweise ein guter Ausgangspunkt. Sie können dies sicherlich zu einer vollwertigen Antwort ausdehnen! Ryan Hilbert vor 6 Jahren 0