Utility Spotlight: Tweak Your Keyboard
The Microsoft Keyboard Layout Creator lets you customize the keyboard layout for yourself or any of your users.
Not happy with your keyboard layout? Need to change the layout for a specific user or purpose? You can easily tweak any keyboard layout with a free tool called the Microsoft Keyboard Layout Creator (MKLC).
The MKLC lets you define your own keyboard layout so you can enter specific symbols and other characters with a single keystroke. You can also set up a keyboard layout to support foreign-language characters. You can build a new layout from scratch or modify an existing one based on layouts for U.S. English and a variety of other languages.
The MKLC is a 32-bit app, but you can run it on either 32-bit or 64-bit versions of Windows. It supports Windows Server 2003, Windows XP, Windows Vista and Windows 7. Also, you’ll need the Microsoft .NET Framework 2.0 or higher.
You can use any keyboard layouts you create on either 32-bit or 64-bit systems and you can package individual layouts to deploy them to multiple computers, so you won’t have to install the program on each computer.
Download the MKLC from the Microsoft Download Center. Run the MSKLC.exe file, and you’ll go through the tool’s installation wizard. Then you can launch the program from its shortcut at the All Programs Start menu.
Total Keyboard Control
The MKLC will display a typical keyboard layout, highlighting the keys you can remap and the ones you can’t (see Figure 1). You can’t change the Backspace, Tab, Caps, Return, Shift, Ctrl and Alt keys, but all the other keys are fair game, including the Function keys. You can also remap various shift states—keys you press in combination with the Shift, Alt+Ctrl or Ctrl keys.
Figure 1 The Microsoft Keyboard Layout Creator will show you which keys you can and cannot change.
You can start by building a new keyboard layout, but it’s easier to load an existing keyboard based on a specific language. Click the File menu and choose Load Existing Keyboard. Selecting US will load U.S. English. You can also choose from a number of other layouts, including Arabic, French, Greek, Hebrew and Russian. Depending on your language choice, the keys will display their assigned characters.
On the keyboard layout, click the key you wish to reassign. A small dialog box will appear displaying the current key. You can then change it to another key accessible on your physical keyboard. You’ll probably want to change it to a key that’s not easily accessible, such as a symbol or a letter with an accent.
In this case, using the Windows Character Map can be helpful. Click the Start Button. Go to All Programs, Accessories, System Tools, and select the shortcut for Character Map. In the Character Map, choose the font set you wish to use. Click the character you want to assign to your keyboard layout and then click the Select button and Copy.
Return to the MKLC and press Ctrl+V to paste the new character into the field for the existing key. Then click OK. You should now see the new character appear in your keyboard layout. As one example, you can replace the letter “a” with an “á” if you wish to consistently use the character with an accent (see Figure 2). If you want to assign an uppercase version of the same character, click the checkmark for Shift in your layout and then paste the uppercase version; for example, Á.
Figure 2 You can use the Microsoft Keyboard Layout Creator to create character accents.
You can even assign characters to use a shift state. To assign a character activated by pressing the Alt+Ctrl keys, click the checkmark in front of Alt+Ctrl on your keyboard layout. Then click the key on the layout that you wish to remap. Choose the character you want to use from Character Map and then select and copy it. Back in MKLC, press Ctrl+V to paste the character into the assigned key. As one example, you can use the “q” key along with Alt+Ctrl to assign the copyright character “©.”
As you modify the keyboard layout, you’ll want to avoid replacing any existing Windows keyboard combinations. Therefore, it’s safer to use the Alt+Ctrl combination than to use the Ctrl key in conjunction with other keys.
After you’ve remapped all the keys you want, you’ll need to validate your new layout. Click the Project menu and select Validate Keyboard. If all the remapped keys work well, the MKLC will let you know that verification succeeded. If not, it will prompt you to view a log file with details on any warnings. Depending on the warnings you receive, you may need to correct or modify your layout.
You can then test your keyboard layout by typing the new keystrokes. Click the Project menu and select Test Keyboard Layout. A blank screen will appear for you to type the new keys you’ve created to ensure that they all work.
Now you can name your revised keyboard layout. Click the Project menu and select Properties. Type the name in the Name field, up to eight characters with no spaces. Then save the layout by clicking the File menu and selecting Save Source File. Choose a name and location to save the .klc file. You can then load this file at any time to make further changes by clicking the File menu and choosing Load Source File.
After you’ve finished building the keyboard layout, it’s time to create the actual installation package. Click the Project menu and select Build DLL and Setup Package. The MKLC will build a Windows Installer package and then prompt you to view the contents of the directory. You’ll find subdirectories with DLL files for the various Windows platforms along with .msi files and an overall setup.exe file.
You can try out your keyboard layout by running the setup on a test machine. Then you can deploy the package to specific computers on your network or domain. After installation, the Language Bar will appear on the Windows Taskbar. Selecting the Language Bar will let you switch back and forth between your new custom keyboard and the standard keyboard layout.
Lance Whitney is a writer, IT consultant and software trainer. He’s spent countless hours tweaking Windows workstations and servers. Originally a journalist, he took a blind leap into the IT world in the early ’90s.