goformat
Alternative to gofmt with configurable formatting style (indentation etc.) (by mbenkmann)
prettyplease
A minimal `syn` syntax tree pretty-printer (by dtolnay)
goformat | prettyplease | |
---|---|---|
7 | 8 | |
20 | 588 | |
- | - | |
0.0 | 7.7 | |
almost 6 years ago | 18 days ago | |
Go | Rust | |
BSD 3-clause "New" or "Revised" License | Apache License 2.0 |
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.
goformat
Posts with mentions or reviews of goformat.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-19.
-
Minimalist Rust formatter as an alternative to rustfmt?
Likewise, gofmt implementing what you argue for resulted in the creation of goformat. There's a limit to how much you can force people on these things and, more importantly, there are formatting decisions which are more than mere bikeshedding in the eyes of the programmers to the point where they consider it more productive to maintain the formatting by hand if that's what it takes.
-
Go is better than Rust (for networked server side applications meant for scale)?
I'm the guy who would only run rustfmt once every week or so, when my codebase was in a clean state where I could use git gui to cherry-pick the changes that were in line with my stubborn insistence on my own style and revert the rest. I'm also the guy who would have considered writing goformat if someone else didn't.
-
Why is rust so pedantic about code formatting and style?
Enough people disagree with that for goformat to exist.
-
rustfmt opt-in instead of opt-out
Same. I used to insist on cargo +nightly rustfmt and a massive stable of "I don't have a portrait-oriented monitor" rustfmt.toml tweaks which I'd only apply when I have a clean git gui on hand to cherry-pick away unwanted changes, but I've mellowed out and the rustfmt handling of things like assert! has evolved so, now, I just put use_small_heuristics = "Max" in my rustfmt.toml as an analogue to the people who choose goformat over gofmt.
-
Need a line-preserving gofmt tool
anyways, regardless of what I think, perhaps this library could help? Or at least be a good starting point to build your own: https://github.com/mbenkmann/goformat
-
What do you NOT like about Rust?
You'd prefer that people like me follow the road the Go ecosystem did and write goformat as a replacement for gofmt or just continue to hand-format everything?
-
Why most rustfmt options are still unstable?
Because Go syntax is ridiculously simple, there's not much room for opinion. And even considering that, there is already an alternative gofmt with custom options.
prettyplease
Posts with mentions or reviews of prettyplease.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-06-29.
-
Practical Procedural Macros in Rust
Nice blog, another very useful crate to use when working with proc-macro is https://github.com/dtolnay/prettyplease, for formatting generated code (very useful for debugging!), that does not bails out like rustfmt sometimes does.
-
Minimalist Rust formatter as an alternative to rustfmt?
I doubt you would want to actually use this human-consumed code, but an interesting alternative that I know of is David Tolnay's prettyplease. It tries to be lightweight and consistent for auto-generated code.
-
Gene Michaels: Alternative Rust code formatter
btw there is also https://github.com/dtolnay/prettyplease
-
Anyone have lot's of problems with rustfmt?
This, I also have a bunch of files that seem to break rustfmt. Ime, it doesn't exactly refuse to format the whole file but it's picky in what and to what degree it chooses to format, basically anything flying in the complex blocks. I have run into prettyplease but I'm yet to actually try it on these offenders.
-
Hey Rustaceans! Got an easy question? Ask here (5/2022)!
prettyplease
-
Is generating code from JSON a good macro use case?
Optionally, format the generated code to make it more readable. You can run rustfmt on the output file, or use prettyplease before writing the file.
- Prettyp lease: A minimal Syn syntax tree pretty- printer
- prettyplease: A minimal Syn syntax tree pretty-printer
What are some alternatives?
When comparing goformat and prettyplease you can also consider the following projects:
serenity - A Rust library for the Discord API.
prettier-plugin-rust - Prettier Rust is an opinionated code formatter that autocorrects bad syntax.
project-error-handling - Error handling project group
quote - Rust quasi-quoting
tokio-tungstenite - Future-based Tungstenite for Tokio. Lightweight stream-based WebSocket implementation
rustfmt - Format Rust code
rosetta - Easy to use Rust i18n library based on code generation
rust-cpython - Rust <-> Python bindings
topiary
PyO3 - Rust bindings for the Python interpreter
genemichaels - Even formats macros
goformat vs serenity
prettyplease vs prettier-plugin-rust
goformat vs project-error-handling
prettyplease vs quote
goformat vs prettier-plugin-rust
prettyplease vs tokio-tungstenite
goformat vs rustfmt
prettyplease vs rosetta
goformat vs rust-cpython
prettyplease vs topiary
goformat vs PyO3
goformat vs genemichaels