This is a very nice write up, but the tabs&#x2F;spaces part of it makes no sense at all.<p>&quot;I like it, since it means my source code looks the same on every machine.&quot;<p>That reason just makes no sense at all.<p>There&#x27;s only one reason for configuring tabs to be anything but tabs, and that&#x27;s because someone else set the standard. So if you&#x27;re editing python or bash, and you don&#x27;t feel like being a rebel with a cause, you set expand tab.<p>But obviously you shouldn&#x27;t be doing that manually every time you open a file, so you should configure Vim to detect what&#x27;s going on.<p>You can do that by adding the `ciaranm&#x2F;detectindent` plugin and then setting the following line:<p><pre><code>    autocmd BufReadPost * :DetectIndent
</code></pre>
To detect the indentation any time you open a file. That at least for me makes the headache go away most of the time.