用户特定的keyBindings.dict文件位于:~/Library/KeyBindings/
中
您(作为开发人员)如何告诉AppKit
在另一个目录(特定于应用程序)中查找特定应用程序的另一个绑定文件。这不需要覆盖用户特定的,因为它可以用于除文本操作之外的功能。
这可能有用,原因如下:
- 在不干扰用户的情况下更改应用程序的keyBinding系统其余部分的设置(尤其是对象不一定是文本输入对象)
- 添加
NSResponder
中找不到的其他操作方法
引用《Cocoa事件处理开发人员指南》(第68页)。重点在于我。
它可以通过调用NSResponder方法interpretKeyEvents:将事件传递给Cocoa的文本输入管理系统。输入管理系统根据所有相关键绑定字典中的条目检查按下的键,如果匹配,则向视图发送doCommandBySelector:消息。否则,它会向视图发送一条insertText:消息,视图会实现此方法来提取和显示文本。
我认为这是不可能的。我认为"所有相关的密钥绑定字典"只是指/System/Library/Frameworks/AppKit.framework/Resources/StandardKeyBinding.dict
和~/Library/KeyBindings/DefaultKeyBinding.dict
。