这是有效的 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" )
}
}