Invalid macros inside strings regardless of SetOption() should simply be taken as literal text. It is unreasonable to expect KiX to determine invalid macros embedded within strings, period. So that leaves only macros outside of strings which should IMHO throw an error. In my opinion, KiX is too forgiving on unquoted (space or non-quote character delimited) strings but that argument is for another day.