Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Emacs was far easier for me than Vim was. To this day, I have no idea how people learn Vim. And the scripting is awful, especially compared to Emacs, which is really a script interpreter that has a built in text-editor script and some useful primitives for text editing.


> I have no idea how people learn Vim

LOL, I felt the same way about emacs when I tried to force myself to use it. Interesting that you point out that "the scripting is awful" - my sense after a year of using emacs full time was that the _only_ way to use emacs is to learn to script/reprogram it. If you don't mind my asking - how _did_ you learn emacs? Were you a lisp programmer to start with? Or did you learn it in the context of emacs?


Yeah, scripting a huge focus in emacs: they say it's a scripting environment that happens to have a text editor embedded in it. I don't know who "they" are, but they're quite perceptive.

Some lisp experience (especially CL) can help with learning elisp, but it's entirely possible to do so without it.

The process of learning emacs is roughly this:

-Launch emacs

-Run through the tutorial

-Learn the shortcuts and gain gradual proficiency in the editor (this step can optionally come later)

-Find something you want, or that annoys you (I wanted to have Solarized Dark as my theme)

-Google how to fix it, introducing you to .emacsrc and .emacs.d

-Copy snippets into your .emacsrc (or .emacs.d/init.el)

-Gradually learn elisp as you customize your emacsrc and snippets to your needs.

-Start writing your own snippets, with the help of the excellent documentation.

-Begin writing about how great emacs is online (I am here)

-Eventually start writing full-fledged emacs packages.

-Master the intricacies and horrors of elisp. Begin to despise the language. Comfort yourself by saying, "at least it isn't vimscript."

-Start supporting xemacs in your emacs config and packages. At this point, your config is a large hierarchy of directories. If it wasn't, it is now. If you didn't hate writing elisp already, you will now.

-Under the pressure of the demands of your users, spend more time working on emacs packages and other improvements to emacs than your actual work.

-Snap, and spend the rest of your days improving emacs and writing tributes to RMS.

Most do not follow this learning curve to its conclusion.


hehe - I made it to step 4, anyway.

The only thing that sort of scared me off of customizing emacs is that if I, say, SSH into a remote box or go to another co-workers computer, my customizations won't be there. That's why I do my best to stick with "out of the box" vim defaults (and vi defaults if possible): I know they'll always be there, wherever vi is.


Well, that's the drawback to emacs. It's also why most people don't change the default keybindings too much: some functionality may be missing, but muscle memory won't betray me if I ssh into a fresh emacs setup.

However, there are some ways to combat this.

Firstly, you can keep your .emacs.d on github, and pull it down to whatever machine you're working on. Indeed, this is what many emacs users advocate.

Secondly, many emacs users will ask: Why are you launching emacs over SSH at all? Instead, use TRAMP or SSHFS, bring up the folders under dired if you need to see the folders, and edit the files with your local emacs.

You can become compotent in emacs without customizing it, but the customization is a big part of why emacs is great.


Haha, you described many things perfectly! But what drove me the most towards emacs despite being suitable for FP, huge amount of tweaking and customizability it provides. And it felt much better doing it in Elisp than Vimscript. Everything has it's good and bad sides, that is normal imho. But really nice comment! :)


Of course.

Although emacs is no more suitable for FP than vi really, other than having better support for some of the functional languages, and for Scheme and CL (which aren't functional, but are often associated with FP, and are sometimes written in that style.


> Vimscript

I'd go so far as to say that if you _don't_ feel comfortable using vi "out of the box", you probably should steer toward something else - vi is just not customizable like other editors/IDEs are.


Best of both worlds: http://spacemacs.org/

Modal editing is far superior, once you learn it.

Emacs runtime and configurability thanks to Elisp is far superior to VimL.

So just use Spacemacs. ^^


It works until one wants to create their own configuration stuff and functions and stuff. Much rather just stick with normal emacs configs and stuff and put in EVIL-mode once my pinky finger can no longer reach Ctrl (Not a worry seeing as I need Ctrl for gaming as well).

Also, installing plugins requires one to create one's own layer? Eww.


It's complicated, true.

But it does a lot of work for you.

I started to create my own setup from scratch with Evil etc.

But recreating all that Spacemacs has, especially with customizing all the plugins for Vim keybindings, is countless hours of work.

You can skip the layers and side-install custom plugins quite easily though.


I can't stand Spacemacs: it's far too complicated, and I'd rather write my own configs, thanks. Also, I could never get used to Vim-style modal bindings.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: