https://github.com/robrix/silkscreen
Prettyprinting transformers for rainbow parens, precedence, etc.
https://github.com/robrix/silkscreen
Last synced: about 1 year ago
JSON representation
Prettyprinting transformers for rainbow parens, precedence, etc.
- Host: GitHub
- URL: https://github.com/robrix/silkscreen
- Owner: robrix
- License: bsd-3-clause
- Created: 2020-09-24T18:16:18.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2022-02-27T00:05:19.000Z (over 4 years ago)
- Last Synced: 2025-04-10T15:35:47.745Z (about 1 year ago)
- Language: Haskell
- Size: 279 KB
- Stars: 16
- Watchers: 3
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# silkscreen: prettyprinting transformers
[](http://hackage.haskell.org/package/silkscreen)
🎩 [@3_lemma](https://twitter.com/3_lemma/status/1304570835189915648) for the name!
Silkscreen abstracts the pretty-printing interface of [`prettyprinter`][] with a `Printer` typeclass, allowing the definition of composable pretty-printer _transformers_, layering new behaviours onto the existing primitives. For example, `Silkscreen.Prec` implements support for precedence à la `showsPrec`, but using symbolic precedence levels, and `Silkscreen.Rainbow` implements rainbow-parentheses.
[`prettyprinter`]: https://hackage.haskell.org/package/prettyprinter