capsctrldays

2006-12-27 (水) [長年日記]

[Firefox] Firefoxの"C-l"でURLを入力しようとしてるのにIMEが有効になってるのが耐えられない。

このためだけにAHKを入れたのだ(malaさんが使ってると聞いて、前から入れようと思ってたんだけど)。コピペプログラミングだけど、まあ動きそう。

書き捨てのつもりが、なんか便利そげなので、メモしとく。「~」つけなきゃいけないのは、ちょっとハマった。

IME_CHECK(WinTitle)
{
    WinGet,hWnd,ID,%WinTitle%
    Return Send_ImeControl(ImmGetDefaultIMEWnd(hWnd),0x005,"")
}

Send_ImeControl(DefaultIMEWnd, wParam, lParam)
{
    DetectSave := A_DetectHiddenWindows       
    DetectHiddenWindows,ON                           

     SendMessage 0x283, wParam,lParam,,ahk_id %DefaultIMEWnd%
    if (DetectSave <> A_DetectHiddenWindows)
        DetectHiddenWindows,%DetectSave%
    return ErrorLevel
}

ImmGetDefaultIMEWnd(hWnd)
{
    return DllCall("imm32\ImmGetDefaultIMEWnd", Uint,hWnd, Uint)
}

~^l::
IfWinActive, ahk_class MozillaUIWindowClass
{
    ret := IME_CHECK("A")
    if %ret% <> 0 
    {
        Send, {vkF3sc029}   
     }
   return 
}