| Copyright | (c) The University of Glasgow 2002 |
|---|---|
| License | BSD-style (see the file libraries/base/LICENSE) |
| Maintainer | [email protected] |
| Stability | provisional |
| Portability | non-portable (requires POSIX) |
| Safe Haskell | Safe |
| Language | Haskell2010 |
POSIX Terminal support
data TerminalAttributes Source
getTerminalAttributes :: Fd -> IO TerminalAttributes Source
getTerminalAttributes fd calls tcgetattr to obtain the TerminalAttributes associated with Fd fd.
data TerminalState Source
| Immediately | |
| WhenDrained | |
| WhenFlushed |
setTerminalAttributes :: Fd -> TerminalAttributes -> TerminalState -> IO () Source
setTerminalAttributes fd attr ts calls tcsetattr to change the TerminalAttributes associated with Fd fd to attr, when the terminal is in the state indicated by ts.
data TerminalMode Source
withoutMode :: TerminalAttributes -> TerminalMode -> TerminalAttributes Source
withMode :: TerminalAttributes -> TerminalMode -> TerminalAttributes Source
terminalMode :: TerminalMode -> TerminalAttributes -> Bool Source
bitsPerByte :: TerminalAttributes -> Int Source
withBits :: TerminalAttributes -> Int -> TerminalAttributes Source
data ControlCharacter Source
controlChar :: TerminalAttributes -> ControlCharacter -> Maybe Char Source
withCC :: TerminalAttributes -> (ControlCharacter, Char) -> TerminalAttributes Source
withoutCC :: TerminalAttributes -> ControlCharacter -> TerminalAttributes Source
inputTime :: TerminalAttributes -> Int Source
withTime :: TerminalAttributes -> Int -> TerminalAttributes Source
minInput :: TerminalAttributes -> Int Source
withMinInput :: TerminalAttributes -> Int -> TerminalAttributes Source
| B0 | |
| B50 | |
| B75 | |
| B110 | |
| B134 | |
| B150 | |
| B200 | |
| B300 | |
| B600 | |
| B1200 | |
| B1800 | |
| B2400 | |
| B4800 | |
| B9600 | |
| B19200 | |
| B38400 | |
| B57600 | |
| B115200 |
inputSpeed :: TerminalAttributes -> BaudRate Source
withInputSpeed :: TerminalAttributes -> BaudRate -> TerminalAttributes Source
outputSpeed :: TerminalAttributes -> BaudRate Source
withOutputSpeed :: TerminalAttributes -> BaudRate -> TerminalAttributes Source
sendBreak :: Fd -> Int -> IO () Source
sendBreak fd duration calls tcsendbreak to transmit a continuous stream of zero-valued bits on Fd fd for the specified implementation-dependent duration.
drainOutput :: Fd -> IO () Source
drainOutput fd calls tcdrain to block until all output written to Fd fd has been transmitted.
data QueueSelector Source
| InputQueue | |
| OutputQueue | |
| BothQueues |
discardData :: Fd -> QueueSelector -> IO () Source
discardData fd queues calls tcflush to discard pending input and/or output for Fd fd, as indicated by the QueueSelector queues.
data FlowAction Source
| SuspendOutput | TCOOFF |
| RestartOutput | TCOON |
| TransmitStop | TCIOFF |
| TransmitStart | TCION |
controlFlow :: Fd -> FlowAction -> IO () Source
controlFlow fd action calls tcflow to control the flow of data on Fd fd, as indicated by action.
getTerminalProcessGroupID :: Fd -> IO ProcessGroupID Source
getTerminalProcessGroupID fd calls tcgetpgrp to obtain the ProcessGroupID of the foreground process group associated with the terminal attached to Fd fd.
setTerminalProcessGroupID :: Fd -> ProcessGroupID -> IO () Source
setTerminalProcessGroupID fd pgid calls tcsetpgrp to set the ProcessGroupID of the foreground process group associated with the terminal attached to Fd fd to pgid.
queryTerminal :: Fd -> IO Bool Source
queryTerminal fd calls isatty to determine whether or not Fd fd is associated with a terminal.
getTerminalName :: Fd -> IO RawFilePath Source
getTerminalName fd calls ttyname to obtain a name associated with the terminal for Fd fd. If fd is associated with a terminal, getTerminalName returns the name of the terminal.
getControllingTerminalName :: IO RawFilePath Source
getControllingTerminalName calls ctermid to obtain a name associated with the controlling terminal for the process. If a controlling terminal exists, getControllingTerminalName returns the name of the controlling terminal.
openPseudoTerminal :: IO (Fd, Fd) Source
openPseudoTerminal creates a pseudoterminal (pty) pair, and returns the newly created pair as a (master, slave) tuple.
getSlaveTerminalName :: Fd -> IO RawFilePath Source
getSlaveTerminalName calls ptsname to obtain the name of the slave terminal associated with a pseudoterminal pair. The file descriptor to pass in must be that of the master.
© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).
https://downloads.haskell.org/~ghc/7.10.3/docs/html/libraries/unix-2.7.1.0/System-Posix-Terminal-ByteString.html