Jeśli sądzisz, że wykształcenie drogo kosztuje, spróbuj niewiedzy.
Benjamin Franklin
Dawniej praca z wieloma plikami była dość kłopotliwa przy użyciu vim
'a.
Szczęśliwie dla wszystkich obecnie jest to historia, a problem został
skutecznie rozwiązany. Począwszy od wydania wersji 7 edytora standardowym
wyposażeniem są zakładki, których korzystanie znacząco zwiększa komfort pracy.
Sama w sobie zakładka jest jedynie kolekcją okien, które możemy dowolnie
konfigurować. Dla przypomnienia bufor to wczytany do pamięci plik, okno to
graficzna reprezentacja buforu, a zakładka to zbiór okien. Z całą pewnością
otwiera to wiele możliwości wygodnego operowania danymi.
Zaprzyjaźnimy się z zakładkami! Zacznijmy od poznania sposobów tworzenia nowej
zakładki. Najprostszy to wykonanie komendy :tabnew
w trybie normalnym.
Utworzony zostanie nowa zakładka z załadowanym jednym oknem i pustym buforem.
Możemy do niej wczytać plik i zabrać się za jego edycję. Wykonanie obu
czynności w jednym ruchu zawiera komenda :tabnew [FILE]
. Wygodnie o ile znamy
ścieżkę do pliku. Trzeci sposób to uruchomienie edytora komendą vim -p [FILE1]
[FILE2]
. Tym sposobem utworzymy nową sesję z każdym plikiem załadowanym w
indywidualnym oknie w osobnej zakładce. Najczęściej korzystam z opcji pierwszej
i wbudowanej przeglądarki plików. Takie są moje preferencje.
Domyślne ustawienia "ograniczają" ilość zakładek do 10. Moim zdaniem praca z
większą ilością jest mało efektywna, jednak jeśli lubisz mieć wszystko pod ręką
możesz skorzystać z opcji konfiguracyjnej set tabpagemax=[NUM]
zwiększając
liczbę zakładek. vim
automatycznie przypisuje każdej zakładce numer,
numerując je od strony lewej do prawej zaczynając od 0. Jeśli kolejność
zakładek ma dla Ciebie znaczenie komenda :tabm [NUM]
, przeniesie bieżącą
zakładkę do pozycji [NUM]. Pomijając [NUM] zakładkę przenosimy na koniec listy.
Tym sposobem możesz układać zakładki według własnych preferencji. W
rzeczywistości jedna zakładka zawiera zwykle więcej niż jedno okno, więc
ograniczenie do 10 jest moim zdaniem sensowne.
Dobra, utworzyliśmy sobie kilka zakładek i warto by umieć między nimi
nawigować. Przede wszystkim wiedzmy co mamy pod ręką. By podejrzeć listę
otwartych zakładek możemy podejrzeć włączając pasek zakładek set
showtabline=2
, lub wydając w trybie normalnym komendę :tabs
.
Do poruszania się między zakładkami wykorzystujemy :tabn
, lub gt
, by
przejść do następnej zakładki, oraz :tabp
, lub gT
by przejść do zakładki
poprzedniej.
Tworzenie zakładek możemy usprawnić według własnych preferencji poprzez
mapowanie klawiszy nam wygodnych. Wydając komendę :imap ;t
<ESC>:tabnew<CR>
, lub dodając ją do pliku .vimrc
, mamy możliwość
tworzenia nowych zakładek ilekroć wykonamy kombinację ;t
. Usunięcie
kombinacji wykonamy poleceniem :unmap! ;t
.
Zakładki to nie tylko osobne pola robocze. Możliwe jest jednoczesne wykonanie
komend w każdej dostępnej zakładce. Załóżmy, że chcemy zamienić słowo słowo X
na Y w każdej zakładce. Wykonamy to jedną komendą :tabdo
, a dokładniej
:tabdo %s/X/Y/g
. Nic prostszego.
Powyższy spis nie wyczerpuje w całości możliwości zakładek. Zachęcam Cię do
lektury :tab help
, by poszerzyć swoją wiedzę. Poniżej spis komend, których
wcześniej nie poruszałem, a mogą okazać się przydatne:
:tabedit [FILE]
edytuj plik [FILE] w zakładce,:tabfind [FILE]
utwórz nową zakładkę z załadowanym plikiem o nazwie [FILE]
znalezionym w PATH,:tabclose
zamknij bieżącą zakładkę,:tabclose [NUM]
zamknij zakładkę o numerze [NUM],:tabonly
zamknij wszystkie zakładki poza bieżącą,:tab split
skopiuj okna w aktualnym widoku, każde do osobnej zakładki,Ctr-w T
przenieś bieżące okno do nowej zakładki - działa, gdy zakładka ma
więcej niż jedno okno