From 207031dbcffd74c8832a7e0e6952af574bc37a2e Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 29 Aug 2022 09:26:36 +0000 Subject: [PATCH] viewvcs: author date links to contemporary messages 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 | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/PublicInbox/ViewVCS.pm b/lib/PublicInbox/ViewVCS.pm index 84358d0e..fd95e24e 100644 --- a/lib/PublicInbox/ViewVCS.pm +++ b/lib/PublicInbox/ViewVCS.pm @@ -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!(> +)([0-9]{4,}-\S+ \S+)! + my ($gt, $t) = ($1, $2); + $t =~ tr/ :-//d; + qq($gt$2) + !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().shift(@$p).' '.shift(@$pt) for @$P; if (@$P == 1) { -- 2.44.0