前回、AutoHotkeyを使って、Apple Keyboard(有線)のかな英数キーに変換、無変換を割り当てました。

前回の記事はこちら↓

今回は、未使用キーにスクショを割り当ててみました。

スクショは割と多用しますが、Apple KeyboardにはWindowsキーボードにあるプリントスクリーンキーはありませんし、当然、Macで使うプリントスクリーンのショートカットも使えません(WindowsでMacのキーボードを使っているだけなので当然ですが)。

ノートPCにApple Keyboardをさして使っていますが、スクショのたびにノートPCを開くのはダルいので、今回の割り当てを思いつきました。

未使用キーとしては、F13とF14です。

F13には全体のスクショ(通常のプリントスクリーン)

F14にはアクティブウィンドのスクショ(Alt + プリントスクリーン)

を割り当てます。

環境

Windows10 Pro バージョン1809 64bit

AutoHotkey_1.1.30.03(AutoHotkeyU64.exe)

Apple_keyboard_wired.ahk

結果から。

以下のプログラムを書き込めば、動作します(^^)

前回記事を適用されている方は、この内容に上書きすれば、かな英数とスクショが動作します。

AutoHotkeyの導入などは前回の記事を参考にしてください(^^)

;2019/08/31
;2019/12/09 updated

#InstallKeybdHook

;Apple_keyboard_wired
#USEHOOK

;Macの英数キーをWindowsの無変換キーに割り当てる
sc071 Up::Send,{vk1D}

;MacのかなキーをWindowsの変換キーに割り当てる
sc072 Up::Send,{vk1C}

;MacのF13キーをWindowsのプリントスクリーンキーに割り当てる
sc064 Up::Send,{PrintScreen}

;MacのF14キーをWindowsのプリントスクリーンキーとAltの同時押しに割り当てる(複数キー)
;アクティブウィンドのスクショ
*sc065 Up::
SetKeyDelay -1
Send {Blind}{ALt Down}
Send {Blind}{PrintScreen}
Send {Blind}{ALt Up}
return

#USEHOOK off


;sc071 : macの英数キー
;sc072 : macのかなキー
;vk1D Windowsの無変換キー
;vk1C 変換キー
;sc064 : macのF13キー
;sc065 : macのF14キー
; ";"はコメントです。

Apple_keyboard_wired.ahkの中身

動作についてはプログラム中にコメントを書き入れましたのでそちらを参考にしてください。

スクショについても、やっていることはかな英数変換と同じです。

「F13キーが押されたら、プリントスクリーン動作として扱いなさい」と記述してあります。

プリントスクリーンのキーはそのまんまで「PrintScreen」です。

厄介だったのは、アクティブウィンドのスクショ(Alt+プリントスクリーン)です。

F13にスクショを割り当てることができたので、AltとF13を同時に押せばアクティブウィンドのスクショが撮れると思ったのですが、できませんでした。

そこで、F14をアクティブウィンドのスクショとすることとしました(F14だけでよし。Alt不要)

アクティブウィンドのスクショの場合は、ちょっと記述が変わっていることがわかると思います。

これは、この通りに書かないと動きませんでした(下のサイトさんを参考にさせていただきました。感謝です!)

要は、Altとプリントスクリーンの2つのキーを押すことになるので、複数キーの操作が必要になり、その場合は記述が変わってくるということです。

複数キーの場合は、{Blind}が必要になります。他にも「*(アスタリスク)」や「return」が追加になっていたり、「,(カンマ)」が無くなっていたりと、細かいところが変わっていますので注意してください(^^)

ALt DownはAltを押す指令です。

ALt UpはAltを離す指令です。

ALt DownとALt Upを両方書かないと、F14が押された時点で、Altが押しっぱなし状態になって戻せなくなります。

普段はキーを「押す」ことしか意識しないので、「離す」=Up 操作を忘れがちになります。

これに気づかず、キーがおかしくなり(常にAltが押しっぱなし状態になり)無理やり再起動して戻すという作業を繰り返していました笑

お気をつけください笑

どうやってF13としたか?他のキーにしたい場合は?キーの調べ方

今回はF13,F14を使いましたが、好きなキーに割り当てることができます。

F13に割り当てた方法を踏まえて、他のキーにする方法(キーの調べ方)を紹介します。

まず、F13を特定する(キーコードを調べる)

タスクトレイをみて、起動してるAutoHotkeyのアイコンをダブルクリックします。ここではApple_keyboard_wired.ahkのアイコンをダブルクリックします。(Apple_keyboard_wired.ahk を作っていない方は、AutoHotkeyの実行ファイルだけ起動してダブルクリックしてもいいかもしれません(これは未検証です))

すると、以下のウィンドウが開きます。

押したキーの一覧が表示されます。

上のメニューバーから「View」→「Key history and script info」をクリックします。

知りたいキーを押して、F5(更新)を押します。

ここでは、F13のキーコードが知りたいので、F13キーを押して、F5を押します。

すると、表示が更新され、F13キーはVK7C SC064とわかりました。

仮想キー:VK◯◯ スキャンコード:SC◯◯  です。(Virtual KeyとScanCodeです)

F13をPrintScreenに割り当てる

PrintScreenの記述は、「PrintScreen」です。

記述の仕方については、以下の参考サイトさんを参考にさせていただきました。

変換、無変換を書いた時と同様に書いてみると、スキャンコードはSC064なので

sc064 Up::Send,{PrintScreen}

を追加すれば良いこととなります。

動作確認

記述を追加後、F13を押した結果が以下です。

Send,{PrintScreen}の記述があるので、F13キーがPrintScreenとして扱われたことがわかります。

続いて、「View」→「Key history and script info」をみてもF13を押した時にApple_keyboard_wired.ahkが起動して、PrintScreenに送信されたことがわかります。

同様の手順を踏めば、他のキーを割り当てることができます(^^)

今回は未使用キーを使用しましたが、もともと割当があるキー(ほとんどそうですが)に対して実行すると、もともとのキーの機能は失われますのでご注意下さい。

参考

以下のサイトさんを参考にさせていただきました。ありがとうございます(^^)

以上^ ^