diff options
Diffstat (limited to '')
-rw-r--r-- | .irssi/scripts/chansort.pl | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/.irssi/scripts/chansort.pl b/.irssi/scripts/chansort.pl deleted file mode 100644 index 814d041..0000000 --- a/.irssi/scripts/chansort.pl +++ /dev/null @@ -1,103 +0,0 @@ -#! /usr/bin/perl -# -# $Id: chansort.pl,v 1.4 2004/11/02 22:52:33 peder Exp $ -# -# Copyright (C) 2004 by Peder Stray <peder@gzip.ninja.no> -# - -use strict; -use Irssi; -use Irssi::Irc; - -# ======[ Script Header ]=============================================== - -use vars qw{$VERSION %IRSSI}; -($VERSION) = '$Revision: 1.4 $' =~ / (\d+\.\d+) /; -%IRSSI = ( - name => 'chansort', - authors => 'Peder Stray', - contact => 'peder@ninja.no', - url => 'http://ninja.no/irssi/chansort.pl', - license => 'GPL', - description => 'Sort all channel and query windows', - ); - -# ======[ Hooks ]======================================================= - -# --------[ sig_sort_trigger ]------------------------------------------ - -sub sig_sort_trigger { - return unless Irssi::settings_get_bool('chansort_autosort'); - cmd_chansort(); -} - -# ======[ Commands ]==================================================== - -# --------[ CHANSORT ]-------------------------------------------------- - -# Usage: /CHANSORT -sub cmd_chansort { - my(@windows); - my($minwin); - - for my $win (Irssi::windows()) { - my $act = $win->{active}; - my $key; - - if ($act->{type} eq 'CHANNEL') { - $key = "C".$act->{server}{tag}.' '.substr($act->{visible_name}, 1); - } - elsif ($act->{type} eq 'QUERY') { - $key = "Q".$act->{server}{tag}.' '.$act->{visible_name}; - } - else { - next; - } - if (!defined($minwin) || $minwin > $win->{refnum}) { - $minwin = $win->{refnum}; - } - push @windows, [ lc $key, $win ]; - - } - - for (sort {$a->[0] cmp $b->[0]} @windows) { - my($key,$win) = @$_; - my($act) = $win->{active}; - -# printf("win[%d->%d]: t[%s] [%s] [%s] {%s}\n", -# $win->{refnum}, -# $minwin, -# $act->{type}, -# $act->{visible_name}, -# $act->{server}{tag}, -# $key, -# ); - - $win->command("window move $minwin"); - $minwin++; - } -} - -# ======[ Setup ]======================================================= - -# --------[ Register commands ]----------------------------------------- - -Irssi::command_bind('chansort', 'cmd_chansort'); - -# --------[ Register settings ]----------------------------------------- - -Irssi::settings_add_bool('chansort', 'chansort_autosort', 0); - -# --------[ Register signals ]------------------------------------------ - -Irssi::signal_add_last('window item name changed', 'sig_sort_trigger'); -Irssi::signal_add_last('channel created', 'sig_sort_trigger'); -Irssi::signal_add_last('query created', 'sig_sort_trigger'); - -# ======[ END ]========================================================= - -# Local Variables: -# header-initial-hide: t -# mode: header-minor -# end: - |