I broke my laptop and had to buy a new one with a new keyboard that I am struggling to get familiar with, especially with the keys like home, page-up, page-down and end, which aren't standardized at all.

I found myself doing this for like the 5th time in the last several years, and I think it is really annoying.

Is there an app that can reliably map one key to another? By reliably I mean that key mapping works with Shift, Alt, and other modifiers.


Windows 7, Samsung Chronos 7

  • Hmm, this is offtopic for Serverfault. Perhaps Superuser will be more helpful?
    – cjc
    Jul 15, 2012 at 0:12
  • It would also really help to include information about the OS, applications, etc... anything relevant, else answers would just be guesses.
    – jscott
    Jul 15, 2012 at 0:14
  • just did, check it out Jul 15, 2012 at 0:18
  • What about the original key, do you want them to remain as is or be swapped with the target key?
    – Synetech
    Jul 15, 2012 at 0:38
  • 2
    Related: superuser.com/questions/430906/…
    – iglvzx
    Jul 15, 2012 at 7:09

5 Answers 5


Microsoft Keyboard Layout Creator is an excellent tool for creating custom keyboard mappings.

The Microsoft Keyboard Layout Creator (MSKLC) extends the international functionality of Windows 2000, Windows XP, Windows Server 2003, Windows Vista, and Windows 7 systems by allowing users to:

  • Create new keyboard layouts from scratch
  • Base a new layout on an existing one
  • Modify an existing keyboard layout and build a new layout from it
  • Multilingual input locales within edit control fields
  • Build keyboard layout DLLs for x86, x64, and IA64 platforms
  • Package the resulting keyboard layouts for subsequent delivery and installation
  • What is "this"? Please edit your question to provide more context.
    – iglvzx
    Jul 15, 2012 at 6:55
  • All you need to do is click the link, it's pretty self-explanatory for there on in.
    – Will
    Jul 15, 2012 at 6:56
  • 13
    Yes, I know. But think about it this way: if the link stops working (i.e. link rot), your answer is no help. You can't google "this" and find more information on the tool you suggested. :)
    – iglvzx
    Jul 15, 2012 at 7:04
  • 3
    This app is not an option for Dell laptop with Windows 7. It cannot map Page Up/Down and Shift keys :-( Jan 16, 2014 at 12:24
  • This is utterly useless. It can't remap the entire keyboard.
    – LtWorf
    Jul 23, 2016 at 14:13

There is an excellent tool for remapping keys for Windows Platform known as SharpKeys.

Sharpkeys is supported on Windows XP/2003/2000/Vista/7.

Another software is KeyTweak.

  • Sharpkeys allows us to tweak caps/shift/ctrl keys, when Microsoft Keyboard Layout Creator says they are unassignable.
    – Hugo H
    Jul 31, 2016 at 16:28
  • As of 2016-12-22 SharpKeys is reported as having a virus by both Chrome and Firefox running on a Win7 laptop. Dec 23, 2016 at 3:47

Try AutoHotkey. Its configuration syntax isn't the greatest, but it's very flexible.

  • I am sorry I am not a hell of a programmer, how do I map the "page down" to the "end" key? Jul 15, 2012 at 1:06
  • 1
    Read the documentation around Send, specifically {PgDn} and {End}.
    – user3463
    Jul 15, 2012 at 4:35
  • 2
    If you are just mapping one key to another, you don't need the Send command. See this related question and its answer: superuser.com/questions/430906/…
    – iglvzx
    Jul 15, 2012 at 7:28
  • The syntax for this particular purpose is really simple: just one line Capslock::Ctrl makes Capslock become a Control key. Here is the doc: autohotkey.com/docs/misc/Remap.htm
    – user
    Apr 16, 2016 at 10:26
  • And, in contrast to SharpKeys and KeyTweak, no reboot is needed.
    – user
    Apr 16, 2016 at 10:34

For Mac OS X, Karabiner is a great remapping tool that enables you to create profiles for different keyboards and layouts. For Windows, there are many good remapping tools, such as AutoHotKey, hotkeycontrol, KeyMapper, keyremapper, KeyTweak, klm2000, MSKLC, and sharpkeys.

However, my own preference is ATNsoft Key Manager, which is highly intuitive and powerful. With Key Manager, you can create profiles for different keyboards and layouts. It does not make changes to the Windows Registry, and you can change profiles without logging out or rebooting. It even allows you to create a Fn key, which I have used extensively in my profile of a KBP V60 keyboard remapped to a HHKB/Mac layout under Windows 8.1.


http://www.autohotkey.com/ can is a powerful solution. You can remap keys and create modifiers keys using scripts like

;Use Capslock as a modifier and not as capslock anymore
    Gui, 99:+ToolWindow
    Gui, 99:Show, x-1 w1 +NoActivate, Capslock Is Down
    keywait, Capslock
    Gui, 99:Destroy

;Write functions for keys while capslock is beeing hold here
#IfWinExist, Capslock Is Down

;Use right and left shifts to toggle capslock
RShift & LShift::
    SetCapsLockState, % (State:=!State) ? "On" : "Off"

LShift & RShift::
    SetCapsLockState, % (State:=!State) ? "On" : "Off"
  • There shouldn't be a + before NoActivate
    – Born2Smile
    Nov 1, 2016 at 21:14

Not the answer you're looking for? Browse other questions tagged .