# `tty` — 터미널 제어 함수

소스 코드: Lib/tty.py

The `tty` module defines functions for putting the tty into cbreak and raw modes.

가용성: Unix.

`termios` 모듈이 필요하기 때문에 유닉스에서만 작동합니다.

The `tty` module defines the following functions:

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` and `ICANON` 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 macOS `stty cbreak` behavior and what `setcbreak()` historically did.

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

  파일 기술자 fd의 모드를 raw로 변경합니다. when이 생략되면, 기본값은 `termios.TCSAFLUSH`이며 `termios.tcsetattr()`로 전달됩니다. fd를 raw 모드로 설정하기 전에 `termios.tcgetattr()`의 반환값을 보관합니다; 이 값을 반환합니다.

  버전 3.12에서 변경: The return value is now the original tty attributes, instead of `None`.

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

  파일 기술자 fd의 모드를 cbreak로 변경합니다. when이 생략되면, 기본값은 `termios.TCSAFLUSH`이며 `termios.tcsetattr()`로 전달됩니다. fd를 cbreak 모드로 설정하기 전에 `termios.tcgetattr()`의 반환값을 보관합니다; 이 값을 반환합니다.

  This clears the `ECHO` and `ICANON` 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 their `stty(1)` man pages regarding cbreak mode.

더 보기

모듈 `termios`

  저수준 터미널 제어 인터페이스.