Wrong shortcuts when using non-English layout

Hey! I’m using Aseprite beta in Windows 11 (also tried latest stable version with same result). Shortcuts working wrong when I use Cyrillic layout. And it looks like Aseprite kinda read wrong key: for example if I push “У” which is the same key with Latin “E” it read it as “C” (I can see what keys it read while remapping hotkeys). Can I do something with it?

i’m not aware of any other way than to assign a shortcut in windows to switch to an english keyboard. when i switch languages in windows other applications, for example photoshop, get confused too.

1 Like

Ah, so it’s a windows problem? I just switched from mac and there everything was perfect :upside_down_face:

yeah, welcome to the world of wonder :]]
as i understand it the app gets keys according to language/keyboard layout. so anytime i switch it and hit 1, the software thinks i hit + instead.
as for the C displayed incorrectly in shortcut settings, that’s the interesting issue. font used in gui doesn’t have proper characters and encoding will also be off, but the shortcut is also registered incorrectly… so there’s probably more going on works.
when inserting text via text tool, all is fine as far as i’m concerned.

If I understand it correctly, it’s more likely to be a library problem rather than a Windows problem. The OS just tells Aseprite which key was pressed, via a key code. These don’t know or care what keyboard layout you’re using, it’s up to the OS or program to translate them to text for display. It seems that the way Aseprite handles keys on Windows deals with layouts in an odd way. One, it seems to take layout into account instead of just looking at keycodes, and two, it seems to be outputting things with the wrong layout when displaying the text with some layouts. I had a go using the Russian Mneominic layout and that was an utter mess, the characters displayed were neither the QWERTY keys nor the correct Russian characters.

A related issue is that it seems to react to the character entered, rather than the key pressed. If I create a shortcut using a Swedish layout where the [ key is å, the shortcut will be for å and will be displayed as å, and this is treated as different from a shortcut using [ created using an English (US) layout. I press the same physical key while using an English (US) layout, the [ action is triggered, and the å shortcut is triggered if I press it while using a Swedish layout. This is not what I’d expect from a correctly implemented shortcut system…

I’ve also encountered the issue Olga_Galvanova mentioned with Photoshop, which seems to be rather similar, with Photoshop reacting to characters rather than key codes, although its treatment of Russian (at least the layout I tried) is a little more “sensible” - it just treats it as English QWERTY.

seems right. both photoshop and aseprite have shortcuts stored as utf-8 xml files (aseprite ui font however certainly isn’t utf-8 compatible).