如何使用Python Urwid进行类似UI的聊天?

e-s*_*tis 2 python console user-interface chat urwid

我可以使用gevent和zeromq实现聊天守护程序,但我想为其创建一个控制台UI。

我与ncurses的第一次尝试失败了,所以我尝试Urwid,发现该项目寿司正想正是我想要的:

Nigiri UI

我研究了源代码,但是由于不熟悉控制台UI编程,因此未能找出产生此结果的部分(特别是因为它使用了多个选项卡),而我想我必须使用connect信号

是否有人可以做到这一点?

我不需要整个程序,我可以自己处理通信,守护程序,选项以及所有其他内容。

只是设置UI的基础知识,在底部输入一些文本,然后异步通知顶部面板在不阻止底部输出的情况下添加一些文本。

谢谢

e-s*_*tis 5

在计算中,如果您不聪明,则必须耐心等待。我只是将旧的try / except关键字应用于我的编程方法:

  1. 从来源中删除与我的功能无关的内容
  2. 如果可以,请转到1,直到仅保留基本代码
  3. 如果它崩溃了,请理解这部分以及为什么它是必不可少的,然后用适合我需要的代码替换它,然后回到2

我只是精简了nigiri源代码,直到它适合一个文件为止。

有用。现在,我要弄清楚如何使urwid和zeromq主循环更好地协同工作。