
Why, oh WHY, do those #? nutheads use vi? - jxub
http://www.viemu.com/a-why-vi-vim.html
======
AznHisoka
Because its the only reliable way to edit a file when there’s a “house on
fire” production incident.

Want to use xemacs? sorry you need a weird dependency. Ok lets use emacs.
Still not installed. Ok lets use nano... wait how do i save this again?

~~~
pbalau
Ctrl+o, it's literally on the screen at all times. People that use vi, and not
vim, use it, as my very limited experience with knowing one person doing it,
is because vi is available everywhere AND is more powerful than nano. And
since they have to rely on vi, they might as well learn it fully.

~~~
tinus_hn
Can you imagine people use vi because they like the way it works? I do. The
fact that it is available everywhere is a nice bonus.

------
Koshkin
I have always had a problem with all these emacs or vim plugins for various
editors and IDEs. The problem is that as soon as you leave the context they
work in - switch to a different window or a dialog box (or, in the case of
Visual Studio, anywhere outside the code editor window), you are back to
having to use the native key bindings.

~~~
hipplec
I had the same issues. I really liked vim for editing scripts but wanted more
functionality as I was studying datascience and needed to work on Jupyter
notebooks and RMarkdown files. Luckily someone showed me spacemacs which is an
emacs distribution built on emulating the vim experience but with all of the
power of emacs.

[http://spacemacs.org/](http://spacemacs.org/)

Definitely worth checking out.

------
classichasclass
Favourite vi joke ever: "I've been using it for about two years now, mostly
because I can't figure out how to exit it."

On the other hand, it's everywhere, it's quick and once you learn it there's a
lot of muscle memory that takes over.

~~~
tonysdg
I always enjoyed, "Need to generate a pseudo-random key sequence quickly? Open
up vim and ask a friend to close it for you."

------
gdrift
What really makes coding environment productive for me are: file navigation,
code browsing, call hierarchy, class hierarchy, find usages, find declaration,
find implementations, refactoring, build integration, debugger integration,
documentation integration.

I did try vim more than once over the years. I'd use it to edit config files
on servers but would much prefer an IDE for coding.

~~~
transpostmeta
You can use VIM style keybindings in an IDE. I have been using VsVim in Visual
Studio for years, it's great!

------
lbradstreet
I'd like to stress the point in the article about how important the . is to
efficient vim use. [https://pragprog.com/book/dnvim2/practical-vim-second-
editio...](https://pragprog.com/book/dnvim2/practical-vim-second-edition)
completely changed how I use vi in this respect.

------
Techonomicon
vim is a grammar, a true grammar, once you learn that, it all makes sense.

[http://rc3.org/2012/05/12/the-grammar-of-vim/](http://rc3.org/2012/05/12/the-
grammar-of-vim/)

------
nwmcsween
'Learn emacs instead'

I would say emacs can be a lot more complex than vim, I mean people use it as
basically an OS.

------
BlackLotus89
First of all the article is from (2007).

This is just another love letter to vi/vim that lists "misconceptions" people
tend to have and tries to debunk them.

Me personally, I didn't have any of the misconceptions listed in there. My
beef with vi/vim lies somewhere else. So let's tackle the question "Why, oh
WHY, do those #?@! nutheads use vi?" and here is my top list of problems I
have with vi(m)

 _1)_ most people I know don't know how to use vi(m)

I know quite a lot of people who use it, but those people don't use any
advanced functionality. They basically use it like this

    
    
      i
      <do stuff>
      <esc>
      :wq
    

some of those people recommend vim to other people and when asked why they use
it all argue with how powerful it is and that it is installed "everywhere",
but nobody uses the powerful functionality (anecdotally it's less then 10%)

 _2)_ vi is installed by default everywhere - but what vi?

There is

* nvi (used in void linux in version 1.81) [https://sites.google.com/a/bostic.com/keithbostic/vi/](https://sites.google.com/a/bostic.com/keithbostic/vi/)

* ex-vi (used in archlinux) [http://ex-vi.sourceforge.net/](http://ex-vi.sourceforge.net/)

* vim-minimal (used in red hat) [http://www.vim.org/](http://www.vim.org/)

* vim (yeah ubuntu uses afaik "vim.basic") [http://www.vim.org/](http://www.vim.org/)

Then there are busybox vi, neatvi and neovim (that's what I use)

Anyway they all "should" behave the same, but they have non overlapping
functionality and behave different (even depending on the terminal you use. I
more then once had problems depending on the TERM variable set)

 _3)_ you probably have to carry over you config wherever you go

Let's be real here. If you use vi(m), _really_ use vim, you probably have your
default config. Maybe on github, maybe on your homepage, maybe on an usb drive
or memorized. I know people with multiple vim configs for different use cases.
The defaults I find are not usable for most. And some functionality doesn't
carry over from vim to vi.

And even thought I say that the defaults suck, the default behavior changes
from version to version. For example the smart indent functionality on older
versions is different than it is now and they changed the crypto for the
encryption (imho vim shouldn't support encrypting of documents anyway [see
point 5] these were just the 2 examples that came to mind first). Meeh

 _4)_ you have to use plugins

Yeah plugins are great. You don't have to use plugins, but you for sure _want_
to use plugins. With the right plugins vim can even be a really good IDE. But
you have to manage them, update them and again: on every machine you use you
have to carry it over.

What plugin manager do you use? vim-plug? vundle? pathogen? Or maybe something
entirely different? You don't want to manage them by hand and you are gonna
need one. So get comfortable choosing one and setting it up everywhere.

 _5)_ vims original goal (afaik) was to adhere to the kiss principal

but it failed. vim now has the kitchen sink. If you install vim you pull in
more than 30mb (yeah today it doesn't seem like much, but I like having a
small footprint no matter what I do)

If you can read mails in your editor you are doing it wrong (sorry emacs
users)

_____________________________

So the reasons why I don't like vim or why people shouldn't use vim aren't the
ones listed on the site.

PS maybe you want to take a look at vis if you want to see what vim should
have been.

edit. formatting

~~~
johnfn
I don’t understand that your first problem with vim is that other people don’t
know how to use it. That’s like me saying I don’t like money because other
people don’t know how to spend it.

~~~
BlackLotus89
Oh it was in relation to the article :) the question was "Why, oh WHY, do
those #?@! nutheads use vi?" and my first point was in direct reference to
this. "Why do people that don't know how to use vim vim" that's all.

At first I wanted to write a direct answer to the article, but since I started
ranting about my gripes with vim I tried to change the tone of my comment
while keeping my starting argument.

PS. I used to only use nano and people kept asking me why/making fun of me.
And most people that told me to use vim didn't know shit about it.

------
TrolTure
Vim is my main editor, my main gripe is that it performs terribly (without any
plugins) with either relative numbers, cursor line or syntax highlighting in
files larger than 200 lines.

~~~
majewsky
Did you try different terminal emulators? All these features sound like they
cause a lot of redraws, so it could be that the terminal emulator's renderer
is the bottleneck here.

------
0db532a0
I’ve found that a majority of people who use vi(m) and profess to hate Emacs
because of the complexity of its shortcuts also spend their whole time in
insert mode, using only the arrow keys for movement, leading me to think that
these people just hate efficient editing in general.

------
stochastic_monk
This does not match my experience at all.

Most people I know use vim and the holdouts use emacs (except for Java
developers using Eclipse).

No one in my circles thinks using vim is any cooler or harder than any other
editor per se, but it generally meets people’s needs well.

