Spec-Zone.ru › Python 3.13

tty — функции управления терминалом

Исходный код: Lib/tty.py

Модуль tty определяет функции для перевода tty в режимы cbreak и raw.

Доступность: Unix.

Поскольку для его работы требуется модуль termios, он будет работать только в Unix.

Модуль tty определяет следующие функции:

tty.cfmakeraw(mode)

Преобразует список атрибутов tty mode, представляющий собой список, подобный возвращаемому функцией termios.tcgetattr(), в список атрибутов tty в необработанном режиме.

Добавлено в версии 3.12.

tty.cfmakecbreak(mode)

Преобразует список атрибутов tty mode, представляющий собой список, подобный возвращаемому функцией termios.tcgetattr(), в список атрибутов tty в режиме cbreak.

Очищает флаги локального режима ECHO и ICANON в mode, а также задаёт минимальный объём ввода в 1 байт без задержки.

Добавлено в версии 3.12.

Изменено в версии 3.12.2: Флаг ICRNL больше не очищается. Это соответствует поведению stty cbreak в Linux и macOS, а также прежнему поведению функции setcbreak().

tty.setraw(fd, when=termios.TCSAFLUSH)

Переводит файловый дескриптор fd в необработанный режим. Если параметр when не указан, по умолчанию используется termios.TCSAFLUSH, который передаётся в termios.tcsetattr(). Возвращаемое значение termios.tcgetattr() сохраняется до перевода fd в необработанный режим; это значение и возвращается.

Изменено в версии 3.12: Теперь возвращается исходный набор атрибутов tty, а не None.

tty.setcbreak(fd, when=termios.TCSAFLUSH)

Переводит файловый дескриптор fd в режим cbreak. Если параметр when не указан, по умолчанию используется termios.TCSAFLUSH, который передаётся в termios.tcsetattr(). Возвращаемое значение termios.tcgetattr() сохраняется до перевода fd в режим cbreak; это значение и возвращается.

Очищает флаги локального режима ECHO и ICANON, а также задаёт минимальный объём ввода в 1 байт без задержки.

Изменено в версии 3.12: Теперь возвращается исходный набор атрибутов tty, а не None.

Изменено в версии 3.12.2: Флаг ICRNL больше не очищается. Это восстанавливает поведение Python 3.11 и более ранних версий, а также соответствует описанию режима cbreak в справочных страницах man для stty(1) в Linux, macOS и BSD.

См. также

Module termios

Низкоуровневый интерфейс управления терминалом.

© 2001–2025 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.13/library/tty.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API