Number pad keybindings removed?


I notice the latest release of Atom has removed support for keybindings on the number pad.

Is there some way we can get them back? I rely on a couple of these heavily for everyday editing.




I think the key bindings aren’t removed, just renamed. They used to be named transitionally with a prefix like num-soandso, and now they are named exactly as their non-numpad equivalents.


Thanks. Does that mean that (say) numpad “+” and main keypad “+” keys can’t be distinguished in a keybindings settings file?




Good question, don’t know.
Have a read through the related issues linked on this PR to learn what exactly they did.
But I think Atom now simply leaves those key bindings as native, so whatever your OS’s Chromium would do with them.
Presumably that means that + means +, no matter if on the numpad or elsewhere.


Yes, the intent of the change was to not have to distinguish between the number pad keys and the non-number pad keys. I’m pretty certain this also means that it is not possible to do so.


So I’m new to atom and it looks like this decision was already made but by removing the ability to distinguish a key press on the number pad that you eliminate the possibility of creating a keymaps like the Brief. Brief in particular used number pad +, -, * for cut copy and undo functions, it’s very efficient and once it’s stuck in your head it’s hard to get out (I know I’ve tried). Perhaps there could be a configuration setting to allow the number pad keys to be differentiated.

Matt S.


I’d be happy to build my own version of Atom if it meant I could have access to the keypad keys back, but I’m not sure yet how practical that would be.




Can you map them to something Atom can recognize in your system OS?


On windows, at least, a workaround is the AutoHotkey app.

For example, add to the AutoHotkey.ahk config file:

#IfWinActive ahk_exe atom.exe
NumpadAdd::Send ^c
NumpadSub::Send ^x
NumpadMult::Send ^z
Insert::Send ^v

It should be apparent, but this maps
pad+ -> ctrl-c
pad- -> ctrl-x
pad* -> ctrl-z
insert -> ctrl-v

This translation occurs ONLY if the corresponding key is pressed in Atom - other programs are unaffected. There are other options to make the changes everywhere.