To be fair you can totally bind an arbitrary number of spaces to tab in vi. I'll dig out the syntax highlighting file some time. Oh and I use vim really.
Most modern editors/IDEs do indentation automatically and, when you press the tab key, insert whatever style of indentation you have configured (tab, multiple spaces at once)
I mean I was 99% sure it convert to spaces, I cannot say I was certain. The default settings are fine for what I do, I only ever had to change the spacing from 4 to 2 spaces once when dealing with someone else's files
Some people use tabs for indentation and spaces for alignment. It kind of gets the pros of tabs (user configurable indent-width) and the pros of spaces (alignment). That doesn't work in Python where you can't align stuff and the interpreter doesn't allow mixing tabs with spaces, but in other languages it is a possible style.