Ostatnio musiałem zbudować Vima ze źródła, aby użyć wtyczki wymagającej tłumaczenia Lua. Działa to dobrze na moim laptopie, ale mój komputer typu tower ma pewne problemy. Za każdym razem, gdy uruchamiam Vima, otrzymuję wiadomość:
Error detected while processing /home/XXXXXX/.vim/vimrc:
line 55:
E484: Can't open file /usr/share/vim/vim74/syntax/syntax.vim
Nic dziwnego, że Vim następnie nie wyróżnia składni i rzuca wiele innych błędów podczas edycji tekstu.
Po samodzielnym przeprowadzeniu badań mogę stwierdzić, że plik syntax.vim jest w rzeczywistości /usr/local/share/vim/vim74/syntax/syntax.vim
, w przeciwieństwie do wcześniej wspomnianego katalogu. Jak mogę to rozwiązać?
Więcej informacji
Vim został zainstalowany przy użyciu checkinstall
. Aby go skompilować, uruchomiłem polecenia:
./configure --with-features=huge --enable-cscope --enable-pythoninterp=yes --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu --enable-multibyte --enable-fontset --disable-gui --disable-netbeans --enable-luainterp=yes --with-lua-prefix=/usr/include/lua5.1 --enable-largefile
make VIMRUNTIMEDIR=/usr/share/vim/vim74
command-line
compiling
vim
Dillmo
źródło
źródło
sudo ln -s /usr/local/share/vim/vim74/syntax/syntax.vim /usr/share/vim/vim74/syntax/syntax.vim
sudo ln -s /usr/local/share/vim/vim74 /usr/share/vim/vim74
. Na razie pozostawiam pytanie otwarte, na wypadek, gdyby napotkałem inne powiązane problemy.Odpowiedzi:
Czy możesz po prostu zrobić dowiązanie symboliczne do tego, co według vima powinno być? to znaczy
(Jeśli ten katalog docelowy nie istnieje, połącz zamiast niego katalog wyższego poziomu).
źródło
sudo ln -s /usr/local/share/vim/vim74 /usr/share/vim/vim74
Zamiast tego polecenie zadziałało. W każdym razie dziękuję za pomoc.--prefix=/usr
do wywołania konfiguracji mogło zostać zainstalowane w prawidłowej lokalizacji.Problemem jest polecenie make.
Z pytania
syntax.vim
faktycznie znajduje się,/usr/local/share/vim/vim74
więc powinieneś zamiast tego użyć następujących.Zasadniczo
VIMRUNTIMEDIR
używana zmiennamake
powinna być spójna zeprefix
zmienną używaną przezconfigure
skrypt.źródło
make
prefix
. Jeśli podałem jedno lub oba, mam problemy. Tylko z tym,make
prefix
że mam problem z OP, z obydwoma dostałem błąd w kolorze SlateBlue. Nie sądzę, żebym próbował z VIMRUNTIME.W biegu bashowym:
Następnie w vim run:
(W moim przypadku vim szukał
/usr/share/vim/vim74
, podczas gdy nie było/usr/local/share/...
. Byłem na Ubuntu AWS EC2.)Także, to musiało być
VIMRUNTIME
, nieVIMRUNTIMEDIR
.Zauważ, że dla trwałości możesz umieścić powyższą
export
linię w osobistym pliku inicjalizacji powłoki, np~/.bash_profile
.źródło