mirror of
https://github.com/irssi/irssi.git
synced 2026-08-19 00:22:17 +02:00
Irssi 0.7.27 released.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@130 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
3d513eebfa
commit
f5fc624781
15 changed files with 135 additions and 29 deletions
23
examples/autorejoin.pl
Normal file
23
examples/autorejoin.pl
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
# automatically rejoin to channel after kicked
|
||||
|
||||
# NOTE: I personally don't like this feature, in most channels I'm in it
|
||||
# will just result as ban. You've probably misunderstood the idea of /KICK
|
||||
# wrong if you kick/get kicked all the time "just for fun" ...
|
||||
|
||||
use Irssi;
|
||||
|
||||
sub event_rejoin_kick {
|
||||
my ($data, $server) = @_;
|
||||
my ($channel) = split(/ +/, $data);
|
||||
|
||||
# check if channel has password
|
||||
$chanrec = $server->channel_find($channel);
|
||||
if ($chanrec) {
|
||||
%cvals = %{$chanrec->values()};
|
||||
$password = $cvals{'key'};
|
||||
}
|
||||
|
||||
$server->send_raw("JOIN $channel $password");
|
||||
}
|
||||
|
||||
Irssi::signal_add('event kick', 'event_rejoin_kick');
|
||||
12
examples/hello.pl
Normal file
12
examples/hello.pl
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
# "Hello, world!" script :) /hello <nick> sends "Hello, world!" to <nick>
|
||||
|
||||
use Irssi;
|
||||
|
||||
sub cmd_hello {
|
||||
my ($data, $server, $channel) = @_;
|
||||
|
||||
$server->command("/msg $data Hello, world!");
|
||||
return 1;
|
||||
}
|
||||
|
||||
Irssi::command_bind('hello', '', 'cmd_hello');
|
||||
19
examples/privmsg.pl
Normal file
19
examples/privmsg.pl
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
# listen PRIVMSGs - send a notice to yourself when your nick is meantioned
|
||||
|
||||
use Irssi;
|
||||
|
||||
sub event_privmsg {
|
||||
my ($data, $server, $nick, $address) = @_;
|
||||
my ($target, $text) = $data =~ /^(\S*)\s:(.*)/;
|
||||
|
||||
return if (!Irssi::is_channel($target));
|
||||
|
||||
%sinfo = %{$server->values()};
|
||||
$mynick = $sinfo{'nick'};
|
||||
|
||||
return if ($text !~ /\b$mynick\b/);
|
||||
|
||||
$server->command("/notice $mynick In channel $target, $nick!$address said: $text");
|
||||
}
|
||||
|
||||
Irssi::signal_add("event privmsg", "event_privmsg");
|
||||
34
examples/realname.pl
Normal file
34
examples/realname.pl
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
# /RN - display real name of nick
|
||||
|
||||
use Irssi;
|
||||
|
||||
sub cmd_realname {
|
||||
my ($data, $server, $channel) = @_;
|
||||
|
||||
$server->send_raw("WHOIS :$data");
|
||||
|
||||
# ignore all whois replies except "No such nick" or the
|
||||
# first line of the WHOIS reply
|
||||
$server->redirect_event($data, 2,
|
||||
"event 318", "event empty", -1,
|
||||
"event 402", "event 402", -1,
|
||||
"event 401", "event 401", 1,
|
||||
"event 311", "redir whois", 1,
|
||||
"event 301", "event empty", 1,
|
||||
"event 312", "event empty", 1,
|
||||
"event 313", "event empty", 1,
|
||||
"event 317", "event empty", 1,
|
||||
"event 319", "event empty", 1);
|
||||
return 1;
|
||||
}
|
||||
|
||||
sub event_rn_whois {
|
||||
my ($num, $nick, $user, $host, $empty, $realname) = split(/ +/, $_[0], 6);
|
||||
$realname =~ s/^://;
|
||||
|
||||
Irssi::print("%_$nick%_ is $realname");
|
||||
return 1;
|
||||
}
|
||||
|
||||
Irssi::command_bind('rn', '', 'cmd_realname');
|
||||
Irssi::signal_add('redir whois', 'event_rn_whois');
|
||||
Loading…
Add table
Add a link
Reference in a new issue