michalmuskala

michalmuskala

Try erlfmt today!

We’re very happy to announce the general availability of erlfmt - an automated code formatter for Erlang.

erlfmt is an opinionated Erlang code formatter. By automating the process of formatting the code, it frees your team up to focus on what the code does, instead of what it looks like. erlfmt works with any Erlang file: .erl , .hrl , rebar.config , escripts, and more. It can be used both in rebar3 projects and standalone as a precompiled escript.

erlfmt is feature complete and now is a final opportunity, before the release of version 1.0.0, to influence formatting decisions. We would appreciate your feedback, try out erlfmt on your project and share your remarks by opening a github issue with examples.

Comparison with other erlang formatters

In it’s design approach erlfmt is very similar to the Elixir formatter - it should feel very familiar for most Elixir users. The formatter never changes the semantics or structure of the code. It provides as little configuration as possible. It also avoids special cases as much as possible. Elixir users will also find the familiar behaviour of preserving newlines and respecting some other elements of the original format.

Links

Most Liked

dom

dom

Looks fantastic! I might have to try plain old Erlang again if you guys keep improving things :stuck_out_tongue:

Qqwy

Qqwy

TypeCheck Core Team

Congradulations on this release! Very exciting :confetti_ball:! :smiley:

akoutmos

akoutmos

Author of Build a Weather Station with Elixir and Nerves

This is awesome!!! Huge thanks to you and everyone else involved :slight_smile:

Where Next?

Popular in Erlang News Top

Devtalk
A new Erlang news item has been posted! Link: Release OTP 22.3.4.17 · erlang/otp · GitHub Posted via Devtalk.
New
Devtalk
A new Erlang news item has been posted! Link: Release OTP 23.3.4.3 · erlang/otp · GitHub Posted via Devtalk.
New
Devtalk
A new Erlang news item has been posted! Link: Release OTP 23.2.7.4 · erlang/otp · GitHub Posted via Devtalk.
New
hauleth
http://erlang.org/download/OTP-22.0.README
New
erlangforums
A new Erlang announcement has been posted: Download links for this and previous versions are found here: https://www.erlang.org/downl...
New
New
New
Devtalk
A new Erlang news item has been posted! Link: Release OTP 23.2.4 · erlang/otp · GitHub Posted via Devtalk.
New
Devtalk
A new Erlang news item has been posted! Link: Release OTP 24.0.4 · erlang/otp · GitHub Posted via Devtalk.
New
erlangforums
A new Erlang announcement has been posted: Original announcement:
New

Other popular topics Top

hariharasudhan94
lets say i have a sample like a = 20; b = 10; if (a > b) do {:ok, "a"} end if (a < b) do {:ok, b} end if (a == b) do {:ok, "equa...
New
pmjoe
I have a relationship of love and hate with Elixir. Lots of things are just absolutely right, but there are some things that are kind of ...
New
Lily
In templates/appointment/index.html.eex: <%= for appointment <- @appointments do %> <tr> <td><%= appoi...
New
gausby
I asked this very same question on twitter and got some interesting feedback, but I thought it would be a good question to ask here as we...
1207 39523 209
New
jay1
Why is it that the mnesia database isn’t the most preferred database for use in Elixir/Phoenix?
New
aesmail
Hello guys, I have finally made it. I created an admin interface for a framework. It’s been on my todo list for years and with the curre...
New
komlanvi
Hi everyone, I was playing with phoenix liveView but I run into an issue. I have a form and want to validate each input text when the te...
New
joaquinalcerro
Hi there, I am working with Ecto-Postgresql and I need to call all of the records from a specific table but the table has 40,000 records...
New
JakeBecker
TL;DR: I’ve just released an implementation of Microsoft’s IDE-independent Language Server Protocol for Elixir. It adds language support ...
1144 54250 245
New
sergio
Kind of like when jquery came out, it was super necessary. Existing drag and drop libraries have a bunch of baggage to support old browse...
New

We're in Beta

About us Mission Statement