Actually, the script should only react to modifier variations of the 1 key.
Which keyboard layout are you using?:
Code: Select all
; Hotkey F4 shows the keyboard scheme valid for the active window.
; The url calculation may not fit everywhere!
Lang := {0x4090409:"United States (en-US)", 0x8090809:"United Kingdom (en-GB)"
, 0x4070407:"Germany (de-DE)", 0x40C040C: "France (fr-FR)"}
; +-------------------------+-------------------------+
; | SubLanguage ID | Primary Language ID |
; +-------------------------+-------------------------+
; 15 10 9 0 bit
Return
F4::
ControlGetFocus Focused, A
ControlGet CtrlID, Hwnd,, % Focused, A
ThreadID := DllCall("GetWindowThreadProcessId", "Ptr", CtrlID, "Ptr", 0)
InputLocaleID := Format("0x{:04X}",DllCall("GetKeyboardLayout", "UInt", ThreadID, "Ptr"))
MsgBox,4,,% InputLocaleID " = " Lang[InputLocaleID] "`nWant to see your keyboard at http://kbdlayout.info ?"
LanguageID := Format("{:08X}", InputLocaleID & 0xFFFF)
IfMsgBox Yes
Run, http://kbdlayout.info/%LanguageID%
Return