X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=back2html.pm;h=860a1d68d4e2efd02bc9da11fc7b06d50aa1390f;hb=f1831cd4420ff3fb7cc8d093268cf70a5d0e4c68;hp=1df13428ff1ceda6047445804a1e3d6dd32aa844;hpb=9c3f8adc030d8342a16a0138718e0ed1108dee35;p=webpac diff --git a/back2html.pm b/back2html.pm index 1df1342..860a1d6 100644 --- a/back2html.pm +++ b/back2html.pm @@ -7,6 +7,8 @@ sub back2html { my $html = shift; + $html =~ s//>/g; my $out; foreach $line (split(/\s*###\s*/,$html)) { $out .= ""; @@ -14,16 +16,21 @@ sub back2html { # convert spaces in left field to non-breaking spaces $items[0] =~ s#\s+# #g; # try to make link on right field - if ($items[1] =~ m#(http://[\S]+)\s*.*?#i) { + sub mkurl { + my $url = shift || die "mkurl needs url as argument"; # chop URLS longer than 60 characters - my $url = substr($1,0,60); - $url .= "..." if (length($1) > 60); - $items[1] =~ s#(.*)\b(http://[\S]+)(\b?.*)#$1$url$3#g; + my $txturl = substr($1,0,60); + $txturl .= "..." if (length($1) > 60); + return "$txturl"; } + $items[1] =~ s#(http://[\S]+)#mkurl($1)#gie; $out .= join("",@items); $out .= "\n"; } - $out =~ s/<br\/*>//g; + # put
back into html + $out =~ s,<br/*>,
,gi; + # put yyyy back into html + $out =~ s,<(a\s+href=)(.+?)>(.+?)<(/a)>,<$1$2>$3<$4>,gsi; return $out; }