I want to support as many keyboard layouts as possible, but I am unsure of a clean solution that will work well.
How does KeyPad presently work
KeyPad advertises itself as a US English keyboard. If you are on a Mac that uses a different keyboard layout (U.K. English) it still sends keys as if it were a US layout.
For this example if I type Shift-3 on the British keyboard layout (on the Mac) I see £, on the phone I will see “#”.
BUT: if you change the keyboard layout on the phone (change it from US English to UK English). Go to Settings | General | Keyboard | Keyboards Add New Keyboard… and select UK English. Then click on the world icon on the phone keyboard and make sure you are on the U.K. English keyboard the phone receives the key and does the translation correctly (to £).
To do the same thing with Android go to settings in the Keyboard | Languages and types | Manage input languages and select U.K. English (remember to remove US English).
Because of this feature being available on the Phone, I have not implemented anything specific for keystroke and language handling.
The Problem
Seeing what I am seeing using the default layout, it seems like I don’t need to fix anything.
I’m sure there will be people who disagree. I am looking for a conversation on this issue. From what I see, there is nothing for me to fix.
Remember that KeyPad will work exactly the same as a physical bluetooth keyboard that supports US english would on your phone.