Chordian / sidfactory2

SID Factory II is a cross-platform editor for composing music that will work on a Commodore 64. It uses the reSID emulator and is currently in open BETA.
http://blog.chordian.net/sf2/
110 stars 13 forks source link

International keyboard mapping issue #188

Closed holovicc closed 3 months ago

holovicc commented 4 months ago

With non QWERTY layout keyboards SF2 is a real pain to use:

SF2 refers the keys on the keyboard by their label, eg what's written on them, instead of their position.

The piano keyboard does not use QWERTY keys because these letters associated with musical notes in any way, but because their position resembles the chromatic scale of the piano.

But when you have a QWERTZ keyboard like me (or any tricky international keyboards which is a mandatory if you want to use international letters correctly such as í ő ú and the likes), then note entering becomes a major pain: it certainly breaks the piano layout.

Here's how:

With a QWERTZ keyboard Y is at the Z and vice versa.

Thus Z enters note "C" instead of note "A", and Y enters note "A" one octave above the expected "C".

Current workaround might be that you change keyboard layout, which fixes the note entering issue (but becomes pain immediately if you go out from SF2 and try to type anything...!), but introduces another: you try to hit CMD+Z for undo, but that's now swapped to Y and will do nothing.

Solution is easy: SF2 should read the +position+ of the piano keys instead of their label.

It also relates to Vincenzo's request which i highly suggest, or wish myself too: supporting the DMC keyboard layout with direct octave selection using the numbers:

https://github.com/Chordian/sidfactory2/issues/118

micheldebree commented 3 months ago

Keyboard layout is configurable in the user.ini file:

Key.Input.Notes.Octave1             = "zsxdcvgbhnjm,l."
Key.Input.Notes.Octave2             = "q2w3er5t6y7ui9o0p"
micheldebree commented 3 months ago

Closed because keyboard layout is configurable