Permalink
Find file
2d0759e May 31, 2014
40 lines (35 sloc) 1.15 KB
use strict;
use vars qw($VERSION %IRSSI);
$VERSION = '0.02';
%IRSSI = (
authors => 'Juerd',
contact => '#####@juerd.nl',
name => 'autostuff',
description => 'Save current servers, channels and windows for autoconnect and autojoin',
license => 'Public Domain',
url => 'http://juerd.nl/site.plp/irssi',
changed => '2010-03-24 14:35',
);
use Irssi qw(command_bind servers channels windows command);
command_bind autostuff => sub {
my ($data, $server, $window) = @_;
for (servers) {
my $chatnet = $_->{chatnet} || $_->{tag};
command "/network add $chatnet";
command "/server add -auto -network $chatnet $_->{address} $_->{port} $_->{password}";
}
for (channels) {
my $chatnet = $_->{server}->{chatnet} || $_->{server}->{tag};
command "/channel add -auto $_->{name} $chatnet $_->{key}";
}
command "/layout save";
command "/save";
};
command_bind "window clean" => sub {
for (sort { $b->{refnum} <=> $a->{refnum} } windows) {
next if $_->{active};
next if $_->{immortal};
next if $_->{name};
command "/window close $_->{refnum}";
}
};