tty
— Terminal control functions¶
소스 코드: Lib/tty.py
tty
모듈은 tty를 cbreak 및 raw 모드로 설정하는 함수를 정의합니다.
Availability: Unix.
termios
모듈이 필요하기 때문에 유닉스에서만 작동합니다.
tty
모듈은 다음 함수를 정의합니다.:
- tty.cfmakeraw(mode)¶
Convert the tty attribute list mode, which is a list like the one returned by
termios.tcgetattr()
, to that of a tty in raw mode.Added in version 3.12.
- tty.cfmakecbreak(mode)¶
Convert the tty attribute list mode, which is a list like the one returned by
termios.tcgetattr()
, to that of a tty in cbreak mode.This clears the
ECHO
andICANON
local mode flags in mode as well as setting the minimum input to 1 byte with no delay.Added in version 3.12.
버전 3.12.2에서 변경: The
ICRNL
flag is no longer cleared. This matches Linux and macOSstty cbreak
behavior and whatsetcbreak()
historically did.
- tty.setraw(fd, when=termios.TCSAFLUSH)¶
Change the mode of the file descriptor fd to raw. If when is omitted, it defaults to
termios.TCSAFLUSH
, and is passed totermios.tcsetattr()
. The return value oftermios.tcgetattr()
is saved before setting fd to raw mode; this value is returned.버전 3.12에서 변경: The return value is now the original tty attributes, instead of
None
.
- tty.setcbreak(fd, when=termios.TCSAFLUSH)¶
Change the mode of file descriptor fd to cbreak. If when is omitted, it defaults to
termios.TCSAFLUSH
, and is passed totermios.tcsetattr()
. The return value oftermios.tcgetattr()
is saved before setting fd to cbreak mode; this value is returned.This clears the
ECHO
andICANON
local mode flags as well as setting the minimum input to 1 byte with no delay.버전 3.12에서 변경: The return value is now the original tty attributes, instead of
None
.버전 3.12.2에서 변경: The
ICRNL
flag is no longer cleared. This restores the behavior of Python 3.11 and earlier as well as matching what Linux, macOS, & BSDs describe in theirstty(1)
man pages regarding cbreak mode.
더 보기
- 모듈
termios
저수준 터미널 제어 인터페이스.