Как сделать чат, как пользовательский интерфейс, используя Python Urwid?

Я alreay может реализовать демонов чата с помощью gevent и zeromq, но я бы хотел создать для них консольный интерфейс.

Моя первая попытка с ncurses потерпела неудачу , поэтому я попробовал Urwid и выяснил, что проект nigiri идет именно так, как я хотел:

Пользовательский интерфейс Nigiri

Я изучил исходный код, но, не знакомый с программированием на консольном UI, мне не удалось найти часть, которая давала этот результат (особенно потому, что она использовала несколько вкладок), хотя я думаю, что мне нужно играть с сигналом подключения .

У кого-нибудь есть фрагмент, который может это сделать?

Мне не нужна вся программа, я могу обрабатывать общение, демоны, варианты и все остальное самостоятельно.

Просто основы для настройки пользовательского интерфейса, введите текст внизу и асинхронно уведомите верхнюю панель, чтобы добавить текст, пока он не блокирует нижний вывод.

благодаря

При вычислении, если вы не умны, вам нужно быть терпеливым. Я просто применил старый старый ключ try / except к моему методу программирования:

  1. удалить что-то из источника, который не относится к моей функции
  2. если все в порядке, перейдите к 1, пока не останется только основной код
  3. если он сбой, понять эту часть и почему это необходимо и заменить ее кодом, который соответствует моим потребностям, а затем вернуться к 2

Я просто удалил исходный код nigiri, пока он не вписывается в один файл .

Оно работает. Теперь я должен выяснить, как заставить гривы urwid и zeromq играть вместе.

Interesting Posts