--- anames.pl.orig 2005-12-05 07:41:42.000000000 +0100 +++ anames.pl 2006-01-29 01:17:58.000000000 +0100 @@ -48,13 +48,18 @@ my $tmp_chan; sub cmd_anames { + my $server = Irssi::active_server(); + my $channel = Irssi::active_win->{active}; + $server->command("who " . $channel->{'name'}); + $tmp_chan = $channel->{'name'}; +} + +sub print_anames { my $server = Irssi::active_server(); - my $channel = ($_[0] ne "") ? - Irssi::Server::channel_find($server,$_[0]) : - Irssi::active_win->{active}; - my $chan = $channel->{'name'}; + my $chan = $tmp_chan; + my $channel = Irssi::Server::channel_find($server,$chan); my $nick; - if (!$channel || (ref($channel) ne 'Irssi::Irc::Channel' && ref($channel) ne 'Irssi::Silc::Channel') || $channel->{'type'} ne 'CHANNEL' || ($channel->{chat_type} ne 'SILC' && !$channel->{'names_got'}) ) { + if (!$channel) { # no nicklist Irssi::print ("Not joined to any channel", MSGLEVEL_CLIENTERROR); } @@ -184,6 +189,7 @@ #Irssi::signal_add("redir who_reply_end",\&who_reply_end); Irssi::command_bind("anames",\&cmd_anames); +Irssi::signal_add("event 315", "print_anames"); #Irssi::command_bind("dowho",\&do_all_who); #Irssi::timeout_add($who_timer*1000,"do_all_who","");