给定以下模板 .ahk 文件:
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
#Hotstring EndChars `n
::td:: //TODO - some string
1)我输入“td”
2)我按下回车键
并触发定义的文本。但同时按下“enter”,它会带我进入新行。
期望的行为:
1)我输入“td”
2)我按下回车键
并触发定义的文本没有被带到下一行。
答案1
您可以像这样修改单行:
:o:td:: //TODO - some string
或者您可以添加以下行以使其影响文件中的所有热字符串:
#Hotstring o
来自帮助文件:
O:生成替换时省略自动替换热字符串的结束字符。当您希望通过仍然需要结束字符来保持热字符串的明确性,但实际上不希望结束字符显示在屏幕上时,这很有用。例如,如果 :o:ar::aristocrat 是热字符串,则输入“ar”后跟空格键将生成没有尾随空格的“aristocrat”,这允许您将单词变为复数或所有格,而无需退格。使用 O0(字母 O 后跟零)关闭此选项。