我经常使用 SSH 在计算机上的帐户之间移动。多个不同的项目都有自己的开发和生产帐户。是否可以在帐户之间保持我的 vim 环境相同?
我尝试使用 VIMRUNTIME、VIM 和 vimrc 设置来为设置定义一个共享位置,但似乎不起作用。设置被拾取,但其他设置没有。例如,行号将被打开,制表符已启用,键绑定存在但没有配色方案,或者文件的文件类型似乎无法正确检测。
答案1
设置$VIMRUNTIME
将覆盖系统范围共享配置的加载,这通常不是您想要的。不,您不能在该环境变量中指定多个路径,因此它不是很有用(文档暗示您不应该直接设置它,可能是因为这个原因)。
runtimepath
相反,从您的内部添加到.vimrc
:
set runtimepath+=/home/ACCOUNT/.vim
然后,使用环境变量VIMINIT
告诉 vim.vimrc
在启动时获取你的(单个共享):
VIMINIT='so /home/ACCOUNT/.vimrc'
现在,您已经共享了您的.vimrc
目录.vim
及其内容,并且您仍然拥有配置的系统默认设置,这正是您所需要的。
答案2
好吧,你需要的不仅仅是 vimrc,还有 vim 的所有子目录:插件等等。配色方案取决于文件,文件类型识别也取决于文件。所以你需要一个 vim 的共享安装。
答案3
我爱 vim,我爱我的 bash 环境,每当我在一台没有 vim 和 bash 的机器上工作时,我都会哭泣……鳄鱼的眼泪
话虽如此,为了解决这个问题,我求助于 GIT,虽然它并不完美,但至少可以让我在主机之间保持我的环境。(顺便说一句,如果有人有更好的选择,请随意)。
因此,我使用 git 将 repo 克隆到远程机器,然后启动我的安装程序 bash 脚本。
我的环境如下:
# For the loading of git files
# The deploy/install file will create the symlink ~/.vimrc > ~/git/.../vimrc
$HOME/git/environment/vim/etc/{colors,ftdetect,plugins,vimrc}
$HOME/git/environment/vim/deploy/{install,remove}
$HOME/tmp/git/environment/vim/ # install backs up the originals here
# For the loading of local files
$HOME/.vim/{colors,ftdetect,plugins,vimrc}
我的 .vimrc 包含以下内容:
set runtimepath=~/git/env/vim/etc,$VIMRUNTIME
答案4
认为有办法在本地共享配置,正如其他人所描述的那样,如果您通过 ssh 连接到另一台机器,它仍然无法帮助您:)。
我所做的是建立了一个 [github 项目](http://github.com/astrails/dotvim]使用我的 .vim 配置,然后我就将它克隆到各处。
我不会经常更改我的 vim 设置,但是当我这样做时,我会提交并推送它,然后简单的“git pull”就会在需要时将其更新。