ijklを矢印キーに切り替える（windows編）

# はじめに
矢印キーを入力するなどにわざわざ小指などを使うのはホームポジションが崩れ効率が悪いと思ったそこのあなた！もっとスマートにカーソル移動させたいと思ったらそこのあなた！
そんなあなたにctrlやaltなどと組み合わせて矢印キーの入力を実現する方法をご紹介します。

# 今回やること
この記事ではとりあえず右altとijklで矢印キーを入力する設定をしていきます。右手の親指でaltを押しながらijklの入力をするという感じですね。なんで微妙に押しにくいキーにしているのかというと、macでの設定と合わせようとしたらこうなっただけです。少し変えるだけで左ctrlなどもっと押しやすいキーに簡単に切り替えができます。

ちなみに具体的にどのような仕組みで動かすかというと、Change Keyで右altをF13キーに内部レジストリを書き換え、AutoHotKeyでF13キーとijklとの組み合わせで矢印キーを入力するという感じになります。普段右altとかF13キーとか全く使わないのでね。

# 材料
必要なものはChange KeyとAutoHotKeyです。

https://forest.watch.impress.co.jp/library/software/changekey/

https://www.autohotkey.com/

# 設定
### Change Key
まず[Change Key](https://forest.watch.impress.co.jp/library/software/changekey/)をダウンロードします。
拡張子が.LZHというファイルがダウンロードされると思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/46c44d9d-115b-e9b1-dc63-2b48c6afc032.png)
これを解凍したいのですが、そのためにMicrosoft Storeでunpackerというソフトを使うのでインストールします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/56686cbb-1751-ab41-858f-9cb21729de91.png)
unpackerを開くとこのような画面になると思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/30b4ebfd-a261-aaf5-d74a-3911c6aa65dc.png)
Open Filesから先ほどダウンロードしたファイルを選択して解凍しましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/49b8a148-cafc-dd05-56ec-42ef4af22fb5.png)
解凍が完了すると、解凍元のファイルがあるフォルダにUnpackerというフォルダが新たに生成されます。そのなかにChgKey.exeという解凍されたファイルが出てきます。

これでChange Keyを使う準備が完了しました。では実際にレジストリをいじっていきましょう。

---

まずChange Keyを起動します。

:::note warn
起動する際は管理者として実行してください。
:::
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/07ca3a3f-758a-0a25-a9ee-6e0300c96dcd.png)



そんで開くとこんな感じな画面が出てきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/aef1c392-5653-7206-b055-6826eb4d9f2b.png)
まずAlt右というところをクリック。
すると割り当てるキーを選択するウィンドウが出てきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/a9871286-346b-fd3a-b2fd-3c7adc82abdc.png)
ここでF13を選びたいわけですが…
選択肢にないのでキーコードで設定していきます。
右上のScan codeをクリックすると。このようなウィンドウが出てきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/6d40e9fb-73c4-65d4-1552-57a13a1ba636.png)
F13のキーコードは0x0064なので、欄に0064を入力してＯＫを選択して下さい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/62ea1ac7-1eb4-e6c3-be6f-88d1ad19fa7b.png)

これでAlt右だったところが変わっていたら大丈夫です。私はついでにCaps LockをCtrlに割り当ててます。こっちのほうが押しやすいので。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/8474b6a1-7b90-40cc-b9a7-5ee3c66e439a.png)
ちなみにここでAlt右ではなくCtrl左などをF13とかに書き換えるとCtrl左がijklと矢印キーを切り替えるキーに割り当てることができます。この辺は自分の好みで選んでみてください。
あとは登録して再起動するとレジストリの書き換えが反映されます。

Key Changeの設定は以上になります。

---


### AutoHotKey
では続いて[AutoHotKey](https://www.autohotkey.com/)の設定をしていきましょう。v1.0とv1.1とv2.0があるのですが、わたしはv2.0を使っています。
exeファイルをダウンロード、インストールしてこのような画面が出てきたらOKです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/43b3cf6f-c97d-364d-f4cd-8b97163f518c.png)

---

次にキーマップのスクリプトを書いていくのですが、そのファイルをPCを起動したときに実行させたいので、スタートアップのフォルダの中に作っていきましょう。
Win+Rからshell:startupと入力してOKを選択するとスタートアップのフォルダが開けます。
そのフォルダで新規作成を選択し、AutoHotKey Scriptを選択してファイルを作成しましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991493/26aaa7cb-eb1a-4db1-bcc7-b6bfb4c91be6.png)
ファイル名は適当にmain.ahkとでもしておきましょう。

ではこのファイルを編集していきます。
右クリック->プログラムから開く->Visual Studio Codeを選択します。Visual Studio Codeでなくても別のテキストエディタでも大丈夫です。
下のように記述します
~~~
F13 & J::Left
F13 & L::Right
F13 & I::Up
F13 & K::Down
~~~

私はこれ以外に右alt+MでHome、右alt+.でEnd、右alt+Oでローマ字かな切替を割り振りたいので下のようにしています。
~~~
F13 & J::Left
F13 & L::Right
F13 & I::Up
F13 & K::Down
F13 & M::Home
F13 & >::End
F13 & O::Send,{Bind}{vkF3sc029}
~~~
ローマ字かな切り替えだけ少し特殊です。

これで保存して、ファイルをダブルクリックして実行すると割り当て完了です。

スタートアップのフォルダに保存したので、PCを再起動してもちゃんと動作すると思います。たぶん。

# 終わりに
ということでChange KeyとAutoHotKeyの組み合わせでijklを矢印キーに切り替える方法をご紹介しました。
特にAutoHotKeyはかなりいろんなことができるので、興味のある方はぜひいろいろ調べてみてください。

近いうちにmacでも同じことができるようにする方法も書きたいと思います。
では～