errata: Source code error pretty printing

[ library, mit, pretty-printer, program ] [ Propose Tags ]

An extremely customizable error pretty printer that can handle many kinds of error formatting. It can handle errors that are connected, disconnected, and those spanning multiple lines.

You can get started by importing the Errata module.


[Skip to Readme]
Versions [RSS] [faq] 0.1.0.0, 0.2.0.0, 0.3.0.0
Change log CHANGELOG.md
Dependencies base (>=4.12 && <4.17), containers (>=0.6.0.1 && <0.7), errata, text (>=1.2.3.1 && <1.3) [details]
License MIT
Copyright (c) 2020-2021 comp
Author comp
Maintainer onecomputer00@gmail.com
Category Pretty Printer
Home page https://github.com/1Computer1/errata
Bug tracker https://github.com/1Computer1/errata/issues
Source repo head: git clone https://github.com/1Computer1/errata.git
Uploaded by comp at 2021-04-20T01:43:16Z
Distributions NixOS:0.3.0.0
Executables errata-example
Downloads 257 total (14 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Candidates


Readme for errata-0.3.0.0

[back to package description]

Errata

MIT License Hackage CI

Errata is an extremely customizable error pretty printer that can handle many kinds of error formatting.

Features

Errata can handle errors that are all over the source or errors that are connected to each other spanning multiple lines. You can be as simple or as fancy as you like!

You can also customize the format of the printer in several ways:

  • Custom messages and labels
  • Custom character sets for symbols
  • Highlighting the source, messages, and symbols

Examples

A clean, modern error message that is trying to be helpful:

An error message that points out that the fold function was not found in scope. It then asks if the user meant to use foldl or foldr

A busy error message with underlining and connections:

An error message that highlights mismatching types in an if expression. The first section underlines the mismatching values, and the second section underlines the if expression