Performance: Sublime is one of the fastest editors available. Pavel Fatin compared typing latencies between several popular editors and Sublime Text is consistently among the fastest and most responsive ones in his list. My (unscientific) personal impression comparing Sublime with similar editors like Atom or VS Code confirms this. Also note that Sublime starts up super fast. I don’t restart my development environment too often, but when I do it’s nice to be back up and running within a few seconds — rather than waiting half a minute for a ginormous IDE to boot up.

Stability and reliability: I’ve been using Sublime as my main editor for almost four years and it’s always been rock solid for me in terms of stability. I don’t think I’ve ever lost any data due to a crash or some other issue. I think that’s impressive. I like my tools to be reliable.

Plugin ecosystem: Something that’s drawn me towards Sublime is its fantastic community that wrote thousands of plugins for it. That way you can build a custom editor setup that does exactly what you want and how you want it. Several fantastic packages for Python development are available. I’ve reviewed some of them here: Sublime Text Plugin Reviews.

Package Control: Sublime Text has Package Control which is a plugin manager that let’s you install and uninstall other plugins directly from within the editor. It’s kind of a “meta plugin” that makes tinkering with your setup super easy. Package Control comes with a directory of available plugins which makes it easy to pick out the good ones based on popularity and recent activity.

Plugins are written in Python: Most Sublime plugins are written in Python. Sublime Text includes an embedded Python interpreter that’s used to run the plugin code. It’s nice being able to look under the hood and read through a plugin’s code to judge its quality. If you’re a Python developer and you’re interested in writing your own Sublime Text package then that’s also a bonus.

It’s pretty: There’s a wide variety of themes for Sublime Text available which allows you to set up the look and feel of your editor to your liking. On top of that, Sublime’s font rendering is excellent. I’m peculiar about the way my editor looks. If I’m going to be staring at this thing for several hours each day then it better be as pretty as it can be 😀. I found Sublime Text to be easier to “prettify” than other editors.

Soft learning curve: Compared to some other editing environments like Vim or Emacs, Sublime Text has a soft learning curve. This is great for beginners. In my experience it’s difficult to be successful with Vim or Emacs without going all-in and spending at least a few weeks or months learning the system. Sublime Text is much easier to pick up in comparison.

UI state restoration: Sublime Text remembers the state of your editor windows when you shut it down so that when you restart Sublime everything looks the way you left it, including modified or unsaved files. This feature is brilliant! I haven’t seen anything quite like it and it’s something that discouraged me from using Atom, for example. I often use new editor tabs as scratchpads for notes. And while those are temporary it’s nice not having to worry about losing them due to an editor crash or restart.

Multiple cursors: Like some other editors Sublime supports editing with multiple cursors at the same time. This is super handy when you want to rename a local variable, for example. Select the variable, hit cmd+d a couple of times to select all other occurrences and then type the new name. Done. The same approach works in other situations like re-formatting a several lines of code at once or cutting out parts from a log file.

Cross-platform: Sublime Text is available for Mac, Linux, and Windows. It’s nice being able to use a familiar editing environment across multiple platforms.

Handles large files: Sublime is good at dealing with large files, like an occasional giant CSV file or a log file you want to take a look at in a familiar environment. I like not having to switch to other tools (like less ) for that job, knowing Sublime will handle the file just fine and won’t freeze or crash. Atom dealt with the same files much less gracefully. It often freezed for seconds at a time or even crashed.

Fast global search: Sublime’s global text search is fast. I find it comparable to tools like ack, which is nice because that means I have to switch to the command line less. Sublime also indexes your source files and has a Goto Symbol in Project command that let’s you quickly jump to specific identifiers, functions, or classes. This feature is aware of Python’s syntax so it’s usually accurate.