]> git.99rst.org Git - irssi-scripts.irssi.org.git/commitdiff
[google] remove google.pl
authorbw1 <redacted>
Sun, 2 Mar 2025 13:24:39 +0000 (14:24 +0100)
committerbw1 <redacted>
Sun, 2 Mar 2025 13:24:39 +0000 (14:24 +0100)
scripts/google.pl [deleted file]

diff --git a/scripts/google.pl b/scripts/google.pl
deleted file mode 100644 (file)
index 84de848..0000000
+++ /dev/null
@@ -1,224 +0,0 @@
-# - Google.pl
-use Irssi;
-use Getopt::Long qw/GetOptionsFromString/;
-use IPC::Open3;
-use JSON::PP;
-use strict;
-use vars qw($VERSION %IRSSI);
-
-$VERSION = '2.01';
-%IRSSI = (
-    authors     => 'bw1',
-    contact     => 'bw1@aol.at',
-    name        => 'google',
-    description => 'This script queries google.com with googler and returns the results.',
-    license     => 'Public Domain',
-    url                => 'https://scripts.irssi.org/',
-    modules => '',
-    commands=> 'google',
-    selfcheckcmd=> 'google -check',
-);
-
-my $help = << "END";
-%9Name%9
-  $IRSSI{name}
-%9Version%9
-  $VERSION
-%9Usage%9
-  /google [-N|-news] [-x|-exact] [-c|-tld TLD] [-l|-lang LANG]
-            [-n|-count N] [-s|-start] <KEYWORD>
-  /google {-h|-help}
-  /google {-p|-say N}
-  /google -check
-%9Description%9
-  $IRSSI{description}
-  first author: Oddbjørn Kvalsund
-%9Arguments%9
-  -N|-news      show results from news section
-  -x|-exact     disable automatic spelling correction
-  -c|-tld       country-specific search with top-level domain
-  -l|-lang      display in language LANG
-  -n|-count     show N results (default 10)
-  -s|-start     start at the Nth result
-  -h|-help      show this help message
-  -p|-say       say the N url in channel
-  -check        self check
-%9See also%9
-  https://github.com/jarun/googler
-END
-
-my ($copt, $tld, $lang, $count, $start, $chelp, $say, $check);
-my %options = (
-       'N'=> sub {$copt .= '--news '},
-       'news'=> sub {$copt .= '--news '},
-       'x'=> sub {$copt .= '--exact '},
-       'exact'=> sub {$copt .= '--exact '},
-       'c=s'=> \$tld,
-       'tld=s'=> \$tld,
-       'l=s'=> \$lang,
-       'lang=s'=> \$lang,
-       'n=o' => \$count,
-       'count=o' => \$count,
-       's=o' => \$start,
-       'start=o' => \$start,
-       'h' => \$chelp,
-       'help' => \$chelp,
-       'p=o' => \$say,
-       'say=o' => \$say,
-       'check' => \$check,
-);
-
-## Usage:
-## /google [-p, prints to current window] [-<number>, number of searchresults returned] search-criteria1 search-criteria2 ...
-##
-## History:
-## - Sun May 19 2002
-##   Version 0.1 - Initial release
-## - 2019-08-04
-##   Version 2.0 - Change to googler
-## - 2021-01-26
-##   Version 2.01 - self check
-## -------------------------------
-
-my (%readex, $instr, $errstr, @res);
-
-sub read_exec {
-       my ($cmd, $rfunc) = @_;
-
-       my ($in, $out, $err);
-       use Symbol 'gensym'; $err = gensym;
-       my $pid = open3($in, $out, $err, $cmd);
-       $readex{$pid}->{pid}=$pid;
-       $readex{$pid}->{cmd}=$cmd;
-       $readex{$pid}->{in}=$in;
-       $readex{$pid}->{out}=$out;
-       $readex{$pid}->{err}=$err;
-       $readex{$pid}->{rfunc}=$rfunc;
-
-       Irssi::pidwait_add($pid);
-}
-
-sub sig_read_exec {
-       my ($pid, $status) = @_;
-
-       if (defined $readex{$pid} ) {
-               my $out =$readex{$pid}->{out};
-               my $err =$readex{$pid}->{err};
-               my $rfunc =$readex{$pid}->{rfunc};
-
-               delete $readex{$pid};
-
-               my $old = select $out;
-               local $/;
-               $instr = <$out>;
-               select $old;
-
-               my $old = select $err;
-               local $/;
-               $errstr = <$err>;
-               $errstr =~ s/[\n\r]//g;
-               select $old;
-
-               &$rfunc() if (defined $rfunc);
-               if ( scalar(keys(%readex)) == 1 &&
-                               exists $readex{job}) {
-                       foreach my $j ( @{$readex{job}} ) {
-                               if ( ref( $j) eq 'CODE' ) {
-                                       &$j();
-                               } else {
-                                       eval( $j );
-                               }
-                       }
-                       delete $readex{job};
-               }
-               Irssi::signal_stop();
-       }
-}
-
-sub cmd {
-       my ($args, $server, $witem)=@_;
-       Getopt::Long::Configure('no_ignore_case');
-       my ($ret, $arg) = GetOptionsFromString($args, %options);
-       if ($ret) {
-               if (defined $chelp) {
-                       cmd_help($IRSSI{name}, $server, $witem);
-               } elsif (defined $say) {
-                       if ($say >0 && $say <= scalar(@res)) {
-                               Irssi::active_win()->command("say $res[$say-1]->{url}");
-                       }
-               } else {
-                       my $cmd="googler --json ";
-                       $cmd .="--tld $tld " if (defined $tld);
-                       $cmd .="--lang $lang " if (defined $lang);
-                       $cmd .="--count $count " if (defined $count);
-                       $cmd .="--start $start " if (defined $start);
-                       $cmd .="irssi " if (defined $check);
-                       $cmd .="$copt " if (defined $copt);
-                       $cmd .=join(" ",@{$arg});
-                       Irssi::print(">$cmd<", MSGLEVEL_CLIENTCRAP);
-                       read_exec($cmd ,\&print_all);
-               }
-       }
-       $copt=undef;
-       $tld=undef;
-       $lang=undef;
-       $count=undef;
-       $start=undef;
-       $chelp=undef;
-       $say=undef;
-}
-
-sub self_check {
-       my @r =@_;
-       my $s="ok";
-       $check=undef;
-       Irssi::print("Selfcheck: results: ".scalar @r);
-       Irssi::print("Selfcheck: url: ".$r[0]->{url});
-       Irssi::print("Selfcheck: title: ".$r[0]->{title});
-       if ( scalar(@r) < 6 ) {
-               $s="Error: results (".scalar @r.")";
-       } elsif ( $r[0]->{url} !~ m/^http/ ) {
-               $s="Error: url (".$r[0]->{url}.")";
-       } elsif ( length($r[0]->{title}) < 4) {
-               $s="Error: title (".$r[0]->{title}.")";
-       }
-       Irssi::print("Selfcheck: $s");
-       my $schs_version = $Irssi::Script::selfcheckhelperscript::VERSION;
-       Irssi::command("selfcheckhelperscript $s") if ( defined $schs_version );
-}
-
-sub print_all {
-       if( length($errstr) <1 ) {
-               @res= @{decode_json($instr)};
-               self_check(@res) if (defined $check);
-               Irssi::print("/---- google ----", MSGLEVEL_CLIENTCRAP);
-               my $c=1;
-               foreach my $r (@res) {
-                       my $s= sprintf("| %3d ",$c) . $r->{title};
-                       Irssi::print($s, MSGLEVEL_CLIENTCRAP);
-                       $s="|     ". $r->{url};
-                       Irssi::print($s, MSGLEVEL_CLIENTCRAP);
-                       $c++;
-               }
-               Irssi::print('\---- google ----', MSGLEVEL_CLIENTCRAP);
-       } else {
-               Irssi::print($errstr, MSGLEVEL_CLIENTCRAP);
-       }
-}
-
-sub cmd_help {
-       my ($args, $server, $witem)=@_;
-       $args=~ s/\s+//g;
-       if ($IRSSI{name} eq $args) {
-               Irssi::print($help, MSGLEVEL_CLIENTCRAP);
-               Irssi::signal_stop();
-       }
-}
-
-$ENV{PYTHONIOENCODING}='utf8';
-Irssi::signal_add('pidwait', 'sig_read_exec');
-
-Irssi::command_bind('google', 'cmd');
-my @opt=map {$_ =~ s/=.*$//, $_ } keys %options;
-Irssi::command_set_options($IRSSI{name}, join(" ", @opt));
-Irssi::command_bind('help', \&cmd_help);
git clone https://git.99rst.org/PROJECT