Vim이 syntax.vim을 찾을 수 없습니다


13

최근에 Lua 해석이 필요한 플러그인을 사용하려면 소스에서 Vim을 빌드해야했습니다. 이것은 내 노트북에서 잘 작동했지만 타워 컴퓨터에 문제가 있습니다. Vim을 실행할 때마다 메시지가 나타납니다.

Error detected while processing /home/XXXXXX/.vim/vimrc:
line   55:
E484: Can't open file /usr/share/vim/vim74/syntax/syntax.vim

Vim이 구문을 강조하지 못하고 텍스트를 편집 할 때 다른 오류가 많이 발생합니다.

직접 조사한 결과 /usr/local/share/vim/vim74/syntax/syntax.vim, 위에 언급 된 디렉토리와는 달리 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

vim이 생각하는 곳에 심볼릭 링크를 만들 수 있습니까? 즉sudo ln -s /usr/local/share/vim/vim74/syntax/syntax.vim /usr/share/vim/vim74/syntax/syntax.vim
Sparhawk

이것은 효과가있는 것 같습니다 : sudo ln -s /usr/local/share/vim/vim74 /usr/share/vim/vim74. 다른 관련 문제가 발생할 수 있으므로 지금은 질문을 열어 두십시오.
Dillmo

별도의 문제가있는 경우 새로운 질문을하고 싶을 것입니다. (이 솔루션이 전혀 효과가 없다면 다른 곳에서는 부분적으로 실패 할 수있는 방법을 상상할 수 없습니다.) 어쨌든, 나는 그것을 답으로 작성했습니다…
Sparhawk

답변:


5

vim이 생각하는 곳에 심볼릭 링크를 만들 수 있습니까? 즉

sudo ln -s /usr/local/share/vim/vim74/syntax/syntax.vim /usr/share/vim/vim74/syntax/syntax.vim

(이 대상 디렉토리가 존재하지 않으면 대신 상위 디렉토리를 링크하십시오.)


3
당신의 대답은 분명히 도움이되었습니다 : +1. 그러나 정확하지 않으므로 솔루션으로 표시 할 수 없습니다. sudo ln -s /usr/local/share/vim/vim74 /usr/share/vim/vim74대신 명령이 작동했습니다. 어쨌든 도움을 주셔서 감사합니다.
Dillmo

"하지만이 대상 디렉토리가 존재하지 않으면 대신 상위 디렉토리를 연결하십시오."라고 작성했습니다. 어쨌든 당신에게 달려 있습니다. 원하는 경우 언제든지 정확한 명령으로 편집 할 수 있습니다. 또는 자신 만의 답변을 만드십시오. 어느 쪽이든 당신에게 달려 있지만 아마도 하나를 받아들이는 것이 가장 좋습니다.
Sparhawk

결과를 심볼릭 링크하는 대신 --prefix=/usr구성 호출에 추가 하면 바로 올바른 위치에 설치되었을 수 있습니다.
aquaherd

8

문제는 make 명령입니다.

make VIMRUNTIMEDIR=/usr/share/vim/vim74

질문에서 syntax.vim실제로 위치 /usr/local/share/vim/vim74하므로 대신 다음을 사용해야합니다.

make VIMRUNTIMEDIR=/usr/local/share/vim/vim74

일반적으로 VIMRUNTIMEDIR사용되는 변수는 스크립트에서 사용 make하는 prefix변수 와 일치해야합니다 configure.


1
이것은 나를 위해 작동합니다. YouCompleteMe의 소스에서 vim을 빌드하는 동안 연결하지 않았습니다.
bd1251252

VIMRUNTIME 또는이 필요하지 않다는 것을 알았습니다 make prefix. 둘 중 하나 또는 둘 다를 제공하면 문제가 있습니다. make prefixOP 만 문제로 SlateBlue 색상에 오류가 발생했습니다. 나는 VIMRUNTIME 만 시도했다고 생각하지 않습니다.
trysis

8

bash 실행에서 :

export VIMRUNTIME=/usr/share/vim/vim73

그런 다음 vim에서 다음을 실행하십시오.

:syntax on

(제 경우에는 vim이 찾고 /usr/share/vim/vim74있지만 /usr/local/share/..., AWS EC2 우분투에 없었 습니다.)

또한 그럴 필요는 VIMRUNTIME없었습니다 VIMRUNTIMEDIR.

영구성을 위해 위의 export행을 쉘의 개인 초기화 파일에 넣을 수 있습니다 (예 :) ~/.bash_profile.


작동합니다! 루트 액세스 권한이없는 사용자를위한 쉬운 수정입니다.
Osama Gamal
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.