5 ms·
It might be a joke, but it’s quite true. Vim is an excellent and efficient text editor, and Vim users consequently tend to see Emacs as a powerful but massively
by evincarofautumn 13y ago
It might be a joke, but it’s quite true. Vim is an excellent and efficient text editor, and Vim users consequently tend to see Emacs as a powerful but massively inefficient text editor. Which of course it is, but it’s also a massively efficient keyboard interface to an interactive text-based Lisp environment. If you’re just using Emacs to edit text, you’re missing out.
- rat87 13y agoThese days many users of vim tend to use many plugins making it in some ways a lot like emacs. Also emacs isn't particularly inefficient on modern machines other then problems with the ui and single threading which I believe vim shares.
- evincarofautumn 13y agoI meant human efficiency, not the computer kind.
- Ma8ee 13y agoIn what way is Emacs inefficient for humans?
- danielbarla 13y agoMy guess would be the Emacs pinky: http://en.wikipedia.org/wiki/Emacs#Emacs_pinky http://en.wikipedia.org/wiki/Emacs#Emacs_pinky As a novice Vim user who has at times wanted to try out Emacs, this has always been an irritation. I think it's telling that one of the suggested work-arounds according that article is: > Emacs' built-in "Viper-mode" that allows use of the vi key layout for basic text editing and the Emacs scheme for more advanced features.
- regularfry 13y agoTry this task for an example: underline an arbitrary line of text with '=' characters. In vim that's 11 keypresses across 3 operations, possibly less if there's a shortcut I haven't thought of. How many keypresses does emacs take out of the box? Emacs, especially with paredit, is fairly well optimised for editing s-expressions and the like. Vim is very well optimised for line-based editing, but I don't get on with its buffer management at all.
- taylanub 13y agoCame up with this in 10 seconds: C-a C-k C-k C-y C-y C-p C-SPC C-e M-x repl RET reg RET . RET = RET You can't really count key-presses the same way in Emacs because e.g. Ctrl+x is not the same as "x, y", and especially "Ctrl+x, Ctrl+y" is not the same at all as "x, y, z, t" because you can hold Ctrl then press x then y. Also, in the M-x repl RET reg RET bit, the "repl" and "reg" can be touch-typed naturally, which will probably be faster than hitting individual command keys, due to mental over-head and what-not (bring in the neurologists!). It's probably still a bit more finger movement than Vim's 11 keypresses, but I'd invite everyone to stop mast*rbating and be as fine with this ~20 key-press solution which came to mind in 10 seconds and takes less than 10 seconds to execute. If you want to use it often, record it as a macro and bind it to a key.
- intractable 13y ago> underline an arbitrary line of text with '=' characters. In vim that's 11 keypresses across 3 operations Sounds like a vimgolf challenge to me. Here's my entry: YpVr=
- swah 13y agoI'm wondering now that the creativity to come up with those things might actually be beneficial to coding.
- danielbarla 13y agoI'd agree with that, and also - an intense dislike of unnecessary repetition / work is definitely a good thing. I'm not sure using Vim causes that, but it definitely reinforces it. For those that are interested, I would recommend "Practical Vim", and it includes many examples (including the above one) which really accelerate the learning process: http://pragprog.com/book/dnvim/practical-vim http://pragprog.com/book/dnvim/practical-vim There are definitely cheaper alternatives (including free ones), but this book really laid the concepts out very clearly for me.
- regularfry 13y agoWell, that Vr= soundly beats my :s/./=/g.
- yarrel 13y agoThe screeching brakes sound of context switches in Vim is not more "efficient" than just pressing a key combination to perform whichever transformation on text you wish to effect in Emacs. I use Emacs to edit text, and I have limbs I'd rather lose than have to perform that task with Vim's airbag in my face.
- jlgreco 13y ago> Vim is not more "efficient" than just pressing a key combination Vim and Emacs both use key combinations... Vim's just require fewer fingers at once. You type Vim key combinations as you would type words in a language with a latin alphabet.
- NotOscarWilde 13y agoI think a lot of features -- especially if you want them accessible inside INSERT mode -- are accessible through CTRL+letter, no? At least omni-completion, the most useful one, used to be when I last tried it. (Has that changed? I'm not doing much editing in vim these days, so I may be wrong.)
- jlgreco 13y agoAny command that I can think of can be mapped to work while in insertion mode. The key however is understanding that if you are insertion mode, then key sequences start with the escape key, or, insertion commands are completed with the escape key. There is no "context switching". No more-so then having to press ctrl along with the rest of your key sequence in Emacs is "context switching".