VIM(1)

NAZWA
vim - udoskonalony vi, tekstowy edytor programistów

SKŁADNIA
vim [opcje] [plik ..]
vim [opcje] -
vim [opcje] -t tag
vim [opcje] -q [plik_z_błędami]

ex
view
gvim gview
rvim rview rgvim rgview

OPIS
vim jest edytorem tekstów, kompatybilnym z vi i może być używany do edycji dowolnego tekstu ASCII. Jest szczególnie użyteczny podczas edycji programów.

vim ma wiele ulepszeń w stosunku do vi: wielopoziomowe undo, możliwość pracy z wieloma oknami i buforami, podświetlanie składni, edycja linii komend, dokańczanie nazw plików, pomoc on-line, itp. Podsumowanie różnic między vim a vi można uzyskać, wpisując ":help vi_diff.txt".

Podczas pracy z edytorem vim pomoc można uzyskać z systemu pomocy on-line za pomocą polecenia "help". Zobacz poniżej, sekcja POMOC ON-LINE.

Najczęściej vim jest używany do edycji pojedynczego pliku i wywoływany:

    vim plik

Ogólniej vim jest uruchamiany tak:

    vim [opcje] [lista_plików]

Jeżeli lista_plików nie jest podana, to edytor uruchomi się z pustym buforem. W przeciwnym razie dokładnie jedna z poniższych czterech opcji może być użyta do wyboru jednego lub większej liczby plików do edycji.

plik ...
    Lista plików. Pierwszy z nich będzie aktualnym plikiem, przeczytanym do bufora. Kursor ustawi się w pierwszej linii bufora. Poleceniem ":next" można przejść do następnych plików. Aby edytować plik, którego nazwa zaczyna się od myślnika, należy poprzedzić listę plików przez "--".

-   Plik do edycji jest czytany ze standardowego wejścia (stdin). Polecenia są brane ze standardowego wyjścia błędów (stderr), które powinno być terminalem.

-t {tag}
    Plik do edycji i początkowa pozycja kursora zależą od wzorca "tag", swego rodzaju etykiety, do której należy przeskoczyć. Wzorzec {tag} jest szukany pliku wzorców, po znalezieniu wzorca skojarzony plik zostanie otwarty do edycji, a skojarzone ze wzorcem polecenie zostanie wykonane. Najczęściej ta funkcjonalność jest pomocna przy pisaniu programów w C; wtedy {tag} powinien być nazwą funkcji. Wynik jest taki, że zostanie otwarty plik zawierający tę funkcję, a kursor ustawi się na początku tej funkcji. Zobacz ":help tag-commands".

-q [plik_z_błędami]
    Uruchamia edytor w trybie quickFix. Wczytuje plik [plik_z_błędami] i wyświetla pierwszy błąd. Jeżeli nie został podany argument [plik_z_błędami], nazwa pliku jest brana z wartości opcji 'errorfile' (domyślnie "AztecC.Err" na Amidze, "errors.vim" w innych systemach). Kolejne błędy można wyświetlić za pomocą polecenia ":cn". Patrz ":help quickfix".

Zachowanie vima zależy od nazwy pod jaką wywołano edytor (plik wykonywalny może być wciąż tym samym plikiem).

vim Normalne uruchomienie, żadnych zmian, wszystko ma wartości domyślne.

ex  Uruchamia edytor w trybie Ex. Przejście do normalnego trybu za pomocą polecenia ":vi". Tak samo działa argument linii poleceń "-e".

view
    Uruchamia edytor w trybie tylko do odczytu, bez możliwości zapisywania plików. Tak samo działa argument linii poleceń "-R".

gvim gview
    Wersja okienkowa (GUI), uruchamia nowe okno. Tak samo działa argument linii poleceń "-g".

rvim rview rgvim rgview
    Jak powyższe, ale z ograniczeniami. Nie będzie możliwe uruchomienie powłoki z poziomu edytora ani zawieszenie (suspend) vima. Tak samo działa argument linii poleceń "-Z".

OPCJE
Opcje mogą być podane w jakimkolwiek porządku, przed nazwami plików lub za nimi. Opcje nie wymagające argumentu mogą być połączone za jednym znakiem myślnika.

+[num]
    Kursor będzie ustawiony w linii "num" pierwszego pliki. Jeżeli nie podano wartości "num", kursor ustawi się w ostatniej linii.

+/{pat}
    Kursor będzie ustawiony na pierwszym wystąpieniu wzorca {pat} w pierwszym pliku. Zobacz ":help search-pattern", aby wyświetlić listę możliwych wzorców wyszukiwania.

+{polecenia}

-c {polecenia}
    {polecenia} zostaną wykonane po przeczytaniu pierwszego pliku. {polecenia} są interpretowane jako polecenia Ex. Jeżeli ciąg {polecenia} zawiera spacje, musi być ujęty w cudzysłowy (w zależności od używanej powłoki). Przykład: vim "+set si" main.c
    Uwaga: Można użyć do 10 poleceń "+" lub "-c".

--cmd {polecenie}
    Jak "-c", ale polecenie będzie wykonane przed przeczytaniem plików vimrc. Można użyć do 10 takich poleceń, niezależnie od poleceń "-c".

-b  Tryb binarny. Zostanie ustawionych kilka opcji, które uczynią możliwym edytowanie pliku binarnego lub wykonywalnego.

-C  Kompatybilność. Ustawia opcję 'compatible'. vim będzie się zachowywał prawie tak jak oryginalny vi, nawet jeżeli istnieje plik .vimrc.

-d  Uruchamia edytor w trybie porównywania. Argumentami tej opcji powinny być nazwy dwu lub trzech plików. vim otworzy wszystkie te pliki i pokaże różnice między nimi. Działa tak jak vimdiff(1).

-d {urządzenie}
    Otwiera {urządzenie} do używania jako terminal. Tylko na Amidze. Przykład: "-d con:20/30/600/150".

-e  Uruchamia vima w trybie Ex, tak samo jak wtedy, gdy plik wykonywalny nazywa się "ex".

-f  Pierwszoplanowy. W wersji GUI vim nie odłączy się od powłoki na której był uruchomiony. Na Amidze, vim nie zostanie zrestartowany, by otworzyć nowe okno. Ta opcja powinna być użyta, gdy vim jest wywołany przez program, który będzie czekać na zakończenie edycji (na przykład: mail). Na Amidze polecenia ":sh" and ":!" nie będą działać.

-F  Jeżeli vim został skompilowany ze wsparciem dla FKMAP i edycji plików zorientowanych w kierunku z prawa na lewo oraz mapowania klawiatury Farsim, ta opcja powoduje uruchomienie vima w trybie Farsi, tzn. są ustawione opcje 'fkmap' i 'rightleft'. W przeciwnym wypadku pojawia się informacja o błędzie i vim kończy działanie z błędem.

-g  Jeżeli vim został skompilowany ze wsparciem dla GUI (graficznego interfejsu użytkownika), ta opcja włącza GUI. W przeciwnym wypadku, vim wypisuje komunikat o błędzie i kończy działanie.

-h  Wyświetla krótką informację o argumentach i opcjach linii poleceń, a następnie kończy działanie vima.

-H  Jeżeli vim został skompilowany z opcją RIGHTLEFT, umożliwiająca edycję tekstów w kierunku z prawa na lewo, i hebrajskim mapowaniem klawiaturym, ta opcja uruchamia vima w trybie "hebrajskim", tzn. są włączone opcje 'hkmap' i 'rightleft'. W przeciwnym wypadku, vim wypisuje komunikat o błędzie i kończy działanie.

-i {viminfo}
    Kiedy włączone jest używanie plików viminfo, ta opcja ustawia nazwę pliku viminfo, zamiast domyślnej nazwy "~/.viminfo". Za pomocą tej opcji można również wyłączyć używanie pliku viminfo, podając nazwę "NONE".

-L  Jak -r.

-l  Tryb lispu. Włącza opcje 'lisp' i 'showmatch'.

-m  Uniemożliwia modyfikowanie plików. Wyłącza opcję 'write', tak że zapis do plików nie będzie możliwy.

-N  Tryb niekompatybilności z vi. Wyłącza opcję 'compatible'. Vim będzie się zachowywał lepiej, ale mniej kompatybilnie z vi, nawet jeśli plik .vimrc ne istnieje.

-n  Nie używa pliku swap. Nie będzie możliwego odtworzenie po awarii systemu. Wygodne, jeżeli chce się edytować plik na bardzo wolnym urządzeniu (np. dyskietka). Można to także zrobić za pomocą ":set uc=0". Można również wyłączyć, używając ":set uc=200".

-o[N]
    Otwiera N okien. Jeżeli nie podano N, otwiera nowe okno dla każdego pliku.

-R  Tryb "tylko do odczytu". Ustawia opcję 'readonly'. Pozwala na edytowanie bufora pliku, ale zapobiega przypadkowemu nadpisaniu pliku. Aby nadpisać plik, należy dodać znak wykrzyknika do polecenia ex, na przykład w ":w!". Opcja -R włącza opcję -n (patrz niżej). Opcję 'readonly' można wyłączyć używając ":set noro". Patrz ":help 'readonly'".

-r  Wyświetla listę plików wymiany wraz z informacją, jak ich użyć w celu odzyskania danych.

-r {file}
    Tryb odzyskiwania danych. Do odzyskania danych z przerwanej sesji edytowania zostanie użyty plik wymiany. Plikiem wymiany jest plik mający tę samą nazwą co plik tekstowy z dołączonym przyrostkiem ".swp". Patrz ":help recovery".

-s  Tryb cichy. Tylko wtedy gdy edytor został uruchomiony jako "ex" albo gdy opcja "-e" została podana przed opcją "-s".

-s {scriptin}
    Czytany jest plik {scriptin}. Znaki w tym pliku są interpretowane, jakby były wprowadzone z klawiatury. To samo można uzyskać poleceniem ":source! {scriptin}". Jeżeli przed zakończeniem sesji edytora zostanie napotkany koniec tego pliku, następne znaki są czytane z klawiatury.

-T {terminal}
    Ustawia w vimie nazwę używanego terminala. Wymagane tylko wtedy, gdy nie automatyczne rozpoznawanie terminala nie działa. Nazwa terminala powinna być znana vimowi (builtin) albo zdefiniowana w plikach termcap lub terminfo.

-u {vimrc}
    Używa poleceń z pliku {vimrc} w celu inicjalizacji edytora. Pozostałe pliki inicjalizacyjne są opuszczane. Używaj tej opcji to edytowania specjalnych rodzajów plików. Opcji tej można również użyć w celu opuszczenia jakichkolwiek inicjalizacji, podając "NONE" jako nazwę pliku. Szczegóły można uzyskać poleceniem ":help initialization" w vimie.

-U {gvimrc}
    Używa poleceń z pliku {gvimrc} w celu inicjalizacji GUI. Pozostałe pliki inicjalizacyjne GUI są opuszczane. Opcji tej można również użyć w celu opuszczenia jakichkolwiek inicjalizacji, podając "NONE" jako nazwę pliku. Szczegóły można uzyskać poleceniem ":help gui-init" w vimie.

-V  Szczegółowy. Wyświetla informacje o wykonywanych plikach oraz o czytaniu i zapisywaniu pliku viminfo.

-v  Uruchamia vima w trybie vi, tak jakby plik wykonywalny nazywał się "vi". Ta opcja ma skutek tylko wtedy, gdy plik wykonywalny nazywa się "ex".

-w {scriptout}
    Wszystkie wprowadzane znaki są zapisywane w pliku {scriptout} aż do zakończenia sesji vima. Opcja ta jest przydatna, gdy chcemy utworzyć skrypt, który będzie użyty z "vim -s" lub ":source!". Jeżeli plik {scriptout} istnieje, wprowadzane znaki są dopisywane do niego.

-W {scriptout}
    Jak -w, ale istniejący plik zostanie nadpisany.

-x  Używa kodowania podczas zapisu plików. Poprosi użytkownika o podanie klucza kodowania.

-Z  Tryb zaostrzony. Działa tak, jakby nazwa pliku wykonywalnego zaczynała się od "r".

--  Oznacza koniec opcji. Następne argumenty będą uważane za nazwy plików. Może to być użyteczne przy edycji pliku, którego nazwa zaczyna się od znaku '-'.

--help
    Wyświetla komunikat pomocy i kończy działanie, tak samo jak opcja "-h".

--remote
    Łączy się z serwerem vima i używa go do edycji plików podanych w kolejnych argumentach.

--serverlist
    Lista wszystkich znalezionych serwerów vima.

--servername {nazwa}
    Używa {nazwy} jako nazwy serwera.

--serversend {klucze}
    Łączy się z serwerem vima i wysyła do niego {klucze}.

--version
    Wypisuje informacje o wersji i kończy działanie edytora.

POMOC ON-LINE
Aby rozpocząć napisz ":help" w vimie. Aby uzyskać pomoc dotyczącą konkretnego tematu, napisz ":help temat". Na przykład: ":help ZZ" wyświetla pomoc do polecenia "ZZ". Używając klawiszy <Tab> i CTRL-D, można dokańczać tematy (":help cmdline-completion"). Tagi umożliwiają szybkie przenoszenie się z jednego miejsca w inne (rodzaj hyperlinków, zobacz ":help"). Pliki z dokumentacją również mogą być wyświetlane w ten sposób, na przykład ":help syntax.txt".

PLIKI

/usr/share/vim/vim60/doc/*.txt
    Dokumentacja vima Użyj ":help doc-file-list", żeby przejrzeć całą listę plików.

/usr/share/vim/vim60/doc/tags
    Plik z tagami używany do wyszukiwania informacji w plikach z dokumentacją.

/usr/share/vim/vim60/syntax/syntax.vim
    Systemowe polecenia inicjalizujące obsługę składni.

/usr/share/vim/vim60/syntax/*.vim
    Pliki ze składnią różnych języków.

/usr/share/vim/vimrc
    Systemowy plik z poleceniami inicjalizującymi vima.

/usr/share/vim/gvimrc
    Systemowy plik z poleceniami inicjalizującymi gvima.

/usr/share/vim/vim60/optwin.vim
    Skrypt używany przez polecenie ":options", ładny sposób na przejrzenie i ustawienie opcji.

/usr/share/vim/vim60/menu.vim
    Polecenia inicjalizujące menu programu gvim.

/usr/share/vim/vim60/bugreport.vim
    Skrypt do generowania zgłoszenia o błędzie. Zobacz ":help bugs".

/usr/share/vim/vim60/filetype.vim
    Skrypt służący do wykrywania typu pliku na podstawie jego nazwy. Patrz ":help 'filetype'".

/usr/share/vim/vim60/scripts.vim
    Skrypt służący do wykrywania typu pliku na podstawie jego zawartości. Patrz ":help 'filetype'".

/usr/share/vim/vim60/*.ps
    Pliki używane do drukowania postscriptowego.

Najświeższych informacji szukaj na stronie domowej vima:
<URL:http://www.vim.org/>

ZOBACZ TAKŻE
vimtutor(1)

AUTOR
Większość vima została napisana przez Brama Moolenaara, jednakże z dużą pomocą innych ludzi. Zobacz ":help credits" w edytorze vim.
vim jest oparty na Stevie, nad którym pracowali: Tim Thompson, Tony Andrews i G.R. (Fred) Walter. Aczkolwiek pozostały tylko niewielkie ilości oryginalnego kodu.

BŁĘDY
Prawdopodobnie są. ":help todo" wyświetla listę znanych problemów

Zauważ, że duża liczba rzeczy, które mogłyby być uważane za błędy, jest w rzeczywistości spowodowana zbyt wierną reprodukcją zachowania edytora vi. I jeżeli uważasz, że inne rzeczy są błędami "ponieważ vi robi to inaczej", powinieneś dokładniej poczytać plik vi_diff.txt (:help vi_diff podczas pracy z vimem). Zobacz także na opcje 'compatible' oraz 'cpoptions'.