While I’m not a fan of elastic tabs per se, I do feel there’s room for improvement in Sublime’s tab handling, the implementation for which should be fairly straightforward.
What I’m talking about here is simply definable tabstops. Just about every decent editor has this, and it’s essential if an editor is to become a programmer or technician’s “go to” for editing any kind of text files in the field. I have to drive another editor simply because Sublime is lacking in this basic area. And it’s a showstopper for a whole bunch of colleagues.
So, my old favourite “Brief” had simply a command “tabs” that went something like this “tabs 5 25 40 45”. That would define tabstops for the current buffer at those positions, and the remaining tabstops would be at a repeating interval of the last two (50,55,60,65 etc.). Some editors augment this by allowing tabstops to be left, centre and right aligned, though I see this as fairly pointless and only useful for formatting tables that are coded into tab delimited text files (in that case, you may just as well load stuff up in your favourite WP)
This is needed because text output files from numerous sources are tab delimited, and it’s not possible to work with such files formatted even remotely correctly in Sublime. Traditional programmers prefer this approach since it gives flexibility as to how things are spaced out horizontally. Moreover, a number of older, less popular programming languages work with particular indentation positions. The above tabstop model would support use of tabs or spaces in much the same way that Sublime does presently; knowing tabstop positions allows Sublime to convert tabs to spaces and spaces to tabs in the same way it does at present.
Sublime is already set up with very flexible configuration for this with its default, user, filetype and project preferences.