4 ms·
What all the hype is about depends on how you use emacs, what you add to it and how you configure it. I used vi and vim for 25 years before switching to emacs,
by pmoriarty 4y ago
What all the hype is about depends on how you use emacs, what you add to it and how you configure it.
I used vi and vim for 25 years before switching to emacs, and I spent a ton of time making it very vim like.
Now my emacs can do way more than vim ever did. Things like:
- browse the web through emacs
- read my email through emacs
- use org-mode to take notes in outline format, with hyperlinks, tables, executable source blocks, etc
- use magit, which is a great interface to git
All of these things and more are tightly integrated, so moving text/data between them and editing that data is seamless.
It's all programmed and configured in elisp, and is part of a gigantic elisp ecosystem. Though I much prefer Scheme to elisp, I like elisp far more than vimscript, python, lua, or pretty much any other non-lisp language.
Emacs has some shortcomings (like handling long lines and large files, and certain types of regex handling that vim can do better), and while I do occasionally still fire up vim, I've felt no yearning to go back to it permanently.
For me emacs does everything vim did and far, far more.
- w0m 4y agomagit and org-mode are the two items that made me try emacs a few times now. Never been able to make it stick though.
- _a_a_a_ 4y ago> and certain types of regex handling that vim can do better Hi, emacs user here, can you elaborate please.
- pmoriarty 4y agoSee the \zs and \ze patterns in vim. I've asked for them to be implemented in evil, but have been told it's not possible because evil just uses emacs' regex engine, which can't do this.
- _a_a_a_ 4y agoI think these are lookahead's in some parlance, Emacs doesn't support them. On the rare occasions I need something like that I just use capture brackets. Suppose I want to delete a contiguous string of 'a' but only if it's followed by the letter 'b', then a+\(b\) → \1 aaaab aa gets you b aa <-- unchanged cos no trailing b So it works with a simple case. I guess it could get messy if you're doing anything really complex but TBH the above is about as far as I have ever needed to go. Good luck vimming!
- pmoriarty 4y agoA need I've had on multiple occasions is to, for example, search for the next occurance of "abcdef" but have my cursor land on the "d". In vim that's a simple abc\zsdef It also highlights just the "def", which is nice. To highlight just the "de", you could use abc\zsde\zef Yes, you could probably use some lisp magic to do the same in emacs, but it's not nearly as easy or convenient.
- _a_a_a_ 4y agoI guess in the next eight hours somebody will post you a snippet of elisp which will do what you want. Emacs people are very accommodating. Let's see anyway
- lanstin 4y agoWhat browser do you use? I used to use w3 but it is unsatisfactory now.