Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I'm a Dvorak guy.

I recently installed a new machine at the inlaws who are not Dvorak people.

I stupidly selected Dvorak as my Input Method of choice while installing OS X.

Now, all of the users I created default to Dvorak and need to go through the manual process of removing Dvorak as their Input Method of choice and instead choosing U.S.

I have no idea how far reaching the implications might be. Could be that any time another user is added they will default to Dvorak.

Right now, I'd like to set the default back to U.S. How can I do that?

Behaviors I'm looking for include that when the Input Menu is not shown at the Login Screen, U.S. is the keyboard layout. Any future users created should default to U.S. with no Input Menu in the menu bar. Any users created already should have their default layout be U.S.

Thanks in advance!

share|improve this question

3 Answers 3

up vote 3 down vote accepted

If anyone else is looking to change the default keyboard layout, it can be changed by running the setup assistant again with sudo "/System/Library/CoreServices/Setup Assistant.app/Contents/MacOS/Setup Assistant".

share|improve this answer
    
I can confirm this still works in OS X 10.9.1. –  Mason Dec 18 '13 at 1:56

With the command sudo "/System/Library/CoreServices/Setup Assistant.app/Contents/MacOS/Setup Assistant", you have to create a new account for each of current users and do a lot of migration work.

For the current users with wrong keyboard layout, I recommend another way: sudo cp /Library/Preferences/com.apple.HIToolbox.plist /tmp/ sudo chmod 777 /tmp/com.apple.HIToolbox.plist plutil -convert xml1 /tmp/com.apple.HIToolbox.plist

Now open /tmp/com.apple.HIToolbox.plist in a text editor (e.g. vim or Emacs).

Throughout the file you will find several mentions of a KeyboardLayout ID key followed by an integer and KeyboardLayout Name followed by a string. Change these strings to the name of your custom keyboard layout and the id integers to the ID of your layout (the easiest way to find the right values is to compare with your user settings found in the file ~/Library/Preferences/com.apple.HIToolbox.plist

sudo cp ~/Library/Preferences/com.apple.HIToolbox.plist /tmp/my.plist plutil -convert xml1 /tmp/my.plist cat /tmp/my.plist

Also the value of the key AppleCurrentKeyboardLayoutInputSourceID must be changed accordingly (for this circumstance it's com.apple.keylayout.Dvorak). Again you can find this value in your local preference file.

Once these changes are done, save the file and go back to the terminal. To play it safe, you can create a copy of the original com.apple.HIToolbox.plist file, just in case you made an error and need to roll back. Then do the following:

sudo cp /tmp/com.apple.HIToolbox.plist /Library/Preferences/ sudo chmod 644 /Library/Preferences/com.apple.HIToolbox.plist

Exit the terminal, and restart the computer (logout is not sufficient: the file will not be reread). After restart, you should have your keyboard layout in the login screen. You may need to restart twice.

View Resetting Default Input Method in Mac OS as a refrence.

share|improve this answer
  1. From the Apple menu, choose System Preferences.
  2. Click Accounts to display the pane (or choose Accounts from the View menu).
  3. If the lock icon in the lower-left corner of the window is closed, click it, then enter the name and password of an administrator to unlock it.
  4. Click Login Options.
  5. Select the "Show Input menu in login window" checkbox.
  6. From the Apple menu, choose Log Out.
  7. At the login window, click the name or flag icon of the currently selected keyboard layout (it appears below the name of the computer), then select the desired keyboard layout. If you don't see the keyboard layout you are looking for, move the pointer over Other Sources, then select the keyboard layout from the complete list that appears

Hope this will help you out.

share|improve this answer
1  
Doing that does not seem to reset the default in any way. Just the default input for the Login Window. –  Tim Visher Dec 7 '10 at 16:09

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.