]> Sergey Matveev's repositories - public-inbox.git/commitdiff
viewvcs: author date links to contemporary messages
authorEric Wong <e@80x24.org>
Mon, 29 Aug 2022 09:26:36 +0000 (09:26 +0000)
committerEric Wong <e@80x24.org>
Mon, 29 Aug 2022 19:05:47 +0000 (19:05 +0000)
Sometimes it can be useful to figure out what's going in on the
associated inbox around the time the patch was authored.

lib/PublicInbox/ViewVCS.pm

index 84358d0ebd7fc71e0ede9aeade21e5121de6925a..fd95e24e3c54270e8a9bc1a138d13220938c8980 100644 (file)
@@ -148,6 +148,7 @@ sub show_commit_start { # ->psgi_qx callback
 sub cmt_finalize {
        my ($ctx) = @_;
        $ctx->{-linkify} //= PublicInbox::Linkify->new;
+       my $upfx = $ctx->{-upfx} = '../../'; # from "/$INBOX/$OID/s/"
        # try to keep author and committer dates lined up
        my ($au, $co) = delete @$ctx{qw(cmt_au cmt_co)};
        my $x = length($au) - length($co);
@@ -159,9 +160,15 @@ sub cmt_finalize {
                $au =~ s/>/>$x/;
        }
        $_ = ascii_html($_) for ($au, $co);
+       $au =~ s!(&gt; +)([0-9]{4,}-\S+ \S+)!
+               my ($gt, $t) = ($1, $2);
+               $t =~ tr/ :-//d;
+               qq($gt<a
+href="$upfx?t=$t"
+title="list contemporary emails">$2</a>)
+               !e;
        my $s = $ctx->{-linkify}->to_html(delete $ctx->{cmt_s});
        $ctx->{-title_html} = $s;
-       my $upfx = $ctx->{-upfx} = '../../'; # from "/$INBOX/$OID/s/"
        my ($P, $p, $pt) = delete @$ctx{qw(-cmt_P -cmt_p -cmt_pt)};
        $_ = qq(<a href="$upfx$_/s/">).shift(@$p).'</a> '.shift(@$pt) for @$P;
        if (@$P == 1) {