我已经下载并安装了适用于 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。