Re: [PATCH] gitk: make "git describe" output clickable, too
Show 19 quoted lines
> Jim Meyering <jim@meyering.net> writes:
>
>> I noticed that automake's contribution guidelines suggest using
>> "git describe" output in commit logs to reference previous commits.
>> By contrast, in coreutils, I had acquired the habit of using a bare SHA1
>> prefix (8 hex digits), since gitk creates clickable links for that, and
>> not for "git describe" output.
>>
>> I prefer the readability of the full "git describe" output, yet want to
>> retain the gitk links, so wrote the following that renders as clickable
>> not just SHA1-like strings, but also an SHA1-like string that is
>> prefixed by "-g".
>>
>> Signed-off-by: Jim Meyering <meyering@redhat.com>
>> ---
>> This is relative to master.
>> Think of this as mere proof-of-concept:
>
> Paul, I think this makes tons of sense. Comments?
Thanks for the feedback, Junio.
Show 35 quoted lines
>> Ideally, the string preceding the -g would be used to disambiguate
>> the SHA1 prefix, but that would require more code.
>>
>> I confess that I haven't looked to see if documentation needs
>> to be updated or if this would merit test suite additions.
>>
>> gitk-git/gitk | 6 +++++-
>> 1 files changed, 5 insertions(+), 1 deletions(-)
>>
>> diff --git a/gitk-git/gitk b/gitk-git/gitk
>> index 4cde0c4..f8eb613 100755
>> --- a/gitk-git/gitk
>> +++ b/gitk-git/gitk
>> @@ -6688,7 +6688,7 @@ proc appendwithlinks {text tags} {
>>
>> set start [$ctext index "end - 1c"]
>> $ctext insert end $text $tags
>> - set links [regexp -indices -all -inline {\m[0-9a-f]{6,40}\M} $text]
>> + set links [regexp -indices -all -inline {(?:\m|-g)[0-9a-f]{6,40}\M} $text]
>> foreach l $links {
>> set s [lindex $l 0]
>> set e [lindex $l 1]
>> @@ -6704,6 +6704,10 @@ proc appendwithlinks {text tags} {
>> proc setlink {id lk} {
>> global curview ctext pendinglinks
>>
>> + if {[string range $id 0 1] eq "-g"} {
>> + set id [string range $id 2 end]
>> + }
>> +
>> set known 0
>> if {[string length $id] < 40} {
>> set matches [longid $id]
>> --
>> 1.7.8.163.g9859a