我在我的文件中编写了以下配置/etc/vim/vimrc
来运行 Vundle 插件。
为什么我得到这个错误?
我添加的 Vim 配置块:
set nocompatible " be iMproved, required
filetype off " required
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
" All of your Plugins must be added before the following line
call vundle#end() " required
filetype plugin indent on " required
" To ignore plugin indent changes, instead use:
"filetype plugin on
"
" Brief help
" :PluginList - lists configured plugins
" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
"
" see :h vundle for more details or wiki for FAQ
" Put your non-Plugin stuff after this line
我在运行时遇到了这些错误.vimrc
:
root@someone-System-Product-Name:/etc/vim# vim vimrc
Error detected while processing /usr/share/vim/vimrc:
line 6:
E117: Unknown function: vundle#begin
line 11:
E492: Not an editor command: Plugin 'VundleVim/Vundle.vim'
line 14:
E117: Unknown function: vundle#end
Press ENTER or type command to continue
如果我运行:PluginInstall
,我得到了错误'Not an editor command'
。
您正在将系统范围的配置与用户配置混合。
Vundle的手册建议将脚本添加到“您的
.vimrc
”,即~/.vimrc
,特别是添加指向~/.vim/bundle/Vundle.vim
. 这两个文件都驻留在用户的主目录 (~
) 中,不会影响其他用户。然而,如果你把脚本(包括用户主目录的链接!)放到系统范围的 Vim 配置
/etc/vim/vimrc
中,你必须Vundle.vim
到系统范围内有效的位置(例如/opt
,/etc/vim
)并提供路径/etc/vim/vimrc
~/.vim/bundle/Vundle.vim
对任何用户都存在,包括 root。root的主目录 (
~
) 是/root
. 因此,如果/root/.vim/bundle/Vundle.vim
您的机器上不存在该文件,Vim 在处理您/etc/vim/vimrc
作为 root 用户时无法加载它。这可能与
vimrc
具体打开文件无关,该问题会影响启动 Vim,因为 Vim 在此期间会读取其配置文件。即使您发出vim
没有任何文件的普通命令,它也应该发生。顺便说一下,请注意文件名的每个字符。
vimrc
不等于.vimrc
,这些是不同的文件。