Because DCC CHAT and SERV windows are both named =samenickname, and it's possible to have multiple DCC CHAT windows open to the same nick, "/echo =$nick message" isn't guaranteed to echo to the correct window, instead showing in whichever of the =samenickname windows was opened first. And $window(=$nick).wid would also return the wrong number, and if you have 2 dcc chat windows open to someone, or a dcc-chat and dcc-fserve, then //echo -a $window($active).wid shows the same number in both editboxes.

With something like $eventwid or $wid.event the correct window could be targeted like "/echo @ $+ $window(@ $+ $eventwid).wid message"

It would also be nice to have $window(@number).name to find out the window name associated with a .wid

The syntax shown for /help ON OPEN is confusing because it combines the syntax for ON OPEN with unrelated syntax for ON CLOSE. This makes it looks like ON OPEN requires the matchtext field, the same way it requires the windowtype field, and makes it seem as if it's possible for @custom to trigger ON OPEN. From the examples using ON OPEN without matchtext, it's not obvious that the matchtext field is optional for query windows, and can be present for other window types only if the event handler isn't a 1-liner:

on *:OPEN:*:*:{ echo test $scriptline $event }

/help says * is a valid windowtype for ON OPEN, but the above event handler tries to execute an alias named :{ generating a server error, for all window types except for query. If the echo is moved down to its own row, then there's no error generated. and it does execute the echo correctly after generating the server error.

It's possible to have an alias named :{ to prevent this, but you'd need to give it an unmatched end-brace to prevent the Ctrl+H warning, like:

alias :{ echo -s test }