2

ユーザー固有の keyBindings .dict ファイルは次の場所にあります。~/Library/KeyBindings/

AppKit特定のアプリケーションの別のバインディング ファイルを別のディレクトリ (アプリ固有) で探すように(開発者として) どのように指示できますか。これは、テキスト操作以外の機能のためである可能性があるため、ユーザー固有のものをオーバーライドする必要はありません。

これは、次の理由で役立ちます。

  1. システムの残りの部分のユーザー設定を台無しにすることなく、アプリの keyBindings を変更します (特に、オブジェクトが必ずしもテキスト入力オブジェクトではない場合)。
  2. にない追加のアクション メソッドを追加するNSResponder

Cocoa イベント処理開発者ガイド (68 ページ) からの引用。強調は私です。

NSResponder メソッドの interpretKeyEvents: を呼び出すことで、Cocoa のテキスト入力管理システムにイベントを渡すことができます。入力管理システムは、押されたキーを関連するすべてのキー バインディング ディクショナリのエントリと照合し、一致する場合は doCommandBySelector: メッセージをビューに送り返します。それ以外の場合は、insertText: メッセージをビューに送り返し、ビューはこのメソッドを実装してテキストを抽出して表示します。

4

1 に答える 1

2

私はそれが可能だとは思わない。「関連するすべてのキーバインディング辞書」についてのちょっとしたことは、 と を参照しているだけだと思い/System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dictます~/Library/KeyBindings/DefaultKeyBinding.dict

于 2015-03-03T11:39:19.267 に答える