Version 1.1.0.0-0 of byline is deprecated.
The latest version of byline is 1.1.2-0.

byline

Version 1.1.0.0 revision 0 uploaded by PeterJones.

Package meta

Synopsis
Library for creating command-line interfaces (colors, menus, etc.)
Description

Byline simplifies writing interactive command-line applications by building upon ansi-terminal and haskeline. This makes it possible to print messages and prompts that include terminal escape sequences (such as setting text colors) that are automatically disabled when standard input is a file. It also means that Byline works on both POSIX-compatible systems and on Windows.

The primary features of Byline include printing messages, prompting for input, and generating custom menus. It was inspired by the highline Ruby library and the terminal library by Craig Roche.

Example

example :: MonadByline m => m Text
example = do
  sayLn ("Hey, I like " <> ("Haskell" <> fg magenta) <> "!")

  let question =
        "What's "
          <> ("your" <> bold)
          <> " favorite "
          <> ("language" <> fg green <> underline)
          <> "? "

  askLn question (Just "Haskell")

Author
Peter Jones <pjones@devalot.com>
Bug reports
https://github.com/pjones/byline/issues
Category
System, User Interfaces
Copyright
Copyright: (c) 2015-2020 Peter J. Jones
Homepage
https://github.com/pjones/byline
Maintainer
Peter Jones <pjones@devalot.com>
Package URL
n/a
Stability
stable

Components