cccec
cccec

Reputation: 53

Why are dead keys not working with some letters in AutoHotkey?

In an AutoHotkey script, why do dead keys not work with some letters? As an example, when running AutoHotkey with the following script:

#InstallKeybdHook
EndKeys = {LControl}{RControl}{LAlt}{RAlt}{LShift}{RShift}{LWin}{RWin}{AppsKey}{F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}{Capslock}{Numlock}{PrintScreen}{Pause}

<^>!`::
Input, SingleKey, L1, EndKeys
IfInString,SingleKey,a
Send,{U+00E0} ;à
IfInString,SingleKey,e
Send,{U+00E8} ;è
return
return

then pressing the combination of Alt-Gr & Grave, followed by an 'a', i get à, OK, but Alt-Gr & Grave, followed by an 'e' does NOT produce è.

The issue is not related to grave (`), the same thing happens with any other dead keys (like circumflex, acute, macron etc.)

In my particular case, the letters not working are: e y s d k n. Could it have something to do with the keyboard layout? (I am using a UK English). Any ways of approaching the issue to ensure the dead keys will work?

Thank you!

Upvotes: 1

Views: 568

Answers (1)

phil294
phil294

Reputation: 10892

In my particular case, the letters not working are: e y s d k n

Try reorganizing these letters. I find this very hillarious indeed. Please insert any expression of laughter yourself, for it would not be welcomed on stackoverflow if I did.

You forgot to include your %'s. It should be

Input, SingleKey, L1, %EndKeys%

Otherwise, only e, n, d, k, y, s will be recognized as EndKeys

Upvotes: 1

Related Questions