title: Custom indent width for BeautifulSoup .prettify()
body: <p>Is there any way to define custom indent width for <code>.prettify()</code> function? From what I can get from it's source - </p>
  
  <pre><code>def prettify(self, encoding=None, formatter="minimal"):
      if encoding is None:
          return self.decode(True, formatter=formatter)
      else:
          return self.encode(encoding, True, formatter=formatter)
  </code></pre>
  
  <p>There is no way to specify indent width. I think it's because of this line in the <code>decode_contents()</code> function - </p>
  
  <pre><code>s.append(" " * (indent_level - 1))
  </code></pre>
  
  <p>Which has a fixed length of 1 space! (WHY!!) I tried specifying <code>indent_level=4</code>, that just results in this - </p>
  
  <pre><code>    &lt;section&gt;
       &lt;article&gt;
        &lt;h1&gt;
        &lt;/h1&gt;
        &lt;p&gt;
        &lt;/p&gt;
       &lt;/article&gt;
      &lt;/section&gt;
  </code></pre>
  
  <p>Which looks just plain stupid. :|</p>
  
  <p>Now, I can hack this away, but I just want to be sure if there is anything I'm missing. Because this should be a basic feature. :-/</p>
  
  <p>If you have some better way of prettifying HTML codes, let me know.</p>