lgarron / first-world

Issues that are not necessarily easy to report/fix, and are (generally) not a matter of life-or-death.
https://github.com/lgarron/first-world/issues
0 stars 0 forks source link

macOS `Contacts.app` ignores keyboard shortcut settings #138

Open lgarron opened 2 years ago

lgarron commented 2 years ago
  1. Go to System Preferences → Keyboard → Shortcuts → App Shortcuts
  2. Press + and add a shortcut for Contacts.app, such as:
    • ⌘E for Edit Card[^1]
    • ⌘. for Go to Next Card[^1]
Screen Shot 2022-10-05 at 00 58 09 Screen Shot 2022-10-05 at 00 58 50
  1. Open Contacts.app. (close first, if it was already open).
  2. Try the shortcuts.

Expected: the keyboard shortcuts work.

Observed: the keyboard shortcuts do not work, and do not even show up in the menu bar.

Screen Shot 2022-10-05 at 00 59 09

The same happens when the shortcut is set from the commandline. This will show up in System Preferences as a keyboard shortcut (after restarting System Preferences), but it will also not work in the app:

defaults write com.apple.AddressBook NSUserKeyEquivalents -dict-add \"'Edit Card'\" -string "@e"

I've set shortcuts for quite a few apps this way, and I've only ever experienced this issue for Contacts.app[^2].

My best (But still bad) guess is that the app is somehow confused with its mobile equivalent (which has the bundle ID com.apple.MobileAddressBook), and macOS has set it up so that the System Prefs keyboard shortcuts don't agree with the rest of the system which bundle ID(s) to use.

[^1]: Note: exact capitalization and spacing are important. In particular, (ellipsis) cannot be replaced with ... (three dots). [^2]: Although Lightroom CC has a different issue: https://github.com/lgarron/first-world/issues/139

lgarron commented 2 years ago

My best (But still bad) guess is that the app is somehow confused with its mobile equivalent (which has the bundle ID com.apple.MobileAddressBook), and macOS has set it up so that the System Prefs keyboard shortcuts don't agree with the rest of the system which bundle ID(s) to use.

I tried com.apple.Contacts (as well as com.apple.contacts and com.apple.addressbook) and that didn't help.