Why can I not set Safari keyboard shortcuts? Conflicts with secondary, unlisted Back/Forward commands

keybindingskeyboardmenu barsafarishortcut

I use and to move between tabs. I want to transfer this setting to Safari.

The default Safari keyboard shortcuts shown in the menu bar list [ and ] for Back/Forward:

Default keyboard shortcuts.

Despite those keyboard shortcuts, Safari also seems to use CMD-Left and CMD-Right for Back/Forward.

I can set my desired keyboard shortcuts in System Preferences > Keyboard > Shortcuts:

custom keyboard shortcuts set

This now works, partially. If the current tab has no Back/Forward history, the browser will navigate to the next or previous tab.

BUT, if the current tab does have Back/Forward history, my custom keyboard shortcuts do not work. Safari instead uses the default (but not listed in the menu bar) Back/Forward commands.

Why do these secondary keyboard shortcuts exist in Safari? Where can they be customized? How can they be removed?

macOS 10.13.6, Safari 12.0

Best Answer

It seems like this is a widespread issue. I tried redefining shortcuts such as creating new windows, but although the shortcut appears in the menu bar it doesn't actually work—Safari uses the default extension. This happens for other Safari menu bar items as well.

Sadly this doesn't seem to have been fixed even on Safari 14 (shipped with macOS Big Sur).

In order to overcome this strange limitation/bug, I use BetterTouchTool to set up custom keyboard shortcuts, and it works pretty well.