rendered paste bodyuse Irssi;
sub sig_printtext {
my ($dest, $text, $stripped) = @_;
my ($window) = Irssi::window_find_name('hilight');
my ($active) = Irssi::active_win();
return if (!$window);
if (($dest->{level} & (MSGLEVEL_HILIGHT|MSGLEVEL_MSGS))
&& ($dest->{level} & MSGLEVEL_NOHILIGHT) == 0) {
if ($dest->{level} & MSGLEVEL_PUBLIC) {
$text = $dest->{target}.": ".$text;
}
if (($dest->{window}->{refnum} != $active->{refnum}) && ($dest->{target} =~ /^#.*$/)) {
$window->print($text, MSGLEVEL_NEVER);
}
}
elsif ($dest->{level} & (MSGLEVEL_DCC|MSGLEVEL_DCCMSGS|MSGLEVEL_NOTICES|MSGLEVEL_CTCPS)) {
$window->print($text, MSGLEVEL_NEVER);
}
}
sub unload_script {
my($win) = Irssi::window_find_name('hilight');
$win->destroy() if ($win);
Irssi::command('script unload hilightwin');
}
Irssi::command('window new split hidden');
Irssi::command('window name hilight');
Irssi::command('window size 3');
Irssi::command('window down');
Irssi::command_bind('hwinoff', 'unload_script');
Irssi::signal_add('print text', 'sig_printtext');