|
|
|
|
|
by chadcmulligan
3506 days ago
|
|
I've used Vi and Emacs 25 years ago - I used to give courses in Vi and I used to write LISP macros for Emacs as a developer support job for some time. Why anyone still uses them is beyond me, I don't see how they make you more efficient than modern IDE's like Visual Studio or Jetbrains et al, but to each their own. |
|
Switch from Java and C# to more flexible and dynamic space, and suddenly, IDEs give you nothing over Vim and Emacs[1]. There you can finally feel the efficiency of a properly internally integrated text editor. I could elaborate much more on this, but in the interest of brevity I'll just mention magit[2] in Emacs as an example. This is probably the single best integration of Git with a development tool. You get to use 90% of git (!) with simple shortcuts and no modal popups to stop your flow (+100 efficiency). I can prepare, review and commit my code in it in the same time it takes IntelliJ to load the version control popup. And I get to use all of the superadvanced text editing and navigation features throughout the entire tool.
It's little things like this - extremely powerful editing and navigation, tight internal integration of everything, that makes Vim and Emacs so powerful and worth going over the learning curve.
--
[0] - As for why this isn't backintegrated into Vim and Emacs so well, my understanding is that intellisense and semantic refactoring engines are huge piles of complicated code that don't fit the architectures of Vim / Emacs code well and need to be done as external application. Languages that benefit from those features are few and - while popular on the job market - not exactly liked or respected among the hacker crowd. So there's little incentive in making projects like ENSIME actually 100% feature-complete or even easy to set up.
[1] - But they still lag and consume insane amount of RAM and CPU power.
[2] - https://github.com/magit/magit best to look for screenshots to really see just how much tooling it packs inside.