Safe Haskell | None |
---|
A simple utility to multiplex of *dynamic* collection of text streams. As the number of streams varies, the multiplexing of the terminal output does too.
- hydraPrint :: HydraConf -> InputStream (String, InputStream ByteString) -> IO ()
- hydraPrintStatic :: HydraConf -> [(String, InputStream ByteString)] -> IO ()
- data HydraConf = HydraConf {}
- defaultHydraConf :: HydraConf
- data DeleteWinWhen
- = Never
- | After Seconds
- | Immediately
- dbgLogLn :: String -> IO ()
hydraPrint and friends
hydraPrint :: HydraConf -> InputStream (String, InputStream ByteString) -> IO ()Source
Takes a source of input streams, which may be added dynamically. A stream that joins dynamically, exits once it issues an end-of-stream.
hydraPrint
is a blocking call that doesn't return until ALL streams that
appear produce an end-of-stream, AND the stream-source itself reaches
end-of-stream.
hydraPrintStatic :: HydraConf -> [(String, InputStream ByteString)] -> IO ()Source
Take a fixed list of input streams. This variant preemptively splits the screen into exactly one panel per stream.
defaultHydraConf :: HydraConfSource
Like the name says, a default set of options for passing to hydraPrint
.
data DeleteWinWhen Source
How long should we wait after a stream goes dry to close the window associated
with it? If Never
is selected, then the window will stay until a new stream
causes the screen to reconfigure, or hydraPrint exits.
Never | |
After Seconds | |
Immediately |