キーバインドを変更したい
テキストエディットなどでctrl-hをデリートキー(back space)の代わりにしたいのですが、どうすればいいのでしょうか? 出来たらctrl-e,s,d,xでカーソル移動、ctrl-mでリターンなどにしたいです。ことえりのキーバインドも変えられたら嬉しいです。
# Mac OS X 10.2.1ですがメインはまだ9.2使ってます。
テキストエディットなどでctrl-hをデリートキー(back space)の代わりにしたいのですが、どうすればいいのでしょうか? 出来たらctrl-e,s,d,xでカーソル移動、ctrl-mでリターンなどにしたいです。ことえりのキーバインドも変えられたら嬉しいです。
# Mac OS X 10.2.1ですがメインはまだ9.2使ってます。
ZDNet Mac:COLUMN 【ソフト】
http://www.zdnet.co.jp/macwire/0209/30/c_digihibi.html
ことえりのキーバインドは、DeveloperToolsをインストールすれば
多少危険は伴いますが、比較的簡単に変更できます。
Terminalで/System/Library/Components/Kotoeri.*/Contents/Resources/Kotoeri.rsrcを
DeRezを使ってテキストに変換し、
data'imnu'(16384)とdata'imnu'(16385)の2つを変更、
Rezを使って再び元の場所へと戻します。
imnuリソースは最初の2バイトにメニュー項目数があり、
その後20バイトずつ各メニュー項目がおかれ、
キーボードショートカットはそれらの13,14バイト目です。
044Aならctrl+J、0648ならctrl+shift+Hといった具合に、
13バイト目はモディファイアキーマスクの合計値、
14バイト目はキーのASCII文字に相当します。
undefined
PowerBamboo,thumbさん、ありがとうございます。早速使ってみます。
# やっぱり同じこと考えてる人がいるんですね。
ことえりの方はメニュー項目だけなのでしょうか?
文節の区切りをかえる(ctrl-q,w)なども変更したいのですが
キーマップは変えられないのでしょうか?
リソース(今でもこう言うのかな?)探ってみますね。
入力中の未確定状態での呼び出しは、
どうやら同じファイルの'keyc'(128)に
定義されているようですが、詳細は分かりません。
とりあえず今テストして調べてみたところ
リソース最初の4バイトが項目数で、
その後8バイトごとに各コマンドが順番関係なしで並んでいるようです。
それぞれ最初2バイトがモディファイアキー
(shift:0x200,ctrl:0x1000,opt:0x800)と固定値0x001Bとの論理和または0000、
次1バイトは不明(0x80または0x00のどちらかがくる)で、
次がキーのASCII文字コード、残る4バイトが
trn1(カタカナに変換)やprfc(初期設定パレット表示)、
nphr(次の変換範囲へ)、ephr(変換範囲の延長)などの
イベントIDが入るらしいです。
ショートカットなしにするならそのまま8バイト全部消し、
リソース最初の項目数を修正するといいようです。
キーバインドを変更したい