diff options
Diffstat (limited to 'prompt_info/prompt_info.pl')
-rw-r--r-- | prompt_info/prompt_info.pl | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/prompt_info/prompt_info.pl b/prompt_info/prompt_info.pl deleted file mode 100644 index 8ad63ba..0000000 --- a/prompt_info/prompt_info.pl +++ /dev/null @@ -1,114 +0,0 @@ -# Usage: - -# edit your theme, find the line beginning: -# -# prompt = "..." -# -# and add the string `$prompt_additional' somewhere inside it. -# If using the default: prompt = "[$*] ", then a good value would be: -# -# prompt = "[$*$prompt_additional] " -# -# Then place this script to your ~/.irssi/scripts directory (~/.irssi/scripts/) -# and symlink it to the ~/.irssi/scripts/autorun directory (which may need to -# be created first) -# -# You can also load it manually once the theme has been edited via -# -# /script load prompt_info.pl -# -# You will also need to reload your theme with the following command: -# -# /script exec Irssi::themes_reload() -# -# Once loaded, you can modify your prompt content by using the following command: -# -# /set_prompt <string> -# -# You can also use it from other scripts by issuing a signal as follows: -# -# Irssi:signal_emit('change prompt', -# -# report bugs / feature requests to http://github.com/shabble/irssi-scripts/issues -# -# NOTE: it does not appear to be possible to use colours in your prompt at present. -# This is unlikely to change without source-code changes to Irssi itself. - -use strict; -use warnings; - -use Irssi; -use Irssi::TextUI; # for sbar_items_redraw - -use vars qw($VERSION %IRSSI); -$VERSION = "1.0.1"; -%IRSSI = - ( - authors => "shabble", - contact => 'shabble+irssi@metavore.org, shabble@#irssi/Freenode', - name => "prompt_info", - description => "Helper script for dynamically adding text " - . "into the input-bar prompt.", - license => "Public Domain", - changed => "24/7/2010" - ); - -#sub DEBUG () { 1 } -sub DEBUG () { 0 } - - -my $prompt_additional_content = ''; - -Irssi::expando_create('prompt_additional', \&expando_prompt, {}); - -sub expando_prompt { - my ($server, $witem, $arg) = @_; - return $prompt_additional_content; - #return Irssi::current_theme->format_expand("{sb - #$prompt_additional_content}", 0x0f); -} - -sub redraw_prompts { - Irssi::statusbar_items_redraw ('prompt'); - Irssi::statusbar_items_redraw ('prompt_empty'); -} - -sub handle_change_prompt_sig { - my ($text) = @_; - - my $expanded_text = Irssi::parse_special($text); - - print "Got prompt change sig with: $text -> $expanded_text" if DEBUG; - - my $changed = ($expanded_text ne $prompt_additional_content); - - $prompt_additional_content = $expanded_text; - - if ($changed) { - print "Redrawing prompts" if DEBUG; - redraw_prompts(); - } -} - -sub prompt_additional_cmd { - my ($str) = @_; - print "Setting prompt to: $str" if DEBUG; - Irssi::signal_emit('change prompt', $str); -} - -test_abstract_setup(); -Irssi::signal_register({'change prompt' => [qw/string/]}); -Irssi::signal_add('change prompt' => \&handle_change_prompt_sig); - -Irssi::command_bind('set_prompt' => \&prompt_additional_cmd); - -sub test_abstract_setup { - my $theme = Irssi::current_theme(); - my $prompt = $theme->format_expand('{prompt}', 0); - if ($prompt !~ m/\$prompt_additional/) { - print "Prompt_Info: It looks like you haven't modified your theme" - . " to include the \$prompt_additional expando. You will not see" - . " any prompt info messages until you do. See script comments" - . "for details"; - } -} |