diff options
Diffstat (limited to 'history-search')
-rw-r--r-- | history-search/rl_history_search.pl | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/history-search/rl_history_search.pl b/history-search/rl_history_search.pl index eebb6c7..e6781db 100644 --- a/history-search/rl_history_search.pl +++ b/history-search/rl_history_search.pl @@ -91,12 +91,24 @@ sub script_is_loaded { } unless (script_is_loaded('uberprompt')) { - die "This script requires 'uberprompt.pl' in order to work. " - . "Please load it and try again"; -} else { + print "This script requires 'uberprompt.pl' in order to work. " + . "Attempting to load it now..."; + Irssi::signal_add('script error', \&load_uberprompt_failed); + Irssi::command("script load uberprompt.pl"); + unless(script_is_loaded('uberprompt')) { + load_uberprompt_failed("File does not exist"); + } history_init(); } +sub load_uberprompt_failed { + Irssi::sigal_remove('script error', \&load_prompt_failed); + print "Script could not be loaded. Script cannot continue. " + . "Check you have uberprompt.pl installed in your path and " + . "try again."; + die "Script Load Failed: " . join(" ", @_); +} + sub history_init { Irssi::settings_add_bool('history_search', 'histsearch_debug', 0); |