W jednym z poprzednich artykułów wyjaśniałem zasady używania nazwanych rejestrów. Teraz należy się trochę więcej informacji na ten temat.
Czym właściwie są te całe rejestry? Rejestry są to miejsca w pamięci, do których lądują dane, które kopiujemy lub wycinamy podczas edycji dokumentu. Jak wyjaśniłem w cytowanym artykule, podczas kopiowania lub usuwania danych, możemy podać nazwę rejestru, do którego te dane lądują. Rejestry te oznacza się literkami od a do z. Nie są to jednak jedyne rejestry dostępne w edytorze Vim. Jeżeli jesteśmy ciekawi pozostałych, wystarczy że w lini komend wpiszemy :registers i zawartość wszystkich rejestrów zostanie wyświetlona na ekranie.
Zapamiętać także musimy, że wybrany rejestr poprzedzamy znakiem cudzysłowa przed komendą operacji, czyli "addoznacza że usuwamy całą linijkę i umieszczamy ją w rejestrze ‚a’.

Inne rejestry w edytorze

Rejestr anonimowy (nienazwany) – dostajemy się do niego poprzez podwójny znak cudzysłowu. Rejestr ten przechowuje ostatnią informację umieszczaną w dowolnym rejestrze. Czyli "add usuwa całą linijkę i umieszczą ją zarówno w rejestrze ‚a’ jak i nienazwanym.

Rejestr małych usunięć.

Jeżeli usuwamy fragment tekstu, który jest krótszy niż linijka i jednocześnie nie wskazujemy żadnego rejestru, to fragment ten zostaje umieszczony w tym rejestrze. Dostęp do niego określony jest przez znak myślnika "-

Rejestry ponumerowane

Analogiczne jak rejestry nazwane działają rejestry numerowane. Jednak sami nie możemy wybrać do którego będziemy wprowadzać dane. Rejestry te oznaczone cyframi od 0 do 9 przechowują 10 ostatnich operacji. Jeżeli coś usuwamy (‚d’ lub ‚x’) lub zmieniamy (‚c’) to ląduje to w rejestrze „0”. Zatem rejestr zawiera ostatnią zmianę/usunięcie. Do rejestru „1” także ląduje ostatnie usunięcie/zmiana, chyba że podczas operacji został określony rejestr, lub tekst jest krótszy niż linijka, gdzie w tym przypadku tekst ten ląduje w rejestrze małych usunięć. Gdy następny framgent ma wylądować w rejestrze „1” to przedtem zawartość tego jest przesuwana do rejestru „2” itd.
Jednym zdaniem można powiedzieć, że są to ostatnie 10 wykonanych operacji.

Rejestry tylko do odczytu

Edytor Vim posiada także kilkoma rejestrami, z których można tylko dane odczytywać, a nie można ich zapisywać. Dane zapisywane są w nich podczas wykonywania określonych operacji.

"% – ten rejestr zawiera nazwę pliku w aktualnym buferze,
"# – zawiera nazwę poprzedniego pliku otwartego w tym buferze(inaczej zwanego plikiem alternatywnym)
". – ten rejestr zawiera ostatni wprowadzony tekst.
": – ten rejestr zawiera ostatnią komendą wprowadzoną w linii komend.

Przy używaniu graficznego interface’u dostajemy także:
"* – rejestr przechowywujący zawartość schowka systemowego (Clipboard)

Rejestr czarnej dziury

Nie spotkałem się jeszcze z taką sytuację, ale być może jest potrzeba aby usunąć coś z dokumenty tak aby nie było przechowywane w żadnym z rejestrów. Jeżeli chcemy coś takiego zrobić, to musimy użyć rejestru czarnej dziury. Oznacza się go myślnikiem "-. czyli jeżeli chcemy jakąś linijke pernamentnie usunąć to wykonujemy komendę: "-dd.

Rejestr wyszukiwania.

Kolejnym rejestrem jest rejestr wyszukiwania, który przechowuje ostatni wzorzec wyszukiwania użyty w buforze. Rejestr ten oznacza się: "/

Rejestr wyrażeń

Ostatnim rejestrem jest rejestr wyrażeń oznaczony "=. Rejestr ten przechowuje ostatnie wyrażenie wprowadzone w edytorze. Co to są wyrażenia i jak z nich korzystać to jest temat na cały artykuł, więc nie będę tego tutaj wyjaśniać. Jeżeli ciekawość jednak nie da wam spokoju to proszę zerknąć do :help expression
.