From a9d992a562cbb003f0f3ee4af8a5d0166abdedf9 Mon Sep 17 00:00:00 2001 From: timriker <timriker@c11ca15a-4712-0410-83d8-924469b57eb5> Date: Wed, 28 Dec 2011 23:15:19 +0000 Subject: [PATCH] process * style /me lines too git-svn-id: https://svn.code.sf.net/p/infobot/code/trunk@1917 c11ca15a-4712-0410-83d8-924469b57eb5 --- scripts/irclog2html.pl | 41 +++++++++++++++++++++++++++++------------ 1 file changed, 29 insertions(+), 12 deletions(-) diff --git a/scripts/irclog2html.pl b/scripts/irclog2html.pl index c2affbe..ad7cb1b 100755 --- a/scripts/irclog2html.pl +++ b/scripts/irclog2html.pl @@ -34,9 +34,9 @@ use POSIX qw(strftime); # Comment out the "table" assignment to use the plain version -#my $STYLE = "tt"; -#my $STYLE = "simplett"; -#my $STYLE = "table"; +#my $STYLE = "tt"; +#my $STYLE = "simplett"; +#my $STYLE = "table"; my $STYLE = "simpletable"; my $colour_left = "#000099"; # nick leaving channel @@ -62,10 +62,10 @@ sub header { qq{<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> - <title>irclog2html for $channel on $date</title> - <meta name="generator" content="irclog2html.pl by Jeff Waugh"> - <meta name="version" content="Version 1.5 - 11th May 2000"> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> + <title>irclog2html for $channel on $date</title> + <meta name="generator" content="irclog2html.pl by Jeff Waugh"> + <meta name="version" content="Version 1.5 - 11th May 2000"> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body text="#000000" bgcolor="#ffffff"> <h1>irclog2html for $channel on $date</h1> @@ -284,14 +284,32 @@ sub main { # new nick $nickcount++; - # if we've exceeded our estimate of the number of nicks, double it + # if we've exceeded our estimate of the number of nicks, double it $NICKMAX *= 2 if $nickcount >= $NICKMAX; $htmlcolour = $colour_nick{$nick} = html_rgb( $nickcount, $NICKMAX ); } - output_timenicktext( $date, $time, $channel, $nick, $text, - $htmlcolour ); + output_timenicktext( $date, $time, $channel, $nick, $text, $htmlcolour ); + } + elsif ( $line =~ /^\* ([^ \/]+)\/(\#[^ ]+) (.+)/ ) { + # Colourise the /me's # + $nick=$1; + $channel=$2; + $text="<font color=\"$colour_action\">$3</font>"; + $htmlcolour = $colour_nick{$nick}; + if ( !defined($htmlcolour) ) { + + # new nick + $nickcount++; + + # if we've exceeded our estimate of the number of nicks, double it + $NICKMAX *= 2 if $nickcount >= $NICKMAX; + + $htmlcolour = $colour_nick{$nick} = + html_rgb( $nickcount, $NICKMAX ); + } + output_timenicktext( $date, $time, $channel, $nick, $text, $htmlcolour ); } elsif ( $line =~ /^>\;>\;>\; / ) { $line =~ s/^>\;>\;>\; /\*\*\* /; @@ -309,8 +327,7 @@ sub main { $colour_nick{$nick_new} = $colour_nick{$nick_old}; $colour_nick{$nick_old} = undef; - $line =~ -s/(\*\*\* .*)/<font color=\"$colour_nickchange\">$1<\/font>/; + $line =~ s/(\*\*\* .*)/<font color=\"$colour_nickchange\">$1<\/font>/; } elsif ( $line =~ /\*\*\* (join|mode|topic)\/(.*?) .*/ ) { $channel = lc $2; -- 2.39.5