Milkのメモ帳

日々の思いつきを忘れないようにのメモ用です。

Milkのメモ帳

【Windows】疑似カーソル操作/キーバインドの変更をする【作業効率化】


f:id:maxminkun:20170227161953j:plain

こんにちは。Milkです!
実はこの記事は、いつもと書いている環境が違うんですよ。

と言っても、恐らくは今までの記事と差は分からないと思います。

なぜなら、Windowsで書いているか、Linuxで書いているかの違いだから・・・(汗)

いつもなら、Linux(Ubuntu)で記事を更新していますが、今回はいろいろな事情により(主に開発環境を構築するために)Windowsから記事を更新しております。

皆さんは、カーソルの移動ってどうやってます?

え? 矢印キーでやるのが普通でしょ?って思いますよね・・・

それがそうでもないのです。ホームポジションから手を移動させずにカーソルを移動させることが出来たら、凄くありません?

カーソルを手元のキーで移動させる

さて、何を言っているかというと、ある特定のキーを押したときにだけ、キーに役割を持たせるということが出来るソフトがあります。

KeyExtension

私が重宝しているのは、以下のフリーソフト。

K Life

これをインストールすることで、わざわざ矢印キーを押さなくてもカーソル移動が可能になります。

これ自体は、パソコン内部のデータ(レジストリ)にアクセスしないので、アンイストールする際にはファイル一式を削除すれば良いです。

また、スタートアップに「KeyExtension.exe」のショートカットを登録すると、ログイン時に自動起動します。

http://windows-sousa.com/2015/12/06/post-1148/windows-sousa.com

f:id:maxminkun:20170227165029j:plain

設定を開きましょう。

これはタスクバーに表示されますから、これを右クリックして設定を開きます。

すると以下の画面が開くはずです。

f:id:maxminkun:20170227165445j:plain

ここで、「切り替え」となっているのは、このキーを押し続けて、他の「Up」等のキーを押下することで、↑矢印キーと同じ操作が行なえます。

例えば、通常の私の環境ですと、

  • 切り替え:無変換キー
  • ←矢印:H
  • ↓矢印:J
  • ↑矢印:K
  • →矢印:L

等にしています。これはViやVimと呼ばれる、Linux系のテキストエディタのカーソル移動に似せたものです。

画面の中で、数値になっている場所にカーソルを合わせ、割り当てたいキーを押しましょう。

すると、キーコードが入力されます。あとは「OK」です。

これにより、「無変換」キーが押されている間だけ、先程割り当てたキーに、その役割をさせることが出来ます。

どうですか? もう、矢印キーまで手を伸ばす必要はないでしょう?

私の場合はVimの操作に似せているので、ほとんどホームポジションから動かすことなく、カーソルの先頭や末尾、ページ送りなどの操作が出来ます。

そうしなければならないというルールはありませんから、皆さんの好きなキーを割り当ててください。

キーバインドの変更

さて、中には特殊なキーボードを使用しているという方もいるでしょう。

例えば、こいつです・・・

www.milkmemo.com

色々とキーが省略されたり位置が変わってリしています。
(厳密には組み合わせによって実現されていたりする、)

例えば、「半角/全角」キーですが、これは「英数」というキーで代用されています。

また、「Cmd」キーという、Macで使用されるキーがあったりと、あれこれ困ったことになっているのです。

では、キーの内容を弄ってしまいましょう。

私が通常使っているUbuntuでは、Xmodmapと呼ばれる特殊なキー再割当て用のファイルを作成し、これを強制読み込みさせます。

www.milkmemo.com

Windowsの場合は、これもフリーソフトが存在するので、それを利用しましょう。

KeySwap

www.vector.co.jp

警告:このソフトはレジストリを操作するソフトです。アンイストールする際には気をつけましょう

このソフトは、キーボードのキーに対して、本来の役割から別のキーの役割を再割り当てすることが出来るソフトです。

これを好きなフォルダに解凍してください。

次に「KeySwap.exe」を管理者権限で実行します。
(右クリックで、「管理者として実行」を選択します。)

f:id:maxminkun:20170228101324j:plain

すると以下のような画面が出てくるはずです。

f:id:maxminkun:20170228101753j:plain

【キー名】とは、割り当てようとしているキーボードのキーです。この場所を選択して、そのキーをおします。

【変換キー名】とは、そのキーを押したときに、何のキーとして動作して欲しいかです。実際にキーボードのキーを押すことも出来ますし、右側の仮想キーボードから選択も出来ます。

分かりづらいとは思いますが、私の使用している、「Universal Mobile Keyboard」には、「Cmd」「英数」「カタカナ/ひらがな」のキーが存在します。

Ubuntuと操作を合わせるため、「Cmd」キーを「半角/全角」キーに再設定。

「英数」と「カタカナ/ひらがな」を「無変換」キーとして設定しました。

KeySwap設定画面では、キーボードが実際にはどのように認識されているのかというのが分かって面白いですね。

保存と反映

保存を行う際は、「ファイルへ保存」を選択します。

好きな名前をつけて保存が可能ですよ?

f:id:maxminkun:20170228102731j:plain

また、このキーバインド(キー配列)を反映させるためには、「終了」を押したあと、一度ログアウトするか、リブート(再起動)が必要です。

レジストリを変更しているためです。

レジストリについては後述します。

アンインストールする時

このソフトは、Windowsのレジストリを変更することで、キーの役割を書き換えています。

レジストリとは、WindowsのOSが起動するときに一度に読み込まれる、特別なデータを保管している部分で、この部分が破壊されると最悪は、Windowsの動作が正常に機能しなくなります。

とは言うものの、それほど心配しなくても大丈夫です。

このソフトをアンイストールしたいときは、元のキーボードの状態に復帰させてから、「KeySwap」のファイルを削除すればいいだけですから。

f:id:maxminkun:20170228103258j:plain

「設定を全て削除」のボタンがありますよね?

これを選択すると、設定がデフォルトに初期化されます。この状態で保存します。

あとは、「KeySwap」を一式ファイルごと削除してください。

これでOKです。

「KeyExtension」と「KeySwap」を組み合わせる。

これらを組み合わせれば、自由自在にキーバインドをカスタマイズできます。

例えば、私の場合は「英数」キーを「無変換」キーに再設定していますが、左手だけでは足りないので右手側として、「カタカナ/ひらがな」キーも「無変換」キーに設定しています。

これにより、「KeyExtension」で有効/無効切り替えのキーは1つという縛りはなくなります。

気をつけて欲しいのは、「KeySwap」で設定した後に、「KeyExtension」の設定を行うという流れにして欲しい点です。

そうでないと、「KeySwap」の設定によって、キーの番号が変更されますから、「KeyExtension」の設定値が意味をなさなくなります。

その点だけお気をつけください。

最後に

さて、どうですか? 難しそうです?

でも、設定する価値はありますよ。本当に・・・

これを設定するだけで、ホームポジションからほぼ動かさずに、カーソル移動が出来るようになります。

プログラムを書く際には私には必須ですし、文章を書くときも本当に楽です。

文字の入力速度や、カット&コピーやペーストなど、操作がほぼ手を大きく動かさずに手元で終了します。

断然、記述速度も変わりますね。

あとは、腱鞘炎の予防にもなります。

一度、お試しあれ!!