diff options
Diffstat (limited to 'Doc/lib/libtermios.tex')
-rw-r--r-- | Doc/lib/libtermios.tex | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/Doc/lib/libtermios.tex b/Doc/lib/libtermios.tex deleted file mode 100644 index ef99cf9..0000000 --- a/Doc/lib/libtermios.tex +++ /dev/null @@ -1,106 +0,0 @@ -\section{\module{termios} --- - \POSIX{} style tty control} - -\declaremodule{builtin}{termios} - \platform{Unix} -\modulesynopsis{\POSIX\ style tty control.} - -\indexii{\POSIX}{I/O control} -\indexii{tty}{I/O control} - - -This module provides an interface to the \POSIX{} calls for tty I/O -control. For a complete description of these calls, see the \POSIX{} or -\UNIX{} manual pages. It is only available for those \UNIX{} versions -that support \POSIX{} \emph{termios} style tty I/O control (and then -only if configured at installation time). - -All functions in this module take a file descriptor \var{fd} as their -first argument. This can be an integer file descriptor, such as -returned by \code{sys.stdin.fileno()}, or a file object, such as -\code{sys.stdin} itself. - -This module also defines all the constants needed to work with the -functions provided here; these have the same name as their -counterparts in C. Please refer to your system documentation for more -information on using these terminal control interfaces. - -The module defines the following functions: - -\begin{funcdesc}{tcgetattr}{fd} -Return a list containing the tty attributes for file descriptor -\var{fd}, as follows: \code{[}\var{iflag}, \var{oflag}, \var{cflag}, -\var{lflag}, \var{ispeed}, \var{ospeed}, \var{cc}\code{]} where -\var{cc} is a list of the tty special characters (each a string of -length 1, except the items with indices \constant{VMIN} and -\constant{VTIME}, which are integers when these fields are -defined). The interpretation of the flags and the speeds as well as -the indexing in the \var{cc} array must be done using the symbolic -constants defined in the \module{termios} -module. -\end{funcdesc} - -\begin{funcdesc}{tcsetattr}{fd, when, attributes} -Set the tty attributes for file descriptor \var{fd} from the -\var{attributes}, which is a list like the one returned by -\function{tcgetattr()}. The \var{when} argument determines when the -attributes are changed: \constant{TCSANOW} to change immediately, -\constant{TCSADRAIN} to change after transmitting all queued output, -or \constant{TCSAFLUSH} to change after transmitting all queued -output and discarding all queued input. -\end{funcdesc} - -\begin{funcdesc}{tcsendbreak}{fd, duration} -Send a break on file descriptor \var{fd}. A zero \var{duration} sends -a break for 0.25--0.5 seconds; a nonzero \var{duration} has a system -dependent meaning. -\end{funcdesc} - -\begin{funcdesc}{tcdrain}{fd} -Wait until all output written to file descriptor \var{fd} has been -transmitted. -\end{funcdesc} - -\begin{funcdesc}{tcflush}{fd, queue} -Discard queued data on file descriptor \var{fd}. The \var{queue} -selector specifies which queue: \constant{TCIFLUSH} for the input -queue, \constant{TCOFLUSH} for the output queue, or -\constant{TCIOFLUSH} for both queues. -\end{funcdesc} - -\begin{funcdesc}{tcflow}{fd, action} -Suspend or resume input or output on file descriptor \var{fd}. The -\var{action} argument can be \constant{TCOOFF} to suspend output, -\constant{TCOON} to restart output, \constant{TCIOFF} to suspend -input, or \constant{TCION} to restart input. -\end{funcdesc} - - -\begin{seealso} - \seemodule{tty}{Convenience functions for common terminal control - operations.} -\end{seealso} - - -\subsection{Example} -\nodename{termios Example} - -Here's a function that prompts for a password with echoing turned -off. Note the technique using a separate \function{tcgetattr()} call -and a \keyword{try} ... \keyword{finally} statement to ensure that the -old tty attributes are restored exactly no matter what happens: - -\begin{verbatim} -def getpass(prompt = "Password: "): - import termios, sys - fd = sys.stdin.fileno() - old = termios.tcgetattr(fd) - new = termios.tcgetattr(fd) - new[3] = new[3] & ~termios.ECHO # lflags - try: - termios.tcsetattr(fd, termios.TCSADRAIN, new) - passwd = raw_input(prompt) - finally: - termios.tcsetattr(fd, termios.TCSADRAIN, old) - return passwd -\end{verbatim} |