はじめに
やんごとなき事情(就職)により,2020年4月からWindowsを使うことになってしまったエンジニアです.
今まではずっとMacを使っていたので,キーボード配列や使えるキーバインドの違いから戸惑うことが多々ありました.
しかし,最近はようやくWindowsでストレスなく開発できるような環境を整えることができたので,その内容を共有したいと思います.
(なお,本稿はMacでJISキーボードを使っている方を想定しております.)
キーボード戦略
MacとWindowsの操作感の違いはキーボードの違いにあると思います.
上の画像のように,Ctrlキーの場所の違いや,存在するキー(Cmd/Windowsキーとか)も,IMEの切り替え方も違います.
これを解決するのが,快適に使うためのポイントではないでしょうか.
そこで,
- キーボード配列の設定
- キーバインドの設定
- IME切り替えの設定
について順番に設定をしていきましょう.
まずはキーボード配列をMacライクに
MacとWindowsのキーボードの一番の違いは,修飾キー(Ctrl, Alt, Windows, CapsLock)の場所です.
また注目すべきポイントは,MacでCmdキーを使って行う操作は,WindowsではCtrlキーを使う操作になっているということです.
以上を踏まえて,キー設定を変更していきます.
Change Keyによるキー設定の変更
変更にはChange Keyというソフトを使うと良いです.
ダウンロードし,.lzhファイルを解凍します.
ChgKey.exeというファイルが出現するので,右クリックから管理者として実行を選択してください.
すると,上のようにキーボードの画面が現れるので,
変更するキーを選択 => 変更後のキーを選択
の流れで設定を行っていきます.
また,キー設定が完了したら,メニューバーの「登録(R)」から登録の確定を必ずしてください.
登録をしないと,キー設定が反映されません.
設定は下の表の通りに行ってください.
変更するキー | 変更後のキー |
---|---|
Altキー | Ctrlキー |
左Windowsキー | Altキー |
Ctrlキー | CapsLockキー |
CapsLockキー | F13キー |
カタカナひらがなキー(右Windowsキーがない場合に設定) | 右Windowsキー |
ただし,F13キーはキーボード上にないため,Change Keyで変更するキーとしてCapsLockをクリック後,右上のScan codeを押し,0064
と入力してOKボタンを押してください.
参考:ChangeKeyを使用してWindowsキーをF13キーに変更する方法 - 情報科学屋さんを目指す人のメモ(FC2ブログ版)
ポイントはF13キーをCapsLockキーに割り当てること.
これが,後述するAutoHotkeyの設定で効果を発揮します.
AutoHotkeyでMacキーバインドを使えるようにする
Ctrl-FやCtrl-Bなどのemacs的キーバインドがテキスト入力で使えることは,Macの一つのアドバンテージだと個人的に思っています.
これが使えないのが苦痛で仕方ないので,AutoHotkeyというソフトを使って使えるようにしてしまいましょう.
AutoHotkeyのインストーラーをダウンロードし,いつもの通りインストールを行います.
その後,以下の内容をコピーし,MacintoshKeybind.ahk
など適当な名前で適当な場所に保存します.
/* カーソル移動のキーバインド */
F13 & P::Send,{Up}
F13 & N::Send,{Down}
F13 & B::Send,{Left}
F13 & F::Send,{Right}
F13 & A::Send,{Home}
F13 & E::Send,{End}
/* テキスト編集のキーバインド */
F13 & O::Send,{End}{Enter} ; 改行
F13 & H::Send,{Backspace} ; Backspace
F13 & D::Send,{Delete} ; Delete
F13 & K::Send,{ShiftDown}{End}{ShiftUp}^x ; キル(一行切り取り)
F13 & Y::Send,^v ; ヤンク(ペースト)
F13 & T::Send,{ShiftDown}{Left}{ShiftUp}^x{Right}^v{Left} ; カーソル前後の文字を入れ替え
/* ターミナルなどで使えるキーバインド */
F13 & L::Send,^l ; ターミナルの画面をclearする
F13 & C::Send,^c ; 中断: Ctrl-C
F13 & [::Send,{Esc} ; vimでコマンドモードに戻る用
/* アプリケーションを終了させる(Cmd-Q) */
Ctrl & Q::Send,!{F4}
/* ファイル削除: Delete */
RWin & BS::Send,{Delete}
/* 右シフト横のろキーを押したときに¥マークではなく,_が入力されるようにする */
vkE2::Send,_
そして,このファイルのショートカットをスタートアップフォルダに入れておきます.
すぐにこのキーバインドを使いたい場合は,.ahkファイルをダブルクリックして起動させてください.
これで,あなたもMacライクなキーバインドが使えるようになりました!
IME切り替えの設定
残る問題はIMEの切り替えです.
Macの英数やかなキーでの切り替えに慣れていると,Windowsの全角/半角キーが忌々しく感じます.
なぜ,あのような人里離れた場所にあるのか…
そこで,Windowsの無変換,変換キーがそれぞれMacにおける英数,かなキーの動作になるように設定をします.
まずは,タスクバーの右側にあるIMEのボタンの上で右クリックし,プロパティを開きます.
そして,詳細設定 => 全般タブを選択 => 編集操作の項目内の変更ボタンを押します.
すると,IMEのキー設定の画面が出てくるので,
- 無変換キーの入力/変換を「IME-オフ」に割り当て
- 変換キーの入力/変換を「IME-オン」に割り当て
これで,IMEの設定が完了です.
無変換/変換キーで自由にIMEの切り替えができるようになりました!
おわりに
以上で,WindowsマシンのキーボードをMacライクなキーボードにすることができました.
みなさんもこれで快適なWindows生活をお送りください.
ちなみに,私はMacで開発できることになったため,Windowsは卒業しました.