Hacker News new | ask | show | jobs
by juandazapata 3574 days ago
Thanks for the work done here. I'm not a VIM user anymore (I use Spacemacs now), but it opened my eyes/mind to what is a professional code editor. After using VIM, using any other editor feels like programming in Notepad. VIM you'll always be in my heart.
2 comments

I use Spacemacs for Elixir programming and honestly, Emacs is slow, I would often type commands and then wait for it to complete. I think some reboot like Neovim did for Vim, could be beneficial as it is awesome editor, but it is just too slow to start and slow to use.

It might be that Spacemacs layer is adding additional complexity, and maybe going through Helm is the issue, I don't know, just it does take quite a bit for it to catch up. In Vim, you really are plowing through at the speed of thought.

You should try profiling to see if anything comes out as taking up a lot of resources. `M-x profiler-start`, do some work or type some stuff (if you notice that it's slow), then do `M-x profiler-report` to see if anything in particular is slowing things down. Note though that the part where you type `M-x profiler-report` may sometimes show up in the profiler so ignore that.

See https://www.gnu.org/software/emacs/manual/html_node/elisp/Pr...

It's true that emacs can get pretty slow if you have so many things running that you don't even need. It's also useful to defer packages until you actually need them by using autoloads or if you use use-package, `:defer/:commands/:bind` which create them for you.

Core Emacs is extremely snappy, slowdowns generally occur from packages. Helm is indeed a giant monster. Highlighting and redisplay is another area where things slow down.
I run on an eight year old Thinkpad. I run my own config now, but used Spacemacs for quite some time. I've never had problems with speed. I didn't use it with Elixir though.

Perhaps try disabling your layers one at a time to see where the problem is.

I don't think it is Elixir, it is Helm most likely as someone already mentioned. I am using Vim and Emacs and I do notice significant difference in response to commands.

Helm is super helpful, so most likely I will disable it and see how it goes.

You could try looking at using ivy instead of helm. Not tried it myself but there was a thread on the emacs reddit last week [1] where people said it's much faster.

https://www.reddit.com/r/emacs/comments/51lqn9/helm_or_ivy/

speed is the main reason i'm not using spacemacs, it has problems just rendering it's own default config file when navigating around it (granted i'm stuck on windows at work which is far from optimal).
What did Neovim do for VIM? Vim was saying all these things were in the workds way before Neovim.

Might see in my tone I am not a fan of this fork.

How did you learn Spacemacs? I'm still using vim but would like to try & learn Spacemacs. What's a good way to learn it?
I just dove in about six months ago, and now I feel v productive in Spacemacs. The Spacemacs ABC videos are helpful.

Three of Spacemac's four pillars (mnemonic, discoverable, consistent) make it relatively easy to get the hang of. My early usage looked something like:

- Think of task I want to accomplish that probably has key binding

- Begin typing SPC - <continue drilling down through menus that look promising>

- If that doesn't work, type SPC-: and begin typing what I think the command might be called

- If that doesn't work, search web for "Spacemacs key binding <thing I want to do>"

- If that doesn't work, find/read relevant Spacemacs layer documentation

- If that doesn't work, ask in the Spacemacs gitter channel

- Memorize key binding

Once I learned a binding I found it easy to remember due to the mnemonicness:

open this file in Github? SPC-g-h-o of course (g (git) - h (..hub) - (open))

view most recent search buffer? SPC-s-l (s (search) - l (last search buffer))

maximize this window's buffer? SPC-w-m, etc

I have dabbled in spacemacs a tiny bit and I have been using vim for years. Basically I think there are two ways to learn spacemacs.

Method 1

1. Become proficient in vim

2. Become proficient in emacs

3. Learn spacemacs keyboard shortcuts

Method 2

1. Become proficient in emacs

2. Become proficient in vim

3. Learn spacemacs keyboard shortcuts

I'm a vim user, but I know almost nothing about emacs, so I am having a tough time adopting spacemacs. The basic editing features are a flawless reproduction of vim, but when I do `set textwidth=99` it doesn't work. Then I end up googling how to do this in spacemacs which is apparently `spc : set-fill-column <enter> 99`. This is just one example, but there are many others if you try to do anything different from the spacemacs defaults.

I have also been a Vim user for a decent while now. I try to minimize the number of plug-ins that I use, lest I get into the plugin circus.

To migrate to Spacemacs, I just replicated my workflow. Earlier I would use `find . ...` extensively for complex grep. I figured the equivalent in Spacemacs. For file navigation I used the NerdTree. I again looked up the key bindings for file navigation. So on, so forth. I now have a pretty decent spacemacs setup.

I would think, this can also classify as a third method, without having to become proficient in Emacs.

The documentation is very good. I recommend downloading and installing it and just playing around. Just press the spacebar and you'll see an organized, easily discoverable command interface pop up. Magit is very straightforward if you know how to use the git commandline. Type SPC g s (SPC git status) to open the magit on the current file, then ? to view the available commands. Although org-mode is a massive beast, it can still be productive to simply start by learning small parts and increase the set of features you use over time.

The whole thing should be fun, not just laborious.

http://spacemacs.org/ http://spacemacs.org/doc/QUICK_START.html

Besides the great documentation, watching "Spacemacs ABC" helped a lot: https://www.youtube.com/playlist?list=PLrJ2YN5y27KLhd3yNs2dR...