When comparing Sublime Text vs Spacemacs, the Slant community recommends Spacemacs for most people. In the question“What are the best programming text editors?” Spacemacs is ranked 4th while Sublime Text is ranked 9th. The most important reason people chose Spacemacs is:
Spacemacs combines the Emacs platform (with the full power of the Emacs plugin ecosystem) and the Vi keybindings (via EViL), all in the same box.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Lightweight
Sublime Text is very lightweight by default. Customization occurs on the fly thanks to Package Control.
Pro Comfortable to work with
Sublime Text has a minimap on the side that provides a top-down view of the file and keyboard shortcuts for most actions. It also supports a large number of languages and general text editing features out of the box.
Pro Multi-line select and editing
Multiple cursors and column selection allows for versatile ways of editing.ctrl + d
will select the current word and each time the command is repeated, it adds the next occurrence of the word to the selection.ctrl + click
or middle-mouse click
will place another cursor in the place that's clicked. Cursors can then be controlled together. This also permits selecting vertically.ctrl + shift + l
will place a cursor on every highlighted line.
Pro Functionality can be easily extended
Sublime Text uses TextMate's syntax declaration files to support new languages, it has all its menus and keybindings generated from JSON files, and it can be scripted to add new features using Python.
If Sublime Text doesn't support a desired language or feature, it's usually not long before someone implements it themselves - examples include the plugin package manager and the 'open in browser' command.
Pro Beginner-friendly
When you start using Sublime Text, it doesn't drown you in keyboard shortcuts or non-intuitive use-concepts. However, high-level functionality can still be easily accessed when the need for it arises.
Pro Consistent cross-platform
Sublime Text looks consistently the same across Windows, OS X, and Linux.
Pro Fully customizable
Sublime Text allows for all sorts of customization to help users change almost everything in the editor: Key Bindings, Menus, Snippets, Macros, Completions, and many more. Essentially, just about everything in Sublime Text is customizable with simple JSON files. This system gives the user flexibility as settings can be specified on a per-file type and per-project basis.
Pro Very fast
Sublime is quick to start and never slows down. The UI is always responsive and you know what is happening in the background.
Pro Has tons of plugins available
Pro Installable package manager
The package manager is a plugin and can be swapped with something else custom.
Pro IDE features without the cruft
Sublime Text, while being lighter-weight than an IDE, still supports many IDE features.
- Text from the current file is used to provide autocomplete.
- Project Support (folder browsing, scoped history, build-system declarations).
- Refactoring support is emulated through multi-select, project-wide find and replace, and regular expression search.
- Syntax-aware selection and GoTo for quickly jumping to locations in the project.
- Snippets and Macros.
- A Python console for everything else.
Pro Offers Command Palette
Command Palette allows for fuzzy searching all available settings, snippets, etc.
Pro Easy to get started
All you need to do when starting up is to install a package manager and modify user configuration.
Pro Regex commands
Regex commands help describe a certain amount of text.
Pro Customizable keymapping
From menus to commands, assign key maps to almost anything.
Pro Portable settings
Settings are modular and can be shared.
Pro Distraction free editing mode
Distraction free editing takes over your screen and removes every UI element so you can focus on code.
Pro Dynamic Build System
Choose from many build systems or craft your own.
Pro Freemium
A Sublime license can be bought but it can still be used for free. However, a pop-up appears when you save multiple times.
Pro Permits instant file switching
Open Goto Anything by pressing Ctrl or Command + P and by using fuzzy search you can look for a file in your project. The file will load even without pressing enter, so you can make sure you've found the correct file without committing.
Pro Multiple languages are supported
Pro Haxe and OpenFL integration via plugin
Both of these programming interfaces are cross-platform, open source, and easy to use.
Pro Direct server upload
Provides command line shortcut for server upload.
Pro Projects support multiple folders and git repos
Pro Allows for Vim-style editing
Vintage mode is Vim-style editing that's already built into the text editor.
Pro Support for TextMate themes and window decoration themes
Sublime Text compatibility with Textmate bundles is good, but excludes commands, which are incompatible. In general, Sublime Text syntax definitions are compatible with Textmate language files (.tmLanguage extension).
Pro Highly Theme-able
Create your own theme with online editor.
Pro Functionalities
With lot of functionalities, where other editor even not think to provide.
Pro Combines the best parts of Vi and Emacs
Spacemacs combines the Emacs platform (with the full power of the Emacs plugin ecosystem) and the Vi keybindings (via EViL), all in the same box.
Pro Simple but powerful configuration architecture
At the heart of Spacemacs, the configuration layers group packages configuration into semantic units that can be toggled on and off. The architecture is simple but powerful, allowing the user to easily manage configuration dependencies between hundreds of packages.
Pro Community-driven configuration
Spacemacs is the biggest community-driven Emacs starter-kit.
Pro Above average documentation quality
Documentation is mandatory for each new configuration layer and can be accessed directly within the editor in Org format.
Pro Cross-platform
Emacs runs on Gnu/Linux, Mac OS X, and Windows.
Pro Completely configured out of the box
Stuff like version control, file management, good default theme are all configured out of the box.
Pro Mnemonic and consistent keybindings
Space-lead key bindings are organized in mnemonic namespaces. For instance, buffer actions are under SPC b
, file actions are under SPC f
, project actions are under SPC p
, search actions are under SPC s
, and so on. Keybindings are consistent across the whole distribution thanks to a set of conventions.
Pro Can be controlled fully with the keyboard
There's no need to reach for the mouse again since Spacemacs can be fully controlled with keyboard.
Pro Gradual learning curve
Evil package is a first class citizen and Spacemacs embraces it from day one. Evil package allows Vim users to be productive very quickly while still allowing regular Emacs users to use Spacemacs.
Pro Remote file editing
Files can be edited in Spacemacs remotely.
Pro Great note-taking and agenda mode built-in
Allows for great organization applications that can be saved in future-proof format, plain text, can be integrated with org, LaTeX, markdown, HTML, Literate Programming and be committed to source control.
Pro Offers a number of practical features
Spacemacs has some great features for taking notes, tracking to-do lists, and tracking time.
Pro LaTeX support
LaTeX allows for auto-completion, syncing, and more.
Pro Manage many code bases easily
Pro Daemon support
Has great daemon support, which can mitigate the issue of slow startup.
Pro Can work in terminal mode
Sometimes you only have terminal access, over ssh or something.
Pro Great CFEngine support
Syntax highlighting and org-babel extensions.
Pro Great support from the community
The community surrounding Spacemacs is very active and there is a welcoming gitter chat for users to ask questions.
Pro Lowers the risk of RSI by using the spacebar as leader
Spacemacs got its name from the fact that it is uses the space bar as a default leader key. The key was chosen because it is easy to press and to hopefully lower the risk of RSI.
Pro Fast-paced development
New functionalities and fixes are added to Spacemacs every day, while release cycles are short.
Pro Easily extended with community plugins
Pro Works well with Common Lisp
Pro Manage R files easily
Pro Great Clojure support
Pro Excellent support for Elixir programming language
Elixir layer which uses the Alchemist package is the best way to edit Elixir code out there.
Cons
Con Paid
Although paying for something good is far from a Con, having the competition this editor has and still have to pay for it is definitely a Con.
Con Proprietary
Sublime Text protects and copyrights its code and is thus not the freedom-ware some would like it to be.
Con Interruption while work
"Purchasing" messages box interrupts while saving file.
Con No printing of files
Sublime Texts offers no way of printing the files it edits.
Con Not a full IDE
It does not necessarily function on a project level.
Con Annoying whitespace management
All too often it does the wrong thing with indentation on otherwise blank lines.
Con Loading big files on Windows is slow
Here's a rough comparison: a 70 MB file takes about 2 seconds to load in Notepad++, whereas the same file in ST3 takes over 10 seconds to load.
Con No toolbar
Sublime Text is more focused on keyboard users, meaning it doesn't come with a tool bar. Even plugins can't toggle bookmarks using the mouse.
Con Slow development
While development has yet to stop on Sublime Text, it is significantly slower than its competitors Atom, VSCode, and others.
Con Inadequate language support
Sublime Text offers poor support for Far-East languages in Linux.
Con No RTL Support
Although it is a "text" editor, Sublime Text does not support rendering text written in Arabic or other right to left languages. The developers seems unwilling to fix this issue any time soon.
Con Often crashes due to poor quality plugins
Some plugins are quite buggy, meaning that installing many can become quite a problem regarding stability.
Con Can be quite glitchy at times
Spacemacs combines many packages from many different authors that were never designed to work together. Sometimes they interact in unexpected ways, and things randomly break as one package interferes with another's features. This combined with frequent package updates and necessary customization by selection of layers and packages, can make these glitches hard to reproduce. It takes a lot of emacs know-how to fix these problems. Fortunately there is a very active community willing to help with these problems, but it might take a while.
Con Complex learning difficulty
You must be familiar with either Vim or Emacs. In addition, you should be familiar with the unique features of Spacemacs. The Layer concept of replacing Emacs settings is still difficult and abstract compared to modern editors.
Con Functionality layers of complicated configuration
To configure Spacemacs, settings for Emacs/Evil/Spacemacs may need editing. It's not always clear which need to be changed or how to change settings globally: sometimes hooks are needed, other times Spacemacs provides options.
Con High CPU and unresponsive at times
There are occasions when Spacemacs would suddenly consume a LOT of CPU and then other times would become completely unresponsive. This instability took place only 6 months or so ago. Restarting Spacemacs can fix it for a while but perhaps this issue is already fixed in newer versions.
Con Relative low startup time
Although configuration is heavily loaded, the starting time of Spacemacs is usually between two and five seconds. Emacs can be run as a daemon though which reduces the client's startup time to a few milliseconds. Still not as bad as other editors though, especially Electron based ones like VSCode or Atom.