final-pretty-printer: Extensible pretty printing with semantic annotations and proportional fonts

[ library, mit, text ] [ Propose Tags ]

This is the Final Pretty Printer, an extensible prettry printing library that supports semantic annotations and proportional-width fonts. The library is extensible because it uses a final, rather than initial, encoding of pretty printer documents - they are monadic programs, rather than a datatype. This means it can be extended by monad transformers. Semantic annotations allow pretty printer documents to contain references to the data that they represent, which can enable interactive output. Proportional-width fonts are supported by allowing the measurement of widths to be performed in some arbitrary monad, so IO can be used to look at the output of a font rendering library.

Versions [faq]
Dependencies ansi-terminal (==0.6.*), base (>=4.3 && <4.10), containers (==0.5.*), exceptions (==0.8.*), mtl (>=2.1 && <2.3), temporary (>=1.1), text (==1.2.*) [details]
License MIT
Copyright Copyright (c) 2016-2017 David Darais, David Christiansen, and Weixi Ma
Author David Christiansen and David Darais and Weixi Ma
Category Text
Source repo head: git clone git://
Uploaded by dchristiansen at 2017-05-25T00:58:27Z
Distributions NixOS:
Downloads 793 total (2 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2017-05-25 [all 1 reports]




Maintainer's Corner

For package maintainers and hackage trustees