Pull to refresh

Comments 40

Pascal… TurboVision вспомнилось… Как давно это было.

Зашел, чтобы написать этот комментарий

Эх, а я как раз начал писать что-то подобное, только сразу для терминала и для веба, этакое два-в-одном. Теперь есть, откуда черпать вдохновение.
А мне BOOTSTRA.386 вспомнилась, тема для Bootstrap.

p.s. кликайте на Demo — там даже построчная отрисовка курсором имитируется, офигеть!
UFO just landed and posted this here
Аж слезу ностальгии выбило, спасибо :))
Интересно, люди просто регулярно пишут такие либы или оно нынче в тренде? Потому что я как раз пописываю подобную обёртку вокруг bearlibterminal, который рисует ASCII-интерфейс на SDL. Смысл в том, чтоб выглядело одинаково независимо от терминала пользователя, для геймдева.

Да нет, просто я только-только встаю на путь разработчика и пока что просто пишу всякое ради получения опыта.

Как можно сравнивать прекрасный TV и это?
Что есть TV?
А гугл по запросу «python TV» выдает явно не то.
Очевидно, TurboVision из первого коммента. Библиотека UI для Turbo Pascal. Середина 90-х, ностальгия.
Не соотнес, что это ответ к первому комменту

Когда плюсуешь статью, только увидев картинку в топике. Круть

Чего только люди не придумают, чтобы не делать import curses…
А, это обёртка над curses. Вы бы уточнили это в статье.
Я было понадеялся что прям с нуля.
Собственный tui-фреймворк с разными фишками и настройками цвета.

Конечно, прожженных и умудренных опытом людей таким не удивить, но все же…
Однажды, в качестве лабораторной работы по каким-то там сетям надо было сделать чат. Пока мои одногруппники штурмовали Qt, я извратился и написал такое:


Заголовок спойлера


Правда, не совсем честно — можно было бы все кодами сделать, но несколько WinAPI функций присутствовали.

Если всё сделать кодами, то оно только на Windows10 работать будет…
Куда смотреть исходники не слишком опытным windows-программистам?
А можно попросить добавить лицензию?
Добавил. Если Вас удивит такой выбор лицензии — работа в значительной мере была сделана как шутка, да и примером «как надо делать консольный GUI» не является. Да и мне абсолютно не жалко любые использования. Если кому-то поможет — только рад.
Что-то с русским языком не подружился приведенный телеграм клиент.
Библиотека приятная, ламповая. Спасибо.
Прошу прощения, вс1 с русским там нормально. «Сам дурак» :)
Еще раз спасибо. Будем изучать.
А можно подробнее, пожалуйста?
Установил по инструкции с github, на Kubuntu 16.04.4 — terminator / konsole и после запуска и логина отображается только латиница.
Большое спасибо за пост, прямо то, что доктор прописал.

С Python я только еще начинаю дружить, зато TUI использую часто: удобно создавать приложения, состоящие практически только из меню и логов…
Кто-нибудь встречал такое-же, но под .net?
Кстати интересно. Поставил Python 3.6.5 для Windows x86_64, и вот такой баг ловлю при попытке установки npyscreen…
Посмотреть снимок экрана
image
Насколько я понял эта библиотека обертка над стандартной curses.
Нужно поставить сперва ее, я ее поставил из whl
После этого установилась npyscreen
Но у меня не заработало, и вроде как на stackoverflow пишут что либа только для posix систем.

У меня вот такая ошибка при запуске приложения

Traceback (most recent call last):
File «C:\proj\reps\python_post_request\curses_test.py», line 15, in wrapper(main)
File «C:\Users\****\AppData\Local\Programs\Python\Python36-32\lib\curses\__init__.py», line 73, in wrapper
stdscr = initscr()
File «C:\Users\****\AppData\Local\Programs\Python\Python36-32\lib\curses\__init__.py», line 30, in initscr
fd=_sys.__stdout__.fileno())
AttributeError: 'NoneType' object has no attribute 'fileno'
Спасибо, интересная статья! Как раз искал подобное решение.
А я правильно понимаю, что данная библиотека уж сто лет как заброшенная? Или я куда-то не туда смотрю?
По-видимому, да. Но Вы можете самостоятельно пропатчить библиотеку под свои нужды.
Также Вы можете найти больше информации в goolge groups
Использую class App(npyscreen.NPSAppManaged) и value_changed_callback=self.actionPress у кнопки,
первое нажатие отрабатывает хорошо, на последующие не реагирует, как вернуть объект к первоначальному состоянию?
def actionPress(self, widget):
if self.actionButton.value == True:
selected = self.Options.get_selected_objects()
if selected[0] ==
Sign up to leave a comment.

Articles