こんにちは!
開発職では常にパソコンを使用するので、いかにパソコンでの作業を効率よくこなせるかが大事です。自宅PCであれば、自由にフリーソフトなどを入れてPCの設定を拡張できるのですが、会社の貸与PCの場合だとセキュリティの観点から制限がかかることが多いかと思います。なのでPCをカスタマイズするにしても会社のセキュリティポリシーの範囲内に収める必要があるのですが、そんなときに重宝するのがWindows PowerToysというソフトウェアです。
Windows PowerToysは、Microsoftが提供するユーティリティパッケージソフトで、本来Windowsに標準搭載される予定であった機能をオープンソース化したものです。機能については後述しますが、クリップボードを拡張したり、スクリーンキャプチャをよりリッチにしたりして、痒いところに手が届くようなカスタマイズが可能になります。Microsoftが開発するプロダクトなので社内導入もそこまでハードルは高くないかと思います。
私自身、PowerToysは毎日のように使っており、無いとストレスで作業ができないほどです。使ったことがない方にはぜひ一度使ってみてほしいので、今回は普段私が開発業務や関連業務で使っているPowerToysの機能について紹介させていだたきたいと思います!
PowerToysのセットアップ
マイクロソフトストアからMicrosoft PowerToysをダウンロード、インストールするだけです。目ぼしい機能は最初からオンになっているので、煩雑な設定などをせずにすぐ使えるのはありがたいです。
立ち上げると以下のようなダッシュボード画面が表示されます。「Windows をカスタマイズするためのユーティリティ」という建付けのアプリなので、様々なユーティリティが羅列されているだけというシンプルなUIです。
どれも面白い機能なのですが、今回はKeyboard Managerを紹介させてください。
Keyboard Managerの設定
キーとショートカットのリマッピングができる機能です。キーボードのスペースバー横の一等地には「無変換」と「変換」という全く使わないキーがありますが、これらのキーを他に割り当てることができるようになります。例えば「変換」キーを「Ctrl」キーに割り当てれば諸々のショートカットキーを押しやすくなりますし、「BackSpace」や「Enter」を割り当てれば、タイピングが一気に楽になります。
では早速設定していきましょう!
ダッシュボード画面から「Keyboard Manager」をクリックし、設定画面を開きます。一番上に「Keyboard Managerを有効化する」という項目があるかと思いますので、そちらをオンにします。これで基本設定は完了です。次は実際にリマッピングをしていきましょう。
Keyboard Managerには「キー」と「ショートカット」の2種類のリマッピングがあります。既存のキーを別のキーに割り当てるのが「キーリマッピング」で、既存のショートカットに別のアクションを割り当てるのが「ショートカットリマッピング」です。
キーをリマップする
試しにスペースバーの右にある「変換」に「Enter」を割り当ててみましょう。
設定画面の「キーの再マップ」をクリックすると、下記のモーダルが表示されます。左側は「IME Convert」、右側は「Enter」をそれぞれ選択し、右上の「OK」を押せばリマッピングが反映されます。これで「変換」は「Enter」になったので、親指で「Enter」キーを押せるようになり、手首に優しいタイピングができるようになりました。
こちらの「キーの再マップ」では、キーボード上の物理的なキーのみでなく「Browser Back」のようなちょっとしたコマンドも割り当てることができます。「Disable」という項目もありますので「Num Lock」を無効化することもできます。
ちなみに私は「Alt (Right)」を「Ctrl (Right)」に割り当てています。基本US配列のキーボードを使用しているので、「変換」「無変換」キーはないのですが、スペースバー右横に全然使わない「Alt (Right)」があるので、これを「Ctrl (Right)」にしています。
こうすることで、「Alt (Right)」を押すと内部的には「Ctrl (Right)」が押されたことになるので、例えば「Alt (Right) + C」で「コピー」ができるようになります。
ショートカットをリマップする
次にショートカットのリマッピング機能を見ていきましょう。Windowsには、ショートカットとして登録されてはいるもののほとんど使われることのない「もったいないショートカットキー」がたくさんあります。例えば「Ctrl + C」はコピーのショートカットですが、実際に使うのは「Ctrl (Left) + C」がほとんどだと思うので、「Ctrl (Right) + C」には他のアクションを割り当てちゃいましょう。
試しにWeb開発でよく使う「ページのハードリロード」を「Ctrl (Right) + C」に割り当ててみます。ほとんどのWebブラウザでは「Ctrl + Shift + R」がハードリロードのショートカットになっていると思いますので、これを設定します。
これでホームポジションから手を大きく動かすことなくページのハードリロードができるようになりました。今回は割当先にショートカットを設定しましたが、もちろんキーボード上の単一キーを設定することも出来ます。私はこのショートカットリマッピング機能を色々こねくり回して、下記のようなリマッピング設定にしています。
「Alt (Right)」が「Ctrl (Right)」にリマッピングされており、「Ctrl (Right) + S」のショートカットに「左矢印」が割り当てられているので、「Alt (Right) + S」押下で「左矢印」が認識される、といった具合です。両手をホームポジションから離さずに「Enter」や「Backspace」、「Home」などを押すことができるのでとても便利です。
プログラムやURIを割り当てる
ショートカットキーに対してプログラムやURIを割り当てることも可能です。
開発者であればVS Codeなどのエディターを割り当てると便利なのではないでしょうか。コーディングをしていると大量のウィンドウに埋もれたエディターが見つからないなんてことがあるかと思いますが、このショートカットで簡単にエディターを取り出すことができます。
割り当てたアプリが既に起動している状態でショートカットを実行したときの挙動も指定することもできるので、「ウィンドウの表示」とすれば既に起動しているアプリをアクティブにすることができますし、「新しいウィンドウ」にすれば別プロセスとしてアプリを新しく立ち上げることができます。
ショートカットキーの割り当てをlocalhostにすれば、ローカル開発しているWebアプリやAPIの簡単な疎通確認ツールとしても使えます。
試しにHttpResponseを返すだけの簡単なDjangoアプリを作ってショートカットを使ってアクセスしてみます。他の設定の説明は割愛しますが、/test
というURLを叩いたらHttpResponseを返すようにします。
そして下記のように任意のショートカットに「http://localhost:8000/test」割り当てます。
そしてローカルサーバーを立ち上げ、設定したショートカットキーを押すと無事に疎通できていることが確認できます。
まとめ
今回はWindows PowerToysユーティリティの一つのKeyboard Managerを紹介しました。冒頭でもお伝えした通り、PowerToysはMicrosoftが開発するソフトウェアなので、社内利用のハードルがそこまで高くない一方で、便利な機能が多くあるので、使ったことがない方はぜひ一度使ってみてください!
次回は下記のユーティリティを紹介する予定です!
- Advanced Paste
- Color Picker
- Text Extractor
また、エコモットでは一緒にモノづくりをしていく仲間を随時募集しています。弊社に少しでも興味がある方はぜひ下記の採用ページをご覧ください!
デバイスソフトウエア開発部の米森です。