Vim/Konfiguracja: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Sfp (dyskusja | edycje)
m lit.
Lethern (dyskusja | edycje)
poprawki. nawigacja
Linia 1:
Vim jest programem dającym bardzo duże możliwości konfiguracji i dostosowania go do swoich potrzeb i wymagań. Standardowo nasz edytor korzysta z plikpliku konfiguracyjnego, który jest wczytywanywczytywanego podczas uruchamiania programu., Plik tenktóry znajduje się zazwyczaj w katalogu domowym użytkownika. W zależności od systemu operacyjnego, z jakiego korzystamy, jego lokalizacja i nazwa mogą się różnić:
 
Unix $HOME/.vimrc
Linia 6:
Amiga s:.vimrc or $VIM/.vimrc
 
W większości przypadków będziemy edytować plik konfiguracyjny ręcznie, za pomocą naszego ulubionego edytora. OczywiścieW modyfikować możemy plik który już istniejeprzypadku, no tak ale co zrobić jak nie mamy takiegogdy pliku ?brakuje, Tomożemy proste, wystarczygo wygenerować go z poziomu programu. Mamy do dyspozycji kilka komend, które nam w tymtemu pomogąsłużą:
 
:mk nazwapliku (1)
Linia 15:
:mkvimrc! nazwapliku (6)
 
Powyższe komendy zapiszą wszystkie ustawienia ('':set'') i mapowane klawisze ('':map'') do pliku konfiguracyjnego o nazwie ''nazwapliku'', w atkualnejaktualnej lokalizacji. Oczywiście jako parametr można podać, zamiast samej nazwy pliku, można podać całą ścieżkę w której to chcemy zapisać ustawienia programu. Jeżeli nie podamy jako parametrżadnej nazwy pliku, ustawienia zostaną zapisane do domyślnej lokalizacji jako plik o domyślnej nazwie, które to zależą od danego systemu operacyjnego (patrz wyżej). Komendy (1),(2),(3) tworzą plik konfiguracyjny typu .exrc, czyli zgodny i charakterystyczny dla poprzednika Vim, Vi. Kolejne komendy, (4),(5),(6), tworzą plik typu .vimrc, czyli charakterystyczny i zgodny z Vim.
Wszystkie komendy próczpoza (3) i (6) utworzą plik tylkopod wtedywarunkiem, gdyże plikjeszcze nie będzieistnieje. istniał, dodanieDodanie ''!'', dojak komendyto jest w komendach (3) i (6), powoduje nadpisanie pliku, w przypadku, gdy już istnieje.
 
Opcje, które nie są zapisywane za pomocą tych funkcji:
:'columns', 'endofline',
:'fileformat', 'key', 'lines', 'modified', 'scroll', 'term', 'textmode',
:'ttyfast' i 'ttymouse' nie są włączone do zapisu, ponieważ zależą od terminala lub pliku.
Z
Zauważauważ, że opcje 'binary', 'paste' i 'readonly' są włączone, co nie zawsze jest pożądane.
 
Wszystkie ustawienia funkcji w programie, zarówno dotyczące wyglądu jak i jego działania, można wprowadzać w trybie ''Linii Komend'' ioraz w trybie ''Ex''.
Oczywiście wszystkie te opcjeOpcje wprowadzone do programu podczasw czasie jego działania będą obowiązywać tylko wdo czasiemomentu jego działaniawyłączenia, jeżelipo wyłączymy go wszystkie ustawieniaczym zostaną utracone. AbyZapobiec temu zapobiec musimy zapisaćmożemy zapisaćzapisując zmiany do pliku konfiguracyjnego.
 
== Zaczynamy ==
W tej części postaramy się wypolerować trochę działanie vimaVima, zmieniając jego plik konfiguracyjny. Będziemy się wzorować na działaniu większości edytorów.
 
W linuksie takiLinuksie plik taki powinien zostać utworzony w katalogu domowym użytkownika i mieć nazwę .vimrc. W windowsieWindowsie, nazywanatomiast, sięo onnazwie _vimrc (sprawdzić dokładnie). Linie pliku zaczynające się od cudzysłowia są komentarzami. Można także w połowie linii zacząć komentarz, alejednak nie zawsze zostanieten rozpoznanysposób jakobędzie komentarz.działał W(wówczas razieprzenosimy problemówkomentarz umieścićdo w nowjenowej linii). Poniższy tekst można bezpośrednio wkleić do pliku konfiguracyjnego vimaVima.
 
scriptencoding utf-8
Linia 175 ⟶ 176:
autocmd BufAdd * exe 'tablast | tabe "' . expand( "<afile") .'"'
 
== Zobacz także ==
[http://dotfiles.com/index.php?app_id=9 pliki konfiguracyjne nadesłane przez użytkowników na dotfiles.com]
 
Linia 188 ⟶ 189:
http://www.vi-improved.org/vimrc.php
 
== Do zrobienia ==
{{TODO|Wyjaśnienie mapowanie klawiszy, omap, noremap itp.
 
http://ianua.initd.org/vimit/vim63/html/map.html#map-overview
 
:omap (Operator-pending)
:help :omap (Operator-pending)
:omap (:help Operator-pending)
 
<rofro> what's Operator-pending mode for mapping?
 
Linia 204 ⟶ 208:
:he text-objects
you can't use omap to implement new text objects
}}
 
<noinclude>
{{Nawigacja|Vim|
[[../Wstęp/]]|
[[../Podstawy pracy/]]|
}}</noinclude>