remapkey.exeでショートカットキーを自由に設定

Pythonを勉強しているとPyCharmという専用エディタソフトは有能でアシスト機能がありまして、{ ( [など囲み記号を入力すると反対側の} ) ]も入力してくれます。

ですからListを作成する際も[を打ってそのままリスト内に入る文字列、数字を書けばいいわけです。終わりの]の打ち忘れをやらかすのを防止してくれます。終わりの]を打ち忘れることが結構多いから大変便利です。ただカーソルはまだ終わりの]の中にあるわけでEnterキーを押すと]は次の行に改行されてしまってListは不完全、改行されたところの頭が]から始まってしまってエラーになります。ここで行末にカーソルを移動させるEndキーは大変役立ちます。ですからEndキーを頻繁に利用します。

JISkeyboardlayoutEndKeyへの移動を表した図
ただホームポジションの右手の小指が「;」にあるところから「End」に延ばすわけですが、タッチタイピングでは厳しいですし、小指だとどうしても確認しながらでもわりとミスタイプしないように慎重になって思考がそこで止まってしまいます。

何度か思考が止まったりミスタイプなどそういう事があって考えました。それで、Endキーで行の終わりにカーソルを持ってくるのではなく、別のキーをEndキーのショートカットキーとして指定することにしました。

見ないで押すことができて使用頻度の無いキーを適当に割り振れば良いかと思いましたけど、問題は他のソフトでそのキーがショートカットキーとして割り当てられていないかどうかが心配です。自宅の非力なPCでは使わないadobeのソフトなのですが、ショートカットキーだらけのadobeソフトの場合、あまり押しやすい位置のキーはすでにデフォルトでショートカットキー指定されている可能性が高いのです。

それで簡単に設定できてまた変更しやすい方法を探しました。「このキーは別のソフトのショートカットキーで使っている」となった場合に変更しやすいからです。
ショートカットキー割り当てのソフトとしてAutoHotkeyがまずあります。これはスクリプトを書いて設定するので面倒そうですし、どうやって設定したのか設定変更が必要となった際にリファレンス読み直したりしそうでこれは止めておきました。他には「ChangeKey」とWindows Server 2003 Resource Kit Toolsに含まれる「remapkey.exe」という方法があるようです。

どちらもWindows10で動作するようですけど、幾分名称が2003とかなっていますけどMicrosoft純正なんでWindows Server 2003 Resource Kit Toolsに含まれるremapkey.exeを使ってみます。情報も多いようですし安心です。

Windows Server 2003 Resource Kit Toolsをダウンロード

「Windows Server 2003 Resource Kit Tools」を検索エンジンで検索すればすぐ出てきます。Microsoft純正ですからね。一応、URL https://www.microsoft.com/en-us/download/details.aspx?id=17657 になっています。

WindowsServer2003ResourceKitToolsDownloadの場所を提示する画像
オレンジに白抜きで「Download」となっているところをクリックすると「Windows Server 2003 Resource Kit Tools」インストールファイルの「rktools.exe」がダウンロードされます。

rktoolsexeファイルをダブルクリックする画像
分かりやすく「大アイコン」で表示させていますけど、アイコンの表示は設定によって変わります。とにかく「rktools.exe」が自分のPCにダウンロードできていましたらダブルクリックして実行します。

Windows Resource Kit Tools Setup Wizardでnextをクリックする画像
共有ファイルにインストールしないようにという事と、インストール前には他のプログラムは起動していないようにしておく事が警告として出ています。確認したら「Next」をクリックします。

Windows Resource Kit Tools Setup Wizard_Lisense AgreementでNextをクリックする画像
License Agreementの記述があってすさまじく長いし、microsoft製なので信用して私は”あえて”読みませんけど、使い方によっては読んだ方が良い方もいるでしょう。I Agreeにチェックし「Next」をクリックします。

Windows Resource Kit Tools Setup Wizard_User InformationでNextをクリックする画像
User Information画面になってデフォルトだとNameに自分のPCのユーザー名が表示されています。Server管理ツールなので設定が細々ありますがキー配列を変更するだけでしたらデフォルトのままで良いかと思います。「Next」をクリックします。

Windows Resource Kit Tools Setup Wizardのインストールディレクトリ指定画像
デフォルトですと「C:\Program Files (x86)\Windows Resource Kits\Tools\」にインストールされます。
変更する場合は「Browse」から変更できます。インストール先を設定したら「Install Now」ボタンをクリックします。

Windows Resource Kit Tools Setup Wizard_インストール終了でFinishをクリックする画像
インストール完了です。「Finish」ボタンをクリックします。

remapkey.exeを起動

通常のアプリはWindowsメニューから起動します。
「Windows Server 2003 Resource Kit Tools」をデフォルトの「C:\Program Files (x86)\Windows Resource Kits\Tools\」にインストールした場合はメニューに「Windows Server 2003 Resource Kit Tools」あります。
Windows Resource Kit Toolsインストール後のwindowsメニュー画像
ただ、Commnad ShellとHelpとRead Meとあってremapkey.exeはありません。ディレクトリからクリックして起動させる必要があります。

エクスプローラーからキーマップを変更するremapkey.exeを表示させてクリックする必要があります。

デフォルトでインストールした場合は「C:\Program Files (x86)\Windows Resource Kits\Tools\」をエクスプローラーの表示ボックスにコピペします。インストール際に任意の場所にインストールした場合はその場所のToolsディレクトリを表示させます。
インストールしたWindows Resource Kit Toolsの表示画像
インストールした「C:\Program Files (x86)\Windows Resource Kits\Tools\」を表示させるとremapkey.exeが見つかりました。

管理者として実行を選択している画像
ダブルクリックでは無く、右クリックして実行します。

Windows Resource Kit ToolsでEndキー機能を左右windowsキーに割り振っている画像
本当は「Endキー」の機能を「shiftキー」と「、キー」同時押しで代用出来るようになれば最高だったのですけれど、二つ以上の同時押しへの割り振りは出来ないようなので「windowsキー」が左右にあるのでそれぞれに割り振りました。
やり方は上の「ベース キーボード(106)」の「Endキー」を下の「リマップ キーボード」の左右の「windowsキー」にそれぞれドラッグしていけば良いので簡単です。ただし再起動が必要となります。

Remapkeyでwindowsキー2つにEndキー機能を割り振って、りマップキーボードにEndと赤く表示されている画像
下のりマップキーボ-ドに変更された「windowsキー」がEndと赤くなっているのがわかります。ここから再起動までの手順です。

Remapkeyのファイルメニューから保存して終了を選択している画像
ファイルメニューをクリックして「保存して終了」をクリックします。

Remapkeyの保存前のLeft WindowsとRight Windowsキーが失われる警告画像
保存した場合の失われるキーの確認ダイアログが表示されます。OKをクリックします。

Remapkeyの再起動確認画像
これで終了です。再起動をして確認してください。
Microsoft製ですから安心感があるのと、失われるキーについても確認してくれる点が親切です。
remapkeyの表示画面は変更する前のベースキーボードと変更したリマップキーボードの二つあるので、「やはり元に戻したい」となった場合にベースキーボードどおりの配列にまたドラッグしてやれば良いわけです。私の例ならベースキーボードの左右のWindowsキーを、それぞれリマップキーボードの左右のEndキーにそれぞれドラッグして戻せるわけです。これも簡単で変更しても元に戻すのにまたスクリプトを書いたり、消したりとかするのと比べて作業の手間がかなり楽なのも良いですね。