I've been using vim with the excellent fugitive plugin for a few months now. But today, for reasons that I can't work out, the :Gstatus
command has changed behaviour.
It still opens up a "git status"-like screen, which does respond to "R" to refresh it. But when I go to a "modified: ..." listing and hit "D", instead of getting two split windows showing the diff, I just get the "git diff" output. Also, hitting "-" on the modified file does not stage it at all.
It's like all the power has vanished from this mode ?
I also suspect the "git status"-like screen it's opening is in fact the exact output from git status. It's also got different formatting than before; the top line is green, and the next line bolded with a red background - this is the same colorscheme as I get for git commit messages (which highlight an error if you don't leave the second line blank). Not sure if this helps or just confuses the issue...
In line with a comment below, I've checked the key mappings on that screen:
: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
Anyone know what mistake I'm making, or what this other status-like screen I'm getting is ?
:verbose nmap <buffer>
and make sureD
and-
are mapped to Fugitive's<Plug>
mappings. Please also make sure you have the latest version of fugitive. – Intemperate#
prefix. Try updating your vim-fugitive. – Zwickau