先日購入した格安モバイル PC X205TA、 とても気に入っていますが、 タッチパッドのクリックボタンが使いにくいの少々残念です。そこで、 今日はキーボードのキーにマウスボタンを割り当てるプログラムを作ってみました。
わざわざプログラムを作らなくても AutoHotkey などのツールを使えばこの程度のことは実現できると思いますが…。なるべく使用メモリ量を抑えたいということで機能を絞った小型軽量プログラムを作ってみました。使用メモリ量はわずか 400KB 程度です。
vi-keys
プログラムの名前は vi-keys としました。これはマウスボタンの割り当てだけでなく、 vi エディタに近いキーバインドでカーソルキー操作ができる機能も含めたためです。
ダウンロードした ZIP ファイルを展開して、 中に入っている vi-keys.exe
をスタートアップ ・ フォルダーにコピーすればインストール完了です。ファイル名を指定して実行
で以下の内容を実行すればスタートアップ ・ フォルダーがエクスプローラーで開きます。
"%APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup"
キーの割り当て
入力キー | 発動する機能 |
---|---|
無変換 | マウス左クリック |
変換 | マウス右クリック |
Ctrl + Shift + H | マウスカーソル左移動 |
Ctrl + Shift + J | マウスカーソル下移動 |
Ctrl + Shift + K | マウスカーソル上移動 |
Ctrl + Shift + L | マウスカーソル右移動 |
Ctrl + H | 左カーソル |
Ctrl + J | 下カーソル |
Ctrl + K | 上カーソル |
Ctrl + L | 右カーソル |
Ctrl + D | 削除 |
Ctrl + Q | Esc |
Ctrl + Shift + Space | バックスペース |
Shift + 無変換 | 左 Windows キー |
Shift + 変換 | タスクビュー表示 |
基本的にホームポジションに指を置いたまま、 コーディングなどのテキスト作成作業ができるようにキーを割り当てています。特に Ctrl を押しながら H、 J、 K、 L を押すことでカーソルが移動できるのは便利ですよ。
Change Key を使うとさらに便利に
キーボードの Ctrl は少し押しにくいところにありますよね。そんなときは Windows のレジストリーを変更して Caps lock に Ctrl を割り当ててしまうのが良いです。
Satoshi さんの公開している Change Key を使うと簡単にキー割り当てを変更することができます。Change Key は Windows のレジストリーを変更することでキー割り当てを変更するため常駐させる必要さえありません。
Change Key があれば vi-keys なんていらないのではないかって?
Change Key (Windows のレジストリ設定) ではキーのスキャンコードを変更することはできますが、 マウスボタンのクリック機能を割り当てたり、 複数のキーストロークに機能を割り当てることはできないのです。私もはじめは Change Key (Windows のレジストリ設定) だけでなんとかできないものかと考えたのですが、 実現できず、 常駐アプリとして vi-keys を作成した次第です。
vi-keys のキーの割り当てを変更することはできますか?
設定でキーの割り当てを変更することはできません。キーの割り当てを変更したい場合は同梱されているソースコードをいじってください。小さなプログラムなのでソースコードに手を加えるのも難しくないと思います。
プログラムは C 言語 (Win32 API) で作成しています。Windows キーフックの勉強用にでも役立てていただければ嬉しいです。