KeyRemap4MacBook

キー入替でいろんなことができるようになるソフト
今回はこのソフトの設定について書いておく。
Windowsでは窓使いの憂鬱やその派生ソフトの「のどか」を使ってた。これらのソフトで何をするかというと、キーの入替。
キーの入替と言うと、よくあるのがCAPSキーとCTRLキーの入替。Windowsではあまり使い途のないCAPSキーよりもCTRLキーがAキーの横にきたほうが使い勝手がいい。
これだけなら、入れ替えを実施するソフトはいくらでもあるし、レジストリをいじるだけで実施するなんてことも可能。
 でも、窓使いの憂鬱はモディフィアキーを増やせるという点で一歩飛び抜けてる。(この機能をもったソフトはもちろん複数あるけど。)モディファイアキーってのは修飾キーでCTRLやSHIFTなど、単体だけではなにもしないけど、アルファベットと一緒に押すと役割が変わるキーのこと。たとえば、aキーを押すとaが表示されるけど、SHIFTキーと一緒に押すとaがAとなる。SHIFTだと大文字にするだけだけど、CTRLキーと一緒に押すとaキーは「全て選択する」という機能にもなる。この説明は当然のことなんだけど、入力するとキーボードの表示と異なる内容を実行するのが修飾キーと呼ばれるモディフィアキーの役目。
では窓使いの憂鬱や「のどか」ではどういうことができるかというと、さっきも書いたモディファイアキーの追加。キーボードのスペースキーの横に「変換」や「無変換」ってのがあるけど、使いこなしているひとはあまりいないと思う。ところが、こいつらをモディファイアキーとすることで、キーボードでの操作が格段に変わってくる。
 まずは「無変換」キー。無変換キーとh,j,k,lキーを押すと左、下、上、右と移動できるようにした。こうすることで、わざわざ右隅にある矢印キーを使わなくてすむし、マウスの使用頻度も減らせる。
 「変換」キーはCTRLキーや他のキーの代わりにした。「変換」+c,v,x,zでコピー、ペースト関連の操作ができるようにしたし、「変換」+tでTABキーに「変換」+eでESCキーになるようにした。こうすることで、動きにくい小指を酷使しなくてすむ。
 さらに他のキーを押さずに「変換」キーだけ押すと全角入力へ切り替わるようにした。これはトグルじゃないから、半角でも全角でもどちらでも全角になる。どっちかわからないけど、とりあえず押せば全角になるというのは、現在の状況をみなくていいから、わかりやすい。もちろん「無変換」キーだけ押すと半角に切り替わる。
 そのキーだけ押すときと、別のキーと一緒に押すときに違う効果がでるのを「SandS」と言ってる。これはSpace and Shiftの略で、スペースキーだけ押したら空白が入力されるけど、他のキーと一緒に押すとSHIFTキーと同じようになる機能のこと。便利なんで、この機能もいれてる。
 こうやって小指ではなく、親指を酷使する環境になったらえらい使い勝手がよくなった。
 このキー入替ソフトはLinuxではあまりうまく動かない。macではどうかなと調べるとKeyRemap4macbookというソフトがあった。
 このソフトは無料でありながら、非常に柔軟に入れ替え(リマップ)をすることができる。しかも、窓使いの憂鬱と違い代表的な入れ替え内容は準備されてるので、チェックをいれるだけでいけるようだ。
vimmerにとって垂涎のvimモードもあるようだけど、まだ怖くてそれはやってない。でも、Windowsのときと同じ使い勝手にすることができた。

<?xml version="1.0"?>
<root>
	<item>
	<list>
		<item>
			<name>Eisuu+hjkl to left/Down/Up/Right</name>
			<identifier>option.vimode_eisuu_hjkl</identifier>
			<autogen>--KeyOverlaidModifier-- KeyCode::JIS_EISUU, KeyCode::VK_MODIFIER_EXTRA1, KeyCode::JIS_EISUU</autogen>
			<autogen>--KeyToKey-- KeyCode::H, ModifierFlag::EXTRA1, KeyCode::CURSOR_LEFT</autogen>
			<autogen>--KeyToKey-- KeyCode::J, ModifierFlag::EXTRA1, KeyCode::CURSOR_DOWN</autogen>
			<autogen>--KeyToKey-- KeyCode::K, ModifierFlag::EXTRA1, KeyCode::CURSOR_UP</autogen>
			<autogen>--KeyToKey-- KeyCode::L, ModifierFlag::EXTRA1, KeyCode::CURSOR_RIGHT</autogen>
		</item>

		<item>
			<name>KANA to Modifier</name>
			<identifier>option.vimode_kana_hjkl</identifier>
			<autogen>--KeyOverlaidModifier-- KeyCode::JIS_KANA, KeyCode::VK_MODIFIER_EXTRA2, KeyCode::JIS_KANA</autogen>
			<autogen>--KeyToKey-- KeyCode::T, ModifierFlag::EXTRA2, KeyCode::TAB</autogen>
			<autogen>--KeyToKey-- KeyCode::E, ModifierFlag::EXTRA2, KeyCode::ESCAPE</autogen>
		</item>
	</list>
	</item>
</root>

一覧にないときはXMLに記載することで、実施することもできるとのこと。英数(winでは無変換)キーとh,j,k,lでの移動はさすがに記載されてなかったので、privateXMLを記入することにした。
あとはリストにある、コマンドとコントロールキーの入れ替えや、SandS、最後にセミコロンをエンターにするのもチェックを入れておいた。
セミコロンをエンターにするのは、一瞬聞くとえっ?と思うかもしれないけど、これが慣れると使いやすい。ちなみに、CTRL+;で「;」が入力できる。プログラミングしてなかったら;はあまり使わないから、特に問題は起きてない。mysqlのコマンド入力するときはちょっと注意してるかも。

これらの設定をすると快適な環境になった。
しっかし、Ommwriterに慣れるとスクリーンショットとか別にいいかと思ってしまうなぁ。
自分の備忘録としてこのblogは使えるのだろうか・・・