8 ms·
I hate to tell you this, but it's not Emacs that's slow and clunky, it's Spacemacs. I dumped Spacemacs and spent a couple days building a new config with everyt
by giggles_giggles 7y ago
I hate to tell you this, but it's not Emacs that's slow and clunky, it's Spacemacs. I dumped Spacemacs and spent a couple days building a new config with everything I used from Spacemacs and it is a good 10x faster.
It shouldn't be surprising, seeing as Spacemacs development ground to a complete halt (no new releases) something like two years ago.
Spacemacs is a neat demo of what is possible with Emacs but it adds a TON of complexity and bloat. I found it much harder to troubleshoot and it didn't keep up with the rest of the ecosystem, and it's the rest of the ecosystem (and Emacs Lisp) that make Emacs so special.
- danieldk 7y agoAgreed. I started with Spacemacs, which showed what is possible in Emacs. But it is so horribly slow and breaks so often that I couldn't use it more than a few weeks. Then I started with a blank init.el and just added packages (with use-package) as needed. Now it's fast and it still has the functionality that I need, things also rarely break (and thanks to Nix I can always roll back). The main idea that I stole from Spacemacs is the use of spacebar shortcuts (via general.el).
- iLemming 7y agoThe thing about Spacemacs many people don't get - it does not liberate you from learning Emacs internals. The good thing about Spacemacs that it simplifies one of the most challenging things about Emacs - discoverability. The hardest part of Emacs is to learn what Emacs can do, what it offers. And many gems are hidden under so many layers, that people may not even know about them after decades of using Emacs every single day. And Spacemacs can be fast and predictable. But you need to know where and how to tweak it to make it so. For the past few years of me using Spacemacs, I had maybe three of four incidents when after updating things, something would break in a way that it would take me longer than ten minutes to find a workaround.
- clarry 7y ago> The hardest part of Emacs is to learn what Emacs can do, what it offers. Nah, for me the hardest part is finding out about all the things it doesn't do. Unless you code it. Maybe you find some half-arsed packages, but they might just make you more frustrated. For example, I still haven't found a way to do vim-like completion. I still haven't got a good cscope interface that doesn't crap all over my windows (a common problem for many things in emacs, not just xcscope). I still haven't found a way to make my custom keybindings just work everywhere; every so often I happen to end up with focus in a window where, for example, my normal window navigation bindings don't work and I'd have to go out of my way to fix it.
- useragent86 7y ago> I still haven't found a way to make my custom keybindings just work everywhere; every so often I happen to end up with focus in a window where, for example, my normal window navigation bindings don't work and I'd have to go out of my way to fix it. The easiest way to do this is to use `bind-keys' (specifically, the one with an asterisk after it, which HN markup won't seem to let me use without creating italics instead), which creates a global map for your personal key bindings that override other bindings (so, use it thoughtfully, and remember that `describe-personal-keybindings' will list them). It's best used in the `use-package' macro, like: (use-package ace-jump-mode :bind* ("C-." . ace-jump-mode))
- clarry 7y agoMy bindings need to be state-aware, because they are evil. So a simple global override is actually not quite enough..
- useragent86 7y agoIn that case, I recommend using `general`, which is designed to make configuring EVIL keymaps very easy. It also provides a `use-package` keyword. I use it for all of my keybindings even though I don't use EVIL. https://github.com/noctuid/general.el https://github.com/noctuid/general.el
- dilap 7y agoAs a devoted emacs addict, I can attest that plan old emacs is also pretty slow and clunky, though I could easily believe spacemacs is even worse! My dream editor would combine the flexibility of emacs w/ the speed and quality of sublime.
- Barrin92 7y ago>As a devoted emacs addict, I can attest that plan old emacs is also pretty slow and clunky it's true in the sense that it's true for almost anything once you start to add a plugin or two or add personal customizations. The only thing for me that is actually consistently, superfast is terminal vim without any plugins. Which is too barebones for my daily use. In a realistic, daily working environment with all my stuff loaded emacs is clunky, but not necessarily slow. It's honestly still pretty responsive.
- dilap 7y agoEven just basic text rendering in emacs is slow! Three examples: I use the windowed Mac version most of the time, and touchpad scrolling is so slow that it's basically not a reasonable way to get around a file. Compare to Sublime, where it's silky smooth, and you can get an almost physical feeling of where things are, which makes zipping around using scrolling very effective. I run my shell inside emacs (which is super nice -- how do people survive not having easy immediate access to command output)? But if a command is going to generate a lot of output (e.g., if I have the misfortune to be running mvn), I'll need to either drop back to terminal or redirect the output to a file, or be content with my command slowing down 100x to wait for emacs to render the output. Try opening a file that happens to contain a very long line (this happens sometimes w/ generated code, or json data, or ...). Emacs will basically freeze, due to some N^2 in line length algorithm somewhere. It's no easy task, but I do think it's possible to make something w/ the near-infinite, excellent flexibility of emacs, while also hitting a much higher speed and quality bar.
- omaranto 7y agoScrolling sounds like a terrible way to get around a file. I'd much rather be presented with a prompt to go to a named "section" with completion (an actual section in a prose document, or a function definition in a program), or to search for some text. Or, if I don't have a specific target in mind and I want an overview of the file, I prefer pagination to scrolling. But... I wonder how much my preference is conditioned by years of Emacs and its subpar scrolling? My preference for pagination+search extends to other software; to browsers, for example (spacebar or ctrl+f over mouse-wheel), but is that just a habit I got from my constant Emacs usage (I typed this comment in Emacs)?
- catblast 7y agoDoom emacs I think demonstrates that have you can something all around nicer both form and function than spacemacs with absolutely amazing performance. My emacs install on a Sandy Bridge toaster with hundreds of packages configured is ready to go in about half a second.