That doesn't sound like me, but in any case ...That was the original behavior. And then the beta testers (that would be you!) complained that the auto-quoting made it difficult to pass the returned value on to other functions / commands.
Not just "special" characters, but directories with spaces. I installed V22 in a directory named "TCMD V22" and that has necessitated changes to many of my scripts.That doesn't sound like me, but in any case ...
Commands will certainly have a problem if an unquoted file name contains special characters. What about variable functions? Are there ones that expect/require a file name but won't work correctly if it's quoted?
That's a very good argument for not having DO arguments automatically quoted.Not in functions that expect a file name (but I didn't do an exhaustive search). As expected, generic string functions (like @LEN) treat the quotes as significant.
v22.00.31_$*echo %_cmdspec D:\TCMD v22\TCC.EXE v22.00.31_$do var in "%_cmdspec" (echo %var & echo %@len[%var]) D:\TCMD v22\tcc.exe 19 v22.00.31_$do var in /L %_cmdspec (echo %var & echo %@len[%var]) D:\TCMD 7 v22\TCC.EXE 11 v22.00.31_$do var in /t"" /L %_cmdspec (echo %var & echo %@len[%var]) D:\TCMD v22\TCC.EXE 19