Keyboard layout requirements
In MuseScore 3.6 (and earlier) we've asked users to specify their keyboard layout as part of the first time setup process (AKA the "out of the box" experience).
I'd like to question whether the user's keyboard layout needs to be specified as part of MuseScore's first time setup process.
One of the potential issues here is compatibility with keyboard shortcuts, including specifically those used to specify note duration in note entry mode, as well as zoom keys (those using "–" and "+" keys, which tend to move around a lot across the various keyboard arrangements out there).
My findings thus far are:
The current master build of MuseScore 4 seems to recognise whatever keyboard layout the user is using across their entire operating system. Having tested various shortcuts across QWERTY, QWERTZ and Russian keyboard layouts (the latter tested by one of our in-house developers), we've found that keyboard shortcuts in MuseScore 4 seem to map correctly to whatever keyboard layout is recognised by the operating system at the time. So far, so good...
Testing on a French AZERTY keyboard gave rise to an interesting complication, because the numbers in the number row (used as shortcuts to specify note duration) must be accessed with the shift key (i.e. Shift+2 = 2, etc.). The implication here is that, where MuseScore recognises a French AZERTY keyboard, the user must use the shift key together with the corresponding number key to access note duration commands.
- A potential issue for French AZERTY keyboard users is that, while the keyboard shortcuts dialog might specify, for example, a shortcut for a 1/4 note as number row key "5", the user will in fact need to use two keys (shift+5) to trigger this shortcut. I wonder whether this is really an issue, however, as I suspect French AZERTY users will be familiar with needing to use the shift key to type a number.
- If this issue is particularly annoying, however, then MuseScore 3.6 does allow the user to specify the keyboard layout in the Advanced tab of the Preferences dialog (in addition to the first time setup). The user can currently, if they want, specify a US-QWERTY layout in MuseScore preferences, even though they are using a French AZERTY keyboard, and MuseScore would then trigger a 1/4 note duration when the user presses the "5" key on their number row (not "shift+5"). In this case, the user would then also have to know to use different keys other than the "Q" and "W" specified on their keyboards to move backwards and forwards through the note duration toolbar. This could get complicated...
- For this particular user case example, I would suggest retaining keyboard layout selection in the preferences dialog, perhaps making it easier to find and use by incorporating the dropdown list that we already have in the current setup dialog (see attachments) and porting it over to a logical place in preferences. The only drawback of this, however, is that, if the user changes their keyboard layout in the operating system, MuseScore might not recognise this change and could continue to behave according to whatever keyboard layout is specified in its preferences. This could be confusing for the user who doesn't know that this option exists. This might be simply fixed (or clarified), however, by adding a checkbox in preferences to allow MuseScore to override whatever keyboard layout is recognised by the operating system with whatever the user specifies in MuseScore preferences. Food for thought.
- Another case example might affect the user who toggles between two different keyboard layouts (as in fact I do!). The user in this case might have, for example, a QWERTZ keyboard on their laptop and an external QWERTY keyboard, which they use when connecting their laptop to an external display. In this case, I have found that switching keyboard layouts in my operating system is immediately picked up by MuseScore 4, and all shortcuts work as I expect them to on whatever keyboard I have under my fingers at the time.
I would be interested to know:
- Has anyone experienced any glaring compatibility issues with keyboard shortcuts and their keyboard layout of choice?
- Are there any other keyboards (beyond those mentioned above) that users have found to not map correctly to the designated default keyboard shortcuts? What has this experience been like, and have any workarounds been found?
- Are there any specific user cases (other than those listed above) that would necessitate the sort of setup whereby MuseScore needs to recognise a keyboard layout other than that used across the rest of the user's operating system?
To be clear, I'm not at all suggesting we remove the ability for the user to specify their keyboard layout in MuseScore 4 – only that we remove this information from the first time setup and improve how it can be found and used in the preferences dialog.
As an adjacent issue, we currently also ask users to specify the language in which they wish to use MuseScore. For similar reasons, I might suggest allowing MuseScore to follow whatever language the user has their operating system set to – and of course, making sure it is easy to change this at any stage in the preferences dialog.
I look forward to hearing your thoughts about this!