Skip to main content

Questions tagged [history-of]

Questions about the history of Vi. DO NOT use this for command history.

Filter by
Sorted by
Tagged with
1 vote
1 answer
2k views

Why did vi use hjkl instead of jikl?

I found this convincing history on StackOverlow: Vim uses hjkl because vi did. Vi used hjkl because its creator's keyboard didn't have physical cursor keys. Instead, the arrows were printed on the ...
user avatar
4 votes
1 answer
189 views

When was getcharstr() introduced? And how could I have found the answer my self from :help?

Yesterday I made a change to my plugin which essentially consisted in using getcharstr() instead of nr2char(getchar()). That was Vim 8.2.4106. Today at work I updated my plugin and got an error, ...
Enlico's user avatar
  • 2,276
1 vote
2 answers
155 views

How to find patch release date

I want to use a feature included in Patch 7.4.1154. From vim-history, I see releases: v8.0 - 12 September, 2016 v7.4 - 10 August, 2013 There's a few years between them. How do I find the release ...
Tom Hale's user avatar
  • 2,731
1 vote
1 answer
37 views

Is there a reason why the short for `'modifiable'` is `'ma'` and not `'mo'`?

Is there a reason why the short for 'modifiable' is 'ma' and not 'mo'? I've entered :h 'mo' and I got E149, so there doesn't seem to be any clash...
Enlico's user avatar
  • 2,276
1 vote
1 answer
98 views

Why does vi sometimes use harder-to-reach keys?

For example: [[ and ]] instead of [ and ], and G instead of g. Some ideas: Vim used these keys first, and they were backported to Vi (though G seems like an essential command for a code editor) Vi ...
Simon Branch's user avatar
14 votes
2 answers
10k views

Advice to add `set nocompatible` as first line of .vimrc

I recall (perhaps in the early 2000's) having set nocompatible as the first line of my vimrc and most Vim guides and tutorials recommending that practice. Some examples I could easily find online: ...
filbranden's user avatar
  • 29.9k
3 votes
1 answer
2k views

Why is `vmap` for both Visual *and* Select mode?

Vim has both Visual and Select modes. Select mode is similar to Visual mode in some senses, but different in that when a printable character is typed, Vim will replace the selection with that ...
filbranden's user avatar
  • 29.9k
15 votes
1 answer
2k views

Vi and Vim default to split left and split above. What is the history and motivation behind this?

When a window is split, given that Vi/Vim splits are not stored in a tree structure, the "direction of the split" is basically "the window in which the cursor is placed after the ...
fnurl's user avatar
  • 251
4 votes
1 answer
383 views

Traditional Vi and its regular expressions

I'd just want to get confirmation on (and maybe some background to) the way that Bill Joy's vi, sometimes found as traditional-vi on some BSD systems, handles regular expressions. It seems as if most ...
Kusalananda's user avatar
15 votes
1 answer
2k views

Why is it called a "vimrc" file?

Where did the name vimrc come from? Is the rc part an acronym? Are there historical reasons for picking this name? Where did the practice of using rc for configuration files first come from? For what ...
DJMcMayhem's user avatar
  • 17.9k
5 votes
1 answer
143 views

Why is it okay to have a space in a `let` statement?

In my ~/.vimrc if I write set tabstop = 2, it will be a syntax error: set tabstop = 2 " E521: Number required after =: tabstop = set tabstop=2 " no errors But I can write let @/ = "" let @/ = "" "...
mbigras's user avatar
  • 657
11 votes
1 answer
466 views

What are the advantages of using colon for commands instead of semicolon?

Vi very successfully minimises finger travel and speed with command mode. Swapping ; and : seems to save a lot of extra shift keystrokes for commands which are used more freqently than repititions of ...
79E09796's user avatar
  • 211
18 votes
4 answers
3k views

What is the rationale for \r and \n meaning different things in s command?

We all know that, when searching, \n is newline and \r is carriage return (^M), but when replacing \r is newline while \n is a null byte (^@). What is the origin of this asymmetry? Given that this ...
Matteo Italia's user avatar
72 votes
3 answers
27k views

Why does vim use hjkl for cursor keys?

Why use the keys hjkl on the same line instead of keys in a triangle like wasd for moving on video games? Why not something equivalent with right hand, like ijkl or pl;'?
albttx's user avatar
  • 1,205
-2 votes
1 answer
580 views

Does Vim have a marketing symbol? [closed]

Since Vim is one of the most popular editors maybe it does not need marketing, but does it have a marketing symbol, like the Linux Penguin?
Tyler Durden's user avatar
  • 2,161
2 votes
1 answer
246 views

Why is the visual selection represented by these characters: '<,'> ? Can it be parsed?

While I can understand the percentage sign % being chosen to represent the current file, just because you need to choose some character for that, I am curious as to why '<,'> is representative ...
Anon's user avatar
  • 905
7 votes
1 answer
285 views

Why is the expression register "read only"?

I was messing with the expression register (:h @=) and noticed that it is not possible to put text directly in it. The doc says: The expression register is read-only; you cannot put text into it. ...
statox's user avatar
  • 50.5k
43 votes
2 answers
10k views

Why is Y a synonym for yy instead of y$?

Is there a specific historical reason for this? Background — (you can skip this part if you already understand the question.) As intermediate/advanced vi users will know, y is the "yank" command—it ...
Wildcard's user avatar
  • 4,449
1 vote
1 answer
166 views

Why does the source code of Vim have a folder named farsi in the root directory?

While looking through Vim's source code, I notice that it contained a folder named farsi in the top directory, created 9 years ago. The commit message seems to be just updated for version 7.1a. Why ...
muru's user avatar
  • 25.1k
7 votes
2 answers
464 views

Why is ] used for tag navigation?

Several of the commands for browsing programs with tags use ]. Is there a mnemonic for this? Why was it selected?
davetapley's user avatar
10 votes
1 answer
462 views

What is the origin of the term "yank"?

I'm interested in learning how the term yank got its name. I'm also interested in why Vi/Vim "yank" differs from Emacs "yank". See also: same question on Unix & Linux; dual question about Emacs
kliph's user avatar
  • 103
85 votes
1 answer
34k views

What is the select mode and when is it relevant to use it?

I accidentally pressed gh in normal mode and started a selection, so I looked up the doc and found :h Select-mode. From what I understand the select mode is close to the visual mode excepted that: ...
statox's user avatar
  • 50.5k
16 votes
2 answers
513 views

Does Vimscript have an official name?

The name of the language sometimes known as Vimscript is a topic of debate. Some places use Viml (or is it VimL?), others Vimscript. Does it have an official name, and if it does, what is it and since ...
muru's user avatar
  • 25.1k
7 votes
5 answers
2k views

Why doesn't vimscript provide a random number generator?

EDIT Since 8.1.2342, Vim introduced a rand() function as described by @Maxim Kim's answer. I'll keep the question here for historical reference. I recently needed to generate a random number in vim ...
statox's user avatar
  • 50.5k
17 votes
3 answers
4k views

What is the use of the black hole register ("_)?

I recently read about the black hole register "_ which is a write-only register. Vim documentation describes it this way: Black hole register "_ When writing to this register, nothing ...
statox's user avatar
  • 50.5k
3 votes
1 answer
182 views

Did Vim ever use a different versioning scheme?

In Debian packaging, a version number looks like: x:y~z, where x is called the epoch. According to the Debian policy: It is provided to allow mistakes in the version numbers of older versions of a ...
muru's user avatar
  • 25.1k
0 votes
1 answer
231 views

Are there any platforms whose native `vi` is not vim, nvi, or original vi? [closed]

Just like in the title. I know most Linux distributions ship with vim and most BSDs use nvi, but I was wondering if there are any "obscure" versions of vi on some commercial UNIX or other platform, ...
Random832's user avatar
  • 1,232
4 votes
2 answers
1k views

Why are ^ and $ still magic in nomagic mode?

In 'nomagic' mode, ^ and $ have a special meaning and no others do. Why were these selected, rather than making people type \^ and \$ just as they do for \. and \*? EDIT: I have been able to confirm ...
Random832's user avatar
  • 1,232
61 votes
1 answer
8k views

How much money has been raised for needy children in Uganda from Vim? [closed]

As it says under :help iccf… Vim is Charityware. You can use and copy it as much as you like, but you are encouraged to make a donation for needy children in Uganda. Please see kcc below or ...
200_success's user avatar
  • 9,639
24 votes
2 answers
7k views

What is the relation between vi, nvi and vim?

On some unixes sometime I found a command named nvi. It was a vi-like editor, without much of its functionality. Maybe it was a fork of the old vi? Anyways, which vi versions are a fork of the others,...
peterh's user avatar
  • 1,171