All pastes #715843 Raw Edit

Miles

public text v1 · immutable
#715843 ·published 2007-09-26 14:49 UTC
rendered paste body
use 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');