Komputery, oprogramowanie, internet i okolice
Kategorie: Wszystkie | Aplikacje | Blog | Dev | Hacks | Linux | Subversion | Varia | gry | khoomei | książki | mjuzik
RSS
poniedziałek, 28 marca 2011

Jak każdy pewnie wie w VIMie dostępne są taby (czy też karty), jednak działają trochę inaczej niż można by się spodziewać. Nie są powiązane z otwartymi plikami (czy raczej buforami), a z określonym layoutem otwartych okien. Szczerze powiedziawszy jakoś nigdy się do nich specjalnie nie przekonałem. Na szczęście jest dostępna wtyczka, która działa dokładnie tak jak można by oczekiwać.

MiniBufExplorer - minibufexpl.vim

VIM plugin - MiniBufExplorer

Mini Buffer Explorer pokazuje listę otwartych buforów w formie listy tabów (kart) znanej z innych programów i pozwala na łatwe poruszanie się pomiędzy nimi.

Instalacja

Oryginalny plugin jest już od dawna nie rozwijany. Na szczęście dostępna jest nowa, aktywnie rozwijana wersja - MiniBufExplorer 6.4 wtyczki, która zawiera poprawki i kilka nowych funkcji. Ściągnięty plik należy umieścić w folderze ~/.vim/plugin/

Konfiguracja i użytkowanie

By otworzyć okno MiniBufExplorera używamy mbe (domyślnie \mbe), lub przełączamy się do jego okna. Następnie za pomocą (Shift)Tab, lub h i l przełączamy się pomiędzy buforami. o, e i Enter otwierają bufor w ostatnio aktywnym oknie, s otwiera bufor dzieląc okno w poziomie, v dzieląc w pionie. d służy do zamknięcia wybranego buforu.

Domyślnie lista buforów wyświetlana jest w formie poziomej linii, jeśli ktoś chciałby wyświetlać je w pionie wystarczy ustawić szerokość okna.

let g:miniBufExplVSplit = 20

Możemy również ustawić kiedy MiniBufExplorer ma się pojawiać (domyślnie gdy otwartych jest więcej niż 1 plik). By okno z listą buforów było otwarte przez cały czas ustawiamy następującą zmienną:

let g:miniBufExplorerMoreThanOne=1

Kolejnymi ciekawymi ustawieniami niezmiernie ułatwiającymi pracę z wieloma oknami na raz są:

let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplMapCTabSwitchWindows = 1
let g:miniBufExplUseSingleClick = 1

Pozwalające odpowiednio na: przełączanie się pomiędzy oknami za pomocą Ctrl + hjkl, Ctrl + strzałki, przełączanie buforów za pomocą Ctrl-Tab, przełączanie okien za pomocą Ctrl-Tab, otwieranie buforu za pomocą pojedynczego kliknięcia.

Jeśli używamy wtyczek typu NERDTree, czy TagList dobrze jest ustawić poniższą zmienną by nie otwierać buforów w oknie dodatkowego eksploratora.

let g:miniBufExplModSelTarget = 1

Na koniec jeszcze małe ostrzeżenie o denerwującym błędzie. W używanej przeze mnie wersji 6.4.0 próba wyjścia z VIMa, gdy otwarte jest tylko jedno okno plus widoczna jest lista buforów (czy to z użyciem :q, czy ZQ) powoduje jedynie przeładowanie zawartości okna. Należy wtedy użyć :qa lub ręcznie zamknąć MiniBufExploerara za pomocą mbc.

Werdykt

Jest to jeden z pluginów, bez których nie wyobrażam sobie normalnej pracy. Wystarczy jedno spojrzenie i już widać jakie pliki są aktualnie otwarte i które z nich zawierają niezapisane zmiany. Zwłaszcza jeśli ma się ustawione set hidden.

18:36, kosciak1 , Linux
Link Dodaj komentarz »
niedziela, 27 marca 2011

Ależ się porobiło... Zastój to mało powiedziane. Może i blog jeszcze nie umarł, ale powoli zaczął nieprzyjemnie pachnieć. Cóż, czasu coraz mniej, a znalezienie energii gdy za oknem ciemno, zimno i nieprzyjemnie proste nie jest. Na całe szczęście wreszcie nadeszła upragniona wiosna! Tak, wystarczy kilka promyków słońca by powrócił pozytywny nastrój, energia i chęć pisania na blogu!

VIM plugin dnia - nowy cykl

O mojej miłości do VIMa już tu wspominałem, ale poza notką o doborze schematu kolorów i wtyczce CSApprox i tricku z przemapowaniem ESC i CapsLocka za wiele o nim na blogu nie pisałem. Pora więc nadrobić zaległości.

Podczas wiosennych porządków w plikach konfiguracyjnych zauważyłem, że zebrało się już kilkanaście różnych pluginów do VIMa. Bez części z nich nie wyobrażam już sobie efektywnej pracy. Części zupełnie nie kojarzę - sam już nie wiem, czy ich nie używam, czy też nawet nie zdaję sobie sprawy, że używana funkcja to właśnie efekt działania wtyczki. W dodatku co najmniej drugie tyle czeka w zakładkach na sprawdzenie.

Postanowiłem więc przyjrzeć się każdemu pluginowi z osobna, zaktualizować jeśli dostępna jest nowa wersja i napisać o nim kilka zdań.

Stay tuned, start już jutro!

21:38, kosciak1 , Linux
Link Komentarze (4) »
Spis Treści
Kanały RSS
Add to Google
Add to Netvibes