Module rustix::termios

source ·
Expand description

Terminal I/O stream operations.

This API automatically supports setting arbitrary I/O speeds, on any platform that supports them, including Linux and the BSDs.

The speed module contains various predefined speed constants which are more likely to be portable, however any u32 value can be passed to Termios::set_input_speed, and it will simply fail if the speed is not supported by the platform.

Modules

Structs

Flags controlling special terminal modes.
Flags controlling terminal input.
Flags controlling “local” terminal modes.
Flags controlling terminal output.
An array indexed by SpecialCodeIndex indicating the current values of various special control codes.
struct termios for use with tcgetattr and tcsetattr.

Enums

TC* values for use with tcflow.
TCSA* values for use with tcsetattr.
TC* values for use with tcflush.

Functions

ioctl(fd, TIOCEXCL)—Enables exclusive mode on a terminal.
ioctl(fd, TIOCNXCL)—Disables exclusive mode on a terminal.
isatty(fd)—Tests whether a file descriptor refers to a terminal.
tcdrain(fd, duration)—Wait until all pending output has been written.
tcflow(fd, action)—Suspend or resume transmission or reception.
tcflush(fd, queue_selector)—Wait until all pending output has been written.
tcgetattr(fd)—Get terminal attributes.
tcgetpgrp(fd)—Get the terminal foreground process group.
tcgetsid(fd)—Return the session ID of the current session with fd as its controlling terminal.
tcgetwinsize(fd)—Get the current terminal window size.
tcsendbreak(fd, 0)—Transmit zero-valued bits.
tcsetattr(fd)—Set terminal attributes.
tcsetpgrp(fd, pid)—Set the terminal foreground process group.
tcsetwinsize(fd)—Set the current terminal window size.

Type Definitions

struct winsize for use with tcgetwinsize.