Vim Beats Emacs in 'Linux Journal' Reader Survey (linuxjournal.com) 195
The newly-relaunched Linux Journal is conducting its annual "Reader's Choice Awards," and this month announced the winners for Best Text Editor, Best Laptop, and Best Domain Registrar. Vim was chosen as the best editor by 35% of respondents, handily beating GNU Emacs (19%) Sublime Text (10%) and Atom (8%).
Readers' Choice winner Vim is an extremely powerful editor with a user interface based on Bill Joy's 40-plus-year-old vi, but with many improved-upon features including extensive customization with key mappings and plugins. Linux Journal reader David Harrison points out another great thing about Vim "is that it's basically everywhere. It's available on every major platform."
For best laptop their readers picked Lenovo (32%), followed by Dell (25%) and System76 (11%). The ThinkPad began life at IBM, but in 2005, it was purchased by Lenovo along with the rest of IBM's PC business. Lenovo evolved the line, and today the company is well known as a geek favorite. Lenovo's ThinkPads are quiet, fast and arguably have one of the best keyboards (fighting words!). Linux Journal readers say Lenovo's Linux support is excellent, leaving many to ponder why the company doesn't ship laptops with Linux installed.
In February readers also voted on the best web browser, choosing Firefox (57%) over Chrome (17%) and Chromium (7%). And they also voted on the best Linux distribution, ultimately selecting Debian (33%), open SUSE (12%), and Fedora (11%).
For best laptop their readers picked Lenovo (32%), followed by Dell (25%) and System76 (11%). The ThinkPad began life at IBM, but in 2005, it was purchased by Lenovo along with the rest of IBM's PC business. Lenovo evolved the line, and today the company is well known as a geek favorite. Lenovo's ThinkPads are quiet, fast and arguably have one of the best keyboards (fighting words!). Linux Journal readers say Lenovo's Linux support is excellent, leaving many to ponder why the company doesn't ship laptops with Linux installed.
In February readers also voted on the best web browser, choosing Firefox (57%) over Chrome (17%) and Chromium (7%). And they also voted on the best Linux distribution, ultimately selecting Debian (33%), open SUSE (12%), and Fedora (11%).
Oh boy! (Score:5, Funny)
It's popcorn time!
Re: (Score:2)
And in this basement, Linus Torvalds, who treats everyone who writes code for him so badly that they're terrified to check in patches!
It's the battle of the aspies!
Who will come out on top? Nobody! And who gives a shit, really! Nobody!
Re: (Score:2)
It's popcorn time!
TOTALLY UNFAIR!!!!
The vote was shut down before all the votes were cast! Vim users were all :wq while the EMACS users were still trying to press EXT_META_ALT_CTRL_SHIFT.
We demand an immediate re-vote. Just as soon as EMACS finishes loading.... so... June 2020... I think.
Re: Oh boy! (Score:2)
To paraphrase... (Score:5, Funny)
vim is great because it's on all platforms is like saying anal sex is great because it works on all genders.
Re: (Score:2)
Re: (Score:3)
and esc-colon-x
Or simply ZZ.
But these arguments are not in favor of vim, they're in favor of the vi family. I much prefer nvi over vim, not the least due to file locking, and also because undo/redo also works on undo/redo like in vi, while vim has this changed. In vi/nvi, you can hit u u and toggle between undo or not. Also, vim lacks the open mode of vi.
But I'm sure that votes came in for vim because that's the only flavor of vi the the voters knew about. Much like the WTF of more people voting for Chrome over Chrom
Re: (Score:2)
Re: (Score:2)
All that's required for evil to triumph is for good men to do nothing.
Actually, it would appear that all that's required for evil [github.com] to triump is to start convincing Vim users to switch to Emacs.
Vim cleans up (Score:2)
vim is great because it's on all platforms...
Oh come on. Vim is far more versatile than emacs. Have you ever seen anyone using emacs to clean their toilet [walmart.ca]?
Re: (Score:2)
Our system admin managed to trash a Linux server by editing the pam config file with nano. One of the lines was longer than the width of the terminal window, so nano inserted a hard line feed to make it wrap.
We got the server back with a Live CD and that was the last day nano was installed on any of our machines.
Re: (Score:2)
Re: (Score:2)
Re:To paraphrase... (Score:5, Insightful)
And easier to use.
Not easier to use. Just easier to learn.
You can learn to ride a tricycle easier than a bicycle. But you aren't going to win the Tour de France on a trike.
Re: (Score:2)
I use Joe's Own Editor or vi/vim on systems where it's not installed.
I feel home with Joe's Own Editor because it is similar to what I used to use in the '80s with Borland "turbo" environments.
I have always found pico too simplistic although as you said, it isn't that hard to use.
JOE is a powerful ASCII-text screen editor. It has a "mode-less" user interface which is similar to many user-friendly PC editors. Users of Micro-Pro's WordStar or Borland's "Turbo" languages will feel at home. JOE is a full featured UNIX screen-editor though, and has many features for editing programs and text.
Re: (Score:2)
Yeah, jstar (JOE with standard rather than Joseph Allen's keybindings) is the best editor I know. And for someone who coded graphical games in TP3 before learning to tie his shoes, moving to a lesser editor would be hard.
One downside is that the author sticks to some archaic coding workflow, making sending patches too cumbersome to bother.
Re: (Score:2)
One downside is that the author sticks to some archaic coding workflow, making sending patches too cumbersome to bother.
I was surprised to see that it was still maintained a few seconds ago. Many thanks to Joseph Allen then!
(JOE with standard rather than Joseph Allen's keybindings)
Tried it, but I remember Joseph Allen's keybindings feeling more natural to me for some reason compared to default TB config. Of course, I tuned it a bit but very little.
Syntax
joe [global-options] [ [local-options] filename ]...
jstar [global-options] [ [local-options] filename ]...
jmacs [global-options] [ [local-options] filename ]...
rjoe [global-options] [ [local-options] filename ]...
jpico [global-options] [ [local-options] filename ]...
JOE also emulates several other editors. JSTAR is a close imitation of WordStar
with many "JOE" extensions. JPICO is a close imitation of the Pine mailing system's
PICO editor, but with many extensions and improvements. JMACS is a GNU-EMACS imita-
tion. RJOE is a restricted version of JOE, which allows you to edit only the files
specified on the command line.
Although JOE is actually five different editors, it still requires only one exe-
cutable, but one with five different names. The name of the editor with an "rc"
appended gives the name of JOE's initialization file, which determines the personal-
ity of the editor.
Re: (Score:3)
That may be so, but nano, at least, puts the most common commands on the bottom of the screen, including the all-important keystroke that gets you into the rest of the help system. Of course, you need to know that ^X means what most people would write as CTRL+X, but anybody who's expecting to need to use an editor in a CLI shouldn't have
Re: (Score:2)
Hm, my Mac has a ^ sign on the control key :)
Re: (Score:3)
I had to work remotely on some Macs on my last job, and only had a terminal interface via SSH. nano was my editor of choice. It was there, and reasonably simple to use for what I needed. So, yeah, I agree its ease-of-use is a bonus. I'll typically just fire up nano for editing small text or config files if I've already got a terminal open, but for actual programming work, I tend to use an IDE.
I'm not sure I understand the logic of people who argue about "efficiency" though, at least when it comes to pro
Re:Ignores the same major issue as emacs: (Score:4, Insightful)
"Every version is subtly different, and just because you can use the modern version doesn't mean you know the subset of common features that work everywhere."
You are talking about the many vi clones that exist or existed (nvi, elvis, ex-vi, stevie etc). while the article mentions the One True Editor that came to rule them all, Vim, created by Bram Moolenaar. Today any *nix distribution is guaranteed to have vim available, and there is no such difference of common features anymore.
Re: (Score:2)
I got used to features such as visual mode, folding and multiple split windows (GP could try :sp, :vs, and C-W w, C-W h, C-W j, C-W k, C-W l etc). Love those fluffs.
Well sure it does (Score:5, Funny)
Re: (Score:3)
That joke was funny maybeee back in 1998. Emacs hasn't gotten any more complex while CPU's have increased in power a few order of magnitudes so Emacs is quite the speed demon these days.
And still more powerful than Vim... I can run Vim inside Emacs after all.
Re:Well sure it does (Score:4, Funny)
Emacs, a good operation system. But it lacks a decent editor.
Glad you now can run vim on (in) it.
Re: (Score:2)
That joke became obsolete when somebody wrote a vi emulation for Emacs.
Re: (Score:2)
That joke became obsolete when somebody wrote a vi emulation for Emacs.
I think somebody had already written a vi emulation for Emacs long before anyone came up with that joke. Emacs today ships with at least 4 vi emulations. The original vi-mode seems to be of unknown origin, with the last change made in 1987.
Re: (Score:2)
Re: (Score:2)
Eight Megs and Continuous Swaping.
Re: (Score:2)
Oh really? (Score:2)
alt.vim.die.die.die
Re: (Score:2)
It can't cook my breakfast or wash my car either. I want my text editor to edit text; I'm not particularly interested in it doing everything. I have other tools for that. And who reads Usenet any more anyways?
Re: (Score:2)
Vim broken in OSX? (Score:2)
How to enable color highlighting of source code in Vim OSX bash session?
Emacs works fine.
Hight Sierra 10.13.13
Re: (Score:2)
Re: (Score:2)
in OSX "syntax on" produces different shades of green (in a homebrew bash session)
Re: (Score:2)
"colorscheme ron" makes comments very light green.
That's about it.
Re: (Score:2)
Sounds like a Mac problem, not a vim problem.
Re: (Score:2)
Re: (Score:2)
Works in vi on Mac Os too.
Re:Vim broken in OSX? (Score:4, Interesting)
Odd, have you actually checked there aren't any other default schemes available? On all of the OSX, Linux, BSD & Cygwin Vims I've used, it's always included a standard pack to choose from.
http://vimcolors.com/ [vimcolors.com]
https://github.com/flazz/vim-c... [github.com]
Re: (Score:2)
I use vim daily on macOS (10.13.13) with 'syntax on' without issue (wish Zsh from macports).
Oddly enough, I HAVE seen the "shades of green" you describe, but only via an SSH session on a CentOS 5 box (don't ask), so I figured it was bc that OS is horribly out of date.
Re: (Score:2)
:syntax on
MacOS 10.13.3, zsh 5.3 vim 8.0
Re: (Score:2)
Thanks! This one fixed my problems!
Well, then. (Score:5, Funny)
I guess that's settled.
Re: (Score:3, Funny)
Yes, if only we'd thought of this sooner.
Re:Well, then. (Score:4, Funny)
Re: (Score:2)
That was a way better burn than I expected it to be. Well played.
Ed is the standard text editor. (Score:3)
Nuff said.
Re: (Score:2)
You joke, but I used to work with a woman that learned Unix when ed was state of the art. She complained that ex (let alone vi, vim, emacs, etc.) just didn't come off her fingers like ed.
She also had her own source license, and for a mere $50,000 (1990 dollars) could have updated it to the modern distribution, so that gave her seeming craziness a bit more cred than the emacs bigots who couldn't even mark a section except by deleting and restoring it.
No Joe's Own Editor? (Score:2)
Blasphemy. It emulates they keyboard commands from WordStar which the Borland tools also emulated. It's the choice of many old-school programmers.
Re: (Score:2)
Old school Messy-Dos programmers (said the ex-TOPS-20 programmer).
Why I never learned to like Emacs (Score:2)
It was easy enough to fire up the help system. I couldn't figure out how to exit the help system to get back to my work without killing emacs and restarting.
A lot of the commands didn't work the way the manual said they would. About 6 months after going back to Vi a co-worker said "oh, you never got our
Seems I am the odd man out with "Joe". (Score:3)
Because I usually use "Joe", because of the WordStar compatibility, as I learned coding with Turbo Pascal and Turbo C. I used Emacs for a while until the devel team there made some really stupid decisions, then I went back to Joe. So far it has compiled anywhere I tried and usually just works.
Re: (Score:2)
I had that "no Joe" problem recently in Solaris 10 (don't ask). Was not problem at all to compile it from sources.
Re: (Score:2)
It has a very simple and resilient installation (like good software should have), so that should work almost always.
I've been using VIM for 20 years (Score:5, Funny)
I've been using VIM for 20 years.
I swear one of these days I'll figure out how to quit the damn thing!
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Ctrl-Z
killall vi
But then someone taught me that you can go ESC ESC ESC ESC : q! (apparently one ESC is not always enough, so four or five times is recommended). So mostly I still use my old method.
Re: (Score:2)
Here's another one ... Try :x instead of :wq
Linux on the desktop (Score:3)
Re:Linux on the desktop (Score:4, Interesting)
/sarcasm Because in order for Linux to succeed on the desktop you need to run some slow, bloated, shitty ribbon bar IDE right?
It is obvious you don't deal with text day-in and day-out. Vim works because it becomes an extension of your mind once you learn how to use it. It is FAST. It can edit files of almost ANY size.
* Linux won in the server space. 100% of the Top 500 supercomputers [top500.org] in the world run Linux.
* Linux won in the mobile space. Linux runs on over 2 Billion [theverge.com] monthly active devices.
That leaves the desktop space.
Guess what, no one gives a fuck that Windows dominates the desktop. People _already_ use Linux on the desktop. The only ones complaining about the "quantity" is you.
Re: (Score:2)
When I have to work under Windows (because 'the PC' runs Windows) I 90% of the time have a linux VM for the real work.
Re: (Score:2)
It is obvious you don't deal with text day-in and day-out.
My text editing days go back to using SPF on mainframes. Now get off my lawn.
Re: (Score:2)
That right there tells you why linux will never succeed on the desktop.
No, that tells you the sort of people who already use Linux on the desktop.
Re: (Score:2)
Which is why I use Geany.
It is cross platform, has a decent list of features and has a GUI - I forgot all those vi keyboard sequences 25 years ago. An instructor on Coursera taught his students the dexterous dance of emacs shortcuts but I had forgotten those within 2 weeks.
Sigh (Score:3)
Linux Journal reader David Harrison points out another great thing about Vim "is that it's basically everywhere. It's available on every major platform."
So is Emacs ding-dong.
My $0.02 - I'm a long-time Emacs and Vi user - since the mid 1980s. I use Vi /Vim for short/quick edits and Emacs for things I want more of an IDE. Vim is a fine, fairly simple, text editor and Emacs is, well, Emacs. Granted the learning curve for Emacs much higher to really take advantage of it, but it's well worth it over the long run. If I could only have one editor, it would be Emacs - no question.
Re:Sigh (Score:5, Interesting)
If only because the buffer and windows system from Emacs is still miles ahead of that in Vim.
Re: (Score:2)
Re: (Score:2)
You may want to take a look at what the cool kids use today with electron node.js based editors like Atom.IO and Microsoft Code? There are emacs and vi shortcut packages and the integration and features are amazing and less cumbersome.
Re: (Score:2)
Re: (Score:2)
I know why you use vi for quick edits and emacs for long ones. It's because 30 years ago vi fired up and emacs took its time, right?
Not really. I would normally start Emacs and suspend it -- remember, back then it was all VT100 ASCII terminals (or such). I used/use Emacs for development as it was -- and still is -- way more capable and sophisticated than Vi / Vim. The latter are good for making quick, simple edits, like to config files, etc...
Re: (Score:2)
So... can you articulate why you use vi for quick edits? emacs has various vi-modes. So - why vi at all?
To quote that Almond Joy / Mounds commercial, "Sometimes you feel like a nut, sometimes you don't."
Geany... (Score:2)
Anyone else here use Geany? With the plugin pack, it is my new favorite. Works the same way on Windows or Linux is another plus.
Or you can install Atom with Minimap and Vim mode (Score:2)
Re: (Score:2)
Pft kids today ... get off my lawn you heathen. My gray neckbeard says vi and or emacs are the only editors
Real programmers use... (Score:2)
This kind of sums up the whole conversation...
https://imgs.xkcd.com/comics/r... [xkcd.com]
Visual Studio Code (Score:2)
I ditched Sublime Text for Microsoft's Visual Studio Code because Sublime doesn't support Japanese IME under Linux. I use Vim as well for quick stuff.
Re: (Score:2)
Kids today who use node.js electron based editors like MS Code and atom.io can install the VIM add on.
Really emacs and vim are from a different era in time. They only edit text. Emacs does have some limited integration with GDB but one of the reasons for it's decline and the rise of LLVM/CLANG where better error reporting and ide integration.
Re: (Score:2)
Unfair to emacs, which can also edit binary files.
And the possessive of "it" is "its" -- no apostrophe.
Because kids switched to Atom/MS code (Score:2)
If you do app development and are not very old past aged 30 (sarcasm but semi serious in Silcon Valley) you may find Emacs is not so great with integrating and running tools for Android or web development.
If you are a system admin you probably use Vim and have no reason to change.
gcc and gdb too have both gotten a bad wrap after LLVM/Clang came out a few years ago to address issues of error reporting and integration with editors and ides. Other compilers with Atom.io and even Microsoft code with them offer
In other news...COBOL beats FORTRAN (Score:3)
C'mon people! There are so many great editors out there today that are actually modern.
- Notepad++
- Sublime Text
- Visual Studio Code
- Visual Studio
These editors can do all the important stuff that vim and emacs could do, and you don't have to memorize a whole list of commands to use them!
Re: (Score:2)
Not sure which part you object to. But yes. Both vi / vim and emacs were developed in the mid-1970s. That makes them about 40 years old. COBOL and FORTRAN are only slightly older. Both of those editors were great in their day, as were the languages. They absolutely deserve a place in our technology museums.
Re: (Score:2)
Oh, I've used both vi and emacs since the 90s. You don't have to explain. I agree, Emacs is ahead of vi / vim.
But I wonder if you've actually used Visual Studio. It doesn't even make sense to "support emacs," that's kind of like saying you want Firefox to "support Chrome." Visual Studio is an extremely powerful editor, as well as being a robust IDE.
Personally, I use a mix of VS and Notepad++, depending on the task. I left vim behind a few years ago when I found that there was no longer any functionality I d
Re: (Score:2)
OK so I did some googling.
In Emacs, it seems kind of hard [stackoverflow.com] to do things like renaming a variable or function. In Visual Studio, you just right-click the name (any kind of name), choose Rename, type the new name. If there are any conflicts, it warns you. If a class file needs to be renamed as a result, it renames the file and updates the project too. It's smart enough not to confuse names from different modules that happen to be the same.
Same issue for finding all references to a variable, function, class, or
Re: (Score:2)
And while I'm on a roll, in emacs, while you are debugging, stepping through your code one line at a time, can you make a code change and continue stepping, without a recompile? VS can do that. Can you reset the instruction pointer or change the values of variables in between steps? VS can do that too.
Re: (Score:2)
Well you got me there, I certainly can't run VS over a 300 baud connection! Sounds like it's time for me to get off your lawn.
Vim isn't just an editor (Score:2)
Re: (Score:2)
Oh, I'm sure vim is a better editor than emacs, in the exact same sense that a claw hammer is a better tool than a sledgehammer.
Re: (Score:2)
Almost agreed on modal editors:
Trying to convert from EDT (Digital: RSTS/E and VAX) to vi on joining AT&T B.L. in 1988 was a real challenge. My EDT fingers ruined editing sessions for days until I unlearned the "just type and go" habit.
Vim's key mapping has improved with the result that many of the control operations (indent controls, selection, movement, including mouse wheel scrolling and ) to work without mode change. It also allows automatic entry of "insert mode" on startup. But vim is not GUI so c
Re: (Score:2)
> VI's interface design was crafted to overcome the lack of a mouse and arrow keys
You are doing it wrong.
CONSTANTLY moving your hands off the home row to/from the arrow keys is S-L-O-W. Once you learn how to navigate the cursor it is trivial to whip around the screen using only the keyboard.
Re: (Score:2)
Unfortunately the non arrow key moving is so counter intuitive that many people never 'acquire' it. ...
And honestly, how much slower is moving the hand to the arrow keys anyway?
I soent my time thinking while I move my hands
Re: (Score:2)
> the non arrow key moving is so counter intuitive that many people never 'acquire' it.
There definitely is some truth to that. That's why I changed my keybinds to use IJKL because HJKL doesn't work for me and I imagine it sucks for a lot of people too.
> And honestly, how much slower is moving the hand to the arrow keys anyway?
You'd be surprised. Quite a bit. It all adds up. Press v, and want to select ...
* ... end of word alphanumeric only? Press w. ... end of a word all chars? Press e ... begin
*
*
Re: (Score:2)
The question was about hjkl versus arrow keys.
Not about e, B, w etc.
Re: (Score:2)
You are missing the entire point.
WHY do you even use the arrow keys in the first place?
Because cursor movement is step ONE in doing _x_.
In step TWO you are either:
* Adding Text
* Deleting Text
* Pasting Text
* Selecting Text
The arrow keys are a means to an end.
By keeping your hands on the keyboard the _entire_ time you minimize the time for BOTH steps. THAT's the Vim advantage.
Re: (Score:2)
I use the arrow keys like every one else:
to move the cursor.
And the arrow keys belong to the keyboard, so no idea what you are talking about.
Re: (Score:2)
Moving your hand off the home row to the arrows keys is a complete waste of time.
Re: (Score:2)
As I mentioned in another post: 90% of my time I spent with thinking.
If I could speed up my typing by 100% it would be a 5% net gain.
Close to pointless.
And as I pointed out also in another post: using h j k l is counterintuitive. I can not memorize those keys.
And obviously moving my hand from j k to the arrows happens so rarely that the above 5% gain most likely would only be a 5 per mil gain ...
But be free to think otherwise ... I have again to think about what I actually want to write ... :D
Re: (Score:2)
According to Bill Joy the father of BSD Unix and author of Vi was the reason it has the modes is he had a 300 baud modem at his home in Berkeley to the Univerisity PDP-8. It was to conserve bandwidth on the very slow connection.
But it beat using ed and cat which would be hard and slow on large files on his terminal and 300 baud speed connection.
He mentioned Emacs must have been great that RMS and others at MIT had fiber connections and powerful hardware at his disposal which he did not have.