Skip to content

Latest commit

 

History

History
48 lines (36 loc) · 2.6 KB

readme.md

File metadata and controls

48 lines (36 loc) · 2.6 KB

scalafmt Build Status Join the chat at https://gitter.im/olafurpg/scalafmt Latest version

Head over to the user docs for instructions on how to install scalafmt.

Quick help

  • On Windows add -Dfile.encoding=UTF8 to SBT_OPTS.
  • Run formatting tests: core/testOnly org.scalafmt.FormatTests.
  • Write new formatting test: read this doc.
  • Build docs: sbt readme/run will create the docs, which you can open with open readme/target/scalatex/index.html. Docs are built with Scalatex.
  • Hack on IntelliJ plugin: see this doc.
  • Hack on scalafmt: see tutorial.
  • Hack on SBT plugin: run sbt scripted.
  • Run jmh benchmarks: run-benchmarks.sh.
  • Run formatter on millions of lines of code: core/test:runMain org.scalafmt.FormatExperimentApp:
  • Debug performance: after each test run in FormatTests, a flamegraph report like this one is generated in target/index.html. I usually keep a browser tab open at localhost:3000/target/index.html along with this background process: browser-sync start --server --files "target/*.html". See Browsersync.

Tutorial

If you'd like to find out how to work on scalafmt, see this tutorial.

Team

The current maintainers (people who can merge pull requests) are:

An up-to-date list of contributors is available here: https://github.com/olafurpg/scalafmt/graphs/contributors

We strive to offer a welcoming environment to learn, teach and contribute.

Acknowledgements

[JProfiler](http://www.ej-technologies.com/products/jprofiler/overview.html) generously supports scalafmt with its full-featured Java Profiler.