You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When using createHotkeyRecorder, the recorded hotkey is using the wrong format.
When I record a Shift+1 hotkey, it captures a Shift+! instead. Same happens for the option key; Option+1 captures ⌥ ¡.
Using the validateHotkey function, validateHotkey('Shift+1') is valid and has no errors and warnings, but validateHotkey('Shift+!') has this warning: "Unknown key: '!'. This may still work but won't have type-safe autocomplete."
Expectation
Recording Shift+1 should return Shift+1, not Shift+!
Your Minimal, Reproducible Example - (Sandbox Highly Recommended)
Screenshots or Videos (Optional)
Gravacao.de.Tela.2026-04-03.as.17.06.27.mov
Do you intend to try to help solve this bug with your own PR?
No, because I do not have time to dig into it
Terms & Code of Conduct
I agree to follow this project's Code of Conduct
I understand that if my bug cannot be reliable reproduced in a debuggable environment, it will probably not be fixed and this issue may even be closed.
TanStack Hotkeys version
0.7.1
Framework/Library version
Svelte 0.9.1
Describe the bug and the steps to reproduce it
When using
createHotkeyRecorder, the recorded hotkey is using the wrong format.When I record a Shift+1 hotkey, it captures a Shift+! instead. Same happens for the option key; Option+1 captures ⌥ ¡.
Using the
validateHotkeyfunction,validateHotkey('Shift+1')is valid and has no errors and warnings, butvalidateHotkey('Shift+!')has this warning:"Unknown key: '!'. This may still work but won't have type-safe autocomplete."Expectation
Recording Shift+1 should return Shift+1, not Shift+!
Code
Your Minimal, Reproducible Example - (Sandbox Highly Recommended)
Screenshots or Videos (Optional)
Gravacao.de.Tela.2026-04-03.as.17.06.27.mov
Do you intend to try to help solve this bug with your own PR?
No, because I do not have time to dig into it
Terms & Code of Conduct