title: Any way to get TStringList.CommaText to not escape commas with quotes?
body: <p>I'm doing some work with code generation, and one of the things I need to do is create a function call where one of the parameters is a function call, like so:</p>
  
  <pre><code>result := Func1(x, y, Func2(a, b, c));
  </code></pre>
  
  <p>TStringList.CommaText is very useful for generating the parameter lists, but when I traverse the tree to build the outer function call, what I end up with looks like this:</p>
  
  <pre><code>result := Func1(x, y, "Func2(a, b, c)");
  </code></pre>
  
  <p>It's quoting the third argument because it contains commas, and that produced invalid code.  But I can't do something simplistic like StringReplace all double quotes with empty strings, because it's quite possible that a function argument could be a string with double quotes inside.  Is there any way to make it just not escape the lines that contain commas?</p>