Macのキーバインドを変更してみた。 2014.03.07 11:46

Google日本語入力で設定できなかったCtrl+O

Google 日本語入力を使ってみた。に投稿したとおり、IMEをATOKからGoogle日本語入力に切り替えました。入力自体は快適なのですが、Google日本語入力の設定だけではIMEのON/OFFにCtrl+Oが使えませんでした。

システムのキーバインドを変更してみる

Ctrl+Oのキーバインドがシステムで使われているのではないかと思って、OSXのキーバインドを変更する方法を「osx キーバインド 変更」でぐぐって、テキスト編集のキー操作を自在にコントロールする - ザリガニが見ていた...。のサイトを見つけました。

/System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict
のファイルを設定すればいいようです。

StandardKeyBinding.dictの中身

このファイルをテキストエディタでそのまま開いても文字化けしていて見えない。Property List Editorで開いて、Text Property List形式で保存し直すとテキストエディタで内容を見ることができた。Ctrl+Oの部分は

	"^o" = (
		"insertNewlineIgnoringFieldEditor:",
		"moveBackward:",
	);

^がCtrlキーのことです。「カーソルの部分で改行して改行された行末にカーソルがある。」という設定がされています。

この設定を変えてみる。

Standarkeybinding.dictを直接編集することも可能ですが、システム全体に影響してしまうので、自分の設定を変えるだけなら、

~/Library/KeyBindings/DefaultKeyBinding.dict

に、新たな設定を書き込めばいいようです。~/Library/にはKeyBindingsというディレクトリはないので、このディレクトリを作って、DefaultKeyBinding.dictというファイルを作成して、新たな設定を書き込みます。

システムで割り当てられたCtrl+Oが影響していると思われるので、Ctrl+Oには何も割り当てないように、

{
	"^o" = "noop:";
}

と編集して保存しました。念のためマシンを再起動してから試してみました。

Ctro+Oで、、、「ひらがな」から「半角英数」には切り替わりますが、「半角英数」から「ひらがな」には切り替わりません。

設定を間違えているのかと思って、他のキーの組み合わせを変えてみました。Ctrl+hでバックスペース(カーソルの前の文字を一文字削除する)に設定されているので、"^h" = "noop:";と編集して、再度マシンを再起動しました。

再起動して、適当に文字を入力してからCtrl+hを入力すると、「ひらがな」モードのときも「半角英数」モードでもCtrl+hでバックスペースは効かなくなっていました。

設定は間違っていないようです、、、少しムキになってきたので、更に何か方法がないか探してみました。更に続きます(笑)

Google Apple OS X Posted by .(JavaScript must be enabled to view this email address)

最近の記事

ANAの旅行総合サイト【ANA SKY WEB TOUR】