/
Lang.pm
48 lines (43 loc) · 1.06 KB
/
Lang.pm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/env perl
#@ Ricky Elrod - Lang.pm
#@ Modified: Wed Sep 23 20:02:55 EDT 2009
use warnings;
use strict;
use WebService::Google::Language;
#use XML::Simple; # Screw this, using the DICT protocol now.
use Net::Dict;
use URL;
use LWP::UserAgent;
package Lang;
use Data::Dumper;
sub translate {
# Three args: FROM, TO, TEXT
my $from = shift;
my $to = shift;
my $text = shift;
my $service = WebService::Google::Language->new(
'referer' => 'http://eighthbit.net',
'src' => $from,
'dest' => $to
);
my $result = $service->translate($text);
if($result->error){
return "An error has occured: ".$result->message;
} else {
return "`-> ".$result->translation;
}
}
sub define {
my $word = shift;
my $dict = Net::Dict->new('dict.org');
$dict->setDicts('wn', 'web1913');
my $proc = $dict->define($word);
my $definition = $proc->[0]->[1];
$definition =~ s/\n//g;
$definition =~ s/\r//g;
$definition =~ s/\t//g;
$definition =~ s/ +/ /g;
$definition = substr($definition, 0, 275);
return $definition;
}
1; # Make perl happy. :D