I seem to remember that some HIG revisions hinted that you shouldn’t use non-alphanumeric characters for keyboard equivalents. But that’s a thing of the past now and many applications love using non-alphanumeric characters like [ or \ for keyboard equivalents. As a consequence we have user interfaces whose keyboard equivalents make implicit assumptions about the keyboard layout you are using.
What’s particularly frustrating is not just that Apple do this nonsense themselves - but that other developers, mostly American, copy that without further thoughts. A consequence of that are keyboard equivalents which are somewhere between inconvenient and broken.
The most common case of this are keyboard equivalents for Back / Forward commands. When using the System in German, I get:
Problematic along the same lines are:
Most of these keyboard equivalents leave you screwed if you want to use the German localisation with an English keyboard layout (say for programming) where the Umlauts aren’t accessible.
Of course the problem also exists the other way round. While characters like [, ] or \ are easily accessible on English keyboards they are ⌥5, ⌥6 and ⌥⇧7 on a German keyboard for example. And thus mostly inaccessible. Different, but similarly awkward, finger gymnastics result from using most other non-English keyboard layouts.
If the basic examples weren’t enough, here are some more: Panic’s Coda, presumably a professional text editor, i.e. something where you may be more likely to use keyboard equivalents than elsewhere gives you
Panic’s Transmit - which unlike Coda has been localised (rather well) -, in comparison, uses
This list can go on and on, for example by looking at text justification
or at the trend to use keyboard equivalents including ⌘\ or ⌘Ü for showing/hiding status or progress bars.
I consider this situation a royal mess. And it makes it pretty much impossible to build ‘muscle memory’ for certain commands, you always have to think ‘what do I want to do’, ‘which application am I using’, ‘is the application localised’, ‘which quirky behaviour did they choose’ - making things rather impractical.
To improve this, I again suggest that developers use varying languages and keyboard layouts with their applications. And whenever I choke on such keyboard equivalents I am tempted to start using accented letters, just so English speakers can enjoy the same inconenience.
Even better: What about a ⌘☃ keyboard equivalent?