Here are some examples from an AHK v1.0 list of commands with square brackets removed:
Code: Select all
;initial comma:
Control, Cmd, Value, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlClick, Control-or-Pos, WinTitle, WinText, WhichButton, ClickCount, Options, ExcludeTitle, ExcludeText
ControlFocus, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlGet, OutputVar, Cmd, Value, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlGetFocus, OutputVarWinTitle, WinText, ExcludeTitle, ExcludeText
ControlGetPos, X, Y, Width, Height, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlGetText, OutputVar, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlMove, Control, X, Y, Width, Height, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlSend, Control, Keys, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlSendRaw, Control, Keys, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlSetText, Control, NewText, WinTitle, WinText, ExcludeTitle, ExcludeText
;no initial comma:
Control Cmd, Value, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlClick Control-or-Pos, WinTitle, WinText, WhichButton, ClickCount, Options, ExcludeTitle, ExcludeText
ControlFocus Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlGet OutputVar, Cmd, Value, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlGetFocus OutputVarWinTitle, WinText, ExcludeTitle, ExcludeText
ControlGetPos X, Y, Width, Height, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlGetText OutputVar, Control, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlMove Control, X, Y, Width, Height, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlSend Control, Keys, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlSendRaw Control, Keys, WinTitle, WinText, ExcludeTitle, ExcludeText
ControlSetText Control, NewText, WinTitle, WinText, ExcludeTitle, ExcludeText
At a glance, I find the first example far more readable, even though I'm quite familiar with all of these command names.
In fact I find the lower example dizzying. One possibility is that I'm automatically scanning right to find the first comma, to confirm that I'm looking at a command, and each time I look at one of the lines I do this ... that is very dizzying. Also the command name and parameter 1 sort of blur into one entity, without the comma, making it harder to read.
What just me said is correct, you could use the function style instead, but I might have to look at or work with someone else's script.
If someone gave me such code, with no initial commas, I'd be tempted to 'correct' it, to add in the initial commas, however, if AHK v2 makes it impossible to do this, then obviously I can't do it.
I was not initially against 'no initial commas' per se, but considered the pros and cons, and gained some experience with them, by going over Coco's AHK v2 functions for AHK v1, which I've amended and appended as AHK v2 has seen new updates. I.e. I maintained his coding style of no initial comma (and indents of 4 spaces instead of a tab).