Does anyone know the API call I can use to change the keyboard layout on a windows machine to Dvorak? Doing it through the UI is easy but I'd like to have a script that I can run on new VM's to automate the process.
On Windows, you can also easily toggle between QWERTY and Dvorak by pressing ctrl + shift. Or, you can click where it says “ENG DV” at the bottom of your screen to toggle between layouts.
Switching to Dvorak isn't something I'd recommend to anyone who can already touch type using QWERTY. There's no conclusive evidence that it'll make you faster, and learning is a pretty painful process if you need to type with even the slightest sense of urgency.
From the Google Keyboard settings screen, now tap “Languages”. Activate Colemak and Dvorak in the active input methods. Now, in any app that utilizes text input, tap and hold the globe key in the lower-left corner until the change keyboard options appear. Now you can switch between various layout on the fly.
I may be four years late to the party, but did you ever find this:
Intlcfg Command-Line Options
I don't have Windows Vista (very bad habit, Windows), but looking at this page and also at Available Language Packs and Default Input Locales I reckon the command you want might well be:
intlcfg.exe -inputlocale:0409:00010409
for English (United States) language with United States Dvorak input locale.
You can do this via the registry. Just save it as a .reg file, and open it on the new VM. I believe this should do it for remapping to Dvorak:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "ScanCode Map"=hex:00,00,00,00,00,00,00,00,22,00,00,00,2d,00,30,00,24,00,2e,00,\ 11,00,33,00,33,00,11,00,12,00,20,00,34,00,12,00,1b,00,0d,00,0d,00,1b,00,16,\ 00,21,00,17,00,22,00,20,00,23,00,1a,00,0c,00,2e,00,17,00,23,00,24,00,14,00,\ 25,00,31,00,26,00,35,00,1a,00,30,00,31,00,13,00,18,00,26,00,19,00,2f,00,34,\ 00,28,00,10,00,0c,00,28,00,19,00,13,00,18,00,1f,00,1f,00,27,00,2c,00,35,00,\ 15,00,14,00,22,00,16,00,25,00,2f,00,10,00,2d,00,21,00,15,00,27,00,2c,00,00,\ 00,00,00
And if you want to go back:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "ScanCode Map"=hex:00,00,00,00,00,00,00,00,01,00,00,00,00,00,00,00
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With