VIM – skróty klawiszowe

vimNa blogu parę razy pisałem artykuły, które są pomocne dla początkujących użytkowników linuxa (Podstawowe komendy SSH, Backup plików przez rsync, Instalacja PowerDNS), ale prawda jest też taka, że część tych wpisów jakie umieszczam na blogu jest także i mi potrzebna – w ten sposób w jednym miejscu mam często używane polecenia i łatwiej mi do nich wrócić, odnaleźć się w gąszczu informacji z internecie.

Podobnie będzie także i z tym artykułem, do którego zostałem natchniony dzięki dobrze opisanemu artykułowi w Linux+ na stronach 16-21. Artykuł ten nazwany „Vim – konkurent prawie doskonały” pokazuje możliwości jakie daje nam edytor vim w porównaniu do jego konkurenta – emacs.

Ogólnie z tego co zauważyłem to emacs używane jest przez osoby „starszej daty” – wielu wykładowców na mojej uczelni go używa. Vim stał się popularny przez nową/młodą generację linuxowców – powstał on przecież w 1991 roku.
Może sam vim nie jest instalowany na każdym z serwerów, ale jego bazowa wersja (vi) już tak. A o emacs’ie nie mogę powiedzieć, że jest popularny – na żadnym z serwerów z jakich korzystam (mój, HostNine, cal.pl) nie jest zainstalowany… .

Vi daje mi wszystko to co jest mi potrzebne i według mnie jego największym konkurentem jest edytor nano. No, ale skupmy się na samym VIM

Najczęściej używane skróty klawiszowe:

[Esc] – przełącza program w tryb poleceń
[I] / [Insert] – tryb wpisywania tekstów
[W] – przeskakuje o jedno słowo do przodu
[B] – przeskakuje o jedno słowo wstecz
[D]+[D] – kasuje cały wiersz (podwójne naciśnięcie klawisza [D])
[U] – cofa wprowadzone zmiany
[Ctrl]+[R] – Ponawia cofnięte zmiany
[Y] – kopiuje zaznaczenie
[P] – wkleja zawartość schowka

W trybie poleceń:
:w – zapisuje zmiany w pliku
:q – wychodzi z programu
! – wymusze wprowadzone polecenie (np :q! – wymusza wyjście z programu, nawet jak plik nie został zapiany)
/wyraz – wyszukuje „wyraz” w otwartym pliku
[N] – przechodzi do kolejnego odnalezionego wyrazu
[Shift]+[N] – przechodzi do wcześniej znalezionego wyrazu
:8,10 s/wyraz/nowy/g – zamienia „wyraz” na „nowy” w liniach od 8 do 10. /g oznacza, że zamieni każde wystąpienie „wyraz” w tych liniach.

vim php html cpp

Jak widać VIM dzięki funkcji kolorowania składni można stosować do wszystkich celów – HTML, PHP, C++.
Gorąco polecam wiec zapoznać się z artykułem w najnowszym wydaniu Linux+.

  • http://mescam.pl Mescam

    Nano rządzi. Do dziś nie wiem jak się profesjonalnie wychodzi z vi(m) ^^

    • wpapa

      wychodzi się poprzez komendę:q lub :wq

  • http://www.BlueForum.pl BlueMan

    [Esc] i potem wpisujesz „:wq” – zapisuje plik i wychodzi z niego.
    Ctrl+C nie jest dobrym wyjściem xD

    Nano nie jest najgorsze, korzystam więc z części funkcjonalności nano i vim :P

  • thalcave

    Nie bardzo wiem jak można porównywać VIMa do Nano… ten pierwszy to prawdziwy kombajn! A Nano mi przypomina Notatnik Windowsowy :)
    Inne przydatne skróty: [X] – wycina zaznaczony tekst
    [V] – wchodzi w tryb wizualizacji, gdzie możliwe jest zaznaczenie fragmentu tekstu
    [0] – kursor przechodzi na początek lini
    [$] – kursor przechodzi na koniec lini
    powyższe litery-skróty mogą być wielkie lub małe wg. uznania te z kolei są istotne:
    [G] – przejście na koniec pliku
    [gg] – przejście na początek pliku
    [5G] lub [5gg] – przejście do 5 linii pliku
    pamiętać należy też o tym, że możemy łączyć te komendy np.
    [D5W] – kasuje pięc kolejnych wyrazów

    :r plik wstawia w danym miejscu zawartość pliku plik


    :8,10 s/wyraz/nowy/g

    można też użyć zamiast 8,10 % oznaczającego cały dokument lub zaznaczyć odpowiedni fragment tekstu (w trybie wizualizacji)
    do g można dopisać też i, dzięki czemu oleje wielkość liter :)

  • thalcave

    Przydatna też jest opcja set number – na początku każdej linii będzie jej numer