把过长的行分割成一系列短行
可以把过长的行分割成一系列较短的行来提高可读性和可维护性. 这样不会降低脚本的执行速度, 因为在脚本启动时这些短行会在内存中合并起来.
方法 #1
: 以 "and", "or", ||, &&, 逗号或 句点
开始的行会自动合并到其前一行 (在 v1.0.46+, 除了 ++ 和 -- 外其他所有的 表达式运算符
开头的行也会如此). 在下面的例子中, 第二行会自动附加到首行, 因为它以逗号开始:
FileAppend, This is the text to append.`n; 这里可以使用注释.
,
%A_ProgramFiles%\SomeApplication\LogFile.txt; 注释.
同样地, 下列几行也会合并成单行, 因为最后两行以 "and" 或 "or" 开始:
if (Color = "Red" or Color = "Green" or Color = "Blue"; 注释.
or
Color = "Black" or Color = "Gray" or Color = "White"); 注释.
and
ProductIsAvailableInColor(Product, Color); 注释.
三元运算符
也是个不错的选择:
ProductIsAvailable := (Color = "Red")?
false; 我们没有任何红色产品, 所以不用那么麻烦去调用函数.
:
ProductIsAvailableInColor(Product, Color)
尽管在上面的例子中缩进不是必须的, 但它可以显示出哪些行属于上一行从而提高代码清晰度. 并且, 可以不必在单词 "AND" 和 "OR" 开始的行加上额外的空格; 程序会自动处理这些. 最后, 可以在上面例子中任意行的末尾或行与行之间添加空行或 注释
.
方法 #2
: 这种方法用于合并大量的行或不适合方法 #1 处理的行. 此方法对 自动替换热字串
特别有用, 但它也可以用于命令或 表达式
中. 例如:
Var =(Line 1 of the text.Line 2 of the text. By default, a linefeed (`n) is present between lines.); 示例 #2:
FileAppend,
; 此时逗号是不能缺少的.
(A line of text.By default
, the hard carriage return (Enter) between the previous line and this one will be written to the file as a linefeed (`n).By default
, the tab to the left of this line will also be written to the file (the same is true for spaces).By default
, variable references such as %Var% are resolved to the variable's contents.), C:\My File.txt