如何让 gVim (Windows) 将"home.vim"用于我的插件?



我有一个运行Windows 7的桌面和一个运行Mountain Lion的Macbook Pro。我分别使用 gVim 和 MacVim。我喜欢在机器之间保持插件和设置同步,所以我将它们存储在我的 Google 云端硬盘中,我可以随时从那里提取它们。

在我的 Mac 上,我的主文件夹中只有一个 .gvimrc 文件和一个 .vim 文件夹,Vim 会正确加载我的所有插件和设置。

但是,在我的Windows计算机上,Vim将从我的主文件夹中的.ggvimrc文件正确加载设置。但是如果我将插件存储在"home.vim\plugin"中,Vim将不会加载它们。

要使插件/主题在我的Windows机器上运行,我需要将它们放在"C:\Program Files (x86)\Vim\vimfiles\plugin"中

我希望能够将所有内容存储在任何一台机器上的"home.vim"文件夹中,并使其正常工作。

那么有没有办法在我的 Windows 机器上设置它?

谢谢!

只要

您将.vimrc保存在默认位置(cp. :help vimrc ),并且只想更改插件、语法文件等的路径,可以将以下内容放入.vimrc文件中:

if has('win32') || has('win64')
    set runtimepath=path/to/home.vim,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,path/to/home.vim/after
endif

你没有指定你的确切路径,所以我在这里使用了path/to/home.vim;适应你的系统。


同步配置的用例很常见,不寻常的是,您似乎希望将.[g]vimrc保存在默认位置,而只将插件等移动到其他地方。通常,.vimrc.vim/plugins子文件夹都会移开,人们使用符号链接(在 Windows 上使用 mklink 创建)从其主目录引用它们。

.vimrc开始时的某个地方(如果您的文件必须在其他平台上运行,则在if has('win32') || has('win64')内)

set runtimepath-=~/vimfiles
set runtimepath^=~/.vim
set runtimepath-=~/vimfiles/after
set runtimepath+=~/.vim/after

在 Windows 7 上,您必须将插件和配色方案放入:

C:Usersusername_vim

以及您在以下位置的设置:

C:Usersusername_vimrc

首先,我将内容~/vimfiles放入~/.vim

然后我把它添加到我的 vimrc 中:

let &runtimepath.=',$HOME/.vim'

在 Windows 10 上,vim 目录位于 %USERPROFILEvimfiles ,您可以通过 mklink 命令将其链接到任何其他目录。

在 Windows

上,我不使用 %USERPROFILE% 来存储.vimrc,相反,我创建了一个环境变量%HOME%指向我的自定义目录,我在那里%HOME%/.vimrc%HOME%/.vim/,使用 .vim/ 确保 Windows git 安装中的"vim"可以直接使用它们。

Windows VIM有一个默认的运行时路径条目~/vimfiles~对应于%HOME%,所以我创建一个目录符号链接,如下所示:

cd/d %首页%mklink/j/d .vim vimfiles

然后,我的自定义目录中的所有.vimrc.vim/都在不同的环境中工作,而.vimrc中没有为此目的if has("win32")内容。

由于

某种原因,我无法实施您的任何建议。

我最终通过在所有机器上创建指向我的Google云端硬盘文件夹的软链接来解决此问题。现在,如果我在Google云端硬盘文件夹中编辑我的.vimrc或.vim文件夹,它会立即反映在所有计算机上。太好了!

最新更新