运行“git commit”后,我收到以下错误。
CSApprox needs gui support - not loading.
See :help |csapprox-+gui| for possible workarounds.
Error detected while processing /Users/{username}/.vim/plugin/syntastic.vim:
line 94:
E319: Sorry, the command is not available in this version: sign define SyntasticError text=>> texthl=error
line 95:
E319: Sorry, the command is not available in this version: sign define SyntasticWarning text=>> texthl=todo
Press ENTER or type command to continue
error: There was a problem with the editor 'vi'.
Please supply the message using either -m or -F option.
为什么会发生这种情况的任何想法?我在Mac上。
感谢您的帮助。
答案 0 :(得分:21)
这将解决这个问题:
$ git config --global core.editor /usr/bin/vim
答案 1 :(得分:11)
看起来你的git编辑器没有设置,vi有一个混乱的插件或你的mac上的东西。尝试在提交时使用-m“comment here”参数。
我建议mv ~/.vim ~/.vimbak
并尝试再次运行vi。
答案 2 :(得分:3)
首先,你确定要做git commit .
吗? git commit
通常是你想要的。
错误消息来自您的编辑器。看起来git
正在尝试调用vi
,但您正在使用的命令行.vimrc
不支持vi
之类的设置。
从命令行调用vi
会发生什么?
如果您不想使用vi
作为提交编辑器,可以使用GIT_EDITOR环境变量使git调用不同的编辑器。但是,您需要确保编辑器作为前台进程运行,以便git
知道您何时完成了对邮件的编辑。可以使用启动器脚本调用某些编辑器来帮助解决此问题,因为从终端调用时,编辑器(尤其是在Mac OS X中)通常会作为后台进程启动。
答案 3 :(得分:0)
看起来你正在mac上使用CSApprox vim插件。但是,mac的终端不支持256色(我相信只有16种颜色)。
你可以试试iTerm而不是mac的终端。请注意内存使用情况。
另外,如果你走这条路,告诉vim终端支持256种颜色,方法是将它添加到〜/ .vimrc中:
set t_Co=256
如果所有这些都失败了,并且你不介意从终端使用vim时默认的colorscheme,你可以只为MacVim加载colorscheme(并完全删除CSApprox插件):
if has('gui_running')
:colorscheme wombat
endif
答案 4 :(得分:0)
某些vim插件可能会导致此类问题。以下配置为我解决了这个问题。
git config --global core.editor "/usr/bin/vim --noplugin"