In a nutshell, it's the way KiX interprets the command line.

with
"string" + @MACRO1@MACRO2 + "String", Kix ends the command with @Macro1, and probably prints Macro2 and the lines that follow. If you had the macros in the string, it would work. Outside the string, if you did
? "sting" @M1@M2 "string"
it would work, but when you're building a parameter list for a command or function, you need to explicitly contatenate (+) each component. That's why it works with the "+" and not without it.

Glenn
_________________________
Actually I am a Rocket Scientist! \:D