środa, 2 listopada 2011

Vim - ciekawsze pluginy

Jako, że na co dzień używam Vima w pracy i w domu to zdążyłem już wyrobić sobie opinie na temat różnych pluginów. Najciekawsze i jednocześnie najczęściej przeze mnie korzystane omówię poniżej:
  • Conque Shell
    Wtyczka, która czyni z Vima terminal. Najlepiej omówić to na przykładzie. Ja używałem bardzo często tego pluginu do integracji z klientem MySQLa, tzn. dzięki Conque Shell uruchamiamy z Vima wybrany program a jego wyjście pojawi się nam w oknie. Na tym co wyświetli program będziemy mogli operować tak jak na każdym pliku tekstowym. Co więcej, w trybie wprowadzania komunikujemy się z programem. W moim przypadku bardzo często przeklejałem całe SQLe i wyświetlał mi się wynik w postaci ładnej tabelki wewnątrz Vima.

    Tutaj widać 3 uruchomione procesy wewnątrz Vima (bash,top,ipython):

    Obsługa:
    • :ConqueTermSplit
      Powoduje uruchomienie procesu w oknie poniżej.
    • :ConqueTermVSplit
      Powoduje uruchomienie procesu w oknie z lewej.
    • <F9>
      Przekleja zaznaczony tekst do procesu ostatnio uruchomionego.

    Przykład: :ConqueTermSplit bash
  • vcscommand
    Bardzo fajny skrypt do integracji z wieloma systemami kontroli wersji (konkretnie CVS, SVN, SVK, git, bzr, hg). Sprawia on, że edytując dany plik nie musimy się zastanawiać czy aby zobaczyć jego historię musimy wywołać svn log czy git log, gdyż ten skrypt sam to sprawdzi i wywoła za nas. Oczywiście posiada on znacznie więcej opcji, chociażby wyświetlanie zmian za pomocą mechanizmu Vima (:VCSVimDiff <commit>).

    Obsługa:
    • :VCSUpdate
      Odpowiada komendzie svn update.
    • :VCSCommit
      Otwiera okno na wpisanie komentarza. Po zamknięciu okna następuje commit.
    • :VCSDiff <commit>
      Wypisuje zmiany aktualnej wersji w stosunku do podanej w argumencie w taki sam sposób jak svn diff (czy tam git diff itp.).
    • :VCSVimDiff <commit>
      Tak samo jak powyżej tyle, że zmiany są wyświetlana za pomocą wewnętrznego mechanizmu Vima.
    • inne analogiczne polecenia takie jak: VCSLog, VCSBlame itd.
  • The NERD tree
    Nieco ciekawszy plugin do poruszania się po katalogach i plikach. Od razu dodam, bo może nie każdy wie, że próbując otworzyć katalog do edycji w Vimie wyświetla się nam jego skład i możemy się po nim poruszać, np. :e .

    Ten plugin oferuje nam dodatkowe możliwości jak np. zakładki, tworzenie i usuwanie plików oraz katalogów, filtrowanie zawartości katalogów, sortowanie itd.

    O obsłudze nie będę pisał, ponieważ ten plugin podmienia standardową funkcjonalność listowania katalogu. O reszcie można poczytać w pomocy.
  • grep
    Prosty skrypt służący do grepowania (wyszukiwania) po plikach. Wywołuje on program grep z różnymi opcjami rozszerzając jego funkcjonalność o filtry. Tym właśnie różni się on od wbudowanego polecenia vimgrep.

    Podstawowa obsługa:
    • :Grep <ciąg_do_wyszukania> <pliki>
      Wyszukuje w danym katalogu. Jako <pliki> można wstawić *
    • :RGrep <ciąg_do_wyszukania> <pliki>
      Tak samo tylko, że wyszukuje również w podkatalogach.
    • Filtry czyli w jakich plikach nie ma wyszukiwać można ustawić w pliku .vimrc:
      let Grep_Skip_Dirs = '.svn CVS'
      let Grep_Skip_Files = '*.bak *~ *.swp tags *.vim'
  • SQLUtilities
    Fajna wtyczka do formatowania zapytań. Oczywiście potrafi ona znacznie więcej ale w gruncie rzeczy formatowanie jest najciekawsze i najbardziej przydatne.

    Podstawowa obsługa:
    • \sfs
      Powoduje, że zaznaczony kod SQL zostaje ładnie sformatowany.
  • comments
    Również bardzo prosty skrypt do komentowania kodu. Rozpoznaje on automatycznie typ pliku i komentuje używając odpowiednich dla pliku symboli.

    Obsługa:
    • <Ctrl-C>
      Komentuje linię bądź zaznaczenie.
    • <Ctrl-X>
      Odkomentowuje linię bądź zaznaczenie.
  • TagBar
    Fantastyczny plugin wyświetlający nam listę funkcji, klas, typów itp. w bocznym panelu.

    Obsługa:
    • <F9>
      Wyświetla bądź chowa panel boczny.
  • neocomplcache
    Kolejny świetny skrypt. Umożliwia on podpowiadania "w locie" przy pisaniu jak obserwujemy w różnych edytorach. Ten plugin naprawdę polecam!

    Co do obsługi to nie będę się również rozpisywał, najlepiej ze strony skryptu przekopiować domyślne ustawienia do pliku .vimrc i potestować.

Brak komentarzy:

Prześlij komentarz