ever had an important multi-person discussion on MSN Messenger that you wanted to keep a log of? How frustrating is to read in between the lines afterwards.

This is a simple snippet that takes a saved msn log file and outputs a nice formatted HTML. Useful for conversations with more than two persons.

--Chady
#!perl -w use strict; use vars qw/%names $file @lines $i $turn @colors/; $file = shift || &usage; @colors = qw/blue red green violet orange/; open IN, "<", $file or die "Cannot read file '$file' : $!\n"; chomp(@lines = <IN>); close IN; open OUT, ">", "$file.html" or die "hmm... $file.html can't seem to be + written : $!\n"; print OUT qq|<html><dl>\n|; foreach (@lines) { if (/^(.*?) says:$/) { $names{$1} = $i++ unless defined $names{$1}; $turn = $names{$1}; print OUT qq|<dt>&lt;<strong><font color="$colors[$turn]">$1</ +font></strong>&gt; |; } else { print OUT qq|<font color="$colors[$turn]">$_</font></dt>\n|; } } print OUT qq[</dl></html>]; close OUT; sub usage { print qq[Usage: msn2html <file>\n\twhere <file> is the file you wa +nt to process\n\n]; exit 0; }