<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="54477" data-post-id="54477">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="josevalim" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/josevalim/120/1787_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  josevalim
                  </h3>
		          </div>
						
			          <div class="user-title">
									<span>Creator of Elixir</span>
			          </div>
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>As said previously, we would like to play with other ideas in this area. The formatter has not had any kind of extensive usage yet, so we should wait and collect more feedback before doing more changes.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="54477" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/33">Post #32</a>
	                </div>
	            </div>
              <div id="likers-container-54477" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="54477"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #32"></div>
  </section>
</div>
    <div class="postbit" id="54479" data-post-id="54479">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="LostKobrakai" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/LostKobrakai/120/3072_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  LostKobrakai
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>For me most functions do have documentation/typespec, which visually separates functions from each other and for private functions I’ve by now not felt the need, but would probably go with just a simple comment or typespecs where applicable.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="54479" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/34">Post #33</a>
	                </div>
	            </div>
              <div id="likers-container-54479" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="54479"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #33"></div>
  </section>
</div>
    <div class="postbit" id="54546" data-post-id="54546">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sergio" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sergio/120/26966_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sergio
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Pardon my question but how do I use this Elixir formatter? Is it like <code>go fmt</code> in that it cleans up the code?</p>
<p>Do I need to have Elixir 1.6 installed? Is 1.6 production ready?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="54546" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/35">Post #34</a>
	                </div>
	            </div>
              <div id="likers-container-54546" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="54546"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #34"></div>
  </section>
</div>
    <div class="postbit" id="54547" data-post-id="54547">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="chulkilee" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/chulkilee/120/6207_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  chulkilee
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<pre data-code-wrap="elixir"><code class="lang-elixir"># install erlang with homebre
brew install erlang

# install asdf to manage Elixir versions
if [ -d "$HOME/asdf" ]; then
  git clone https://github.com/asdf-vm/asdf.git "$HOME/.asdf" --branch v0.4.0
fi

# don't forget to add following part to your shell config (e.g. .bashrc)
. "$HOME/.asdf/asdf.sh"

# install elixir plugin if missing
plugins=$(asdf plugin-list)
if grep -q -v elixir &lt;&lt;&lt; "$plugins"; then
  asdf plugin-add elixir https://github.com/asdf-vm/asdf-elixir.git
fi

# install with asdf as in .tool-versions
asdf install

# install master version
asdf install elixir ref:master

# run mix format with elixir master
ASDF_ELIXIR_VERSION=ref-master mix format
</code></pre>
<p>I have <code>mix_format</code> alias in my <code>~/.alias</code></p>
<pre data-code-wrap="elixir"><code class="lang-elixir">alias mix_format="ASDF_ELIXIR_VERSION=ref-master mix format"
</code></pre> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="54547" data-batch-url="/posts/batch_likers">
                        7
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/36">Post #35</a>
	                </div>
	            </div>
              <div id="likers-container-54547" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="54547"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #35"></div>
  </section>
</div>
    <div class="postbit" id="54576" data-post-id="54576">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="NobbZ" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/NobbZ/120/27235_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  NobbZ
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="sergio" data-post="35" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sergio/48/26966_2.png" class="avatar"> sergio:</div>
<blockquote>
<p>Do I need to have Elixir 1.6 installed?</p>
</blockquote>
</aside>
<p>Yes-ish, you need Elixir compiled from master, which is going to be 1.6.</p>
<aside class="quote no-group" data-username="sergio" data-post="35" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sergio/48/26966_2.png" class="avatar"> sergio:</div>
<blockquote>
<p>Is 1.6 production ready?</p>
</blockquote>
</aside>
<p>It has not been released yet. Not even a release candidate. So, I do not consider it production ready. José once said, that 1.6 will probably released during Q1 '18.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="54576" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/37">Post #36</a>
	                </div>
	            </div>
              <div id="likers-container-54576" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="54576"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #36"></div>
  </section>
</div>
    <div class="postbit" id="54615" data-post-id="54615">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="thousandsofthem" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/thousandsofthem/120/1030_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  thousandsofthem
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Will something like<br>
defining pattern</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">x y(different),...
x y(different),...
x y(different),...
</code></pre>
<p>in the formatter work?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="54615" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/38">Post #37</a>
	                </div>
	            </div>
              <div id="likers-container-54615" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="54615"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #37"></div>
  </section>
</div>
    <div class="postbit" id="54797" data-post-id="54797">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="OvermindDL1" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/OvermindDL1/120/2677_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  OvermindDL1
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="tmbb" data-post="11" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/t/77aa72/48.png" class="avatar"> tmbb:</div>
<blockquote>
<p>For what it’s worth, my opinion on the changes. It’s mostly negative (warning, 100% subjective unless marked):</p>
</blockquote>
</aside>
<p>A lot of it is for me too, but I already do a lot of what it does.  I often separate function heads by a newline unless they are <em>very</em> short and are obviously blocked together, and I separate different head types altogether by 2 lines, and categories of functions by 3 lines with a (comment via <code>##</code>) header then another blank line, which the formatter utterly destroys.</p>
<p>In addition, a lot of the baked tables I use become entirely unreadable.  The formatter does some friggin-weird alignment on things like multi-line type declarations and wrapped maps/lists/tuples of things that just push things needless <em>way</em> right (wtf?).  A lot of single expression function bodies get formatted <em>very</em> weird out onto multiple lines, making the whole structure horribly unreadable and multi-indentions deep (wtf?).  It ‘does’ format a lot of my sub-blocks inside a function exactly how I already do it, so I like that more people will follow that style (I find it far more readable than what many people do).  Overall it seems a good start but it does need some work, especially some way to mark a section as <code>DO_NOT_FORMAT_THIS</code> as it just breaks some things all to hell that require alignment to be readable, <em>especially</em> data tables, those just become wtf’s all around…  o.O</p>
<aside class="quote no-group" data-username="tmbb" data-post="11" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/t/77aa72/48.png" class="avatar"> tmbb:</div>
<blockquote>
<p>My main argument against this might be a vague personal distaste against prescriptive code formatters: everybody prefers to edit text instead of AST nodes directly, but then we make all this effort to make the code as uniform as possible to preserve consistency. It’s almost as if we should have been writing AST nodes all along? Or Lisp? You don’t get many discussions on how to format that…</p>
</blockquote>
</aside>
<p>Lisp has some very nice formatters, and nicely they work on any lisp style language.  ^.^</p>
<p>Really though, if text was not so ubiquitous, editing source via a graph database or something would be awesome, you could make so many useful interconnections and such!  Plus IDE’s would become practically trivial.  ^.^</p>
<aside class="quote no-group" data-username="tmbb" data-post="11" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/t/77aa72/48.png" class="avatar"> tmbb:</div>
<blockquote>
<p>Finally, despite what I’ve said above, having a code formatter is pretty cool, especially if it can convert from AST to code, because it opens up exciting possibilities for code transformation tools that are aware of the AST. This can be useful for project generators, because it would make it easier to add code to the middle of a module and even for refactoring tools.</p>
</blockquote>
</aside>
<p>I will definitely be adding it to my macro string source debug output generation for sure!  Convert all that horror of things like <code>def(blah(x, y), do: 42)</code> into actual usual looking code then!  ^.^</p>
<aside class="quote no-group" data-username="tmbb" data-post="11" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/t/77aa72/48.png" class="avatar"> tmbb:</div>
<blockquote>
<p>Having a code formatter that is well tested and guarantees it’ll keep the semantic meaning of the code is much better than not having one, no matter how much I disagree with the space-wasting “features”.</p>
</blockquote>
</aside>
<p>I have no qualm with using up lots of space, I like space where it helps readability (like data tables and such), though I would really prefer tabs for indentation and spaces for alignment, <em>always</em>, spaces are <em>not</em> for indentation!  o.O!</p>
<aside class="quote no-group" data-username="tmbb" data-post="13" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/t/77aa72/48.png" class="avatar"> tmbb:</div>
<blockquote>
<p>I’ve skimmed through the source of the formatter, which I assume has been run through itself. It’s quite readable (as expected), although it looks “too light”. In does waste a lot of vertical space on blank lines. Because Elixir functions tend to be quite short and most are referentially transparent, they can be understood in isolation and it’s not a disaster if you can’t see as much code at once.</p>
</blockquote>
</aside>
<p>Yeah this is where I like to put heads together if the functions are very short, and separate by a single blank line if longer (using the same format for all heads of a function).</p>
<aside class="quote group-livebook_core_team" data-username="josevalim" data-post="15" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/josevalim/48/1787_2.png" class="avatar"> josevalim:</div>
<blockquote>
<p>But if you have newlines after -&gt;, then the formatter will respect that and proceed to add an empty line between each clause.</p>
</blockquote>
</aside>
<p>I do like this aspect of it a lot.  ^.^</p>
<aside class="quote no-group" data-username="Gyllsdorff" data-post="18" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/letter_avatar_proxy/v4/letter/g/f0a364/48.png" class="avatar"> Gyllsdorff:</div>
<blockquote>
<p>For example Credos basic configuration wanted us to use aliases for everything which meant we ended up with references to modules just called Response with no hint if it was a api response or a http request response. In credos case it was configurable by adding this the credos conf, {Credo.Check.Design.AliasUsage, priority: :low, if_nested_deeper_than: 2}.</p>
</blockquote>
</aside>
<p>Yeah I do this same thing here quite a lot (except I had to set it to 3 for some reason that I forgot).</p>
<aside class="quote group-Rebar3" data-username="talentdeficit" data-post="28" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/talentdeficit/48/1302_2.png" class="avatar"> talentdeficit:</div>
<blockquote>
<p>i am generally anti-vertical whitespace, but if the formatter is going to be put single lines between function clauses and case clauses, could it put two lines between distinct functions? ie</p>
</blockquote>
</aside>
<p>This is what I do!!!</p>
<p>Except for such short functions as you have there they’d have no blank lines between the heads and still have 2 blank lines between the different functions.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<p>I find this style of mine <em>much</em> more readable, and I’ve been using it across a lot of languages over a lot of years.  <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"></p>
<aside class="quote group-livebook_core_team" data-username="josevalim" data-post="29" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/josevalim/48/1787_2.png" class="avatar"> josevalim:</div>
<blockquote>
<p>However, I am also worried the lack of distinction between multiple definitions but I do not have an answer yet. I am trying a couple things in my personal projects, such as marking multiple definitions with a ## foo/3 or similar or a bodyless clause but I am not yet convinced.</p>
</blockquote>
</aside>
<p>Hmm, comments could do the separation I seek, but that would add a lot of noise, especially as I use semantic highlighting in my IDE’s so the comments would end up just glowing out of the screen (in semantic highlighting comments are considered as ‘way important’, if they aren’t then you should get rid of them and make the code clearer instead).</p>
<aside class="quote group-livebook_core_team" data-username="josevalim" data-post="31" data-topic="9344">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/josevalim/48/1787_2.png" class="avatar"> josevalim:</div>
<blockquote>
<p>The formatter hasn’t been formally out yet so we would like to see people using it extensively before going ahead and introducing new options.</p>
</blockquote>
</aside>
<p>I keep up to date with elixir master on my dev server and I have to say that the formatter makes a <em>lot</em> of my code entirely unreadable as it is…  I tend to use many short functions when at all possible and pre-generated quick lookup tables and etc, yeesh…  ^.^;</p>
<blockquote>
<p><a class="mention" href="/u/chulkilee" rel="nofollow">@chulkilee</a></p>
</blockquote>
<p>Wow that is a lot of work for that, I just do <code>cd /opt/elixir; git pull; make; _make install</code>…  o.O</p>
<p>Although I’m not running different versions here, so eh…  I’v not had master elixir break on me yet.  ^.^</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="54797" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/39">Post #38</a>
	                </div>
	            </div>
              <div id="likers-container-54797" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="54797"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #38"></div>
  </section>
</div>
    <div class="postbit" id="55022" data-post-id="55022">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="MrTortoise" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/MrTortoise/120/16054_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  MrTortoise
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="onebox allowlistedgeneric" data-onebox-src="https://xkcd.com/927/">
  <header class="source">
      <img src="https://xkcd.com/s/919f27.ico" class="site-icon" alt="" width="32" height="32">

      <a href="https://xkcd.com/927/" target="_blank" rel="noopener nofollow ugc">xkcd</a>
  </header>

  <article class="onebox-body">
    <div class="aspect-image" style="--aspect-ratio:690/391;"><img src="https://imgs.xkcd.com/comics/standards_2x.png" class="thumbnail" alt="" width="690" height="391"></div>

<h3><a href="https://xkcd.com/927/" target="_blank" rel="noopener nofollow ugc">Standards</a></h3>



  </article>

  <div class="onebox-metadata">
    
    
  </div>

  <div style="clear: both"></div>
</aside>

<p><img src="https://forum.elixirforum.com/images/emoji/apple/smiley.png?v=15" title=":smiley:" class="emoji only-emoji" alt=":smiley:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55022" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/40">Post #39</a>
	                </div>
	            </div>
              <div id="likers-container-55022" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55022"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #39"></div>
  </section>
</div>
    <div class="postbit" id="55024" data-post-id="55024">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="yurko" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/yurko/120/2369_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  yurko
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I never really expressed how happy I am with the fact that elixir gets this formatter, so here goes: very happy <img src="https://forum.elixirforum.com/images/emoji/apple/smiley.png?v=15" title=":smiley:" class="emoji" alt=":smiley:" loading="lazy" width="20" height="20"> The negative aspects that are voiced here mostly have to do with each of us having our own style of doing things and our own subjective opinion on what is “right” or “beautiful”. These are results of Elixir allowing all the different ways to write the same thing.</p>
<p>In my opinion the most important aspect of having the formatter is to reduce these options and make the code more consistent. I can live with the resulting format being different from what I use now as long as there is one <strong>true</strong> way used by most other programmers, libraries etc <img src="https://forum.elixirforum.com/images/emoji/apple/wink.png?v=15" title=":wink:" class="emoji" alt=":wink:" loading="lazy" width="20" height="20"> It should also help adoption in the non-ruby community.</p>
<blockquote>
<p>Brackets are now applied automatically44 so no more dealing with those warnings. This is a big win.</p>
</blockquote>
<p>that’s just pure <img src="https://forum.elixirforum.com/images/emoji/apple/heart.png?v=15" title=":heart:" class="emoji" alt=":heart:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55024" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/41">Post #40</a>
	                </div>
	            </div>
              <div id="likers-container-55024" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55024"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #40"></div>
  </section>
</div>
    <div class="postbit" id="55357" data-post-id="55357">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="mischov" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/mischov/120/2489_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  mischov
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Is there a place where reasons for formatting choices have been discussed, or an appropriate place to ask questions?</p>
<p>When looking through formatted code there are a few unexpected cases and it would be nice to understand how that choice was made.</p>
<p>This formatted map update syntax in particular is an interesting one:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">%{
  document
  | id_counter: id,
    nodes: insert_node(document.nodes, node)
}
</code></pre>
<p>instead of</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">%{document
  | id_counter: id,
    nodes: insert_node(document.nodes, node)
}
</code></pre> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="55357" data-batch-url="/posts/batch_likers">
                        2
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/running-the-new-elixir-formatter/9344/42">Post #41</a>
	                </div>
	            </div>
              <div id="likers-container-55357" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="55357"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #41"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <a class="load-more-button" data-turbo-stream="true" href="/topics/9344/load_more?page=5">Load more posts (110 remaining)</a>
</div></template></turbo-stream>