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
Artykuł dodano 2020-02-27