在输入两个热字符串字母后,应该会出现工具提示 -

在输入两个热字符串字母后,应该会出现工具提示 -

这是有效的 autohotkey 脚本。它从热字符串生成工具提示。我希望在输入两个字母后出现工具提示。请修改脚本,因为我无法做到这一点。

Loop, Read, %A_ScriptFullPath%
If RegExMatch(A_LoopReadLine,"^\s*:.*?:(.*)", line) ; gathers the hotstrings
hs.= line1 "`n"

Loop {
Input, out,V L1, {BS}
If out in ,,,`t,`n, ,.,?,! ; hotstring delimiters
ToolTip % str:= ""
else
ToolTip % RegExReplace(hs,"m`a)^(?!\Q" (str.= out) "\E).*\n" )
}

~BackSpace:: StringTrimRight, str, str, 1

::xnc::eccentric
::xnt::excellent
::xps::expertise

答案1

您需要检查输入字符串的长度 - 在本例中是变量字符串- 你可以用http://ahkscript.org/docs/commands/StringLen.htm命令 - 更改已在别的下面脚本的部分。

Loop, Read, %A_ScriptFullPath%
If RegExMatch(A_LoopReadLine,"^\s*:.*?:(.*)", line) ; gathers the hotstrings
hs.= line1 "`n"

Loop {
    Input, out,V L1, {BS}
    If out in ,,,`t,`n, ,.,?,! ; hotstring delimiters
        ToolTip % str:=""
    else
        {
         str.=out
         if (StrLen(str) > 1) ; means 2 or more, so if you want the tooltip to appear after 4 characters it will be > 3
            ToolTip % RegExReplace(hs,"m`a)^(?!\Q" (str) "\E).*\n" )
        }
     }

相关内容