Mac OS X: Keybinding DefaultKeyBinding.dict Problems

By Xah Lee. Date: . Last updated: .

This page documents some problems of using OS X's DefaultKeyBinding.dict keybinding scheme. If you don't know what that is, see: Creating Keyboard Layout in Mac OS X.

The system does not work in all applications and they do not work for some key combinations. The following are some reasons and problems.

Does Not Work in All Applications

The system does not work for Apps that is written in Carbon framework.

It works for Cocoa apps, but not all Cocoa apps will use your new keybindings. Examples of applications that do not use your keybinding (As of ):

Examples of applications i've tested that do use your new keybinding:

Does Not Work for All Keys or Actions

Even in applications that support the DefaultKeyBinding.dict, not necessarily all definitions with special keys work. For example, ⌥ option with any of “e u i n `” does not work. Also, some ⌘ command key you cannot override. For example, ⌘ command with any of “z x c v” won't work.

I don't have a complete list of keys that cannot be overridden, nor did i find a official doc that explains why in detail. The closest i found is:

Note that some function keys are handled at a lower level and are never seen by your application. They include the Volume Up key, Volume Down key, Volume Mute key, Eject key, and Function key found on many iBook and PowerBook computers.

[from http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSEvent_Class/Reference/Reference.html#//apple_ref/occ/instm/NSEvent/keyCode]

Unicode Symbols with Customized Option+‹key› Layout Not Reflected in Keyboard Viewer

If you have defined 【⌥ option+‹key›】 to insert Unicode chars, Keyboard Viewer does not show your new keymap.

Cannot Remap Modifier Keys

The DefaultKeyBinding.dict scheme is not capable of remapping modifier keys. (such as swapping {⌘ command, ⌥ option}.)

However, in OS X 10.4, you can switch modifier keys to any other in 〖System Preferences ▸ Keyboard & Mouse〗. For more detail, see Mac: Swap Control, Caps Lock, Option, Command Keys.

Cannot Function as Key Macro

It seems to me, you cannot use it to define a key macro. For example, you might want set F1 to type a key combo such as 【⌘ command+Tab】.

Did i $save$ you from getting a brick?

$5 me, at patreon
or paypal to xah@xahlee.org

If you have a question, put $5 at patreon and message me.

  1. Ergo Keyboards
  2. PC Keyboards
  3. Fun Keyboards
  4. Keypads
  5. Do-It-Yourself
  6. History
  7. Design
  8. Layout
  9. Keybinding
  10. Typing
  11. Key How-To
  12. Mouse
  13. Trackball
  14. Trackball History
  15. Misc
  16. Blog