handle tabs and <pre><code> better