Very few of us would have problems with our keyboards; unless you consider how hard it is to get Dorito bits out from between the keys, the average user isn’t likely to want to change how their keyboard functions. For those that do feel like a tweak is necessary, either because you use a special software that doesn’t work well with your current layout, or because you’re from a a different country where keyboards are just different, then KeyRemap4MacBook is a free keyboard remapping option for Mac users. The app has simple GUI that lists multiple options for your keyboard, many of which are function and key specific, and allow you to change how the keyboard function by simply checking an option.
The app downloads as an installer package and will require you to restart your system once installation is complete. It adds a square icon to the System Menu Bar, where you can access the app’s preferences from. There are only two relevant tabs that you need to visit as far as keyboard remapping is concerned. The first tab, Change Key, allows you to manipulate the behavior of the keys. The General menu is for setting the app’s behavior, while all others deal with the keyboard. Broadly speaking, you can change the kind of keyboard layout from QWERTY to Colemak, QWERF or ABCDEFGHIJ layout. Additionally you can modify how the Eject, Delete, Left & Right arrow and Mouse keys work. You can set up special preferences to suit a PC user, and enable special functions in apps like VMware Fusion, Terminal, Adobe apps, Finder, Firefox, Skype, TweetDeck and more.
From the Key Repeat tab, you can modify how long a key must be pressed for it to be repeated. The modification can be made for general keys and functional keys. Parameters such as the initial wait, the initial modifier wait, the delay threshold and the CursorMove to ScrollWheel rate, can be modified.
This app isn’t for the average users, since most of us are accustomed to the default keyboard behavior of our systems. This is a free answer for those that need to change their keyboard’s functionality, but don’t feel like opting for a paid solution.