#!/usr/bin/perl -w # # portugueses.pl - example showing access to a translation dictionary # # DICT can also be used to provide translation dictionaries. # # Here we connect to a server which has an English->Portuguese # dictionary: natura.di.uminho.pt # # We select the specific dictionary, and then prompt the user # for words, displaying the translation back. # # This is based on an example from Jose Joao Dias de Almeida <jj@di.uminho.pt> # # $Id: portuguese.pl,v 1.1.1.1 2003/04/26 22:59:11 neilb Exp $ # use Net::Dict; use utf8; my $dict; my $host = 'natura.di.uminho.pt'; my $prompt = "english> "; my $database = 'eng-por'; my $entry; my $db; my $translation; #----------------------------------------------------------------------- # Turn off buffering on STDOUT #----------------------------------------------------------------------- $| = 1; #----------------------------------------------------------------------- # Create instance of Net::Dict, connecting to the server #----------------------------------------------------------------------- print "Connecting to $host ..."; $dict = Net::Dict->new($host); $dict->setDicts($database); #----------------------------------------------------------------------- # Let the user repeatedly enter words, which we then look up. #----------------------------------------------------------------------- print $prompt; while(<>) { chomp; next unless $_; $eref = $dict->define($_); if (@$eref == 0) { print " no translation for \"$_\"\n"; } else { foreach $entry (@$eref) { ($db, $translation) = @$entry; $translation =~ y/[\200-\377]/[\200-\377]/UC; print "$db--------\n",$translation; } } print $prompt; }