.bashrc
ファイルを開こうとすると。次に、次の行が表示されます。
Errordetected while processing /etc/vimrc:
line 45:
E848: Can't open file /usr/share/vim/vim70/syntax/syntax.vim
Press ENTER or type command to continue
/etc/vimrc
ファイルに移動すると、syntax on
行45が表示されます。OSを3回インストールしましたが、常に同じエラーが表示されます。
サーバーは、字句の強調表示にファイルを使用しようとしています。 vimが探している場所にファイルが存在しません。
この時点で、次のいずれかを実行できます。
find / -name syntax.vim
)そしてそのファイルをvimが探しているディレクトリにコピーまたはシンボリックリンクしますVimは、インストールファイル(ヘルプシステム、構文の強調表示の定義など)を特定の場所で見つけることを期待していますが、それらの多くがなくても実行できます。 Vimは実行できますが、これらのインストールファイルが見つからない可能性があります。
Vimはこれらのファイルを見つけるためにいくつかの方法を試みますが、異常なインストールがある場合、それらは見つかりません。
ヘルプシステムにアクセスできる場合は、:help $VIM
および:help $VIMRUNTIME
のトピックをお読みください。現在の構成ではそれらが見つからない可能性が高いため、Web上のバージョンを読んでください。例: :help $ VIM および :help $ VIMRUNTIME 。
VIMとVIMRUNTIME環境変数の一方または両方を正しく設定することで、問題を解決できると思います。
vim
バイナリファイルとランタイムファイルが異なるディレクトリツリーに存在し、パスの下にあるランタイムファイルを探す必要があることに気付くかもしれません。例:find /path -type d -name 'vim[0-9]*'
私は、SysAdminがリモートマウントを介して提供したSunStudio開発パッケージにバンドルされているVimインスタンスに依存しています。 vim
バイナリは/remote/sunstudio12/SUNWspro/contrib/vim/bin/vim
(例:which vim
)にあり、ランタイムファイルは/remote/sunstudio12/SUNWspro/contrib/vim/share/vim/vim63
にあります。
私はあなたと同じような問題を抱えていました。まず、VIM=/remote/sunstudio12/SUNWspro/contrib/vim
をエクスポートしようとしましたが、うまくいきませんでした。これとは別に、正しく動作するVIMRUNTIME=/remote/sunstudio12/SUNWspro/contrib/vim/share/vim/vim63
をエクスポートしてみました(VIMは未設定のままです)。VIMRUNTIME
はmenu.vim
などのファイルを含むディレクトリを指している必要があります。 、scripts.vim
およびcolors
、doc
、syntax
などのディレクトリ(バージョンに依存する可能性があります、YMMV)。
また、PATH
を変更してvim
バイナリを見つけましたが、すでにバイナリを正常に実行できます。
上記のシェル環境設定を再確認したところ、VIM=/remote/sunstudio12/SUNWspro/contrib/vim/share/vim
のエクスポート(およびVIMRUNTIME
の設定解除)も機能することがわかりました。VIM
を設定した最初の実験は誤った方向に進んでいました。 VIM
が指す場所には、必要なランタイムファイルを含むディレクトリvim63
が含まれています。
私はまだPATH
に依存してvim
バイナリを見つけています。
欠落しているファイルは構文定義ではなく、:syntax on
コマンドのVimscript実装です。これがないと、Vimで構文が強調表示されません。
そのファイルはVimに付属しています。インストールが破損している必要があります。再インストールしてみてください。また、Vim 7.0は2006年のものであり、veryは古くなっています。最新バージョン7.3をインストールできるはずです。ディストリビューションに適切なパッケージが見つからない場合でも、Linuxで コンパイル (Mercurialソースなどから)することはそれほど難しくありません。
.vimrcをチェックインして、vimがsyntax.vimを探す場所を指定していないことを確認します。例えば:
set rtp+=/usr/local/vim/
set rtp+=/usr/local/vim/runtime/
let $VIMRUNTIME="/usr/local/vim/runtime/"
Macosから.vimrcをコピーした場合、AppleがインストールしたvimとBrewがインストールしたvimの間の競合を回避するために使用される上記のようなものがある可能性があります。