explaingit

randyrants/sharpkeys

6,881C#Audience · generalComplexity · 1/5Setup · easy

TLDR

A simple Windows app for remapping keyboard keys, make Caps Lock act as Ctrl, swap two keys, or disable a key entirely, all through a click-through interface with no registry editing required.

Mindmap

mindmap
  root((repo))
    Key remapping
      Pick source key
      Pick target key
      Type Key detection
      Write to Registry
    Limitations
      No key combos
      No mouse buttons
      No Fn keys
    Install options
      GitHub releases
      Microsoft Store
      winget
      Scoop
    Platform
      Windows x64
      Windows x86
      ARM ZIP
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Remap Caps Lock to act as a Ctrl or Shift key for a more ergonomic typing layout.

USE CASE 2

Disable a key you keep accidentally pressing, like Insert or Scroll Lock.

USE CASE 3

Swap any two keys on your keyboard without touching the Windows Registry directly.

Tech stack

C#.NET

Getting it running

Difficulty · easy Time to first run · 5min

Key remapping changes require a logout or reboot to take effect.

In plain English

SharpKeys is a small Windows utility that lets you change what any key on your keyboard does. For example, you could make the Caps Lock key work like a Shift key, swap the positions of two keys, or disable a key entirely. It does this by editing a specific Windows Registry value that controls key remapping, which has been part of Windows since Windows 2000. SharpKeys provides a simple point-and-click interface so you do not have to touch the registry editor directly. The application includes a list of common keyboard keys to choose from. It also has a Type Key feature: you click it, press the key you want on your physical keyboard, and SharpKeys identifies it automatically. The one exception is the Alt key, which Windows intercepts before SharpKeys can see it, so you have to find it manually in the list. Once you pick a source key and a destination key, you click Write to Registry, then log out or reboot for the change to take effect. A few important limitations apply. SharpKeys can only remap whole keys, not key combinations like Ctrl+C. It cannot remap mouse buttons. Keys that are handled entirely by the hardware before reaching Windows, such as most Fn keys and some media keys, cannot be remapped this way. The remapping applies at the machine level and affects all user accounts on that computer. SharpKeys is available from GitHub releases, the Microsoft Store, winget, and Scoop. The installer covers x64 and x86 Windows, ARM users should download the ZIP file instead.

Copy-paste prompts

Prompt 1
How do I use SharpKeys to make Caps Lock work as a Ctrl key on Windows 11?
Prompt 2
Disable the Insert key in SharpKeys so I stop accidentally toggling overtype mode.
Prompt 3
Install SharpKeys on Windows using winget, what is the exact command?
Prompt 4
What keyboard keys cannot be remapped with SharpKeys and why are they excluded?
Open on GitHub → Explain another repo

← randyrants on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.