繁体   English   中英

如何让 gVim (Windows) 为我的插件使用“home\\.vim”?

[英]How can I get gVim (Windows) to use “home\.vim” for my plugins?

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

在我的 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')如果您的文件必须在其他平台上运行,则在if has('win32') || has('win64')

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

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

C:\Users\username\_vim\

以及您的设置:

C:\Users\username\_vimrc

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

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

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

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

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

我最终通过在所有机器上创建指向我的 Google Drive 文件夹的软链接来解决这个问题。 现在,如果我在 Google Drive 文件夹中编辑我的 .vimrc 或 .vim 文件夹,它会立即反映在所有机器上。 这很棒!

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

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

cd /d %HOME% mklink /j /d .vim vimfiles

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM