title: How to print well-formatted tables to the console?
body: <p>I have a program that prints out data that should be printed into a format that looks like a table. However, the table breaks when the numbers are longer than 2. I know about the <a href="https://doc.rust-lang.org/std/fmt/#syntax" rel="noreferrer"><code>width</code></a> parameter in <a href="https://doc.rust-lang.org/std/fmt" rel="noreferrer"><code>std::fmt</code></a>, but I can't get my head around it.</p>
  
  <p>Current output:</p>
  
  <pre class="lang-none prettyprint-override"><code>---------------------------------------
  | total | blanks: | comments: | code: |
  ---------------------------------------
  |  0   |    0    |    0     |    0  |
  |  77   |    0    |    3     |    74  |
  |  112   |    0    |    6     |    106  |
  |  178   |    0    |    6     |    172  |
  |  218   |    0    |    7     |    211  |
  |  289   |    0    |    8     |    281  |
  |  380   |    0    |    9     |    371  |
  |  460   |    0    |    10     |    450  |
  |  535   |    0    |    11     |    524  |
  |  611   |    0    |    12     |    599  |
  |  692   |    0    |    14     |    678  |
  |  772   |    0    |    17     |    755  |
  |  873   |    0    |    18     |    855  |
  |  963   |    0    |    19     |    944  |
  |  1390   |    0    |    19     |    1371  |
  |  1808   |    0    |    19     |    1789  |
  |  2011   |    0    |    19     |    1992  |
  |  2259   |    0    |    19     |    2240  |
  |  2294   |    0    |    19     |    2275  |
  |  2349   |    0    |    19     |    2330  |
  |  2376   |    0    |    19     |    2357  |
  |  2430   |    0    |    19     |    2411  |
  |  2451   |    0    |    19     |    2432  |
  |  2515   |    13    |    19     |    2483  |
  |  2559   |    13    |    19     |    2527  |
  </code></pre>