Caution: The posts below this one refer to a >10 years old method that no longer works. This first post has the "new" instructions (since 2010).
The following have been provided by the community to setup the in-game software keyboard to use different language (typing) keyboards. I can't test these myself, so they're provided as-is, but hopefully they'll be useful.
If you would like to provide a mapping for another keyboard, post here and I'll keep the top-post updated.
Instructions:
Hold your Shift key while launching Synthesia.
Select "System.SoftwareKeyboardMapping" from the list.
Paste any of the following into the "Value" box.
That's it. The next time you run Synthesia after closing the config tool, the software keyboard should be bound to the correct keys for your keyboard.
NOTE: If your new mapping uses the Z or X keys, you may also need to adjust the "Shift Input Octave Up/Down" shortcuts on the Settings → Shortcuts screen inside Synthesia.
Here's a working file for italian keyboards. So far I haven't seen any other layout than this on any PC in all of my life; so I think this one will work for everybody.
ONLY FOR WINDOWS
Open the notepad and copy all text below (without lines):
--------------------------------------------------------------------------------------------------
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Synthesia]
"Software Keyboard Mapping"="123456789ABCDEFGHIJK"
--------------------------------------------------------------------------------------------------
paste it in the notepad
setup your keyboard as you wich like this (just replace letters by keys to be used)
letters JK will change the keys position (J=left - K=right)
save this file as Keyboard.reg then double click to activate it
Let me add how to update these on a Mac, too. All you have to do is open a terminal window and type the following (using the same scheme from the image above):
Hmm... I wonder if it's an encoding thing. If there is some alternative to the \\U00xx notation... I'll have to peek around.
Eventually when I make it to "User-assignable Input" (currently #7 on the list), I guess I'll have to store key codes or something instead of the characters. If anything, it'll have to get more sophisticated because you'll be able to assign MIDI controllers (knobs, jogs, wheels, etc.) and (maybe) even game controller input to whatever. So, it'll be a more interesting construct storing this stuff to begin with.
I've only had the mac for a day and a half so i haven't figured out all the quirks yet, but in windows you can have multiple languages defined and per-application layout setting. Is there anything similar to mac? if so, I could set it to be US layout so that the keys "translate" to the same as the default setup.
I added the US keyboard, started synthesia, tasked out, changed the norwegian flag to USA flag and ; and ' is now getting typed instead of ø and æ. Not too convenient, but nevertheless it's a workaround
It seems I am too stupid to do that. ^^ Well, there is no "System.SoftwareKeyboardMapping"... I don't find it at the Advanced Options. There are only:
"Bank Selcet" Fix
SysEx messages
Discard notes that never end
Use a unique channel.... AND
"Hard" reset MIDI
PLeeeeease help me, I need the german keyboard... That's annoying -.-