LoginSignup
2
3

More than 5 years have passed since last update.

GPD WINでFnキーを固定キー化するAutoHotkeyスクリプト

Last updated at Posted at 2016-12-14

はじめに

GPD WINという神機があります。
このデバイスを使うには固定キー機能を使うのが便利なのですが、固定キー機能には唯一欠点があってFnキーに対応していません。
つまりF1を押す場合は依然としてあの小さいキーボードでFn1を同時押ししなければならないのです。
F6~F12あたりのキーボードの右側の方のキーならば両手で押せるのですが、F1~F4あたりになるとGPD WINを落としそうになります。

なので、AutoHotkeyを使用してFnキーのちょうど反対側についてる使用用途のよくわからないキーアプリケーションキーをFn代わりにしてしまいましょう!ついでに固定キー機能もつけてしまいましょう!更についでに半角/全角キーの代わりも適当につけてしまいましょう!

機能

  • アプリケーションキーと1~0,-,=キーを同時に押すと、F1~F12が押されたことになります。
  • アプリケーションキーを単独で1回押すとFnキーが固定化されます。この状態で1~0,-,=キーを押すと、F1~F12が押されたことになります。
    • アプリケーションキーが固定中は、画面左上にツールチップで"Fn"と表示されます。
    • アプリケーションキーを固定中にEscキーを押すと固定化が解除されます。
  • アプリケーションキー単独を素早く2度押しすると、アプリケーションキーが押されたことになります。
  • アプリケーションキーとスペースキーを押すと、半角/全角キーが押されたことになります。

スクリプト

CoordMode, ToolTip, SCREEN

DOUBLE_TAP_INTERVAL := 200


fnlock := 0

; AppキーをFnキー代わりにする
APPSKEY::
    if(0 <= A_TimeSincePriorHotkey && A_TimeSincePriorHotkey < DOUBLE_TAP_INTERVAL)
    {
        GoSub, FnLockOff
        Send, {APPSKEY}
    }
    else
    {
        GoSub, FnLockOn
        KeyWait, APPSKEY
    }
Return

FnLockOn:
    fnlock := 1
    ToolTip, Fn, 0, 0
;   SoundBeep
Return
FnLockOff:
    fnlock := 0
    ToolTip
;   SoundBeep
Return

#If fnlock
ESC::GoSub, FnLockOff
1::
    Send, {F1}
    GoSub, FnLockOff
Return
2::
    Send, {F2}
    GoSub, FnLockOff
Return
3::
    Send, {F3}
    GoSub, FnLockOff
Return
4::
    Send, {F4}
    GoSub, FnLockOff
Return
5::
    Send, {F5}
    GoSub, FnLockOff
Return
6::
    Send, {F6}
    GoSub, FnLockOff
Return
7::
    Send, {F7}
    GoSub, FnLockOff
Return
8::
    Send, {F8}
    GoSub, FnLockOff
Return
9::
    Send, {F9}
    GoSub, FnLockOff
Return
0::
    Send, {F10}
    GoSub, FnLockOff
Return
-::
    Send, {F11}
    GoSub, FnLockOff
Return
=::
    Send, {F12}
    GoSub, FnLockOff
Return

; ついでにApp+Spaceで半角/全角
SPACE::
    Send, {vkF3sc029}
    GoSub, FnLockOff
Return

#If

おわりに

本当はキーボードについてるFnキーがAutoHotkeyで拾えれば一番いいのですが、Fnキーについては拾えるキーボードと拾えないキーボードがあり、残念ながらGPD WINのは拾えませんでした。拾う方法があれば教えてください。

GPD WINとAutoHotkeyの親和性はかなり高く、今回紹介したようなスクリプトの他にも、パッドをポインティングデバイスにするスクリプト、BluetoothテザリングをON/OFFするスクリプト、画面輝度を変更するスクリプトなんかも作れるので、必須ソフトウェアと言っても過言ではありません。

それでは皆様も良いGPD WINライフを!

2
3
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
2
3