使用VIM进行编程需要为大多数现代项目提供多个插件,尤其是在处理大型代码库时。
为此目的:
是否有完全自动化的VIM环境管理器,允许您在任何机器上部署基于病原体的VIM环境,无需任何手动工作?如果不是..
有没有什么好的习惯用法,这是常用的,可以有效借用?
理由:我有很多VIM自定义。有没有办法在优雅且受到良好支持的机器之间同步VIM设置?
cp -r
的机制,它总是设法失去同步。答案 0 :(得分:2)
将整个~/.vim
目录和~/.vimrc
提交到git存储库(以及.bashrc
等)。这是使bash和Vim设置可移植的正确和理想方式。完整设置是主目录中的一个文件夹,如~/dotfiles
,带有符号链接到您的主目录,用于文件和文件夹,如.vim/
。与~/.vim/
中的~/dotfiles/.vim
的符号链接一样。
当你向~/.vim/bundle/
添加一个插件时,删除它的.git/
文件夹,否则git认为插件目录是一个子模块,它不会提交。
在新计算机上,将存储库克隆到您的主目录中,这样您就可以使用~/dotfiles
之类的内容。然后将适当的文件符号链接到您的主目录,如ln -s ~/.vimrc ~/dotfiles/.vimrc
。
Here's an example我的配置设置中包含以上所有内容。我在automatically symlinks all files starting with .
运行的目录中有一个脚本到主目录。
要升级插件,只需rm -rf
~/.vim/bundle/
中的插件目录将插件仓库再次克隆到~/.vim/bundle/
,然后cd进入新的克隆文件夹并rm -rf
{再次{1}}文件夹,然后.git/
并将更新的插件源提交到您的dotfiles仓库。
这是一个理想的设置,因为Vim插件生态系统非常糟糕。您经常需要亲自深入了解插件源代码并手动修改行。如果您已经将所有插件都设置为一个仓库,那么更新其源代码并提交到便携式git add pluginName
仓库非常容易。否则,您必须手动修改您修改的每个插件并维护fork,或者向原始存储库提交pull请求并等待它合并。