【发布时间】:2013-12-21 18:37:21
【问题描述】:
几个月来,我一直在使用 vim 和出色的逃犯插件。但是今天,由于我无法解决的原因,:Gstatus 命令改变了行为。
它仍然会打开一个类似“git status”的屏幕,它会响应“R”来刷新它。但是,当我转到“已修改:...”列表并点击“D”时,我并没有得到两个显示差异的拆分窗口,而是得到了“git diff”输出。此外,在修改后的文件上点击“-”根本不会暂存它。
好像所有的力量都从这个模式中消失了?
我还怀疑它打开的类似“git status”的屏幕实际上是 git status 的确切输出。它的格式也与以前不同;顶行是绿色的,下一行以红色背景加粗 - 这与我在 git commit 消息中得到的颜色方案相同(如果您不将第二行留空,则会突出显示错误)。不确定这是否有助于或只是混淆问题......
根据下面的评论,我检查了该屏幕上的键映射:
:verbose nmap D
> n D *@:<C-U>execute <SNR>72_StageDiff('Gvdiff')<CR>
> Last set from ~/.dotfiles/vim/bundle/vim-fugitive/plugin/fugitive.vim
:verbose nmap -
> n - *@:<C-U>silent execute <SNR>72_StageToggle(line('.'),line('.')+v:count1-1)<CR>
> Last set from ~/.dotfiles/vim/bundle/vim-fugitive/plugin/fugitive.vim
任何人都知道我犯了什么错误,或者我得到的其他类似状态的屏幕是什么?
【问题讨论】:
-
请查看
:verbose nmap <buffer>并确保D和-映射到Fugitive 的<Plug>映射。另请确保您拥有最新版本的逃犯。 -
它们似乎正确映射 - 已在主要描述中添加了值
-
SO 不是问题跟踪器,请使用逃犯的问题跟踪器。
-
这两天前对我有用,现在坏了。我没有改变我的 vim 或 vim-fugitive 版本。所以我很确定这是一个“用户错误”而不是逃犯的问题。
-
你最近升级到 Git 1.8.5 了吗?状态输出已更改,并且与旧版本的 vim-fugitive 不兼容,因为它缺少
#前缀。尝试更新你的 vim-fugitive。
标签: git vim vim-fugitive