News for hackers. Stuff that matters.
Re:A pragmatic decision on GNU Emacs versus Vim for programming by brudgers on Tuesday February 07, 2017 @01:33PM (#13591426)
There are significant architectural differences between Vim and Emacs which mean that each better accommodates some workflows better than others. In the author's case the architectural differences manifested in the mechanisms for extending core functionality. Vim was initially designed to do one thing well...edit text. Emacs was designed to do whatever the user wants whether that's editing text or something else or choosing their own definition of what it means to edit text (e.g. org-mode). Each approach has value for different tasks for different people at different times. That doesn't mean that one is not better than the other for a particular person/task.
Re:A pragmatic decision on GNU Emacs versus Vim for programming by majkinetor on Tuesday February 07, 2017 @02:01PM (#13591663)
It doesnt matter what were they initially designed in some abstract sence. Nobody would question that those 2 are primarilly editors and that it is their most important function - editing and navigating text (and along, text interfaces). That means that vim must be better as its workflow is more efficient for that (thanks to the 2 modes and speed that object motion combinations give) and more healthy (without producing RSI which means I can physically do vim more time then emacs, a point mostly ignored by people ).

Both can do basically anything nowdays so the argument of particular workflow suiting better different people does not hold. Its just that some people dont want to invest time into learning vim because vim on-boarding is probably the hardest compared to any other editor. There are maybe some other aspects involved for some people (like lisp vs viml) but those can safelly be ignorred as non important in majority of casses.

Re:A pragmatic decision on GNU Emacs versus Vim for programming by belak on Tuesday February 07, 2017 @02:31PM (#13591927)
I do agree with the general sentiment here... both emacs and vim are primarily editors. However, it's also worth noting that emacs is much easier to extend and change than vim which is one of the reasons people do so many things in it (hence the "Emacs is a decent operating system lacking only a good text editor" joke). Handling email, chat, all git operations and more is common in emacs, but fairly rare (at least in comparison) in vim.

There's also spacemacs (for a large config) and evil-mode (if you want to get into the nitty gritty details) for using vim bindings in emacs. Doing the opposite would be a much harder feat.

I love both editors... and there's a reason I have both a vimrc and an init.el. vim has the advantage of being pretty much everywhere (so it works really well when editing on servers), and has awesome modal editing, but emacs works really well for local development where I can make sure I'm using the right version and have it tweaked to work exactly how I want.

I don't think that one is better than the other, just that they have different use cases.

Re:A pragmatic decision on GNU Emacs versus Vim for programming by zeveb on Tuesday February 07, 2017 @02:44PM (#13592048)
> vim must be better as its workflow is more efficient for that (thanks to the 2 modes and speed that object motion combinations give)

Emacs provides object motion commands, too, based on b/f/p/n. It can have two modes (in the vi sense), if you wish, using evil-mode.

It's also far, far better than vi at editing and navigating the text of a news post, or a newsgroup, or an email, or a web page, or a process listing, or a kubernetes definition, or or or.

Emacs can completely emulate vim; vim cannot emulate emacs. Seems to me emacs is more powerful.

Re:A pragmatic decision on GNU Emacs versus Vim for programming by majkinetor on Tuesday February 07, 2017 @03:02PM (#13592215)
Emacs can completely emulate vim; vim cannot emulate emacs

That is probably not true. The main reason is more probably that nobody wants to emulate emacs in vim. Its more telling IMO that emacs people want vim in it. As user slurry above pointed out, its probably because old habits die hard and because people continue doing the same stuff to justify time investment.

Re:A pragmatic decision on GNU Emacs versus Vim for programming by massysett on Tuesday February 07, 2017 @02:32PM (#13591942)
Because Emacs has modes that make it mimic Vim, it's false that Vim "must be better," especially when Emacs can do things (like frames) that Vim cannot. I'm not saying Emacs is "better," just that this line of analysis is flawed.
Re:A pragmatic decision on GNU Emacs versus Vim for programming by mw42 on Tuesday February 07, 2017 @03:36PM (#13592520)
evil (the vim emulator for emacs) is fantastic, but the argument that emacs + evil must be equivalent or better than vim is also flawed. For example, plenty of emacs modes and packages have extensive keybindings that clash with vim, so the emacs + evil experience will never be as smooth as vim and its own native packages that were designed with vim's interface in mind.

Yes, you can give up the vim bindings in certain modes, or spend lots of time re-configuring various packages' bindings. But that is not something you'd ever have to struggle with when using vim.

Re:A pragmatic decision on GNU Emacs versus Vim for programming by majkinetor on Tuesday February 07, 2017 @03:08PM (#13592260)
Its not flawed. The greatest use case for editor is editing text. Even the small differences in efficiency in the main use case pile up enormously on the long run. Thats why people practice vim golf - to make micro optimizations that will lead to huge benefit.

The argument emacs can do frames is irrelevant in this respect.

Re:A pragmatic decision on GNU Emacs versus Vim for programming by massysett on Tuesday February 07, 2017 @03:59PM (#13592753)
You suppose that the only measure of efficiency is keybindings. It is not. For me, other aspects of the editor, such as frames, superior auto-completion, and superior compilation mode, make me more efficient. I don't use an editor solely to "edit text." I'm using to to accomplish a bigger objective, such as creating or fixing a program. Overall, Emacs is better at that, and the fact that I can give it bindings that mimic those in Vim also helps.
Re:A pragmatic decision on GNU Emacs versus Vim for programming by brudgers on Tuesday February 07, 2017 @02:39PM (#13592006)
To me, the initial architectural decisions are reflected in the tools today: just as the initial architectural decisions of the Pantheon versus the Pyramid of Cheops are reflected in the way each building is actually used by people today.

For example the Pantheon's architectural design more readily facilitates shelter from inclement weather. While the Pyramid of Cheops could be modified to do so, it seems to me that adding a portico or walk-in interior space is both non-trivial and at odds with the existing architecture.

Re:A pragmatic decision on GNU Emacs versus Vim for programming by RHSeeger on Tuesday February 07, 2017 @02:49PM (#13592102)
> Both can do basically anything nowdays

But Emacs makes it easier for that "anything" to include things the user wants to be able to do, but aren't built into the system. I use VI, but far prefer Emacs because I can keep adding functionality to it as I need it. That's what's important to me.

Re:A pragmatic decision on GNU Emacs versus Vim for programming by majkinetor on Tuesday February 07, 2017 @03:11PM (#13592281)
You add functionality in vim as you need it too in its profile, local profile, or via number of other means. VimL sux big time comparing to Lisp tho although you can also use Python and Ruby and Lua and whatnot (it sux that it might not be an option on some platforms that easily).
Re:A pragmatic decision on GNU Emacs versus Vim for programming by slurry on Tuesday February 07, 2017 @02:44PM (#13592053)
I have been an emacs user for 16 years now, and I have come to this conclusion as well. I don't - like 99% of emacs users - use advance scripting capabilities. But even if I did, it would still be less efficient at the core task of text editing. I'm stuck on emacs, because old habits die hard. But I'll teach my son to use vi.