git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andreas Ericsson <ae@op5.se>
To: Wincent Colaiuta <win@wincent.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Paul Mackerras <paulus@samba.org>,
	Git Mailing List <git@vger.kernel.org>
Subject: Re: gitk: Turn short SHA1 names into links too
Date: Fri, 26 Sep 2008 09:26:09 +0200	[thread overview]
Message-ID: <48DC8E91.6080909@op5.se> (raw)
In-Reply-To: <BD7D0F18-32BD-4059-9190-A2C1B101B4C1@wincent.com>

Wincent Colaiuta wrote:
> El 26/9/2008, a las 2:37, Linus Torvalds escribió:
> 
>> On Thu, 25 Sep 2008, Linus Torvalds wrote:
>>>
>>> And the thing I wanted to work was to have the abbreviated SHA1's that
>>> have started to get more common in the kernel commit logs work as 
>>> links in
>>> gitk too, just the way a full 40-character SHA1 link works.
>>
>> For a test-case, I just pushed out my current top-of-tree that finally
>> pushed me over the edge. I've seen this before, but I couldn't really
>> force me to do anything about it until now.
>>
>> So to see this in action, do
>>
>>     gitk v2.6.26..6ef190c
>>
>> on the current kernel repo, and notice that "Commit ee1e2c82 ("IPoIB:
>> Refresh paths .." thing, where we want that 'ee1e2c82' to be a link even
>> though it's not a full SHA1.
>>
>> Of course, the matching could be better, it will now accept any random 6+
>> character sequence of hex characters, even if they are surrounded by
>> characters that make it clear that it's not a SHA1 ("Haahahhaaaaaa!"
>> would find the 'aaaaaa' and if you have a commit that starts with that,
>> link to it ;)
> 
> I know nothing about tcl/tk, but will comment anyway:
> 
> It's a shame that tcl/tk regular expressions don't appear to support 
> anchoring matches against word boundaries (ie. "\b").
> 
> If so, a regexp like:
> 
>  [regexp {\b[0-9a-f]{4,39}\b} $id]
> 
> would mostly eliminate that kind of false positive. But from my reading 
> of the wiki[1], looks like there's no "\b" escape sequence. Nor does it 
> look like tcl/tk has support for lookahead/lookbehind assertions which 
> could be used to the same effect.
> 

It's not as if this will be a real problem anyway. gitk is designed to
be used by humans, who can fortunately parse such things a trillion
times better than any regex a billion monkeys could come up with in a
billion years, even if one was to take evolution into account. ;-)

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

  reply	other threads:[~2008-09-26  7:27 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-26  0:11 gitk: Turn short SHA1 names into links too Linus Torvalds
2008-09-26  0:37 ` Linus Torvalds
2008-09-26  6:32   ` Wincent Colaiuta
2008-09-26  7:26     ` Andreas Ericsson [this message]
2008-09-26  7:29       ` Wincent Colaiuta
2008-09-26  8:21     ` Mikael Magnusson
2008-09-26 12:15       ` Brad King
2008-09-26 10:41     ` Marco Costalba
2008-09-27  3:18     ` Paul Mackerras
2008-09-27  3:16 ` Paul Mackerras
2008-10-20 23:20 ` Paul Mackerras
2008-10-21 19:09   ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48DC8E91.6080909@op5.se \
    --to=ae@op5.se \
    --cc=git@vger.kernel.org \
    --cc=paulus@samba.org \
    --cc=torvalds@linux-foundation.org \
    --cc=win@wincent.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).