brittany
haskell source code formatter (by lspitzner)
hindent
Haskell pretty printer (by mihaimaruseac)
Our great sponsors
brittany | hindent | |
---|---|---|
7 | 2 | |
689 | 554 | |
- | - | |
0.0 | 9.0 | |
over 1 year ago | 6 days ago | |
Haskell | Haskell | |
GNU Affero General Public License v3.0 only | BSD 3-clause "New" or "Revised" License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
brittany
Posts with mentions or reviews of brittany.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-04-23.
- Announce end of maintenance by tfausak · Pull Request #377 · lspitzner/brittany
-
Format multiline imports in hls (emacs)
You will also need a formatter that uses that style. Brittany for example. The default formattingProvider for HLS is ormolu, which I believe doesn't use this style, so you will have to change this setting.
-
Why is there no "standard" formatting tool for haskell?
Yeah I couldn't find anything at all which is really unfortunate. You could check out the config source code
-
Advent of Code 2021 day 1
Turns out I prefer Brittany to Ormolu, I edited it so it hopefully looks less verbose all on one line
-
Let's talk about Brittany
I use Brittany and prefer it to Ormolu, because it aligns more things and it break lines that are too long automatically. I have recently tried to figure out how I could implement a solution to https://github.com/lspitzner/brittany/issues/157, but it is quite hard to figure out which parts of the code would be involved in such a change. And I don't really have enough time to make steady contributions, but I will probably try to make a few contributions sometime.
hindent
Posts with mentions or reviews of hindent.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-02-03.
-
I'm dissatisfied with both wrap and nowrap
Because every language is so different, every language requires individual care. So there are language specific formatters (https://github.com/mihaimaruseac/hindent for Haskell), which are usually configurable by some configuration file the in the project.
-
Let's talk about Brittany
In the long run, though, I expect Fourmolu (not Ormolu) will end up becoming the norm, because, really, two-space indents are not going to work for everyone. One of the things I like about hindent (that I did myself) is that it discovers default language extensions from the .cabal file, so you don't need to specify those yourself. I might see if I can get that code into Fourmolu.
What are some alternatives?
When comparing brittany and hindent you can also consider the following projects:
stylish-haskell - Haskell code prettifier [Moved to: https://github.com/haskell/stylish-haskell]
hfd - Flash debugger with haskeline interface
ormolu - A formatter for Haskell source code
axel - Haskell + Lisp
hadolint - Dockerfile linter, validate inline bash, written in Haskell
hfmt - Format Haskell programs. Inspired by the gofmt utility.
grm - grm grammar converter
formura - Describe stencil formurae without even translating them
codex - A ctags file generator for cabal/stack project dependencies.
config-value - Simple, layout-based, unambiguous configuration language implemented in Haskell
hlint - Haskell source code suggestions