【AutoHotkey】修飾キーの使い方と使用例

アイキャッチ画像 修飾キー

どーもヤマジです。

カンタンにオリジナルのショートカットキーやキーの割り当て変更ができるツールAutoHotkeyの導入方法については以前解説しました☟

アイキャッチ画像 AutoHotkey 【AutoHotkey】インストールと基本的なコードの書き方

もしAutoHotkeyの使い方が分からない場合は、ぜひこの記事☝をご参照ください。

自分でキーの組み合わせを考える上で、知っとくと便利なのが「修飾キー」です。

今回の記事では、「そもそも修飾キーとは何なのか?」と「その使い道」を例を交えて解説していきたいと思います。

修飾キーとは?

修飾キーとは、それ単体では機能せず、基本的に他のキーと組み合わせて使用されるキーです。

具体的には[Ctrlキー][Shiftキー][Altキー][Winキー]の4つです。

この修飾キーを使用した有名なショートカットは、[Ctrlキー]+[C]でコピー[Ctrlキー]+[V]でペースト[Shiftキー]+[アルファベットキー]で大文字入力などですね。

試しにやってみると分かりますが、修飾キーだけを押しても基本的に何も起こりません。上に挙げたショートカットキーのように、他のキーと一緒に押されることで初めて意味をもつのが、修飾キーです(*Winキーだけは、これ単体でも機能します

そしてこの修飾キーは、AutoHotkeyを介することで、本来Windowsにはない組み合わせのショートカットキーを作成することが可能です。

AutoHotkeyでの修飾キーの書き方

上述したように修飾キーは[Ctrlキー][Shiftキー][Altキー][Winキー]の4つです。

ただ、この4つのキーをAutoHotkeyで修飾キーとして使うためには、以下のように記号1つで記述します。

修飾キーAutoHotkeyでの記述
[Ctrlキー]^
[Shiftキー]+
[Altキー]!
[Winキー]#
注意

修飾キーはそれ単体では使用することはできず、修飾キーは常に通常のアルファベットキーなどとセットで使われなければなりません

修飾キーを使用したAutoHotkeyのスクリプト例と注意点

AutoHotkeyでは、修飾キーは組み合わせるもう一つのキーの前に記入します

例えば、[Ctrlキー]と[P]を同時押しするとタスクマネージャーが開かれるというスクリプトを書きたい時は

^p::Send, ^+{Escape}

という感じに記述します。

前半部分 ^p
[Ctrlキー]は修飾キーなので、[P]の前に記述されます。したがって、AutoHotkeyでは、この2つのキーの同時押しは ^p と記述されます。

後半部分 ^+{Escape}
タスクマネージャーの元々のショートカットキーは[Ctrlキー]+[Shiftキー]+[Escapeキー]なので、この部分をAutoHotkeyで記述すると ^+{Escape} となります。

一度おぼえてしまえばカンタンですし、記述も短いので見た目もスッキリして気持ちいいです。

注意

2つの通常のキー同時押しとは異なり、修飾キーのあとには「&」は入りませんのでご注意ください。


正しい書き方:^p

間違った書き方: ^ & p

修飾キーAltを使って左手だけで色々できるスクリプト例

今回はあまり普段使用されていないであろうAltキーをガンガン使って左手だけで使えるスクリプト集を紹介します。

このスクリプトのホットキーに慣れると、入力時のカーソル移動や文字の修正などが左手だけでできるので、いちいちマウスから右手を離してバックスペースキーやエンターキーを押しに行ったりしなくていいので、地味に作業効率がUPします。

必要なやつだけ、自分のAutoHotkeyのスクリプトに張り付けてお使いください。

またこれらはあくまで参考例なので、より自分の使い易いように修飾キーや組み合わせのキーを変更してカスタマイズしてくださいまし。

AltキーとF同時押しでBackspace
!f::Send, {BS}
AltキーとG同時押しでEnter
!g::Send, {Enter}
AltキーとE同時押しでDelete
!e::Send, {Del}

AltキーとT同時押しで上スクロール
!t::Send, {WheelUp}
AltキーとR同時押しで下スクロール
!r::Send, {WheelDown}

AltキーとQ同時押しでスクリーンショット機能ON
!q::Send, {RWin Down}{RShift Down}{s}{RShift Up}{RWin Up}
AltキーとA同時押しで←
!a::Send, {Left}
AltキーとD同時押しで→
!d::Send, {Right}
AltキーとW同時押しで↑
!w::Send, {Up}
AltキーとS同時押しで↓
!s::Send, {Down}

左右の修飾キーを別々に使いたいとき

大抵どのキーボードも修飾キーは、左右にそれぞれ2つずつ用意されています。

4つある修飾キーをそれぞれ独立した修飾キーとして使用すると、修飾キーの数が倍の8つになるので、自分でショートカットキーを作るときの自由度がさらに跳ね上がります。

書き方はただ < か > を修飾キーの前につけるだけです。

修飾キーAutoHotkeyでの表記
[左Ctrlキー]<^
[右Ctrlキー]>^
[左Shiftキー]<+
[右Shiftキー]>+
[左Altキー]<!
[右Altキー]>!
[左Winキー]<#
[右Winキー]>#

まとめ

修飾キーは使い方が分かれば、AutoHotkeyでのショートカット・ホットキーがより作りやすくなります。

修飾キーは[Ctrlキー][Shiftキー][Altキー][Winキー]の4つだけしかないので、そこまで混乱することもないかと思います。

自分の手や指の可動域に合わせて、ぜひオリジナルのキー配置をお試しください。

それでは、最後まで読んでいただきありがとうございました。

3 COMMENTS

ナポリタン寿司

こんばんは!

修飾キーを活用した便利な使い方を思いついたのでここにコメントさせていただきます。見た方が参考になれば幸いです。

【やりたいこと】
Microsoft のメモソフト「Onenote」の日付挿入するショートカットキーAlt+Shift+〇をより簡単に入力したい。

【やったこと】
それぞれのショートカットキーを以下に割り当て。
さらに、Onenote以外では使わないので、Onenoteが起動しているだけ発動させる

日付を挿入
Alt+Shift+D → Ctrl+D
時間を挿入
Alt+Shift+T → Ctrl+T
日付と時間を挿入
Alt+Shift+F → Ctrl+F

【書き込むコード】
;—-Ctrl+Dに日付挿入(Shift+Alt+D)割り当て—–
#IfWinActive ahk_exe ONENOTE.EXE
^d::Send, +!d
#If

;—-Ctrl+Tに時間挿入(Shift+Alt+T)割り当て—–
#IfWinActive ahk_exe ONENOTE.EXE
^t::Send, +!t
#If

;—-Ctrl+Fに日付と時間挿入(Shift+Alt+f)割り当て—–
#IfWinActive ahk_exe ONENOTE.EXE
^f::Send, +!f
#If

【簡単な解説】
この記事で紹介されている修飾キーを活用して、3つのキー(Alt+Shift+〇)を認識するようにしました。

さらに、特定のアプリが起動している間だけコマンドを発動させる「#IfWinActive」ってコードを使いました。

これにより、Onenoteが起動している間だけ、このコマンドを有効にできます。僕はあんまりわかってないので、詳しくはいつかオカメJPさんが解説してく…(ゴクリッ)

とにかく、修飾キーは案外簡単ですが、かなり便利な使い方ができるのでぜひ皆さん色々試してみてください。参考になれば幸いです。

それでは失礼します。

返信する
ナポリタン寿司

Onenoteで変更したのはいいものの、Excelの日付挿入ショートカットキーが「Ctrl+;」とどっちがどっちだったか忘れそうになったので、ついでにExcelの方も「Ctrl+D」の形に統一してみました。

単純に、日付挿入のショートカットキーを全ソフト共通にするという目的でとても便利です。

こっちのソフトではどのショートカットキーだったっけ?って考える必要なくなりますからね。(本当は、標準で統一してほしいものなんですけどね)

【やりたいこと】
Excelにて、日付挿入(Ctrl+;)、時間挿入(Ctrl+:)、日付と時間挿入(Ctrl+;&Ctrl+:)のショートカットキーをそれぞれOnenoteの方で設定したキーと同じにする

【なぜやりたいのか?】
ソフトによって、挿入のショートカットキーが違うと忘れてしまうため。統一したい。

【書き込むコード】
;—-【Excel】Ctrl+Dに日付挿入(Ctrl+;)割り当て—–
#IfWinActive ahk_exe EXCEL.EXE
^d::Send, ^;
#If

;—-【Excel】Ctrl+Tに時間挿入(Ctrl+:)割り当て—–
#IfWinActive ahk_exe EXCEL.EXE
^t::Send, ^:
#If

;—-【Excel】Ctrl+Fに日付と時間挿入(Ctrl+; & Ctrl+:)割り当て—–
#IfWinActive ahk_exe EXCEL.EXE
^f::
Send, ^;{sc039}
Sleep, 100
Send, ^:
return
#If

【注意点】
Excelでは、Ctrl+Dに下方向へのコピー、Ctrl+Tに[テーブルの作成]ダイアログボックスを表示する、Ctrl+Fにページ内検索が割り当てられているため、使っている人は注意です。僕は、どれも使ってなかったので問題なかったです。

使いたい場合は、それぞれの日付挿入キーを別のキーに変更するか、日付挿入キーにもそれぞれのキーを割り当てて機能入替えするなどしてみてください。

日付挿入頻繁にする僕からしたら、OnenoteとExcelのキーが統一されるだけでも非常に便利です。

それでは失礼します。

返信する
ありがとうございます

本ページの内容とても参考になりました。
ページの中ほどに記載されている、
「AltキーとQ同時押しでスクリーンショット機能ON」
についてですが、send, の後は、#+S だけで機能ONしました。

返信する

ナポリタン寿司 へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)