Subject: bug#2604: 23.0.91; key bindings in vc-annotate incompatible w/ Emacs 22

From: Dan Nicolaescu <[email-masked]>
Date: Mon, 9 Mar 2009 10:48:45 -0700 (PDT)

Reiner Steib <[email-masked]> writes:

  > Hi,
  > 
  > > Please describe exactly what actions triggered the bug
  > > and the precise symptoms of the bug:
  > 
  > - C-x C-f lisp/gnus/gnus.el RET
  > 
  > - M-x vc-annotate RET
  > 
  > - D
  > 
  > Instead of showing diff of revision at line (as in Emacs 22), I get:
  > 
  > ,----[ *Messages* ]
  > | vc-annotate-show-changeset-diff-revision-at-line:
  > | The CVS backend does not support changeset diffs
  > `----
  > 
  > Is this change intended?  

It is. 

  > I could understand that `D' should now work
  > on change sets, but please at least mention it in NEWS and tell the
  > user to try `d' instead or better just display the warning and than
  > call `vc-annotate-show-diff-revision-at-line' if no change set
  > operation is available.

I am not sure that is better.  But if you can suggest a better wording
for the error message, go for it.

  > - L
  > 
  > Instead of showing log of revision at line (as in Emacs 22), nothing
  > happens.
  > 
  > If there's no useful binding for `L', why not bind it to
  > `vc-annotate-show-log-revision-at-line' or at least tell the user to
  > use `l' (lowercase L) and also document it in NEWS.

That would be a bad idea.  All the bindings for vc-annotate were upper
case.  And that was only because vc-annotate was derived from
`view-mode' which was binding almost all lower case keys.
With more keys to bind we can add better functionality to vc-annotate
(like the 'd' and 'D' bindings), so it would be a bad idea to 
Yes, it would take a tiny bit of effort for the users to get used to the
lower case bindings, but given that they are easier to type it should
not be too bad.
I'll make a note in NEWS about the changed bindings.