X-Git-Url: https://git.sommitrealweird.co.uk/twirssi-net-twitter-lite.git/blobdiff_plain/77ff80bc4cf6b780b63a41a7ce261546c571d00a..2cbdec5357caa3a57ae4fee320a8da2e420d2d4f:/twirssi.pl?ds=sidebyside diff --git a/twirssi.pl b/twirssi.pl index 444aac6..edb207e 100644 --- a/twirssi.pl +++ b/twirssi.pl @@ -707,6 +707,7 @@ sub monitor_child { while () { chomp; last if /^__friends__/; + my $hilight = 0; my %meta; foreach my $key (qw/id account nick type/) { if (s/^$key:(\S+)\s*//) { @@ -733,15 +734,16 @@ sub monitor_child { $marker = ":$marker"; } + if ( $_ =~ /\@$meta{account}\W/ ) { + $hilight = MSGLEVEL_HILIGHT; + } + if ( $meta{type} eq 'tweet' ) { - $window->printformat(MSGLEVEL_PUBLIC, 'twirssi_tweet', - $account, $meta{nick}, $marker, $_); + push @lines, [(MSGLEVEL_PUBLIC | $hilight), $meta{type}, $account, $meta{nick}, $marker, $_]; } elsif ( $meta{type} eq 'reply' ) { - $window->printformat(MSGLEVEL_PUBLIC, 'twirssi_reply', - $account, $meta{nick}, $marker, $_); + push @lines, [(MSGLEVEL_PUBLIC | $hilight), $meta{type}, $account, $meta{nick}, $marker, $_]; } elsif ( $meta{type} eq 'dm' ) { - $window->printformat(MSGLEVEL_PUBLIC, 'twirssi_dm', - $account, $meta{nick}, $_); + push @lines, [(MSGLEVEL_MSGS | $hilight), $meta{type}, $account, $meta{nick}, $_]; } elsif ( $meta{type} eq 'error' ) { $window->print("ERROR: $_", MSGLEVEL_PUBLIC); } elsif ( $meta{type} eq 'debug' ) { @@ -763,6 +765,10 @@ sub monitor_child { if ($new_last_poll) { print "new last_poll = $new_last_poll" if &debug; + for my $line ( @lines ) { + $window->printformat(@$line[0], "twirssi_".@$line[1], + @$line[2,3,4,5]); + } close FILE; unlink $filename