title: Awk formatted output how to include sign for floats
body: <p>I want to reformat a file by adjusting the spacing between fields. I have the managed to get the content into this form:</p>
  
  <pre><code>  130GLU    HB2  383   0.058   5.178   2.925
    130GLU     CG  384   -0.108   5.065   2.887
    130GLU    HG1  385   -0.079   5.007   2.963
  </code></pre>
  
  <p>What I can't get right is the floats with minus signs. The above formatting is produced by <code>awk '{printf "  %6s%7s%5s   %5.3f   %5.3f   %5.3f\n",$1,$2,$3,$4,$5,$6}' file</code>. However, I want to get the following:</p>
  
  <pre><code>  130GLU    HB2  383   0.058   5.178   2.925
    130GLU     CG  384  -0.108   5.065   2.887
    130GLU    HG1  385  -0.079   5.007   2.963
  </code></pre>
  
  <p>In other words, account for the sign in counting the characters of the number, in this case the <code>5</code> part of <code>%5.3f</code>. How can I do this?</p>