I would like to "create" a fn key ( similar to what laptops have ) on a desktop keyboard. What I would like to do is to bind Capslock to a new custom key, so that I can add new shortcuts involving that key. For example, remapping the jkil keys to left/down/top/right keys. So when Capslock + J is pressed, a left arrow keypress is simulated. I cannot bind the capslock key to an existing key like Win/Shift/Ctrl/Alt, because it will cause conflicts in my text editor because of the additional custom functionality I have within it.


You should check out AutoHotKey. It can (obviously) create hotkey remappings, but also do so much more! For your case, it can also remap the right shift, alt, ctrl separately from the left, if you wanted something like RCtrl::j to be mapped to left arrow, leaving the left control key alone...


  • Hello and thank you for your answer. I did check it out before you reply, but I encountered an issue with the CapsLock key in particular. If you bind keys in combination with capslock (eg. Capslock & i:: up), pressing the Capslock key and then I will trigger the described action. Pressing the capslock key, however, at the same time with any other key, will toggle the capslock functionality (it stays on). The only way that I figured out, is to remap the capslock key to another key with something like SharpKeys, but I want to have just one script that handles everything. No multiple software. – wdGelwix Feb 10 '19 at 11:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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