pieter-degroote/UltimateKEYS

Important - Only use "BASIC LATIN" (codes 32 to 126) for Windows/Microsoft or Linux passwords !

pieter-degroote opened this issue · 8 comments

Make sure to use only "BASIC LATIN" characters (codes 32 to 126) for the Windows/Microsoft or Linux passwords.

Otherwise, it might become impossible to type any Unicode character higher than "Basic Latin" at the login screen/prompt !

This because a DIFFERENT keyboard layout might be active at the login screen (mostly US QWERTY) and the desired keyboard (with the additional higher Unicode characters) might NOT be present there in the list of keyboard layouts !

This affects all implementations :  AutoHotkey, MSKLC and Linux (XKB-X11).

Aside from that, this also affects using higher Unicode characters on any system-integrated keyboard layout and might result in being LOCKED OUT of your account(s) (both Windows and Linux).

Plus, you should ALWAYS make your admin/root password VISIBLE during modification !

So, if you update to a new version of a custom multilingual keyboard layout, sometimes it might not be available in the list of keyboard layouts at the login screen and you end up not being able to type your password which contains more advanced Unicode characters?

Does switching to an on-screen keyboard go around the issue? There's also a speech-to-text accessibility feature at the bottom corner of the login page. (I can't test properly this as I only use a PIN instead of a password for my Windows login.)

My bad, there's no speech-to-text, it's only Narrator.

I made a 'fail-safe test' in VirtualBox. The on-screen keyboard could not help me around this issue, as in most cases you only have US QWERTY at your disposal...

I had to revert to my snapshot from before.

I am not sure if an 'in-place' update of an MSKLC implementation is possible, but uninstalling the previous version beforehand can expose this kind of issue.

When using the option 'Ctrl+Alt+Del' -> 'Change a password', the AutoHotkey script will not be active, but an MSKLC implementation is still active there.

That way, AutoHotkey scripts on standard US QWERTY are safer in that situation.

From the other hand, you can also change the password in :

'Settings' -> 'Accounts' -> 'Sign-in options' -> 'Password'

and unfortunately, this will NOT protect you against it (both AutoHotkey and MSKLC).

Furthermore, a letter like 'ë' can also be typed as Alt + 0235, but a letters like 'ź' and 'ẞ' (capital Eszett) cannot be typed as an Alt code at the login screen.

That is why the correct way to update a keyboard layout is to install the new version first, then uninstall the old version. To use the new version, you just need to sign out and sign in back into Windows.

This issue has been disclosed on the website and README.md files.