mirror of
https://github.com/tildeclub/site.git
synced 2026-08-25 19:59:24 +00:00
Software words and website words are capitalized (or, as another option, all caps), articles in the "tilde.club" category must have most words capitalized (may capitalize word in case of doubt), and the rest of the titles must have first word, of the title, capitalized, with the rest of the (non-software) words, of the title, all lowercase. Signed-off-by: keyboardan <keyboardan@tilde.club>
78 lines
2.3 KiB
Markdown
78 lines
2.3 KiB
Markdown
---
|
|
title: Vi (editor)
|
|
category: software
|
|
author:
|
|
- ant
|
|
---
|
|
|
|
*Tilde.Club* has
|
|
[The Traditional Vi](https://ex-vi.sourceforge.net/)
|
|
installed on its premises.
|
|
It is not just another
|
|
[Vi clone](https://texteditors.org/cgi-bin/wiki.pl?ViFamily),
|
|
but the direct continuation
|
|
of Bill Joy's legendary work at Berkeley.
|
|
The binaries are in `/usr/archaic/bin/`
|
|
and the man pages
|
|
(separately for `ex` and `vi`)
|
|
in `/usr/archaic/share/man/man/`.
|
|
|
|
You can invoke *The Traditional Vi* in several ways
|
|
(in the order of increased engagement):
|
|
|
|
1. by the full path to the executable:
|
|
|
|
/usr/archaic/bin/vi
|
|
|
|
2. by adding it as an alias to your shell's `rc` file
|
|
(`~/.bashrc` for *Bash*), e.g:
|
|
|
|
alias tvi=/usr/archaic/bin/vi
|
|
|
|
and then invokng *Vi* by typing `tvi`,
|
|
|
|
3. by adding the locations *Vi* and its documentation
|
|
in front of the `PATH` and `MANPATH` environment variables
|
|
in your shell's profile script
|
|
(for *Bash*, `~/.bash_profile` or `~/.profile`):
|
|
|
|
export PATH="/usr/archaic/bin/:$PATH"
|
|
export MANPATH="/usr/archaic/share/man/man:$MANPATH"
|
|
|
|
The latter method has the advantage
|
|
of affecting subshells,
|
|
so that if you specify `vi` as the default editor
|
|
in your e-mail or news client, or another CLI program,
|
|
it will invoke *The Traditional Vi*,
|
|
ditto for your shell scripts
|
|
and the `EDITOR` environment variale.
|
|
|
|
## Resources
|
|
|
|
1. Bill Joy's
|
|
[An Introduction to Display Editing with Vi ](https://ex-vi.sourceforge.net/viin/paper.html),
|
|
2. [`vi(1)`](https://ex-vi.sourceforge.net/vi.html) man page,
|
|
3. [`ex(1)`](https://ex-vi.sourceforge.net/ex.html) man page,
|
|
4. [A concise `vi` reference](http://www.ungerhu.com/jxh/vi.html),
|
|
5. [The Ultimate guide to the VI and EX text editors](https://archive.org/details/ultimateguidetov0000unse_i5e4) (a paper book),
|
|
6. The `#vi` channel on the
|
|
[Libera.Chat](https://libera.chat/)
|
|
IRC network,
|
|
dedicated to the original *Vi*
|
|
and all its variants except *Vim* & co,
|
|
7. [VI experience in the shell](https://deut-erium.github.io/2024/01/28/inputrc.html).
|
|
|
|
## Building
|
|
|
|
*The Traditional Vi* is surprisingly easy to build from
|
|
[its source](https://sourceforge.net/p/ex-vi/code/).
|
|
You only need to locate the following line in `Makefile`:
|
|
|
|
TERMLIB = termlib
|
|
|
|
and replace the value with `curses` or `ncurses`,
|
|
depending on your preferred terminal library.
|
|
Now you can build and install the project with:
|
|
|
|
make && make install
|