From 4c4148d13c12d1b1b15d6bc996aae109c4130e9f Mon Sep 17 00:00:00 2001 From: Tom Feist Date: Tue, 11 Oct 2011 22:45:11 +0100 Subject: added a bunch of feature_test stuff that I've forgotten to add. Nothing interesting really. --- feature-tests/error.pl | 16 +++++++ feature-tests/incomplete.pl | 108 ++++++++++++++++++++++++++++++++++++++++++++ feature-tests/lowlight.pl | 80 ++++++++++++++++++++++++++++++++ random/ignore-autovoice.pl | 88 ++++++++++++++++++++++++++++++++++++ 4 files changed, 292 insertions(+) create mode 100644 feature-tests/error.pl create mode 100644 feature-tests/incomplete.pl create mode 100644 feature-tests/lowlight.pl create mode 100644 random/ignore-autovoice.pl diff --git a/feature-tests/error.pl b/feature-tests/error.pl new file mode 100644 index 0000000..5507910 --- /dev/null +++ b/feature-tests/error.pl @@ -0,0 +1,16 @@ +use Irssi; +our $VERSION = '0.1'; +our %IRSSI = ( + authors => 'shabble', + contact => 'shabble+irssi@metavore.org', + name => '', + description => '', + license => 'MIT', + updated => '$DATE' + ); + +Irssi::timeout_add_once(1000, 'die_horribly', undef); + +sub die_horribly { + die "Oh noes, I broke!"; +} diff --git a/feature-tests/incomplete.pl b/feature-tests/incomplete.pl new file mode 100644 index 0000000..022aebe --- /dev/null +++ b/feature-tests/incomplete.pl @@ -0,0 +1,108 @@ +=pod + +=head1 NAME + +template.pl + +=head1 DESCRIPTION + +A minimalist template useful for basing actual scripts on. + +=head1 INSTALLATION + +Copy into your F<~/.irssi/scripts/> directory and load with +C>. + +=head1 USAGE + +None, since it doesn't actually do anything. + +=head1 AUTHORS + +Copyright E 2011 Tom Feist Cshabble+irssi@metavore.orgE> + +=head1 LICENCE + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +=head1 BUGS + +=head1 TODO + +Use this template to make an actual script. + +=cut + +use strict; +use warnings; + +use Irssi; +use Irssi::Irc; +use Irssi::TextUI; + +use Data::Dumper; + +our $VERSION = '0.1'; +our %IRSSI = ( + authors => 'shabble', + contact => 'shabble+irssi@metavore.org', + name => '', + description => '', + license => 'MIT', + updated => '$DATE' + ); + +my $completions = { + 'horse' => ['horsie', 0], + 'pig' => ['piggy', 1], + 'fruit bat' => ['multi word string?', 1], + 'what' => ['stop that', 0], + + } + +sub init { + Irssi::settings_add_str('incomplete', 'incomplete_database', + Irssi::get_irssi_dir() . '/incomplete.db'); + + + Irssi::signal_add_first 'complete word', \&sig_complete_word; +} + +sub sig_complete_word { + my ($completions, $win, $word, $prefix, $want_space) = @_; + + my $str = $prefix . $word; + foreach my $candidate (keys %$completions) { + if ($str =~ m/\Q$candidate\E\s*$/) { + + } + } + $$want_space = 0; + +} + + +sub load_db { + +} + +sub save_db { + +} +init(); diff --git a/feature-tests/lowlight.pl b/feature-tests/lowlight.pl new file mode 100644 index 0000000..1bad477 --- /dev/null +++ b/feature-tests/lowlight.pl @@ -0,0 +1,80 @@ +=pod + +=head1 NAME + +template.pl + +=head1 DESCRIPTION + +A minimalist template useful for basing actual scripts on. + +=head1 INSTALLATION + +Copy into your F<~/.irssi/scripts/> directory and load with +C>. + +=head1 USAGE + +None, since it doesn't actually do anything. + +=head1 AUTHORS + +Copyright E 2011 Tom Feist Cshabble+irssi@metavore.orgE> + +=head1 LICENCE + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +=head1 BUGS + +=head1 TODO + +Use this template to make an actual script. + +=cut + +use strict; +use warnings; + +use Irssi; +use Irssi::Irc; +use Irssi::TextUI; + +use Data::Dumper; + +our $VERSION = '0.1'; +our %IRSSI = ( + authors => 'shabble', + contact => 'shabble+irssi@metavore.org', + name => '', + description => '', + license => 'MIT', + updated => '$DATE' + ); + + +Irssi::signal_add_first 'print text', \&sig_print_text; +#Irssi::signal_add '', + + +sub sig_print_text { + my ($dest, $text, $stripped_text) = @_; + + Irssi::signal_continue($dest, $text, $stripped_text); +} diff --git a/random/ignore-autovoice.pl b/random/ignore-autovoice.pl new file mode 100644 index 0000000..82336e5 --- /dev/null +++ b/random/ignore-autovoice.pl @@ -0,0 +1,88 @@ + +=pod + +=head1 NAME + +ignore-autovoice.pl + +=head1 DESCRIPTION + +Ignores C<+m> mode changes in all (or a custom subset) of your channels, to avoid +mode-spam without ignoring all modes. + +=head1 INSTALLATION + +Copy into your F<~/.irssi/scripts/> directory and load with +C>. + +=head1 USAGE + +TODO + +=head1 AUTHORS + +Copyright E 2011 Tom Feist Cshabble+irssi@metavore.orgE> + +=head1 LICENCE + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +=head1 BUGS + +=head1 TODO + + +=cut + +use strict; +use warnings; + +use Irssi; +use Irssi::Irc; +use Irssi::TextUI; + +use Data::Dumper; + +# Question: how to mark a signal in one event and apply actions to it later on? +# TODO: make this a generic 'some modes only' thing. +our $VERSION = '0.1'; +our %IRSSI = ( + authors => 'shabble', + contact => 'shabble+irssi@metavore.org', + name => 'ignore-autovoice', + description => 'ignores autovoice +m mode changes', + license => 'MIT', + updated => '$DATE' + ); + + +sub init { + + Irssi::settings_add_string('ignore-autovoice', ' + Irssi::signal_add('setup changed', \&sig_setup_changed); + Irssi::signal_add(''); +} + +sub sig_setup_changed { + +} + +sub sig_mode_changed { + +} -- cgit v1.2.3