use strict; use vars qw($VERSION %IRSSI); use Irssi::TextUI; # use Data::Dumper; $VERSION = "0.1"; %IRSSI = ( authors => "Pontus Lundkvist", contact => "/msg plundra on freenode/ircnet/efnet", name => "myprompt", description => "The prompt-item, done MY way", license => "Who cares", url => "http://rory.bsnet.se", ); sub myprompt { my ($item, $get_size_only) = @_; my ($cur_name, $cur_num, $chan) = ""; $cur_name = Irssi::active_win()->{'active'}->{'visible_name'}; $cur_num = Irssi::active_win()->{'refnum'}; # $chan = ""; if ($cur_name =~ /^(#+)(.*)$/) { $chan = $1; $cur_name = $2; } # $cur_name = substr($cur_name, 1) if($chan = ($cur_name =~ /^#/)); $item->default_handler($get_size_only, undef, "$cur_num $cur_name $chan", 1 ); } sub refresh_prompt { Irssi::statusbar_items_redraw('myprompt'); } Irssi::statusbar_item_register('myprompt', '{prompt $0 $1 $2}', 'myprompt'); # Irssi::statusbar_item_register('myprompt', "%%K(%r$0%K)%R$1 }" , 'myprompt'); Irssi::statusbars_recreate_items(); Irssi::signal_add_last('window changed', 'refresh_prompt');