bgreenlee wrote:will it be possible to have a single plugin code base that runs on both ST2 and ST3?
There's the changes between Python 2 and 3, and also those between Sublime 2 and 3. Supporting both versions of Sublime in the one code base is probably doable but I'm guessing it would come at considerable effort/complexity. Consider supporting an on_selection_modified for ST2 and an on_selection_modified_async for ST3.
I've ported some plugins to early alpha builds of ST3.
I found using the 2to3 python refactoring tool a reasonable first step, making mechanical changes for things like print() now being a function.
In earlier builds of Sublime 3, there was ONLY async on_* event handlers, so you'd get weird bugs such as the visible region changing (animated scrolling) during an on_selection_modified handler
I haven't tried this new API with on_*_async as alternatives instead of replacements.
Other than Python version, there's also the performance cost of putting the plugins out of process. This can mean you need to adjust your code, to avoid function calls, which were considerably cheaper before. An example being checking the scope for each character in the buffer.
It is better to remain silent and be thought a fool, than to speak out and remove all doubt