Недавно мне нужно было собрать Vim из исходного кода, чтобы использовать плагин, который требовал интерпретации Lua. На моем ноутбуке это работало нормально, но у моего башенного компьютера есть некоторые проблемы. Каждый раз, когда я запускаю Vim, я получаю сообщение:
Error detected while processing /home/XXXXXX/.vim/vimrc:
line 55:
E484: Can't open file /usr/share/vim/vim74/syntax/syntax.vim
Не удивительно, что Vim затем не выделяет синтаксис и выдает кучу других ошибок при редактировании текста.
Проведя некоторые исследования самостоятельно, я могу сказать, что syntax.vim на самом деле находится в /usr/local/share/vim/vim74/syntax/syntax.vim
отличие от ранее упомянутого каталога. Как я могу решить это?
Больше информации
Vim был установлен с помощью checkinstall
. Чтобы скомпилировать его, я запустил команды:
./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
источник
источник
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
. Я оставляю вопрос открытым, на случай, если у меня возникнут другие связанные с этим вопросы.Ответы:
Можете ли вы просто сделать символическую ссылку, где Vim считает, что это должно быть? т.е.
(Если этот целевой каталог не существует, вместо этого свяжите каталог более высокого уровня.)
источник
sudo ln -s /usr/local/share/vim/vim74 /usr/share/vim/vim74
сработала вместо. В любом случае спасибо за вашу помощь.--prefix=/usr
к вызову конфигурации может быть установлено в правильное местоположение сразу.Проблема в команде make.
Из вопроса,
syntax.vim
на самом деле находится в,/usr/local/share/vim/vim74
так что вы должны вместо этого использовать следующее.Как правило, используемая
VIMRUNTIMEDIR
переменнаяmake
должна соответствоватьprefix
переменной, используемойconfigure
сценарием.источник
make
prefix
. Если я предоставил один или оба, у меня возникли проблемы. Только уmake
prefix
меня возникла проблема с OP, с обоими я получил ошибку с цветом SlateBlue. Я не верю, что я пытался только с VIMRUNTIME.В bash запустить:
Затем в VIM запустить:
(В моем случае vim искал
/usr/share/vim/vim74
, тогда как его не было/usr/local/share/...
. Я был на AWS EC2 Ubuntu.)Кроме того, это должно было быть
VIMRUNTIME
, нетVIMRUNTIMEDIR
.Обратите внимание, что для постоянства вы можете поместить вышеуказанную
export
строку в личный файл инициализации вашей оболочки, например~/.bash_profile
.источник