From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Benjamin Rutt Newsgroups: gmane.emacs.devel Subject: Re: [patch] add interactive browse of revisions from vc *Annotate* buffers Date: Mon, 12 Jan 2004 08:58:59 -0500 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: References: NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1073916997 13623 80.91.224.253 (12 Jan 2004 14:16:37 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 12 Jan 2004 14:16:37 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Mon Jan 12 15:16:25 2004 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1Ag2rh-0002Yx-00 for ; Mon, 12 Jan 2004 15:16:25 +0100 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1Ag2rh-0005k9-00 for ; Mon, 12 Jan 2004 15:16:25 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.24) id 1Ag3ZE-0006Dy-Ks for emacs-devel@quimby.gnus.org; Mon, 12 Jan 2004 10:01:24 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.24) id 1Ag3Yx-0006Bq-LH for emacs-devel@gnu.org; Mon, 12 Jan 2004 10:01:07 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.24) id 1Ag3YQ-00062k-Fa for emacs-devel@gnu.org; Mon, 12 Jan 2004 10:01:05 -0500 Original-Received: from [164.107.123.5] (helo=cis.ohio-state.edu) by monty-python.gnu.org with esmtp (Exim 4.24) id 1Ag3YQ-00062U-2i for emacs-devel@gnu.org; Mon, 12 Jan 2004 10:00:34 -0500 Original-Received: from mu.cis.ohio-state.edu (daemon@mu.cis.ohio-state.edu [164.107.112.41]) by cis.ohio-state.edu (8.11.6p2-20030924/8.11.6) with ESMTP id i0CDwxP05813; Mon, 12 Jan 2004 08:58:59 -0500 (EST) Original-Received: (from rutt@localhost) by mu.cis.ohio-state.edu (8.11.6p2-20030924/8.11.6) id i0CDwx601632; Mon, 12 Jan 2004 08:58:59 -0500 (EST) X-Authentication-Warning: mu.cis.ohio-state.edu: rutt set sender to rutt.4@osu.edu using -f Original-To: storm@cua.dk (Kim F. Storm) Mail-Followup-To: storm@cua.dk (Kim F. Storm), emacs-devel@gnu.org In-Reply-To: (Kim F. Storm's message of "12 Jan 2004 12:06:28 +0100") User-Agent: Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (usg-unix-v) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:19143 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:19143 storm@cua.dk (Kim F. Storm) writes: > Benjamin Rutt writes: > >> I wrote this patch because I wanted to be able to browse forward and >> backwards to prev and next revisions from vc.el *Annotate* buffers. >> That way, I can see which member of my work group is responsible for >> entering a particular line of a CVS-controlled file (it's sometimes >> not enough to just vc-annotate a buffer, since sometimes users >> reformat or reindent lines of source code that they didn't originally >> write). This patch allows you, from a vc-annotate-mode buffer, to >> press C-c C-p to go to the previous revision and C-c C-n to go to the >> next revision. It's currently only implemented for CVS, since >> vc-annotate is only implemented for CVS anyway. > > That is a very good feature indeed. Thanks! > > However, I would like an extension to this feature so that > C-u C-c C-p > would pick up the revision from the current line of the annotate > buffer and annotate the previous revision to that revision, rather > than the revision of the work file as such. > > This would make it easier to backtrack a specific change in case there > are many (unrelated) revision in the file. I'd like to implement your idea, however I want to make sure I understand it completely. Here's an example. Let's say you have file foo.c, at revision 1.24, and here's the result from C-x v g when visiting foo.c: Annotations for foo.c *************** 1.1 (rutt 07-Apr-03): int main () 1.3 (rutt 07-Apr-03): { 1.24 (rutt 07-Apr-03): return 0; 1.1 (rutt 07-Apr-03): } and let's say the cursor is on the line where revision 1.3 is at. Are you saying you'd like a function to warp you instantly back to 1.3, instead of having to go back iteratively through 1.23, 1.22, 1.21, ..., 1.4, 1.3? If this isn't your idea, could you give an example of what your idea is? Thanks, -- Benjamin