tty --- Chức năng điều khiển đầu cuối

Source code: Lib/tty.py


Mô-đun tty xác định các chức năng để đưa tty vào chế độ cbreak và raw.

sẵn có: Unix.

Vì nó yêu cầu mô-đun termios nên nó sẽ chỉ hoạt động trên Unix.

Mô-đun tty xác định các chức năng sau:

tty.cfmakeraw(mode)

Chuyển đổi danh sách thuộc tính tty mode, là danh sách giống như danh sách được trả về bởi termios.tcgetattr(), thành danh sách của tty ở chế độ thô.

Added in version 3.12.

tty.cfmakecbreak(mode)

Chuyển đổi danh sách thuộc tính tty mode, là danh sách giống như danh sách được trả về bởi termios.tcgetattr(), thành danh sách của tty ở chế độ cbreak.

Thao tác này sẽ xóa cờ chế độ cục bộ ECHOICANON trong mode cũng như đặt đầu vào tối thiểu thành 1 byte mà không có độ trễ.

Added in version 3.12.

Thay đổi trong phiên bản 3.12.2: Cờ ICRNL không còn bị xóa. Điều này phù hợp với hành vi stty cbreak của Linux và macOS cũng như những gì setcbreak() đã làm trước đây.

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

Thay đổi chế độ của bộ mô tả tệp fd thành raw. Nếu when bị bỏ qua, nó sẽ mặc định là termios.TCSAFLUSH và được chuyển tới termios.tcsetattr(). Giá trị trả về của termios.tcgetattr() được lưu trước khi đặt fd ở chế độ thô; giá trị này được trả về.

Thay đổi trong phiên bản 3.12: Giá trị trả về bây giờ là thuộc tính tty ban đầu, thay vì None.

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

Thay đổi chế độ mô tả tập tin fd thành cbreak. Nếu when bị bỏ qua, nó sẽ mặc định là termios.TCSAFLUSH và được chuyển tới termios.tcsetattr(). Giá trị trả về của termios.tcgetattr() được lưu trước khi đặt fd sang chế độ cbreak; giá trị này được trả về.

Thao tác này sẽ xóa cờ chế độ cục bộ ECHOICANON cũng như đặt đầu vào tối thiểu thành 1 byte mà không có độ trễ.

Thay đổi trong phiên bản 3.12: Giá trị trả về bây giờ là thuộc tính tty ban đầu, thay vì None.

Thay đổi trong phiên bản 3.12.2: Cờ ICRNL không còn bị xóa. Điều này khôi phục hoạt động của Python 3.11 trở về trước cũng như khớp với những gì Linux, macOS và BSD mô tả trong trang hướng dẫn stty(1) của họ về chế độ cbreak.

Xem thêm

Mô-đun termios

Giao diện điều khiển thiết bị đầu cuối cấp thấp.