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

1. I like learning new tools and I got pretty good at vim's 10-15 fundamental commands in probably a couple of weeks. I was certainly OK, albeit a bit slow, by day 2 or so.

2. By the end of month 1-2, vim had become completely second nature. I did stuff without thinking. Actually, thinking about what I was doing started to confuse me.

3. Sure we all spend lots of time thinking, but I also often find myself cranking out code and vim is quite amazing for that.

4. I ended up switching to emacs because a) I like learning about tools (see #1) b) emacs gives you a more IDE-like experience c) while retaining 90% of vim's editing power d) and in general has the similar "become an editor expert" philosophy to optimizing editing workflow

I haven't used sublime, but I'm quite fond of editors that are keyboard-only (especially for jumping around, etc.), cross-platform, have stood the test of time and have endless extensibility.

edit: I have customized both vim and emacs to crazy depths. There was a time when just as I started to code, I'd say "why can't I do this [blah] drudgery automatically?" and end up writing an emacs function to do it :-)



Agree; customization and extenisibility of emacs is something unmatched (not a vim user, can't comment on that), I have been using emacs for just an year now; and still I feel I am more productive in emacs than anywhere else, keyboard macros and elisp extensibility can almost bring any feature customized to your fingers.


I have to agree with TFA here... I just don't see the point, and never have. When I'm in an editor, I mainly want to type, and have what I type go in where I type it... I like pico/nano over vi/vim/emacs. I like sublime, but a lot of functionality is only keyboard accessible, and I haven't take n the time to learn hot keys... why I would really love is having my editor, and a couple command/console prompts in the same UI. I find that I tend to reach for sublime, as my former fav (Crimson Editor) was windows only, though I could get it working in WINE, wasn't as friendly, and doesn't work with the windows security model since Vista (I use Win7 at work).

I also appreciate what an actual IDE offers in those environments. I use VS (C#) and WebStorm (NodeJS) more than anything lately.. and wouldn't give them up. I'm impressed when I see people get work done in VIM... I just don't think that way, and don't manage to memorize a bunch of hotkeys I don't use at least 10 times a day. Hard enough keeping the step keys for debugging in different IDEs straight, let alone, more esoteric things.


I don't mean to disregard what you said or insult your approach just because it is different than mine, but I can't tell you how much vim/emacs have boosted my productivity. Not only am I at least 30%+ faster while coding, but in general the process is so well oiled that I have near-0 resistance to just jumping in and getting something done. I jump around in code like crazy, can jump to different files instantly no matter where they are (find-file-in-project), do git stuff (magit), have REPL right there in the editor, replace REPL with some code buffer instantly, set up 4-way split panes and kill them in a split-second, etc. etc.

In my opinion, tooling is very important. You want something that makes you a wizard - something that's smooth and FAST.

I once worked with a very experienced gentleman who preferred Notepad to write 3-page-long SQL queries. He knew his craft very well, got the job done, but boy did he take his time :-)


"near-0 resistance" nails it.

As a Vim user, I consider the whole productivity thing about it quite over-rated. Yes it's efficient, yes it's faster, but in the end, anyone with a decent editor is going to go faster after a while.

The point is comfort. Once vim's mechanics are assimilated, you starts to memorize meaningful sequence of letters, like ci". And those sequences are just words you're typing, so typing code or entering commands is exactly the same thing.

And none of this require going too far frome the home row with your hands. This in my opinion is why Vim is so good :)


I have tried Zen Coding (now called some forgettable name) in several editors, vim, notepad++ and sublime text.

It is much more productive to use it in ST, just because I get immediate feedback. I get the full result in the editor in realtime, just as I'm writing the Zen Coding mantra.

The jump around all folder files in ST? Ctrl-P. It has fast and beautiful fuzzy matching. Do I need to open a file called Module/SuperCalliFractillicious.something? Ctrl-P, mscf, enter. File is opened and the cursor placed wherever it was the last time I edited it. Which could have been months ago.

Git integration? covered in several fronts. Git gutter was first seen in ST.

I do agree that tooling is very important. ST is a serious tool. Do not compare it to notepad.


> I would really love is having my editor, and a couple command/console prompts in the same UI.

OFMs like Far Manager, Midnight Commander or similar might fill that niche. Far does for me, at least and I tend to spend my time editing code either there, in VS or Eclipse, depending on the language and project. But it's more a file manager with an editor (which needs a few plugins to be used for coding) than an editor with a command line.


at the end, emacs always wins :)


I rock back and forth, depending on the languages I'm using. Emacs does more, but is in my experience more kludgy, even after having in aggregate spent many days customizing it (maybe it would rub better if I wasn't hardwired to the vi/vim modal editing/motions method). Vim feels cleaner and less annoying, but sometimes the easy integration with external tools tips the balance in emacs' favor. E.g. I use vim for Rails apps (where I didn't really feel enough difference from vim + terminal), but if I were writing Clojure, stuff like the repl integration would probably mean emacs.

Sublime is really pretty, and has great functionality out of the box.

Ultimately, vi/vim's contribution is the modal editing method (and derived things like motions), which can be transplanted to any other IDE or editor that cares to support it. But for the fundamendals - editing and switching between files - I've so far found vim to be the cleanest, most natural vim.


Emacs can be pretty pretty--perhaps not actively pretty, but very elegant in a minimalist sort of way. I'm pretty happy with how mine looks[1], for example.

[1]: http://jelv.is/emacs-blackboard.png

Also, have you tried Evil? Apparently it's a very good Vim-emulation mode for Emacs, highly recommended over Viper.


Indeed! I disagree with people who think vim and emacs are ugly: they have their own nice 8bit-esque aesthetic which I'd expect hackers to like, given that they've chosen to stare at terminals all day (I've rolled my own colorscheme for both vim and emacs). And they make good use of screen real-estate, very important when coding on a laptop.

I haven't tried Evil, in my last emacs phase it wasn't mature yet IIRC - maybe I should give that a go and see if it tips the balance yet again.


> Emacs can be pretty pretty--perhaps not actively pretty, but very elegant in a minimalist sort of way. I'm pretty happy with how mine looks[1], for example.

Obligatory vim can be pretty too, and I am happy with how mine looks.

http://i.imgur.com/ZC2xDxH.png

On a related note, I like how my terminal vim looks better than how the GUI looks. I don't use emacs much, but same goes for emacs.


What's your theme, BTW? I also like your custom status bar shape.


> What's your theme, BTW? I also like your custom status bar shape.

My screenshot doesn't have custom status bar shapes. GP does. Anyway, for that, you need powerline(available for both vim and emacs).

My color theme is ir_black https://github.com/wgibbs/vim-irblack If you are using it in terminal, you also need to set up ir_black theme for the terminal.


Woah how do you get your status bar to have the > shapes like that? Looks very nice :)


I'm using powerline.el[1]. It's an Emacs version of a Vim plugin.

[1]: https://github.com/jonathanchu/emacs-powerline/blob/master/p...


Excellent, thanks! Here's to hoping I can get it to work with nyan-mode, the most important emacs plugin :P


Hah, Haskell! Also my primary choice of magic potion :-)


> in my experience more kludgy

Not sure what that means

> even after having in aggregate spent many days customizing it

Do your work and if you find you can add something to your ~/.emacs then do

> Vim feels cleaner and less annoying,

I cannot empathise with that. Model editing is awful. I feel like i should have a foot pedal to actually toggle it

/oldest debate in the world


Sorry for the cliche, but the obligatory: http://xkcd.com/378/


Yep, after bouncing between vim w/plugins and Sublime Text for the past year or so, I spent a day messing with emacs and have somehow found a sweet spot for my workflow. (haskell-mode/ghc-mod and AuCTeX - schoolwork) I've tinkered with emacs on and off over the last decade but somehow for what I'm doing now it just feels better than my vim setup.




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

Search: