从 git bash 启动时,vim 未加载 _vimrc 文件

从 git bash 启动时,vim 未加载 _vimrc 文件

我已经下载并安装了适用于 Windows 的 git (msysgit),并经常使用随附的 git bash。每当我从 git bash 运行 vim 时,我的 _vimrc 文件都不会加载,因为有语法突出显示或其他内容。当我在 Windows 命令行 (cmd) 而不是 git bash 中运行相同的命令以启动 vim 时,它会按照我的 _vimrc 文件中所述的方式工作。我对 git bash 进行的唯一自定义是将以下 bash_profile 添加到 C:\Program Files (x86)\Git\etc

alias up='cd ..'
alias ls='ls --color'
alias la='ls -a'
alias vimconfig='vim /c/Program\ Files/Vim/_vimrc'
alias gvimconfig='vim /c/Program\ Files/Vim/_gvimrc'
alias bashconfig='vim /c/Program\ Files/Git/etc/bash_profile'
LS_COLORS='di=36:fi=37:ln=31:pi=5:so=5:bd=5:cd=5:or=31:mi=0:ex=35:*.rpm=90'
export LS_COLORS

有谁知道为什么当从 cmd 启动 vim 时它可以正确加载我的 _vimrc 文件,而从 git bash 启动时却不能正确加载?

答案1

msysgit 带有其自己的 vim 版本。

您可以通过运行来验证这一点

type vim

在你的 git bash 提示符里面。

我认为它会告诉你vim= /bin/vim,而不是/c/Program Files/Vim/Vim.exe

然后运行

vim --version | grep vimrc

查看它寻找哪些配置文件。

在我的系统上,它说

$ vim --version | grep vimrc
   system vimrc file: "$VIM\vimrc"
     user vimrc file: "$HOME\_vimrc"
 2nd user vimrc file: "$VIM\_vimrc"

$VIM指向C:\Program Files\Git\share\vim并且$HOME指向c:\Users\USERNAME

我想你最好的选择是运行基于 Windows 的 vim 版本,例如

alias vim='/c/Program Files/Vim/Vim.exe'

或类似的东西。

或者你可以将 msysgit 版本的 vim 移到一边,例如

mv /bin/vim /bin/vim.disabled

答案2

/bin/vim只是一个重定向脚本,您可以修改它并将路径设置为您想要的任何路径。

C:\Program Files (x86)\Git\bin\vim以管理员身份编辑。

改变这个:

#!/bin/sh

exec /share/vim/vim74/vim "$@"

至此(或无论您的路径是什么):

#!/bin/sh

exec "/c/Program Files (x86)/Vim/vim74/gvim.exe" "$@"

答案3

在 vim 中,输入:scriptnames

:scr[iptnames] -- 按照首次获取的顺序列出所有获取的脚本名称。数字用作脚本 ID。

相关内容