Thinkpad X40とHHKB用の窓使いの憂鬱設定ファイル

Thinkpad X40にHHKB Professional(一般的にはHHKと略すようだが、公式に合わせてみる)を接続する場合、キー配列の違いが問題となる。これまではレジストリの編集によりキー配列の変更を行っていたが、そのつど再起動を必要とするこの方法は、面倒以外のなにものでもない。そこで、設定ファイルを読み直すだけでキー配置の変更が可能な「窓使いの憂鬱」を導入してみた。

(DLしたファイル名は適当に日付の部分を削ってほしい)

X40(英語キーボードに換装済み)用の設定は以下の通りとなる。

Emacsの操作を楽にするためCtrlAの隣に配置し、WinキーをCtrlが元あった位置に置く形になる。X40にはWinキーが物理的に存在しないのだが、Win+EでExplorer起動など、無くてはならないキーである。置き場所が無くなってしまったCapsLockは普段使わないNumEnterに配置した。

続いてHHKB用の設定だが、こちらはX40の配列に合わせる形となる。

これで標準的な英語配列になる。最上段右端のGraveAccentは、好みによってはDeleteにしても便利だろう。シンボル設定「DelOnface」で切り替えられるようにしてある。

これらの変更に伴い、いくつかのショートカットキーをFn無しで入力できるように定義してある。

Ctrl+Alt+Deleteをほかのキーで代替する場合、悪意のあるプログラムには十分注意する必要がある(ログインのダイアログなどが横取りされる可能性が生じるからだ)。有事の際はCtrl+Alt+DeleteFn+最上段右上、刻印は「`」)を使用し、物理的に入力すること。

なお、シンボル「OnX40」を使用すると、うっかりX40本体のキーボードでCapsLock+F(もちろんCtrl+Fを入力するつもりで)を押してしまった場合の救済措置のため、CapsLockCtrlに置換される。この場合、CapsLockShift+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配列を使用できる。もっとも、筆者はショートカットがバラバラになって混乱するため、結局使っていないが。

なお、これらの設定ファイルは主に英語キーボードのドライバ用である。日本語キーボードのドライバで使用すると動かないかもしれない。その点はご注意を。