We've gone way out of the context of my original point, which was that because (I thought) they shared a common heritage and still had that original functionality built in, all the rest is dressing. Which negates the point of editor wars.
It turns out they don't share the common heritage, but both have an extremely similar line editor core, and my opinion is still that editor wars are stupid with two highly capable programming editors like that.
Vim still has an ex mode, where you are editing the file with ex. Whether vim wraps ex or re-implements it I neither know nor care. I'm not an emacs user but I assume you can get into a core line editor mode with that too.
Really? Lisp? What would you use it for? I learned a bit of it in the 80's and have never once had to solve a problem for which lisp was an appropriate tool.I do like Emacs on principle in that it has emacs lisp as part of it. Anything involving lisp gets bonus points from me.
I DO use Eclipse. I also use TextMate on a Mac. When neither of those can do something particularly complex, I switch over to vim. If I were oriented toward emacs, that would do everything vim can.If I'm writing code I'll be doing it in an X session where I can use much more useful editors. Like Geany, Gedit, or even a full-blown IDE like MonoDevelop, Eclipse, or CodeBlocks.
Modern IDE editors can handle some regex changes, but not nearly as conveniently as vim. More yet, vim and emacs let you use any application on your system to edit your text file. I use that a lot.
I think there are a lot more -nox users out there than you think. Most of the old-timers probably use the -nox version of emacs the same as they would use a -nox version of vim. I use -nox because I don't see it adding anything to my experience.To answer the OP's secondary question, I do a lot of C and C++ coding and generally use Geany. It's just become my default text editor for pretty much everything. I'm starting to play around with CodeBlocks and QtCreator for some of my larger projects though. Haven't used them enough to really form an informed opinion yet, but they generally seem like decent IDEs.
One thing that vim/emacs don't do that well is jump to definitions or references of functions when multiple implementations of that name exist. To highlight a call and say, "who calls this?" and only get the places where that particular implementation, with that particular parameter list are called.This is the modern front-end for emacs (of course, this isn't vanilla emacs. There are a few extensions in action there, but they're all very easy to set-up). The only obvious thing I have found missing in emacs is an in-built form-builder. There is some amazing integration between emacs and development tools, but most people just don't look for it (or don't know how, not that it's very difficult to find). Projects like CEDET have attempted to bundle everything you would need to get the ultimate IDE experience out of emacs.
Really, I just think most people's analysis of emacs comes from the vanilla version, which while having a lot of abilities actually coupled with it, doesn't have the vast majority actually turned on, so without exploring the system a bit, you don't actually realise what you're missing out on. The project emacs-starter-kit (which should come default with every version of emacs) turns on most useful things, and certainly gives a new user the ability to experience more of emacs to make an informed decision whether or not the editor is actually relevant.
Edit:
I'd be interested to know (beyond my claim that emacs doesn't have an in-built form-builder) what an IDE does that emacs doesn't.
That said, an IDE is a real pain in the rear to set up. Eclipse often goes wonky on me and I spend hours getting it working again. The intelligence tat comes with the code-aware editor just isn't worth it half the time.
Bookmarks