Powiedzmy, że mam około stu niestandardowych mapowań iab
dla Javy i kilka innych mapowań dla Haskell, wtedy chciałbym podzielić je na różne pliki, aby było łatwiejsze w zarządzaniu. To, czego szukam, to stworzyć coś takiego:
~/.
├── .vimrc
└── .vim
└── custom
├── java.vim
└── haskell.vim
Gdzie może wyglądać .vimrc
import java
import haskell
Czy można coś takiego zrobić, czy po prostu komplikuję sprawy? Myślę, że staram się osiągnąć to, co robi się w LaTeX-u za pomocą \input
polecenia ...
~/.vim/after/ftplugin/$language.vim
?after/ftplugin
?~/.vim/after/ftplugin/java.vim
Zostanie on automatycznie uruchomiony przy każdym otwarciujava
pliku. To wydaje się być tym, czego chcesz.Odpowiedzi:
Szukasz ftplugins. To jest ich cel.
I nie zapomnij zdefiniować mapowań, ustawień, skrótów, poleceń ... jako lokalnych. W przeciwnym razie po załadowaniu będą pasożyty na innych buforach.
Oto kilka pełniejszych odpowiedzi:
źródło
Tak, polecenie vim, którego szukasz, to
:source
lub:runtime
wyciągnij jeruntimepath
.Na przykład możesz to zrobić w swoim
.vimrc
:zakładamy, że
~/.vim
jest w twoimruntimepath
(który jest domyślnie).Możesz także upuścić swoje skrypty w
~/.vim/plugin
katalogu; patrz wtyczka write w dokumentacji. Vim automatycznie uruchamia wszystkie skrypty w katalogu wtyczek.źródło
custom
, który nie jest całkiem wtyczkami, ale raczej plikami, które równie dobrze mogłyby się w nim znajdować.vimrc
?