Spotless can format <java | markdown | license headers | anything> using <gradle | maven | anything>.
Ideally, a code formatter can do more than just find formatting errors - it should fix them as well. Such a formatter is really just a Function<String, String>
, which returns a formatted version of its potentially unformatted input.
It's easy to build such a function, but there are some gotchas and lots of integration work (newlines, character encodings, idempotency, and build-system integration). Spotless tackles those for you so you can focus on just a simple Function<String, String>
which can compose with any of the other formatters and build tools in Spotless' arsenal.
Feature / FormatterStep | plugin-gradle | plugin-maven | (Your build tool here) |
---|---|---|---|
generic.EndWithNewlineStep |
👍 | ⬜ | ⬜ |
generic.IndentStep |
👍 | ⬜ | ⬜ |
generic.LicenseHeaderStep |
👍 | ⬜ | ⬜ |
generic.ReplaceRegexStep |
👍 | ⬜ | ⬜ |
generic.ReplaceStep |
👍 | ⬜ | ⬜ |
generic.TrimTrailingWhitespaceStep |
👍 | ⬜ | ⬜ |
java.GoogleJavaFormatStep |
👍 | ⬜ | ⬜ |
java.ImportOrderStep |
👍 | ⬜ | ⬜ |
java.EclipseFormatterStep |
👍 | ⬜ | ⬜ |
markdown.FreshMarkStep |
👍 | ⬜ | ⬜ |
(Your FormatterStep here) | ⬜ | ⬜ | ⬜ |
Fast up-to-date checking | 👍 | ⬜ | ⬜ |
Automatic idempotency safeguard | 👍 | ⬜ | ⬜ |
- Huge thanks to Jonathan Bluett-Duncan for
- Formatting by Eclipse
- Special thanks to Mateusz Matela for huge improvements to the eclipse code formatter!
- Originally forked from gradle-format-plugin by Youri Bonnaffé.
- Thanks to Gábor Bernát for improvements to logging and multi-project support.
- Thanks to Andrew Oberstar for improvements to formatting java source in non-java source sets. PR #60.
- Import ordering from EclipseCodeFormatter.
- Built by gradle.
- Tested by junit.
- Maintained by DiffPlug.