Nie ukrywam, że od pewnego czasu moim ulubionym edytorem jest Vim.
Używam go przy większości projektów, praktycznie do wszystkiego oprócz
javy. Pracując nad projektem niejednokrotnie edytuje
kilka(-naście)plików jednocześnie. Do przełączania się pomiędzy plikami
w Vim służą bufery jednak czasami przydałby się podgląd jednego pliku
podczas edycji drugiego.

Do tego służą Vimowe okna (viewports).

Vimowe okienka to nie jest dokładnie to do czego jesteśmy przyzwyczajeni
na codzień. Może określenie „okienko to nawet trochę za dużo, ale tak
się to zwie i co zrobić. :)

Otóż Vim posiada funkcjonalność podzielenia ekranu na kilka mniejszych,
można podzielić okno w pionie lub poziomie w dowolnych proporcjach. W
każdym z tych okienek możemy edytować inny plik.

Główne skróty klawiaturowe

Głównym skrótem klawiaturowym jest Ctrl-w który poprzedza każdą z
komend.

Aby podzielić okno w pionie używamy Ctrl-w s natomiast w poziomie
Ctrl-w v. Ten sam efekt osiągniemy po wpisaniu w trybie ext komend
:sp lub :split do dzielenia w pionie, lub :vsp lub :vsplit do
dzielenia w poziomie.

Gdy pracuję nad projektem w Ruby on Rails często korzystam ze skrótu
gf, który otwiera plik, który aktualnie jest pod kursorem. Vim z
zwłaszcza z pluginem vim-rails sprytnie rozpoznaje który plik otworzyć.
Dużo programistów korzysta z tego skrótu, jednak nie wszyscy znają drugi
dość sprytny, otóż tak samo jak gf można otworzyć plik spod kursora
ale w innym oknie. Do tego służy komenda Ctrl-w f. Warte polecenia dla
tych co nie znają.

Poniżej inne dość przydatne skróty klawiszowe:

Ctrl-w s
:sp
:split rozdzielenie okna w poziomie

Ctrl-w v
:vsp
:vsplit rozdzielenie okna w poziomie

Ctrl-w n otworzenie nowego pliku w nowym oknie
Ctrl-w f otworzenie pliku którego nazwa jest pod kursorem

Ctrl-w q zamknięcie aktywnego okna

Poruszanie się pomiędzy oknami

Ctrl-w j przejście do okna w dół
Ctrl-w k przejście do okna w górę
Ctrl-w h przejście do okna po lewej
Ctrl-w l przejście do okna po prawej

Powyższe komendy można zmodyfikowac liczbą, np Ctrl-w 2j przeniesie
nas dwa okna w dół.

Ctrl-w w przechodzenie pomiędzy okienkami (przechodzi do kolejnego)
Ctrl-w p przechodzi do kolejnego okienka

Ctrl-w r rotuje okienka w dół, obecne okienko jest nadal aktywne
Ctrl-w R rotuje okienka w górę, obecne okienko jest nadal aktywne

Zmiana wielkości okienek

Ctrl-w = Wyrównuje wszystkie okienka do jednej wiekości
Ctrl-w - Zmniejszenie wysokości okna o 1 linijkę
Ctrl-w + Zwiększenie wysokości okna o 1 linijkę
Ctrl-w < Zwężenie okienka o 1 kolumnę
Ctrl-w > Poszerzenie okienka o 1 kolumnę

Te skróty także możemy modyfikować liczbą: Ctrl-w 20< zwężenie okna o
20 kolumn

Ctrl-w o Maksymalizacja okna, pokazuje okno na całej powierzchni,
ponowne użycie tego skrótu przywraca poprzedni stan

Na koniec tylko dodam, że do większości z powyższych skrótów można
dołożyć drugi ctrl. Np. aby zamknąć okno: Ctrl-w Ctrl-q.
.