Jak mogę „pozyskać” coś z mojego pliku .vimrc?


99

Ostatnio pracowałem nad rozszerzeniem mojego vim-foo i natknąłem się na kilka wtyczek ( na przykład autotag.vim ), które wymagają, aby były one „źródłowe” w moim pliku .vimrc. Co to dokładnie oznacza i jak mam to zrobić?

Odpowiedzi:


119

Pozyskiwanie pliku to jego „wykonywanie”. Zasadniczo każda linia pliku jest traktowana jako polecenie. Jego pozyskiwanie jest tym samym, co wpisywanie każdego polecenia w kolejności. Źródłem źródła jest polecenie :source(zwykle skrócone do :so).

Więc jeśli pozyskujesz myStuff.vim

:so myStuff.vim

i jeśli myStuff.vimzawiera te wiersze

set xx iI just intersted this<C-]>
set yy bbbb4dw

To tak samo, jakbyś wpisał te polecenia w Vimie

:set xx iI just intersted this<C-]>
:set yy bbbb4dw

Jedynym domyślnie pobieranym plikiem jest .vimrc(w systemie _vimrcWindows), więc jest to miejsce, w którym możesz przechowywać wszystkie polecenia, których używasz do konfigurowania Vima za każdym razem.

Ciekawostką jest fakt, że skoro plik źródłowy to tylko seria poleceń, a pozyskiwanie to polecenie, możesz pobierać pliki ze swoich plików źródłowych. Więc wtyczek użyć za każdym razem mogą być pozyskiwane po uruchomieniu Vima przez dodanie odpowiedniego wiersza do .vimrctakiego

 so myPlugin.vim

2
Co robi so!? Uruchomiłem go, ponieważ myślałem, że wymusi to na mnie, .vimrci zaczął przechodzić przez plik, który edytuję (mój .vimrc), i wciskał bzdury w dziwny sposób i działo się wiele dziwnych rzeczy.
Alexej Magura

2
Wykonuje pliki w trybie „normalnym” (tj. Co by się stało, gdybyś nie dodał „:” na początku).
Andrew Miner

44

Pliki w katalogu .vim / plugin są pobierane (ładowane) automatycznie.


7
Ponadto ich nazwa pliku musi kończyć się na .vim
flawyte

tak, ale tylko raz na start, prawda? czy dzieje się tak, gdy uruchamiasz terminal / powershell, czy gdy używasz polecenia vim do edycji jakiegoś pliku?
3pitt

@ 3pitt AFAIK, to za każdym razem, gdy jest uruchamiane polecenie vim.
Thaddaeus Markle

12

Zawsze jest polecenie : source file . Zwykle piszę, .vimrcże zawiera niestandardowe polecenia, a nie dla aplikacji konsolowej, a następnie .gvimrczawiera dodatkowe gadżety, które są odpowiednie dla wersji okienkowej. Moi .gvimrcrozpoczyna się source $HOME/.vimrcodebrać wszystko z wersji konsolowej przed dodaniem w nowym materiałem.


Przynajmniej moje wersje vima, wszystkie źródła .vimrc przez cały czas. Czy na pewno potrzebujesz źródła .vimrc?
Dav Clark

@DavClark: wygląda na to, że możesz mieć rację. Robię to od dłuższego czasu i nigdy się nad tym nie zastanawiałem. Plik pomocy zdecydowanie stwierdza, że ​​nie jest to konieczne ... hmmm.
D.Shawley

6

Zwykle są dwa pliki vimrc, jeden to _vimrc, a drugi _gvimrc (w pierwszym są pliki dla vima, aw drugim dla gvim - elementy graficzne) - chociaż większość ludzi, których znam, po prostu umieściła wszystko w _vimrc.

Dobrą praktyką jest trzymanie wszystkich dodatkowych plików (wtyczek, schematów kolorów, fragmentów ...) w oddzielnym (własnym) katalogu vimfiles (który możesz zabrać ze sobą).

Jeśli zrobisz

:help vimfiles

vim poinformuje, że katalog vimfiles powinien się znajdować. To zależy w pewnym stopniu od platformy (win, unix). W systemie Windows zwykle znajduje się w folderze użytkownika (dokumenty i ustawienia, a następnie użytkownik ...). W katalogu vimfiles znajduje się kilka podkatalogów. Wśród nich jest podkatalog „plugin”. Wtyczki umieszczone w tym katalogu zostaną załadowane automatycznie (także wtyczki umieszczone w podkatalogach "plugin"). Jeśli nie chcesz ładować go automatycznie, po prostu umieść go w swoim "vimfiles" lub jakimś innym katalogu i

:so plugin_name.vim (with the appropriate path)
(you can use the $vim, $vimfiles, and $home as shortcuts when defining path to plugin)
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.