是否可以使用名为vimfiles的文件夹替换macvim中的.vim?

时间:2011-03-26 03:57:39

标签: vim editor macvim setting

我在家中使用MacVim并在Windows中使用gvim工作。由于我使用git来同步我的vim设置,因此我希望设置位于名为vimfiles的同一文件夹中。我在我的.gvimrc中设置了runtimepath,如下所示:

set runtimepath=~/vimfiles/,$VIMRUNTIME

但是~/vimfiles/plugin中的插件似乎没有被MacVim加载。我做错了吗?

是不是因为vimfiles中的子文件夹没有以递归方式添加到runtimepath?

4 个答案:

答案 0 :(得分:11)

我不确定为什么你担心强迫Mac上的Vim理解Window的文件命名约定,当Vim可以做正确的事情并在Windows上使用标准的“.”命名时。你反对这个流程。

这是the Vim wiki

  

混合操作系统环境中一个有用的Vim设置是对Windows系统也使用.vim进行Vim用户设置(默认情况下,Vim会自动选择.vimrc配置文件而不是_vimrc)。 .vimrc中的以下片段可以解决这个问题,从而允许您在没有目录重命名的情况下进行同步:

     

“在Windows上,也使用'.vim'而不是'vimfiles';这会产生同步   “跨(异构)系统更容易。

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

这就是我在WinXP机器上所做的工作,我通过复制tarball在我的Mac,XP和大约五个Linux主机之间进行同步。

答案 1 :(得分:6)

只需将~/.vim作为指向~/vimfiles目录的符号链接,它就可以正常运行。

答案 2 :(得分:2)

根据:h initialization,在执行特定于GUI的初始化(搜索^4\.)之前完成加载插件脚本(搜索^8\.),因此您应该将此行放入~/.vimrc,而不是~/.gvimrc

答案 3 :(得分:0)

您是否尝试set runtimepath+=/path/to/vimfiles(请注意+=)?此外,您可能需要为所有子文件夹执行此操作。

由于您使用的是Git,您可以将工作目录设置为Mac上的~/.vim以及Windows计算机上的任何内容,使文件夹的名称无关。

$ git config worktree /Users/username/.vim

我使用DropBox在我的所有机器上同步我的~/.vim文件夹(Mac @ work,Mac @ home,Ubuntu @ home和Linode VPS)。所有autoloadbundle等文件夹都位于我的DropBox的DOTFILES/vim子文件夹中,并符号链接到~/.vim/autoload~/.vim/bundle~/.vim/syntax,等

简单地将~/Dropbox/DOTFILES/vim符号链接到~/.vim也可以,但我希望能够让机器上的特定内容保留在这台机器上。例如,观点。

我的.vimrc只包含以下几行:

source ~/Dropbox/DOTFILES/vimrc

" Quickly edit/reload the vimrc file
nmap <silent> <leader>ev :tabnew ~/Dropbox/DOTFILES/vimrc<CR>
nmap <silent> <leader>sv :so ~/Dropbox/DOTFILES/vimrc<CR>

在新机器上进行设置最多需要2到3分钟,我想,保持最新状态是完全没有用的。