I know that here was the same question. Which one should i use if i want to forget all vim keys and use only emacs features(no evil mode), i want to use only emacs, no vim anymore!
I've tried both for about 6 months each - it was a decent way to discover new packages. I lean towards spacemacs (I had less problems) just be sure to use the development branch. In the end I dusted off my old config and started adding the packages I liked. Troubleshooting doom or spacemacs is harder than plain emacs when something is misbehaving (better docs, larger community). I'd als suggest using emacs 29, feels a lot more snappy that 28 and use-package is pretty nice.
Check out system crafters guides on emacs on YouTube when you decide to start rolling your own configs.
GL
I started with vanilla emacs and have stayed there. That way, you learn all the original controls and options. Then when you're ready to configure it to how you want it to work, you can pick and choose what you want.
I started with Spacemacs, and became captivated with the idea of Emacs, but then I became overwhelmed by all the layers upon layers of complexity that were in Spacemacs. I'm the kind of guy who, when I have a problem to solve. I Google it. I don't like reading documentation full of other jargon that I have to look up yet again endlessly. So when I Googled my questions, I found people asking in plain English the kinds of problems I had, and people answering with the correct terminology that I hadn't heard before, but I was still lost in applying that new info for a Spacemacs config. Heck, I often found people asking for help here on this subreddit for their Spacemacs config, and mostly when I found was people pointing them back to their own Spacemacs community for support since Spacemacs is almost an entirely different beast than Emacs as far as troubleshooting goes.
Then, I heard about Doom Emacs. It started up faster and was easier to start being productive in it sooner. It didn't have the feature set of Spacemacs, but that was fine. I just wanted a stable base to work off of that didn't have the insane defaults that vanilla Emacs has. The learning curve for Doom Emacs was much shorter than Spacemacs. The syntax for configuring various parts of an Emacs config is basically the same as vanilla Emacs but with adding an "!" at the end of a bunch of things, which allowed for mostly optional extras. And once I got used to the fact that, when I wanted to install a package, I'd first check to see if it is mentioned as a commented-out line in my
init.el
file. If not there, then add it to mypackages.el
file with no configuration there, contrary to how most package installation instructions seem to show that you can configure the package in the same place where you install it. All package configuration happens in theconfig.el
file. Doom Emacs does handn't keybind configuration a bit differently than vanilla Emacs, but once you set up a few of those in yourconfig.el
file, then it's easy to continue following your own example from then on.Other than that, I've found that by using Doom Emacs, I can better make sense of vanilla Emacs questions and answers I find online. But with Spacemacs, I always felt like I was isolated and on my own unless I wanted to post a question to the Spacemacs community specifically and wait.
I started with Spacemacs. Switched to Doom. Switched to my own vanilla emacs for a year or two then went back to Doom.
I find Doom's defaults well thought out. It just works (insofar as Emacs just works). It has sane default bindings and I can just use emacs to get my job done. There's nothing inherently noble about rolling your own config or choosing a particular kit. Just try them out and see which you enjoy.
Gonna up for the Doom, it’s way more Emacs than Spacemacs
Doom with evil is pretty great so I wouldn’t give up vim bindings entirely. I haven’t used spacemacs before but I really love the doom workspaces setup, it’s really nice if you work in multiple repos often.
Just an observation.
In the responses to the question here, there is close to zero actual comparison of Doom and Spacemacs features or behavior, or mention of specific benefits of one or the other.
Most of the response content is essentially voting - rooting for the colors of one team or the other. Maybe OP finds that that helps somehow; maybe not. (If it does, what a pity.)
Dunno what this indicates. Maybe it says something about Reddit, or about the nature of such questions, or about Doom and Spacemacs fans?
I really don't know. Just a weightless observation. And maybe after I write this it'll (hopefully) be proven wrong.
GNU Emacs is configurable for a reason. Don't use those complete garbages.
The configuration should be made by you. It's really not that hard, just start from the tutorial.Try them all out and decide for yourself
Neither. Use basic emacs, do the tutorial, look at package managers. I recommend straight
i want to use only emacs
then you should use vanilla.
The Emacs Editor | Emacs Docs
Write Articles, Websites and Books with Emacs Writing Studio
GitHub - SystemCrafters/crafted-emacs: A sensible base Emacs configuration.
Just an observation.
In the responses to the question here, there is close to zero actual comparison of Doom and Spacemacs features or behavior, or mention of specific benefits of one or the other.
Most of the response content is essentially voting - rooting for the colors of one team or the other. Maybe OP finds that that helps somehow; maybe not. (If it does, what a pity.)
Dunno what this indicates. Maybe it says something about Reddit, or about the nature of such questions, or about Doom and Spacemacs fans?
I really don't know. Just a weightless observation. And maybe after I write this it'll (hopefully) be proven wrong.
Honestly, start with Doom to just get a feel for emacs. Eventually, you might get annoyed with some of its limitations when it comes to customizing your setup.
By the time you reach that point you’ll have an idea of what can be done with emacs and this is where you finally make the switch to vanilla.
You can even make it so you have your vanilla stuff in a separate folder, so you can make it more usable bit by bit, while still having access to doom.
I’m curious, what are those limitatiins you mention in doom emacs?
Emacs 29 introduced the
--init-directory
command line option, so you can have completely different Emacs instances that don't interfere with each other, loading different modules, ui and what not. You can simply create a shell script for each one and play with different flavors of Emacs. I've done it for example when I changed my completion system from ivy to vertico to see if I liked it (I did).
I found this one https://sr.ht/~ashton314/emacs-bedrock/ and has been using that (with some of my own mods for development) but a really good base to build on Only emacs 29
Doom all day. Spacemacs often very brittle, and it's always slow.