2015年10月12日月曜日

WindowsでEmacsふうのキー操作にした場合のCtrlキーの割り当て

先日、
Windows 10(64bit)でEmacsふうキーバインドにする
http://www.sakashita-net.jp/2015/10/windows-1064bitemacs.html
で、keyhacというツールを使ったことを書きました。設定は、
Windows の操作を emacs のキーバインドで行うための設定 (keyhac版)
http://www49.atwiki.jp/ntemacs/pages/25.html
を利用しました。
Emacsふうキー操作とWindowsのショートカットの割り当ては、どうしてもぶつかってしまいます。そのため、上記の設定では、以下のように解決しています。
Windows のキーを入力する方法は以下の4通りが可能となっています。
  • 本設定で置き換えしていないキーは、Windows 本来のキーがそのまま入力される。(Ctrl-C など)
  • 右の Ctrlキー(RC-)や右の Altキー(RA-)と組み合せて入力する。
  • LC-q を入力した後にキーを入力する。(この場合、LC-q の後に入力する Ctrlキーや Altキーは、左右どちらのものでも構いません。)
  • Ctrlキー + [A-Z] の入力に限るが、Shiftキー(S-)と併せて入力する。(今回追加した設定。操作性が良いので追加しました。)
 私は、Windowsのショートカットを利用する場合には、右Ctrlキーを使っていたのですが、残念なことに私が使っているSurface Pro 3のキーボード、Surface Type Cover(英語配列)では、右Ctrlキーがありません。そこで、レジストリ設定で、
  • Caps Lockキーを左Ctrlキーに
  • 左Ctrlキーを右Ctrlキー
に割り当てています。
レジストリ設定は以下のようです。
REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,1D,E0,1D,00,1D,00,3A,00,00,00,00,00
この設定については、次の記事を参照してください。
[無変換]キーに[Windows]キーを割り当てる
http://news.mynavi.jp/column/winxp/181/