Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
C
curry-frontend
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 62
    • Issues 62
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 4
    • Merge Requests 4
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • curry
  • curry-frontend
  • Issues
  • #95

Closed
Open
Opened Oct 29, 2020 by Fredrik Wieczerkowski@fwcdDeveloper

Emit colored messages

It would be nice to have GHC-style colored error and warning messages:

image

Emitting these requires using an ANSI color library, for example ansi-terminal.

It would, however, be preferable to have color support directly in the pretty printing library rather than just including raw ANSI escape sequences as text. There are a bunch of options here, but none of them really are a fitting 'drop-in-replacement' for the currently used pretty printer:

  • Hughes/PJ pretty printers:
    • pretty is currently used and does not support ANSI coloring
  • Wadler/Leijen pretty printers:
    • ansi-wl-pprint has ANSI coloring support, but may get deprecated
    • ansi-pretty is an extension of ansi-wl-pprint
    • prettyprinter is modern and supports ANSI coloring, but uses Data.Text instead of String

Additionally, Wadler/Leijen pretty printers have a lot of subtle differences in their API compared to Hughes/PJ printers, thereby complicating a potential migration. This includes many of them providing their own Pretty class.

Edited Oct 29, 2020 by Fredrik Wieczerkowski
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: curry/curry-frontend#95