Remapping SHIFT + SPACE to an underscore (_)

I found this question and was so excited when I found out I could remap my whole keyboard with a really simple Microsoft product called Keyboard Layout Creator.

My problem: Keyboard Layout Creator doesn't allow me to modify the space bar with any "shift state" keys (e. g., Ctrl, Ctrl + Alt, and Shift).

Characters assigned to the SPACE KEY in any shift state must be spacing characters

I want to remap Shift + Space to an underscore (_).

This would be really helpful for me, because my database names are all formatted with underscore separators (e. g., this_is_a_database_name), and I think it'd be faster with this key combination than Shift + -.


Solution 1:

This is possible with AutoHotkey:

  1. Download and install the latest version.

  2. Create a new script called underscore.ahk with your favorite text editor.

  3. Write the following in the file and save it:

    +Space::Send _
    
  4. Double-click the file to run the script.

  5. If you wish, copy the script (or a link to it) in the Startup folder.

Pressing Shift + Space now inserts an underscore.

Solution 2:

I had been looking for a solution for this for a while, but didn't want to download AutoHotkey. I found that Microsoft publishes a Windows extension for super users called PowerToys that includes a Keyboard Manager that can facilitate the shortcut.

Example setup in Keyboard Manager:

Example setup in Keyboard Manager

The upside is that this program has some other cool things that you might enjoy, but make sure you take the time to go disable things you don't want.