Thinkpad X40とHHKB用の窓使いの憂鬱設定ファイル
Thinkpad X40にHHKB Professional(一般的にはHHKと略すようだが、公式に合わせてみる)を接続する場合、キー配列の違いが問題となる。これまではレジストリの編集によりキー配列の変更を行っていたが、そのつど再起動を必要とするこの方法は、面倒以外のなにものでもない。そこで、設定ファイルを読み直すだけでキー配置の変更が可能な「窓使いの憂鬱」を導入してみた。
(DLしたファイル名は適当に日付の部分を削ってほしい)
X40(英語キーボードに換装済み)用の設定は以下の通りとなる。
- CapsLockを左Ctrlに置き換え
- 左Ctrlを左Winに置き換え
- NumEnterをCapsLockに置き換え
Emacsの操作を楽にするためCtrlをAの隣に配置し、WinキーをCtrlが元あった位置に置く形になる。X40にはWinキーが物理的に存在しないのだが、Win+EでExplorer起動など、無くてはならないキーである。置き場所が無くなってしまったCapsLockは普段使わないNumEnterに配置した。
続いてHHKB用の設定だが、こちらはX40の配列に合わせる形となる。
- BackSpaceをReverseSolidus(\)に置き換え
- ReverseSolidusをBackspaceに置き換え
- EscをGraveAccent(`)に置き換え
- GraveAccentをBackspaceに置き換え
- NumEnter(Fn+Enter)をEscに置き換え
これで標準的な英語配列になる。最上段右端のGraveAccentは、好みによってはDeleteにしても便利だろう。シンボル設定「DelOnface」で切り替えられるようにしてある。
これらの変更に伴い、いくつかのショートカットキーをFn無しで入力できるように定義してある。
- Shift+Ctrl+GraveAccent(元Esc)をShift+Ctrl+Escに(タスクマネージャーの起動)
- Ctrl+Alt+BackSpace(元GraveAccent)をCtrl+Alt+Deleteに(お馴染みのアレ)
Ctrl+Alt+Deleteをほかのキーで代替する場合、悪意のあるプログラムには十分注意する必要がある(ログインのダイアログなどが横取りされる可能性が生じるからだ)。有事の際はCtrl+Alt+Delete(Fn+最上段右上、刻印は「`」)を使用し、物理的に入力すること。
なお、シンボル「OnX40」を使用すると、うっかりX40本体のキーボードでCapsLock+F(もちろんCtrl+Fを入力するつもりで)を押してしまった場合の救済措置のため、CapsLockがCtrlに置換される。この場合、CapsLockはShift+Pauseに移動される。
Emacs風味のキーバインドは窓使いの憂鬱に標準で付いてくるemacsedit.mayuを編集して使用している。邪魔なメッセージを削除し、xyzzyのキーバインドに合わせていくつかのコマンドを追加した。
my_default.mayuは完全に一から書き起こした。標準default.mayuは使用しないキーバインドが多く、予想外の動作に驚くことが多いからだ。若干面倒だが、使用するアプリケーションに合わせて自分で設定していく方が確実である。気をつけるべき点は、標準のマッピングがEmacsEdit
になっているため、窓使いの憂鬱を使用しないアプリケーションではGlobal
ではなくてKeymapdefault
を使う必要がある(Global
は親マップが&OtherWindowClass
なため、それ自身に定義されていないキーバインドがあるとEmacsEdit
を参照してしまう)。
dvorak.mayuはDvorak配列用の設定ファイルだ。窓使いの憂鬱にも同じようなものが付いてくるが、key
で設定されていないので微妙に使いにくい。そこで109用のDvorak配列設定ファイルと同じように、def subst
で定義し直してみた。シンボル「UseDvorak」を与えることでDvorak配列を使用できる。もっとも、筆者はショートカットがバラバラになって混乱するため、結局使っていないが。
なお、これらの設定ファイルは主に英語キーボードのドライバ用である。日本語キーボードのドライバで使用すると動かないかもしれない。その点はご注意を。