From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-2.9 required=3.0 tests=ALL_TRUSTED,AWL,BAYES_00, T_RP_MATCHES_RCVD shortcircuit=no autolearn=unavailable version=3.3.2 X-Original-To: meta@public-inbox.org Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id D3D721F7DC; Mon, 9 Feb 2015 22:33:51 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Cc: Eric Wong Subject: [PATCH] view: generate links for common protocols in browsers Date: Mon, 9 Feb 2015 22:33:50 +0000 Message-Id: <1423521230-10439-1-git-send-email-e@80x24.org> List-Id: SpamAssassin queries URI blacklists, so it's probably OK to enable this without being used as a linkfarm. --- lib/PublicInbox/View.pm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm index b09c3ba..3bb3853 100644 --- a/lib/PublicInbox/View.pm +++ b/lib/PublicInbox/View.pm @@ -218,10 +218,17 @@ sub add_filename_line { "$pad " . ascii_html($fn) . " $pad\n"; } +my $LINK_RE = qr!\b((?:ftp|https?|nntp)://[@\w\+\&\?\.\%\;/#=-]+)!; + +sub linkify { + $_[0] =~ s!$LINK_RE!$1!g; +} + sub add_text_body_short { my ($enc, $part, $part_nr, $full_pfx) = @_; my $n = 0; my $s = ascii_html($enc->decode($part->body)); + linkify($s); $s =~ s!^((?:(?:>[^\n]*)\n)+)! my $cur = $1; my @lines = split(/\n/, $cur); @@ -255,6 +262,7 @@ sub add_text_body_full { my ($enc, $part, $part_nr) = @_; my $n = 0; my $s = ascii_html($enc->decode($part->body)); + linkify($s); $s =~ s!^((?:(?:>[^\n]*)\n)+)! my $cur = $1; my @lines = split(/\n/, $cur); -- EW