I remember when, having coded in emacs for a few years, I used it for the first time to do a 3-way merge on thousands of lines of code. The amount of time and effort I saved astounded me. The point here is twofold:
1) emacs is very well integrated with extremely powerful tools (in this case diff, merge)
2) emacs is deep; even as an advanced user you can keep improving your efficiency (albeit at a lower rate)
Having said that, I have a question: once I had become fairly comfortable with emacs I switched back to vi. I felt there was a positive correlation between learning new keystrokes/tricks while coding and the quality of code I produce. Has anyone else observed that? If yes, why do you think this is so?
I am no coder, I use Emacs as my 'DTP package. But I can relate something rom graphic design. Why a graphician should be able to draw stuff with pen and paper rather than only work at the computer? Because the connection between thought and hand is faster with pen and paper. Hence, broadband output and feedback loop. Not just faster but enhaced quality: so fast that feedback loop becomes subconscious, direct, flow. Maybe in programming with vi /emacs the same thing occurs.
Yes, particularly with good development modes (e.g. SLIME for common lisp, Tuareg for OCaml), the feedback loop between the language runtime and the editor is immediate.
1) emacs is very well integrated with extremely powerful tools (in this case diff, merge)
2) emacs is deep; even as an advanced user you can keep improving your efficiency (albeit at a lower rate)
Having said that, I have a question: once I had become fairly comfortable with emacs I switched back to vi. I felt there was a positive correlation between learning new keystrokes/tricks while coding and the quality of code I produce. Has anyone else observed that? If yes, why do you think this is so?