hydra-print-0.1.0.3: NCurses interface to view multiple ByteString streams in parallel.

Safe HaskellNone

UI.HydraPrint

Contents

Description

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.

Synopsis

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.

Constructors

Never 
After Seconds 
Immediately 

Types

Tiling behavior