0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

NumLockを生かしたままNumLock誤タイプ対策 (AutoHotKey使用)

0
Posted at

目的

今使ってるキーボードのBackSpaceとNumLockキーが近いのでNumLockキーの誤タイプが頻発してしまい、おまけにキーボードにNumLockのランプも無い。だもんで気付かぬうちにNumLock切り替えてしまい、いざテンキーで数字打とうとしたときにカーソル移動したりInsertキー誤爆したりしてイラっとする、ので対策したい。
Power ToysのKeyboard ManagerとかでNumLockキーを完全に別のものに置き換えてしまう手もあるけど、完全に機能を殺してしまうこともしたくない。
そのへんをどうにかしたくてAutoHotKey v2でスクリプトを書いたので備忘録としてメモ。
(CapsLockキーとかにも応用は効くはず)

要件

  • NumLockキーを短く押した時は":"を入力(時刻をよく入力するので)
  • NumLockキー長押しでNumLockオンオフ切り替え
  • NumLockオンオフ切り替え時には、切り替え結果をトースト通知

前提

  • Windows11
  • AutoHotKey v2を使用

スクリプト

#Requires AutoHotkey v2.0
#SingleInstance Force

NumLock::
{
    t := A_TickCount  ; 押した時刻を記録
    ; キーが離されるまで待つ
    KeyWait "NumLock"
    ; 押していた時間を計算
    duration := A_TickCount - t
    if (duration < 300) {
        ; 300ms 未満 → 短押しとして ":" を送信
        Send ":"
    } else {
        ; 300ms 以上 → 長押しとして NumLock を送信(KeyState反転)
        NumLKSt := not GetKeyState("NumLock", "T")
        SetNumLockState NumLKSt
        ; 切り替え結果をトースト通知(ToolTipでは気付きにくいので)
        if NumLKSt{
            TrayTip()
            TrayTip("NumLock ON")
        } else {
            TrayTip()
            TrayTip("NumLock OFF")
        }
    }
}

感想

これですっきりした。AutoHotKeyは今回初めて使ったけど便利ですね。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?