Windows输入法 驯服 - 提示词上屏

遇到了问题?请先进行搜索(中文和英文),然后在此提问

Moderators: tmplinshi, arcticir

amwihgu
Posts: 10
Joined: 08 Sep 2020, 04:43

Windows输入法 驯服 - 提示词上屏

13 Oct 2023, 01:03

在(外企)公司的电脑上打中文,长期因为嫌弃微软输入法的功能性而用了一些绿色版的AHK-based输入法,如影子输入法。但后来渐渐发现也都有不少bug,逐现在决心回到windows自带的输入法(微软五笔),图一个稳定省心,对于功能的缺失,我在试图用AHK被上,剩下的就忍忍。并克服一些小的问题。
已经驯服:
1. 数字后的点号自动为小数点而非句号:viewtopic.php?f=27&t=120876
2. 中文状态下,按SHIFT ' (即打") 出来一对方括号并光标退一格,英文状态下则不影响

Code: Select all

isEnglishMode(){
    hWnd := winGetID("A")
    result := SendMessage(
    	0x283, 0x001, 0,, "ahk_id " DllCall("imm32\ImmGetDefaultIMEWnd", "Uint", hWnd, "Uint")
    )
    return result == 0
}

$+'::{
    ; shiftPressed := true
    ; KeyWait, vkDB ; 等待Shift + ' 键释放
    ; shiftPressed := false

    ; 获取当前输入法状态
    ; IMEStatus := GetIMEStatus()
    
    if (isEnglishMode())
    {
        ; Send "{Raw}--"
        SendText "`"" 
	;SendInput "{Shift}"
    }
    else
    {
        
        
        SendInput "「」"
        SendInput "{Left}"
    ;SendInput "{Shift}"
    }
return
}
3. 禁用了shift space全角半角切换:

Code: Select all

+Space::
{
	return
}
但着实有一个问题我还是想挣扎着驯服一下:
当我给输入法SHIFT+字母打了一个大写后,再按数字键盘 (比如我想输入A123),数字键盘的输入被视为我在选备选词,而不是输入。我按下shift+ a, 1,2,3后出来的只有A23
这个给我不少困扰。
我在想是不是可以用一脚本继续驯服?按数字键能让备选状态的东西直接上屏呢?

谢谢。
WKen
Posts: 183
Joined: 21 Feb 2023, 00:01

Re: Windows输入法 驯服 - 提示词上屏

14 Oct 2023, 09:08

不知道,也许检查组合键和输入法

Code: Select all

~Shift::send "{Shift down}"
Shift Up::
{    
	if subStr(A_PriorKey, 2) != "Shift"
	   ToolTip "组合键"
}

Return to “请求帮助”

Who is online

Users browsing this forum: No registered users and 16 guests