emacs-devel
[Top][All Lists]
Advanced

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

Re: VC command for showing outgoing changes


From: Stefan Monnier
Subject: Re: VC command for showing outgoing changes
Date: Tue, 13 Oct 2009 22:10:15 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux)

> You mean as a precondition of doing vc-outgoing?
> I'd like to avoid tangling the two.  vc-outgoing should be easy, and
> similar to what we already do for `print-log', I am not so sure about
> `push'.  I think vc-outgoing can be useful even without a push
> operation, just for showing the log and examining diffs.

I agree that outgoing is not useless even without push, but push is
more important: some of the `push' users use `outgoing', but all the
`outgoing' users use `push'.  Or close enough.

> These are tree level operations, annotate and show-version work on
> files.  (Especially annotate, it's code really really wants a file)
> And yes, show-version and annotate do not really make much sense for
> anything that is not a single file log (directory logs, or multiple file
> logs).

Actually, they do make sense, except you have to specify the file on
which you want to operate (presumably one of the files affected by the
current revision at point).  In any case the point is that there's no
reason to treat those commands differently in log-view-mode and in
outgoing-mode.
I'm intetrested in figuring out what should be the differences between
those two modes, the fewer the merrier.

> I am not so sure there's a need for multiple inheritance, backends could
> create vc-<foo>-log-view-mode and vc-<foo>-outgoing-mode derived from
> log-view-mode and log-view-outgoing-mode, respectively.  

Most vc-<foo>-log-view-mode basically setup regexps to recognize the
format used by the backend.  Presumably vc-<foo>-outgoing-mode would
have to setup exactly the same regexps, which is rather unsatisfactory.
You could avoid this duplication if we had multiple inheritance.


        Stefan




reply via email to

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