将控制台消息放入消息框中

时间:2015-11-14 23:14:47

标签: puredata

有没有办法将Pure Data Pd Windows控制台消息放入补丁中的消息框?我试图将错误消息重新发送到补丁中,以便补丁可以对它们做出反应。

1 个答案:

答案 0 :(得分:4)

这样做的唯一方法(甚至是Pd-vanilla)是:

  1. 将所有发布/错误消息发送到stderr(带有-stderr启动标志)
  2. 将stderr重定向到stdout
  3. 使用脚本捕获stdout,重新格式化并通过网络将其发送回Pd(最好是UDP)
  4. 添加[netreceive]以获取消息。
  5. 类似以下内容:

    $ pd -stderr 2>&1 | while true; do pdsend 9999 localhost udp; done
    

    并在Pd中添加以下内容:

    [netreceive 9999 1]
    |
    [route error:]
    |
    [list prepend set]
    |
    [list trim]
    |
    [  (
    

    现在每当Pd打印一行以“error:”开头时,该行将出现在msgbox中。

    警告:这有效地抑制了Pd控制台上的所有消息。