[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#15322: VC log buffer scrolls itself

From: Paul Pogonyshev
Subject: bug#15322: VC log buffer scrolls itself
Date: Thu, 24 Oct 2013 10:39:20 +0200

Let me explain why I think scrolling is *bad*, even if it scrolls to correct revision. Log buffer here is generated for 5-10 seconds. In the meantime, I can start reading it, scrolling manually or C-s contents. And then (when loading is finished) it scrolls to a different position by itself. This is no better than focus stealing, because it disrupts my activities.

I tried adding the following advice, nulling 'working-revision':

    (defadvice vc-print-log-internal (before disable-scrolling-to-working-revision activate)
      (ad-set-arg 2 nil))

but it helped only so much, because now it always scrolls to the buffer beginning (for SVN it's still an improvement), even if I already C-s to some older revision.

Is it possible to disable scrolling completely, even if in a hackish way through my '.emacs'?


On 26 September 2013 09:17, Paul Pogonyshev <address@hidden> wrote:
In Emacs built from trunk yesterday it still jumps, though to the "correct" version (the one reported by 'svn info'). However, given that committing changes from the buffer does not advance the working directory revision (e.g. what I have now is 26 revisions in the past), I'm not sure how useful this is, at least for subversion. Probably it's better for saner VCS's, but for subversion if feels like annoyance.


On 12 September 2013 21:30, Glenn Morris <address@hidden> wrote:
Stefan Monnier wrote:

> And I think that makes sense.  It's natural to select a particular
> revision when running vc-print-log from (say) vc-annotate, but for
> a plain `C-x v l', the user just wants to see "the log" and presumably
> doesn't care about which revision happens to be current.
> IOW, I think we're trying too hard here.

*** lisp/vc/vc.el       2013-09-12 06:10:12 +0000
--- lisp/vc/vc.el       2013-09-12 19:28:04 +0000
*** 2299,2305 ****
    (let* ((vc-fileset (vc-deduce-fileset t)) ;FIXME: Why t? --Stef
         (backend (car vc-fileset))
         (files (cadr vc-fileset))
!        (working-revision (or working-revision (vc-working-revision (car files)))))
      (vc-print-log-internal backend files working-revision nil limit)))

--- 2299,2306 ----
    (let* ((vc-fileset (vc-deduce-fileset t)) ;FIXME: Why t? --Stef
         (backend (car vc-fileset))
         (files (cadr vc-fileset))
! ;;     (working-revision (or working-revision (vc-working-revision (car files))))
!          )
      (vc-print-log-internal backend files working-revision nil limit)))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]