A new distribution of the Emacs editor, called Spacemacs , repackages the classic developer's tool in a new skin to make it useful to a new generation of programmers.
Emacs is one of the oldest text editors in existence. Its most popular variant (now 31 years old) is GNU Emacs, originally developed by Free Software Foundation president Richard Stallman. The editor's enduring popularity comes from its extensibility and programmability courtesy of the built-in Emacs Lisp scripting language -- and from the culture of tooling that's sprung up as a result. Extensions for Emacs (and thus, Spacemacs) provide everything from integration with GitHub to Slack chat windows .
Spacemacs takes the existing GNU Emacs distribution and provides it with a new presentation that's reminiscent of modern text editors like Microsoft's Visual Studio Code or GitHub's Atom. All of this is accomplished entirely by using Emacs Lisp scripting and Emacs' native presentation functionality.
InfoWorld A Spacemacs session with a directory browser and a Python file open for editing. Those used to more conventional editors may find Spacemacs jarring, but its Lisp-powered scripting system has made Emacs a choice tool for developers for decades.
The Spacemacs development team cites four founding principles for the project:
Mnemonic: The key bindings for Spacemacs are easy to remember, such as "s" for search.
Discoverable: All the add-ons and commands for the system should be easy to find. This is roughly akin to Visual Studio Code's "command palette" function, where users can type to find things.
Consistent: Behaviors like key bindings are the same throughout the program.
Crowd-configured: The project is driven by community input and curation, rather than using a top-down development model.
According to project lead Sylvain Benner, Spacemacs's feature set and design principles were originally developed for users of the simpler but less power Vim editor who "want to go to the next level by using Emacs." Spacemacs can switch between Emacs and Vim keybindings on the fly, allowing users comfortable with either of those programs to settle in. (Other keybindings can also be created from scratch.)
So how will users of more modern editors react? At the very least, they'll need to start by tossing out all of their assumptions about how an editor works. If you're turned off by the idea of an editor that doesn't even provide a drop-down menu from its main window, Spacemacs may be intimidating territory to venture into.
That said, the sheer open-endedness of Emacs, and in turn Spacemacs, makes it attractive to those who want to apply a hacker's aesthetic to their toolset as well as their actual work.