ThM...
I can't say that I fully understand this code so you might just want to check it over, but this seems to fix the problem that DOT-COM mentioned:
In ShoutDisplay.pl find:
sub my_wrap3 {
$shout_message =~ s~(<.*>)*(\S{0,14})(\S{0,14})?(\S{0,14})?(\S{0,14})?(\S*)?(<.*>)*~$1$2 $3 $4 $5 $6$7~gi;
$shout_message =~ s~(<.*>)?(\S{0,14})(\S{0,14})?(\S{0,14})?(\S{0,14})?(\S*)(<\/\S*>)~$1$2 $3 $4 $5 $6$7~gi;
$shout_message =~ s~\s+~ ~gi;
}
And replace with this (I've taken this straight from Subs.pl):
sub my_wrap3 {
$linewrap = 48;
$message =~ s#<a href=(\S*?)(\s[^>]*)?>(\S*?)</a># my ($mes,$out,$i) = ($3,"",1); { while ($mes ne "") { if ($mes =~ s/^(<.+?>)//) { $out .= $1; } elsif ($mes =~ s/^(&.+?;|\[ch\d{3,}\]|.)//) { last if $i > $linewrap; $i++; $out .= $1; if ($mes eq "") { $i--; last; } } } } "<a href=$1$2>$out" . ($i > $linewrap ? "..." : "") . "</a>" #eig;
}
The highlighted '48' is obviously the number of characters before the line wraps, so you can change it to whatever you think best (or even make it a variable so it can be changed in Shoutbox Settings).