why-vi.rocks/index.md

739 B

Why vi Rocks

A collection of commands, command sequences in vi(1)/ex(1) or with 3rd party unitilities.
These all work with at least nvi 1.79 and 2.1.3 (unicode).

Yank / delete an arbitrary number of lines.

1) mark the first line: mk
2) move to last line
3a) yank: y'k
3b) delete: d'k
4) move to new line
5) paste with P or p

Join all lines in a file

:%j

When you need root permissions to write the file

:w !doas tee %

Diff the file on disk with the file in cache

:w !diff -u % -

Make a backup of the file on disk

:! cp % %.bak

Sort lines

:%!sort

Dedup lines

:%!uniq