dev.lanwen.frmtr:frmtr-core:0.2.1frmtr-tooling:0.2.1frmtr-gradle-plugin:0.2.1frmtr-core:0.2.1

Quick start

frmtr

A fast (allegedly) Java formatter with strong opinions and weak justifications. Based on JavaParser.

Single-module
// build.gradle.kts
                           
                          plugins {
                              java
                              id("dev.lanwen.frmtr") version "0.2.1"
                          }
                           
                          $ ./gradlew frmtrCheck
                          $ ./gradlew frmtrFormat
// build.gradle
                           
                          plugins {
                              id 'java'
                              id 'dev.lanwen.frmtr' version '0.2.1'
                          }
                           
                          $ ./gradlew frmtrCheck
                          $ ./gradlew frmtrFormat
// build.gradle.kts — root
                           
                          plugins {
                              id("dev.lanwen.frmtr") version "0.2.1" apply false
                          }
                           
                          subprojects {
                              pluginManager.withPlugin("java") {
                                  pluginManager.apply("dev.lanwen.frmtr")
                              }
                          }
// build.gradle — root
                           
                          plugins {
                              id 'dev.lanwen.frmtr' version '0.2.1' apply false
                          }
                           
                          subprojects {
                              pluginManager.withPlugin('java') {
                                  pluginManager.apply('dev.lanwen.frmtr')
                              }
                          }
// build.gradle.kts — root
                          frmtr {
                              java { exclude("**/generated/**") }
                          }
                           
                          // service/build.gradle.kts — overrides root
                          frmtr {
                              java { exclude("**/legacy/**") }
                          }
// build.gradle — root
                          frmtr {
                              java { exclude '**/generated/**' }
                          }
                           
                          // service/build.gradle — overrides root
                          frmtr {
                              java { exclude '**/legacy/**' }
                          }
# frmtr cli

$ frmtr --check --diff --render-line-width \
       --color=always --progress=always .
Discovering Java files...
Processed [240/823, 7 would change].
(⠋) src/generated/Huge.java
 src/Main.java
 src/App.java
  --- origin               ⋮ 120
  +++ frmtr                
  - int[] dense={1,2};     
  + int[] dense = {1, 2};