use strict;
use vars qw($VERSION %IRSSI);
-$VERSION = '20180321';
+$VERSION = '20210126';
%IRSSI = (
authors => 'Stefan \'tommie\' Tomanek, bw1',
contact => 'bw1@aol.at',
license => 'GPLv2',
url => 'http://irssi.org/scripts/',
modules => 'Mojo::UserAgent Encode JSON::PP Mojo::DOM Getopt::Long POSIX',
- commands => "leodict"
+ commands => "leodict",
+ selfcheckcmd=> 'leodict -chec',
);
use vars qw($forked);
use utf8;
my $word;
my $dir;
my $ddir= '';
+my $check;
# for fork
my $ftext;
-ru Russian
-pt Portuguese
-pl Polish
+ -chec selfcheck
SETTINGS
'leodict_default_options'
example: -it -from
sub show_translations($$) {
my %trans = %{$_[0]};
my $word = $_[1];
+ self_check(\%trans) if ( defined $check );
if (%trans) {
my $text;
foreach my $k (keys %trans) {
"h" => \$help,
"b" => \$browse,
"p" => \$paste,
+ "chec" => \$check,
);
sub cmd_leodict ($$$) {
undef $help;
undef $browse;
undef $paste;
+ undef $check;
my ($ret, $arg) = GetOptionsFromString($args, %options);
return unless defined $witem;
return unless defined $server;
translate($url, $witem->{name}, $witem->{server}->{tag});
+ } elsif (defined $check) {
+ $url=$burl.'englisch-deutsch/'.'tree'.$dir;
+ translate($url,'', '');
} else {
#show_translations($_);
translate($url,'', '');
}
}
+sub self_check {
+ my ( $tr ) =@_;
+ my $s='ok';
+ Irssi::print("selfcheck: categorys ".scalar( keys %$tr ));
+ my $count=0;
+ foreach my $n ( keys %$tr ) {
+ Irssi::print("selfcheck: category $n ".scalar( @{$tr->{$n}} ));
+ $count +=scalar( @{$tr->{$n}} );
+ }
+ Irssi::print("selfcheck: results $count");
+ if ( scalar( keys %$tr ) <4 ) {
+ $s='Error: categorys ('.scalar( keys %$tr ).')';
+ } elsif ( $count < 35 ) {
+ $s="Error: results ($count)";
+ }
+ Irssi::print("selfcheck: $s");
+ my $schs_version = $Irssi::Script::selfcheckhelperscript::VERSION;
+ Irssi::command("selfcheckhelperscript $s") if ( defined $schs_version );
+}
+
sub sig_setup_changed {
my $args =Irssi::settings_get_str('leodict_default_options');
my ($ret, $arg) = GetOptionsFromString($args, %options);