2012-01-22 7 views
3

特定のキーストロークがOS Xのアプリケーションで(control-apostrophe)を使用していないと報告したユーザーがいます。OS Xでアプリケーションに到達する前にキーイベントフローをデバッグする

私はいくつかのロギングを追加しましたが、私のアプリはkeyDownのためにNSEventを受け取ることはありません。
補助デバイスのユニバーサルアクセスを無効にしても、それが解決されませんでした。
システム環境設定のキーボードショートカットには、そのショートカットが使用されていません。
OSでキーストロークの経路をトレースして、私のアプリがそれを得ない理由を調べる方法はありますか?これはdtraceができることですか?

答えて

0

これは古い質問ですが、これを行う必要がある人は私が答えを出します。私は悪いことになっているkbショートカットを追跡する通常の方法を実行するつもりはありませんが、システムサービス、キーボードマエストロ、クイックシルバー、そして許可されているすべてのアプリケーションで設定しないようにする必要がありますkbカスタマイズ。これを最初に確認してください。 sys環境設定でたくさんのkbショートカットが設定されていない場合は、plistファイルを削除してシステムのデフォルトを新しい状態に戻すことを検討することをお勧めします。 com.apple.symbolichotkeys.plistを検索し、これを削除してください。これで問題が解決しない場合、またはplistを削除したくない場合は、dtraceのiosnoopコマンドを端末から実行してください。これは、すべてのことが起こっているだけです。キーと^ cを押して出力を停止し、出力を検査します。これをテキストファイルに出力してgrepの魔法を実行することもできますが、これは正しい方向に向いているはずです。