Trailing spaces and consecutives spaces are always removed correctly in my test, but leading spaces are never removed.
If that's correct, it means changing this would only affect people who were adding leading spaces on commands on purpose, knowing mIRC wouldn't trim them while it probably should.
The number of such scripts used today cannot be significant. With that in mind I would prefer to see those leading spaces trimmed where they aren't, a scripter is wrong if he uses that, I was myself using something like $remove($gettok($timer(x).com,2,124),else) to execute a command when finding this.
Really I see no reason why this shouldn't be fixed, there is no problem with backward compatibilities imo, there is nothing to support, using leading spaces to get $1- shifted is not useful in any way and should never have been used in the first place.
Adding a new command /options has more chance to break a script than fixing this issue has. Also, I'll fix all the script being broke by such a change
If it's not correct, in which situation are leading spaces removed?
Regardless of the issue, we do need a way to keep spaces, but it's not like we need that often, rather the opposite, so we should really be able to enable/disable the feature per command (unsure if that's what you meant).
More importantly, being able to disable the feature inside a 'line' would be even better, in the past, a $sp construst like $+ has been suggested, where mIRC would retain spaces inside two $sp:
//echo -a a b $+ $sp c d $sp
would echo "a b c d" or something like that.
I'm not sure if that's too complicated or not but seems like perfect to me, what do you think about it?