html/special_complete.pl


   1 use strict;
   2 use vars qw($VERSION %IRSSI);
   3 use Irssi;
   4 $VERSION = '1.1';
   5 %IRSSI = (
   6 	authors  	=> 'Wouter Coekaerts',
   7 	contact  	=> 'wouter@coekaerts.be, coekie@#irssi',
   8 	name    	=> 'special_complete',
   9 	description 	=> '(tab)complete irssi special variables (words that start with $) by evaluating them',
  10 	license 	=> 'GPLv2',
  11 	url     	=> 'http://wouter.coekaerts.be/irssi/',
  12 	changed  	=> '28/07/03',
  13 );
  14 
  15 Irssi::signal_add_last 'complete word', sub {
  16 	my ($complist, $window, $word, $linestart, $want_space) = @_;
  17 	if ($word =~ /^\$/){
  18 		my $evaluated;
  19 		if (Irssi::active_win->{'active'}) {
  20 			$evaluated = Irssi::active_win->{'active'}->parse_special($word);
  21 		} elsif (Irssi::active_win->{'active_server'}) {
  22 			$evaluated = Irssi::active_win->{'active_server'}->parse_special($word);
  23 		} else {
  24 			$evaluated = Irssi::parse_special($word);
  25 		}
  26 		if ($evaluated ne '') {
  27 			push @$complist, $evaluated;
  28 		}
  29 	}
  30 };