On 2010-01-22 22:04, Miller Puckette wrote:
> Hi all,
> 
> As I understand it... post() puts out an entire line, and startpost(),
> any number of "poststring", etc, and then an endpost() also puts out
> one line.  The only ugly thing is that some old code uses "poststring"
> (etc) to APPEND text to a post().
> 
> I think it would be compatible with existing code to make "post" supply
> a newline at the end of teh message, to have "startpost()" be a post()
> but without the newline, and endpost() only put out the newline.  The
> only trick would be (for compatibility) that if a post() is followed
> by one or more poststring() calls, one should insert the poststring()
> text before the newline that was written by post(), e.g.:
> 
> post("foo")
> 
> --> foo\n
> 
> poststring("bar")
> 
> ---> foo bar\n
hmm, as a matter of fact, i just tried this, and it doesn't seem to be
true anyhow:
<code>
  endpost();
  post("foo");
  poststring("bar");
  endpost();
  post("bla");
</code>
results in
<output>
foo
 bar
bla
</output>
that is "foo\n bar\nbla"
i also did a not-so-quick grep over all the externals in the puredata
svn, and found that poststring() is only used 3 times in total, twice in
cyclone (where it is only used in startpost()->poststring()->endpost()
constructs), and once in zexy (where i have put plenty of manual "\n" in
the strings to be printed).
i don't hink that compatibility in printout is _very_ important, and
since it doesn't seem to work anyhow as expected, i guess it is a good
chance to remove cruft.
mfasrd
IOhannes