
Simon Michael
Unfortunately it will still hang if darcs emits something it can't parse. An emacs process-filter is used to drive an interactive darcs command, like an expect script. The process-filter can receive darcs output in random chunks, so it's hard to distinguish a parse failure from partial output, unless the output has a recognisable prefix, which some of it does not (eg darcs amend's.) I'm not sure what a more robust way to drive darcs looks like.
Maybe i'm not understanding the problem, but cannot you just accumulate the output in an auxiliary variable and parse the ouput as a whole once the darcs process finishes? Thanks a lot for working on darcsum, btw! jao -- There are two ways to write error-free programs; only the third one works. - Alan Perlis, Epigrams in Programing