# Why does anyone use Vi?

**URL:** <https://boards.straightdope.com/t/why-does-anyone-use-vi/596765>\
**Category:** Miscellaneous and Personal Stuff I Must Share\
**Created:** [September 19, 2011, 12:36am UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765 "2011-09-19T00:36:31Z")\
**Posts on this page:** 17\
**Page:** 3

<div class="post-metadata">

**Author:** ![Athena](https://avatars.discourse-cdn.com/v4/letter/a/35a633/32.png) [@Athena](https://boards.straightdope.com/u/Athena)\
**Post date:** [September 19, 2011, 8:31pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/41 "2011-09-19T20:31:27Z")

</div>

> [@Bytegeist](#):
>
> It’s certainly possible you’ve never needed or wanted a feature that Emacs provides and that your favorite editor doesn’t. Some things I like about Emacs, which often don’t exist in more ordinary text editors:  
> [ul]  
> [li]Neatly re-format block comments, while automatically rearranging the comment markers in between lines.[/li][li]Download syntax-coloring libraries for pretty much every programming language in existence, as well as file formats like XML, JSON, Makefiles, X Windows resource files, etc.[/li][li]Customizable indentation rules for most languages.[/li][li]Add your own colorized syntax if desired. For example TRUE and FALSE are not special words in C normally, but you can make them show up in color (and therefore their misspellings won’t).[/li][li]Limit customization rules to specific individual files, or to all files in a directory tree.[/li][li]Run Unix shell commands and capture their output in a buffer, all within Emacs. No need to copy and paste from a terminal window.[/li][li]Cut, copy, and paste rectangles of text, not just ranges of lines or characters.[/li][li]Save or print just a portion of text within a file — for example a single function.[/li][/ul]

😕 You do realize that most GUI-based code editors out there also do most of those things nowadays, right?

---

<div class="post-metadata">

**Author:** ![suranyi](https://avatars.discourse-cdn.com/v4/letter/s/e36b37/32.png) [@suranyi](https://boards.straightdope.com/u/suranyi)\
**Post date:** [September 19, 2011, 9:16pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/42 "2011-09-19T21:16:38Z")

</div>

I use vi because I learned it 20 years ago. I know how to do everything I need to do without thinking about it. Muscle memory, as someone said above.

I do use other editors where appropriate, but for editing files on Linux vi is still what I use normally. It’s always there, even on a machine I’m logged on for the very first time, and I don’t have to think about it.

---

<div class="post-metadata">

**Author:** ![Bytegeist](https://avatars.discourse-cdn.com/v4/letter/b/9dc877/32.png) [@Bytegeist](https://boards.straightdope.com/u/Bytegeist)\
**Post date:** [September 19, 2011, 9:20pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/43 "2011-09-19T21:20:00Z")

</div>

> [@Athena](#):
>
> You do realize that most GUI-based code editors out there also do most of those things nowadays, right?

I do — though I don’t take much interest in them, because I _already have_ Emacs, which does all (not just most) of those things.

By the way I forgot to highlight that it’s all cross-platform too, so my favorite customizations and functions can be carried around with me from Mac OS X to Linux to Solaris, and I’m good to go. (The same would be true for VI, I assume.) For me, that’s very handy. For someone working on only one platform, it wouldn’t matter.

But I’m not making a sales pitch here for Emacs, however it might sound. I’m mostly responding to your “WTF” upthread, where you talk as if someone would have to be nuts to choose it over any modern GUI editor. Modern editors aren’t bad, but they could still learn a thing or two from Emacs.

---

<div class="post-metadata">

**Author:** ![Bijou\_Drains](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/bijou_drains/32/2814_2.png) [@Bijou\_Drains](https://boards.straightdope.com/u/Bijou_Drains)\
**Post date:** [September 19, 2011, 9:46pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/44 "2011-09-19T21:46:17Z")

</div>

Maybe I am lucky but my job does not require me to login to all kinds of different systems. If I do run into a system without emacs, I just ask to have it installed and they install it.

---

<div class="post-metadata">

**Author:** ![JCorre](https://avatars.discourse-cdn.com/v4/letter/j/3da27b/32.png) [@JCorre](https://boards.straightdope.com/u/JCorre)\
**Post date:** [September 19, 2011, 10:54pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/45 "2011-09-19T22:54:08Z")

</div>

Surprised this thread got along so far without [this](http://xkcd.com/378/).

---

<div class="post-metadata">

**Author:** ![Giraffe](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/giraffe/32/129_2.png) [@Giraffe](https://boards.straightdope.com/u/Giraffe)\
**Post date:** [September 19, 2011, 11:03pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/46 "2011-09-19T23:03:39Z")

</div>

People use vi for at least one of three reasons: (a) they are super old; (b) they do a lot of remote system administration on bare bones or antiquated systems; © they have low self-esteem.

---

<div class="post-metadata">

**Author:** ![Scathach](https://avatars.discourse-cdn.com/v4/letter/s/aeb1de/32.png) [@Scathach](https://boards.straightdope.com/u/Scathach)\
**Post date:** [September 19, 2011, 11:05pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/47 "2011-09-19T23:05:50Z")

</div>

Now I feel sad ☹ I always use vim. It’s the only thing I use to write code. I even installed it on windows!

---

<div class="post-metadata">

**Author:** ![Motorgirl](https://avatars.discourse-cdn.com/v4/letter/m/e36b37/32.png) [@Motorgirl](https://boards.straightdope.com/u/Motorgirl)\
**Post date:** [September 19, 2011, 11:30pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/48 "2011-09-19T23:30:59Z")

</div>

> [@Giraffe](#):
>
> People use vi for at least one of three reasons: (a) they are super old; [snip]

That’s me. I’ve been using vi my whole professional career. I’ve been using vi so long my MSWord docs are peppered with :wq

---

<div class="post-metadata">

**Author:** ![Scathach](https://avatars.discourse-cdn.com/v4/letter/s/aeb1de/32.png) [@Scathach](https://boards.straightdope.com/u/Scathach)\
**Post date:** [September 19, 2011, 11:33pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/49 "2011-09-19T23:33:54Z")

</div>

Text editors in lord of the rings 🙂

> **[Text Editors in The Lord of the Rings](https://crookedtimber.org/2011/07/30/text-editors-in-the-lord-of-the-rings/)**
>
> Prompted by a passing thought about TextMate, I thought I’d make a comprehensive, accurate, unbiased, and irrefutable survey of text editors by way of comparison to locations in The Lord of t…

---

<div class="post-metadata">

**Author:** ![Zeriel](https://avatars.discourse-cdn.com/v4/letter/z/58956e/32.png) [@Zeriel](https://boards.straightdope.com/u/Zeriel)\
**Post date:** [September 19, 2011, 11:43pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/50 "2011-09-19T23:43:25Z")

</div>

> [@Giraffe](#):
>
> People use vi for at least one of three reasons: (a) they are super old; (b) they do a lot of remote system administration on bare bones or antiquated systems; (c) they have low self-esteem.

I’d be offended if I didn’t fit into category b.

---

<div class="post-metadata">

**Author:** ![suranyi](https://avatars.discourse-cdn.com/v4/letter/s/e36b37/32.png) [@suranyi](https://boards.straightdope.com/u/suranyi)\
**Post date:** [September 19, 2011, 11:45pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/51 "2011-09-19T23:45:47Z")

</div>

> [@Bijou\_Drains](#):
>
> Maybe I am lucky but my job does not require me to login to all kinds of different systems. If I do run into a system without emacs, I just ask to have it installed and they install it.

It’s not a matter of luck, it’s just that you have a different job than I do. I do need to log onto different systems all the time as part of my job.

---

<div class="post-metadata">

**Author:** ![suranyi](https://avatars.discourse-cdn.com/v4/letter/s/e36b37/32.png) [@suranyi](https://boards.straightdope.com/u/suranyi)\
**Post date:** [September 19, 2011, 11:51pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/52 "2011-09-19T23:51:25Z")

</div>

> [@Giraffe](#):
>
> People use vi for at least one of three reasons: (a) they are super old; (b) they do a lot of remote system administration on bare bones or antiquated systems; (c) they have low self-esteem.

I am kind of old by your standards (I’m 49), and I do have do a lot of work on remote systems. But not system administration. More like parallel computations. Lots and lots of CPU-heavy work. Done in parallel on many Linux servers that have bare-bones operating systems.

---

<div class="post-metadata">

**Author:** ![Bijou\_Drains](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/bijou_drains/32/2814_2.png) [@Bijou\_Drains](https://boards.straightdope.com/u/Bijou_Drains)\
**Post date:** [September 19, 2011, 11:51pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/53 "2011-09-19T23:51:41Z")

</div>

> [@suranyi](#):
>
> It’s not a matter of luck, it’s just that you have a different job than I do. I do need to log onto different systems all the time as part of my job.

Are you a consultant who works various places or do you work at a place where they have a lot of different systems that are not standardized? Like maybe a university?

By the way, what is it about xkcd and this site? I never heard of that comic before and people here constantly bring it up.

---

<div class="post-metadata">

**Author:** ![suranyi](https://avatars.discourse-cdn.com/v4/letter/s/e36b37/32.png) [@suranyi](https://boards.straightdope.com/u/suranyi)\
**Post date:** [September 19, 2011, 11:58pm UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/54 "2011-09-19T23:58:51Z")

</div>

> [@Bijou\_Drains](#):
>
> Are you a consultant who works various places or do you work at a place where they have a lot of different systems that are not standardized? Like maybe a university?
> 
> By the way, what is it about xkcd and this site? I never heard of that comic before and people here constantly bring it up.

No, I work for a multinational company based in Europe, and as part of my job I have to run programs on servers that could be installed anywhere in the world: North America, Europe, Asia, etc. I can’t control how those servers were set up or what programs were installed on them so I can only assume that the most basic programs are available.

---

<div class="post-metadata">

**Author:** ![Bijou\_Drains](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/bijou_drains/32/2814_2.png) [@Bijou\_Drains](https://boards.straightdope.com/u/Bijou_Drains)\
**Post date:** [September 20, 2011, 12:02am UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/55 "2011-09-20T00:02:33Z")

</div>

I also work for a company that is all over the world but most of the systems I use are local and are configured the same. We also have systems that are run on big, super fast servers because there is a lot of data and math involved. One project has 6 servers now and every one of them has 12 cores.

---

<div class="post-metadata">

**Author:** ![Zeriel](https://avatars.discourse-cdn.com/v4/letter/z/58956e/32.png) [@Zeriel](https://boards.straightdope.com/u/Zeriel)\
**Post date:** [September 20, 2011, 1:35am UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/56 "2011-09-20T01:35:27Z")

</div>

You claim to be a person who uses emacs/vi enough to actually care which one you use, and yet you say this?

> [@Bijou\_Drains](#):
>
> By the way, what is it about xkcd and this site? I never heard of that comic before and people here constantly bring it up.

Doesn’t pass the smell test. 😛

---

<div class="post-metadata">

**Author:** ![minor7flat5](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/minor7flat5/32/258_2.png) [@minor7flat5](https://boards.straightdope.com/u/minor7flat5)\
**Post date:** [September 20, 2011, 1:56am UTC](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765/57 "2011-09-20T01:56:17Z")

</div>

> [@Giraffe](#):
>
> People use vi for at least one of three reasons: (a) they are super old; (b) they do a lot of remote system administration on bare bones or antiquated systems; (c) they have low self-esteem.

That’s harsh…

I don’t really fit (a) yet, though getting close.  
And I do _some_ work on bare bones and older stuff, so maybe there’s hope for (b).  
Don’t even want to think about (c).

[Previous page](https://boards.straightdope.com/t/why-does-anyone-use-vi/596765.md?page=2)
