WindowsのキーバインドをMacっぽくする

ここ2年くらいMacで生活してたんだけど、ちょっとWindowsを使ってみたらキーバインドがしんどい。
MacはCommandキーとCtrlキーでMacのとUNIXの世界を上手に分けていることがわかったので、このオペレーションに近いことをWindowsで実現してみたい。
最初に、odawaraのキーボードオペレーションは一般的ではないかもしれないので注意事項を。

  • 日本語キーボードユーザー(入手性がいい、キー数が多い方がカスタマイズできるからいい)
  • 右のCtrlを使ってない(昔から)
  • Windowsキーを使ったショートカットを使ってない(Winキーがないキーボードを愛用してるから)
  • 無変換、変換、カタカナひらがなキーを使ってない(というか何のために付いてるのか知らない)
  • ATOKを使っている。MS-IMEとか使い方を知らない
  • ATOKのCtrl+Pどうしてるの?→諦めた。どうしようもないときはF9する

それでは今回やったこと

  • AltキーをCommandキーっぽく使う
  • Ctrl+H、FBPNJでバックスペース、カーソル移動、エンター
  • 無変換/変換キーで日本語入力OFF/ON
  • Ctrl+SpaceでWindowsキー(Spotlightっぽく*1 )

1.レジストリをいじってキーマップを変更する
次で書くAutoHotkeyでも変更できるのかもしれないけど、メンドそうなのでとりあえずレジストリで変えれるところは変えておく。
ソフトはKeyCtrlを使う。管理者権限で実行しないと書き換えができないので注意。
http://homepage2.nifty.com/DSS/KeyCtrl.htm
これで、

  • CapsLockを左Ctrlに変更(これはいつものこと。今回のためにやったわけではない)
  • 左Altとカタカナひらがなキーを右Ctrlに変更


のように変更する。
CapsLockの変更は一般常識。2.の変更はCommandキーとして置き換え。Windowsの場合はCtrl+なんとかでショートカットがだいたい動くので、この置換をやるだけでCommandキーっぽく動作する。これで実現できないものは後ほど対応。

2.AutoHotkeyで必要なオペレーションを追加していく
AutoHotKeyを使うとショートカットとかを簡単にいじれるらしい。
http://www.autohotkey.com/
次の動作を作成した。

  • 左Ctrl+Hでバックスペース
  • 左Ctrl+FBPNでカーソル移動
  • 左Ctrl+JでEnter
  • ↑でFBPNのショートカットが動かなくなるので、これをCommandキーに割り当て
  • Altキーを置き換えちゃったので、Alt+Tabが使えないので対応
  • WindowsにはCtrl+Qでアプリ終了というコマンドがないので、Ctrl+QをAlt+F4の動作とする
  • Ctrl+SpaceでSpotlight的にランチャーを使いたい。ので、Winキーを押したことにする。

設定ファイルは以下のようになった。

^h::Send {Backspace}
^b::Send {Left}
^f::Send {Right}
^n::Send {Down}
^p::Send {Up}
^j::Send {Enter}

RControl & b::Send ^b
RControl & f::Send ^f
RControl & n::Send ^n
RControl & p::Send ^p
RControl & j::Send ^j

RControl & Tab::AltTab

RControl & q::Send +!{F4}

LControl & Space::
KeyWait Alt
KeyWait Ctrl
Send {RWin}
return

3.ATOKの変更で日本語入力OFF/ONをMacっぽくATOKのプロパティから
キー・ローマ字・色->キーカスタマイズ->キーを検索
で検索。
変換キーで日本語入力ON
文字未入力にだけチェックをするのがポイント。これ以外にチェックすると日本語入力ONの選択肢が出ない。

無変換キーで日本語入力OFF
こちらはどんな状況でも日本語入力OFF

これで完成。だいたい思い通りの動きをするようになった。
1つだけできなかったのはTrackPointのスクロール方向を逆にすること。MacはLionにしているので本当は逆にしたいんだけど、やりかたがわからなかった…
MacWindowsもあまり詳しくないので全体的にツッコみ歓迎です。
ちなみにMacではRealForce89U+MagicTrackpad、WindowsではTrackPointキーボードを使っています。

東プレ NG01B0 REALFORCE91UBK

東プレ NG01B0 REALFORCE91UBK

Apple Magic Trackpad MC380J/A

Apple Magic Trackpad MC380J/A

レノボ・ジャパン ThinkPad USB トラックポイントキーボード(日本語) 55Y9024

レノボ・ジャパン ThinkPad USB トラックポイントキーボード(日本語) 55Y9024

*1: Spotlightをランチャーとして使ってるから。WindowsならWinキーでプログラムの検索ができる