wordpress/Adobe Animate CCなどweb技術やブログ運用に関する話をしていきます!検索エンジン最適化に関する実験に関する情報も!
⇒ 本ブログの詳細/連絡先はコチラ!
web技術TOP WordPress アクセスアップ Adobe Animate CC 便利ソフト/サービス紹介 効率化
  1. ホーム
  2. 〇ブログ/web技術
  3. AutoHotkey[windows自動化]
  4. AutoHotkeyで多くのショートカットキーを割り当てる方法!2500パターンのショートカットが紐付け可能!
■注目記事一覧

高校数学 教科書用シミュレーターの制作に携わりました!!

WordPressのGutenbergで秒速で設定済みブロックを呼び出す方法!

エックスサーバーが凄すぎる!高速レスポンスを誇る高品質サーバー!

[Adobe Animate CC使い方講座] まずはFlashからの変遷から解説!

複数専門ブログと雑記ブログ、両方のいいとこ取りの形態/両立を技術的に実現してみました!

ブログ記事数500突破!開設から2年3ヵ月のアクセス数変動を振り返ってみた!

デジハリのAdobe講座がやばすぎる!Adobe Creative Cloudが45%オフで購入可!
 
全テーマ共通記事一覧

AutoHotkeyで多くのショートカットキーを割り当てる方法!2500パターンのショートカットが紐付け可能!

AutoHotkeyは超便利だけど… 割り当てられるショートカットキーが少ない><

以前から紹介しているAutoHotkeyというショートカットキー紐付け&自動化ソフト、最高です。自分はこれのせいで、MacよりもWindowsが大好きなカラダになっています。AutoHotkeyを使えば、なんでもショートカットキーに紐付けられるので、本当に重宝しています。

そんなAutoHotkey、一つだけ欠点がありました。それは「紐付けられるショートカットキーの候補が少ない」ということです。AutoHotkeyは特定キー+(shift,ctrlなどの補助キー)にショートカットを紐付けられます。ソレに加えて、特定2つのキーの同時押しにショートカットを割り当てられます。自分はコチラの記事にあるように、「無変換キー+その他キー」「変換キー+その他キー」に紐付けをしています!
 
これだけでも素晴らしいのですが、、、実際色んな文字入力のショートカットを紐付けたり、ブックマークサイトを紐付けたりしてると全然足りないんです。「無変換キー+その他キー」で紐付けられるのは、無変換キー以外の50キー程度。なので、変換キーとの組み合わせと合わせても100ショートカットぐらいしか紐付けできないんです>< 便利だけどもっとガンガンショートカット化したいんですよね><

ホットストリングという機能あるけど、日本語環境だとイマイチ&使い勝手が難しい

上記のような欠点を補うための機能として、ホットストリングという機能があります。これは特定の文字列を連続で打つと、文字変換やショートカットを呼び出せるというものです。

[ホットストリングの例]

::btw::by the way

これは「btw」と打つと、自動的に「by the way」という文字に入れ替わるという機能です。ただ、これ日本語環境で打つと「byてゃわy」とか表示されます。あくまで日本語入力モードで「by the way」というキーを連続で打つという意味なので、、、なので英語モードでしか使いにくいという罠があります。

あとは、誤爆ですよね。btwって打った時に、勝手に変換されるので時には意図しない変換になってしまいます。特に、いっぱいホットストリングを割り当てたら、どんな変換されるのか怖いですよね。

「特定キー」+2文字で2500以上のショートカットキーを割り当てられるようにしよう!

上記のような、欠点を避ける良い方法があります。それが「特定キー」+2文字をショートカットにしてしまうという方法です。自分は変換キー+2文字をショートカットに割り当ててます。
具体的には、

変換キー+jb → 定型文表示
変換キー+rr → 特定ページ表示

というような割当をしています。変換キーを押した後の2つのキーの組み合わせでショートカットを選択するようにしてるんです。キーボード上にはアルファベット26文字+数字10文字とかその他キー含めて50キー以上ありますので、この方法なら50✕50=2500パターンのショートカットが割り当てられる様になるんです!これなら十分すぎますよね!
 
で、その方法ですが以下のようなスクリプトで実現できます。例として「変換キー(vk1C)」にショートカットを紐付ける例です。

myscript.js
;;変換キーを押したら、func2keyを呼び出す
vk1C::func2key()
;;変換キーを押した後の処理
func2key(){
 ;;2キーの入力を待つ
 Input, UserInput, L2
 ;;押された2つのキーのパターンで、ショートカット判別
 switch UserInput{
  case "jb": HotString("style='border: solid 2px #aaaaaa'")
  case "jj": SandString("<h2 class='cont'>","</h2>")
  case "jk": SandString("<h3 class='cont2'>","</h3>")
  case "js": ClipSandString("<strong class='sto'>","</strong>")
  case "jg": SandString("<strong><span style='font-size: x-large;'>⇒","</span></strong>")
  case "fr": Run, https://connect.garmin.com/modern/activities?activityType=running
  case "rr": Run, https://retu27.com/record_hr_10km_tt.html
  case "rt": Run, https://retu27.com/zactivity_analyze.html
 }
}

肝となるのが、以下のコマンドです。

Input, UserInput, L2

このInputコマンドは、「2つのキー押されるまで待つ」という命令です。そして2つキーが入力されたら、UserInputという変数にそのキー文字を代入するというコマンドなんです。なのでそれを使って、そのあとのswitch文で、UserInputの値をチェックし、どのショートカットを実行するのか決定しているんです。ちなみにL2の部分をL3とすれば3文字入力を待つという意味になります。

自分はこのInput命令を、「vk1C(変換キー)」で発動させるようにしています。これで「変換キー+2文字」で任意のショートカットが紐付け/発動出来るようになるわけです!
 
一度上記のような定義をしたら、あとはswitch文の中のcaseを1行ずつ付け足していくだけ。そしたら、入力した文字によってショートカットが実行されるようになります!!case文の後ろには自由に命令が書けるので、特定ページにジャンプするコマンドでも、文字入力コマンドでも好きなものが書けます!

特定キー+2キーでショートカットリンク/文字入力/自動操作何でも出来る!超便利!

自分は上記の2文字ショートカットにして死ぬほど便利になりました!今まで100ショートカットしか割り当てられなかったのが、一気に2500ショートカット程度割り当てられるようになったわけで、、、なので、好きな定型文などガンガン割り当ててます。

変換キーを押すとショートカット認識モードになるので、逆に言えば変換キーを押さなければショートカットは発動されません。なので、ホットストリングであったような誤爆も起きません。すごく扱いやすいです。
 
割当のコツは「1文字目でどんなショートカットか分類する」ことです。自由にショートカット割当すると、何がなんだかわからなくなり、覚えられなくなるので。自分は以下のような割当分類にしてます。

j + * ⇒ ブログ関連定型文(h2タグなど)
f + * ⇒ よく使うページへのジャンプ
c + * ⇒ 自分のサイトの操作コマンド

こんな感じ。2文字ならば、入力も一瞬ですし、2500パターンも紐付けられるのでベストな文字数ではないかなと思っています。逆にそれ以上速く呼び出したいショートカットは「無変換キー+その他キー」に割り当ててます。これなら、2キー同時押しですぐに呼び出せるので。
 
なので「無変換同時押しショートカットキーは1軍」「変換+2文字ショートカットキーは2軍」という扱いでうまく使い分けています。使用頻度が高いショートカットは、無変換割当してる感じです!

超便利なので、是非とも真似してご活用下さいませ><


⇒「AutoHotkey[windows自動化]」カテゴリ記事一覧

その他関連カテゴリ




お気軽にコメントお願いします!

Your email address will not be published. Required fields are marked *