escape-artist: ANSI Escape Sequence Text Decoration Made Easy
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
A library for text decoration with ANSI escape sequences made easy. Decorate your terminal text expressively.
Any complex data type, existing or custom, can be simply colorized by implementing the class ToEscapable
, then
output to terminal or converted to String
using the provided functions.
Simple Example
import Data.Monoid ((<>)) import Text.EscapeArtist underlines = Underline $ FgCyan "I am underlined" <> UnderlineOff " but I am not " <> FgMagenta "and I am over here" putEscLn underlines
Implementing ToEscapable
import Data.Monoid ((<>)) import Text.EscapeArtist data ABC = A | B deriving (Show, Eq) instance ToEscapable ABC where toEscapable (A) = FgRed $ show A toEscapable (B) = FgGreen $ show B instance (ToEscapable a) => ToEscapable (Maybe a) where toEscapable (Just a) = FgGreen "Just" <> Inherit " " <> FgYellow a toEscapable a = FgRed $ show a
NOTE: For GHC < 7.10 you will also need to explicitly derive Typeable
for custom data types
implementing ToEscapable
. See the section Explicitly Derived Typeable in the documentation.
Comprehensive Documentation
See comprehensive documentation with many examples here:
Properties
Versions | 1.0.0, 1.1.0, 1.1.0, 1.2.0.0, 1.2.0.1 |
---|---|
Change log | None available |
Dependencies | base (>=4.7.0.2 && <5), bytestring (>=0.10.4.0 && <0.11), text (>=1.2.0.4 && <1.3) [details] |
License | BSD-3-Clause |
Copyright | 2016 Ryan Daniels |
Author | Ryan Daniels |
Maintainer | rd.github@gmail.com |
Category | Text |
Home page | https://github.com/EarthCitizen/escape-artist#readme |
Source repo | head: git clone https://github.com/EarthCitizen/escape-artist |
Uploaded | by ryan_daniels at 2017-01-24T10:03:43Z |
Modules
[Index]
- Text
- Text.EscapeArtist
- Text.EscapeArtist.Internal
- Text.EscapeArtist.Internal.Constants
- Text.EscapeArtist.Internal
- Text.EscapeArtist
Downloads
- escape-artist-1.1.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees