Subject: Re: [BUG] Highly inconsistent diff UI

From: Thomas Rast <[email-masked]>
Date: Thu, 25 Apr 2013 09:32:03 +0200

Ramkumar Ramachandra <[email-masked]> writes:

> Thomas Rast wrote:
>> I personally think we have enough magic revision syntax to last at least
>> another decade.  If you propose to add some, please make a patch that we
>> can cook in next for a few release cycles and then conduct a straw poll
>> if people actually use it.
>
> Isn't it obviously incredibly useful?  I'm working on a topic branch I
> need to send out to git.git, and I want see how my WIP looks: should I
> have to rebase on master just to see this?
>
> Why such a huge resistance against such a small feature?  Can you
> think of ways in which it is myopic (and therefore a pain to keep
> supporting, if we find it undesirable)?

What's the problem with cooking it for a while?  You can start using it
immediately.  I'm just somewhat annoyed that the syntax is rapidly
converging to Perl-style line noise.

I already hate half of the existing syntax, and I cannot remember using
^! (except while investigating what 'git diff C^!' does and why not),
^@, @{-N} (only the related 'git checkout -'), @{date} and @{relative},
^{}, :/foo, and ^{/foo}, *at all*.

In fact I had to look up the second half of that list on the manpage.

That's not to say that they are not useful for *someone*.  But it does
motivate my suggestion that unless we have tried it and *found* that
someone for a new syntax, let's not make it any more magic.

> On a related note- In my opinion, :/ is broken, because it blocks
> composition completely.  I would've really liked {:/quuxery}~3.

I guess this constitutes an argument in my favor (i.e. that the syntax
is too convoluted to understand and know):

^{/foo} is the same as :/foo, except it properly groups.

-- 
Thomas Rast
trast@{inf,student}.ethz.ch