【发布时间】:2014-01-12 21:16:54
【问题描述】:
我在 Linux Mint Debian 版上安装了以下 vim 包:
vim
vim-common
vim-tiny
vim-runtime
vim-doc
我之前安装了上述软件包,在安装 Vundle 之后(通过 http://github.com/gmarik/vundle 上的说明可以正常工作),为了避免插件冲突,我决定完全删除并重新安装上述所有 vim 软件包/.vim 文件夹,在为了充分利用 Vundle 作为管理我的插件的一种手段。在我的文件资源管理器中,我可以看到从 git cloning ~/.vim 创建的文件夹以及所有继承的文件夹/文件都属于 root。这会导致 Vundle 出现以下问题:
首先当我执行:BundleSearch查询时:
为了进一步诊断我的问题,我尝试在我的 vimrc 中手动添加一个包:
Bundle 'scrooloose/nerdtree'
在 Vundle GitHub 中使用完全相同的 vimrc 设置,它可以在之前的安装中运行。
现在,当我尝试:BundleInstall 时,我收到以下基于权限的错误:
[140112 13:48:10]
[140112 13:48:10] Bundle scrooloose/nerdtree
[140112 13:48:10] $ git clone --recursive 'https://github.com/scrooloose/nerdtree.git' '/home/ahqiao/.vim/bundle/nerdtree'
[140112 13:48:10] > fatal: could not create work tree dir '/home/ahqiao/.vim/bundle/nerdtree'.: Permission denied\00
[140112 13:48:11]
[140112 13:48:11] Helptags:
[140112 13:48:11] :helptags /home/ahqiao/.vim/bundle/vundle/doc/
[140112 13:48:11] > Error running :helptags /home/ahqiao/.vim/bundle/vundle/doc/
[140112 13:48:11] Helptags: 1 bundles processed
此外,我的 vimrc 还包含标准的两行插件:
filetype plugin on
set nocp
过去,我也遇到过:helptags 因权限问题而无法访问~/.vim/doc 的问题,因此我不得不手动将帮助文件复制到非根文件夹中,并使用@987654333 指向该文件夹@。
我该如何克服这些根本问题? Vundle 对我管理编码和跟踪所需的插件数量非常重要。
【问题讨论】:
-
你是如何克隆
vundle的,你把它放在哪里了?实际上,您是如何创建~/.vim目录的?你能告诉我们它的权限吗? -
git clone github.com/gmarik/vundle.git ~/.vim/bundle/vundle 如前所述,克隆在以前的安装中工作。出于某种原因,VIM 对我的 /.vim 目录的权限不满意
-
如果
~/.vim和所有子目录都属于root,你为什么不chown给自己呢?HOME中似乎应该是这样,但我不清楚它最初是如何做到的。你是说当你克隆 Vundle 时发生了这种情况? -
在我第一次卸载 vim 后,我删除了整个 /.vim 目录,当我重新安装包时 /.vim 没有创建(我不确定 VIM 是否会自动执行此操作?)因此该目录是由 git clone 命令(我使用普通权限终端运行的)创建的。另请注意,我的重新安装过程是在突触中完成的,并选中了“完全删除”选项
-
一般来说,
HOME目录中的东西应该属于你的USER。在安装 Vundle 之前,您可能已经运行了sudo git clone ...,或者使用创建目录的sudo进行了其他操作,但我认为 Vim 不会自动执行此操作。
标签: vim vim-plugin bundle-install vundle