Can anyone explain?
Can anyone explain?
Reuse over SSH is a compelling reason. Do you still have low resource requirements if using things like linting, hinting, and full graphical debugging?
Exactly. Now, imagine being able to use that same IDE for everything JetBrains supports, and to read man pages, and to read info pages, and to read & compose email, and to list the processes running on your computer, and to manage files in directories, and to emulate a terminal, and to browse the web, and to play NetHack, and to use IRC, and to manage git repos, and to do every other thing you want. And all the keybindings remain consistent throughout all of those modes. And you can easily schlep data back & forth between them. And it's extensible in a relatively sane language (sane compared to Java, JavaScript, C, C++ and Python, anyway).
That's why we use emacs. That's why it's very difficult to understand why anyone else doesn't use emacs.
> Do you still have low resource requirements if using things like linting, hinting, and full graphical debugging?
Emacs can be pretty amazingly fast even with all of that running. There are advantages to having first been written back when computers were small.
FTR I've been using Emacs for over two years and didn't bother yet to learn "real" navigation commands. I use arrow keys + Shift/C and/or mouse/trackpoint.
For most bigger projects I use the appropriate IDE (normally JetBrains or QtCreator) unless I'm on a laptop.
-C-f
-C-b
-C-n
-C-p
-C-v
-M-v
-C-s
-C-r
-And finally, whatever key you bound ace-jump-mode to. Seriously, if you are on Emacs, you really need acejump. It's just that good.
Another thing is that Emacs movement is also very fast relative to some IDEs which sometimes pop up other windows which you have to interact with like in JetBrains Switcher.
That being said if you write IDEs just look at how fast, easy to configure, and complete buffer movement is in Emacs. We want these features!
I tried ace-jump and have it configured for months, I never use it. neither do I use swiper, because it is too slow to start.
Also, don't forget C-M-{left, right, up, down} commands :)
Edit: Oh you meant "why would you use evil mode". Disregard.
In the last week, I've edited javascript, html, python2, python3, sql, json, yaml, graphviz, markdown, and docker files. Looking back a little longer, throw in C, C++, bash, z-shell, R, lisp, LaTex, and perl5.
Having an appropriate and reasonably consistent editing experience works for me. For Java, the eclipse experience has grown on me, so I prefer editing Java outside of emacs for anything but quick edits. I pretty much just do quick edits in C or C++, but if I were to be doing it daily I would probably prefer a dedicated IDE like Visual Studio. I'd probably prefer Viz Studio for python, but that would require working in a windows VM and that's just not going to happen.
The utility of some basic functions like column editing, zap-to-char, hippie-completion, macros, yasnippet, etc. that I've grown used to over the years coupled with syntax highlighting and predictable indentation for pretty much anything I'm editing makes it hard to seriously consider another editor. I'm sure vi/vim users feel the same way about features that seem small but get used very frequently.
Regardless, it all boils down to productivity. I'm productive in emacs, so I like it. I wouldn't force somebody to use it - or even recommend it for someone who didn't have the time to build the muscle memory before needing to be productive.
Well, neither do we emacs-users: every language we write in has an amazingly great IDE, because emacs is our IDE for every language. And, other than go-mode's wanton breakage of M-., there aren't generally gratuitous inconsistencies when switching between languages.
I don't really think of emacs as being a solution in resource-constrained environments (although it works well there too): it's excellent on its own, not just a way to eke out constrained resources a bit further.
Macros are invaluable. Search and replace regexp is invaluable. Compare buffer, unique, sort and rectangular insert is invaluable.
There is no purpose-built python IDE that is tailored to my use case. The closest is ipython, and I already run that parallel with emacs when doing more complex python coding.
That said, the things that keep me in emacs:. Magit, eshell, tramp, many toy enhancements I have written, I like the themes, erc, and org mode.
Eh, out of the box you're right, but I'd advise most folks to just install prelude (or if they're coming from vi-land, spacemacs), which has already done all the configuration for one.
For example, there are IDEs that have excellent code generation for Java (not defending the practice of boilerplate getters/setters, just pointing out a feature that people use). There are IDEs with hinting, linting, and debugging built-in and requiring no configuration.
My question was: at what point is the ultra-flexibility of Emacs no longer worth it?