[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [volume] [parte]
Esistono diversi tipi di dizionario che spesso sono disponibili in forma di file di testo, redatti secondo un certo standard. Non si tratta esclusivamente di dizionari per le traduzioni, ma si possono includere quelli per i sinonimi, quelli specifici per un certo settore tecnico, fino a quelli biblici.
Per accedere a tutti i dizionari disponibili presso un elaboratore, si usa generalmente un programma demone, a cui si accede attraverso la rete, precisamente secondo il protocollo DICT (Dictionary server protocol) descritto dal documento RFC 2229. Naturalmente, i file contenenti i dizionari, devono essere realizzati secondo il formato atteso dal demone stesso. Di solito si considera il programma dictd per questo scopo.
|
Il programma che di solito si usa come servente DICT è Dictd(1) oppure Serpento(2) (il secondo sembra avere una gestione migliore dell'insieme di caratteri universale).
dictd |
serpento |
Il programma, sia dictd, sia serpento, salvo indicazioni differenti nella sua configurazione, si collega ai file che dovrebbero trovarsi nella directory /usr/share/dictd/
e si mette in ascolto della porta 2 628/TCP.
I file in questione devono essere conformi a quanto atteso dai programmi. Nel caso della distribuzione GNU/Linux Debian, i dizionari sono distribuiti in pacchetti separati, il cui nome inizia per dict-.
Per comprendere l'utilità del servizio DICT, prima di avvicinarsi all'uso dei programmi clienti che possono servirsene, conviene provare a utilizzare direttamente il protocollo, con i suoi comandi principali. Ciò consente anche di verificare il funzionamento del servizio. Per l'interrogazione diretta, si può usare Netcat o Telnet:
netcat nodo 2628 |
telnet nodo 2628 |
Ecco come si potrebbe usare Telnet per accedere all'elaboratore locale, presso il quale è in funzione Serpento:
$
telnet localhost 2628
[Invio]
Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. 220 hello <> msg |
SHOW SERVER
[Invio]
114 server information follows serpento . 250 Command complete |
QUIT
[Invio]
221 bye bye Connection closed by foreign host. |
Prima di vedere i comandi più importanti, è necessario chiarire il significato di alcune definizioni che si rifanno a quanto scritto nel documento RFC 2229.
Ogni dizionario viene considerato costituire una «base di dati», ma qui non si usa questa dizione che sembra impropria.
La ricerca di un termine avviene attraverso un confronto, il cui metodo può cambiare in base alla necessità. Per esempio si può cercare una corrispondenza esatta, oppure una corrispondenza fonetica. Il metodo di confronto di una ricerca viene definito «strategia»; qui si fa riferimento al metodo di ricerca.
La tabella successiva mostra la sintassi, semplificata di alcuni comandi.
Segue la descrizione di alcuni esempi, partendo dalle interrogazioni necessarie a conoscere quali sono i dizionari disponibili.
SHOW DB
[Invio]
110 57 databases here ... freedict-iri-eng "freedict-iri-eng" freedict-eng-lat "freedict-eng-lat" freedict-deu-ita "freedict-deu-ita" freedict-deu-por "freedict-deu-por" . 250 Command complete |
SHOW STRAT
[Invio]
111 9 strategies here soundex "Match using SOUNDEX algorithm" suffix "Match suffixes" metaphone "metaphone algorithm" substring "Match substring occurring anywhere in word" re "POSIX 1003.2 regular expressions" prefix "Match prefixes" lev "Match words within Levenshtein distance one" fnmatch "fnmatch-like (* ? as wildcards)" exact "Match words exactly" . 250 Command complete |
I metodi di ricerca exact e prefix sono obbligatori, nel senso che devono essere sempre presenti, secondo quanto stabilito dal documento RFC 2229.
DEFINE ! ciao
[Invio]
In questo caso si chiede la definizione (la corrispondenza esatta) della parola «ciao» con il primo dizionario disponibile:
150 1 here you are 151 "ciao" freedict-eng-cro "freedict-eng-cro" ciao ćao . 250 Command complete |
In questo caso è stata ottenuta la traduzione dall'inglese al croato.
DEFINE * ciao
[Invio]
Questa volta si vuole la definizione della parola da tutti i dizionari disponibili; qui si vedono gli ultimi due:
150 5 here you are ... 151 "ciao" freedict-eng-ara "freedict-eng-ara" Ciao مرحبًا أو إلى اللّقاء . 151 "ciao" freedict-ita-eng "freedict-ita-eng" ciao hello . 250 Command complete |
MATCH ! soundex amore
[Invio]
Viene cercata la parola «amore», attraverso il metodo di ricerca (strategia) soundex, limitando l'interesse al primo dizionario che contenga almeno una corrispondenza valida:
152 9 here you are freedict-fra-eng "animer" freedict-fra-eng "amener à" freedict-fra-eng "anar" freedict-fra-eng "aimer" freedict-fra-eng "amer" freedict-fra-eng "amour" freedict-fra-eng "aumônier" freedict-fra-eng "annuaire" freedict-fra-eng "amener" . 250 Command complete |
Eventualmente, dopo si può fare una ricerca con il comando DEFINE, specificando anche il dizionario, per avere maggiori indicazioni su una parola dell'elenco trovato.
Dict(3) è il programma più comune per l'interrogazione di un servizio DICT. Si usa a riga di comando, ma proprio per questo è molto semplice ed efficace:
dict [opzioni] parola |
dict [opzioni] dict://nodo/d:parola[:dizionario] |
dict [opzioni] dict://nodo/m:parola[:dizionario[:modalità_di_ricerca]] |
La prima forma di utilizzo del programma implica la ricerca della parola indicata presso il servente o i serventi indicati nella configurazione (salvo indicazione diversa attraverso le opzioni); la seconda richiede una ricerca presso un elaboratore stabilito, utilizzando un confronto completo (l'equivalente del comando DEFINE del protocollo DICT); l'ultima richiede una ricerca presso un elaboratore stabilito, utilizzando un confronto che non sia necessariamente esatto (l'equivalente del comando MATCH del protocollo DICT).
Il file di configurazione generale di Dict può essere, a seconda dei sistemi, /etc/dict.conf
, oppure /etc/dictd/dict.conf
; il file di configurazione personale di ogni utente è ~/.dictrc
. La configurazione serve a specificare i serventi predefiniti, aggiungendo eventualmente indicazioni sulla porta TCP da utilizzare, nel caso non sia quella standard:
server nodo [port n_porta] |
Eventualmente sono disponibili altre opzioni nella direttiva server nei casi in cui l'accesso al servente richieda una forma di autenticazione. È normale trovare queste due direttive nel file di configurazione:
|
In pratica, si cerca prima un servizio DICT localmente, altrimenti si interroga quello fornito da dict.org
.
|
Segue la descrizione di alcuni esempi.
$
dict -D
[Invio]
Databases available: ... freedict-iri-eng freedict-iri-eng freedict-eng-lat freedict-eng-lat gazetteer2k-places gazetteer2k-places freedict-deu-ita freedict-deu-ita freedict-por-deu freedict-por-deu freedict-deu-por freedict-deu-por |
$
dict -S
[Invio]
Strategies available: soundex Match using SOUNDEX algorithm suffix Match suffixes metaphone metaphone algorithm substring Match substring occurring anywhere in word re POSIX 1003.2 regular expressions prefix Match prefixes lev Match words within Levenshtein distance one fnmatch fnmatch-like (* ? as wildcards) exact Match words exactly |
I metodi di ricerca exact e prefix sono obbligatori, nel senso che devono essere sempre presenti, secondo quanto stabilito dal documento RFC 2229.
$
dict \! ciao
[Invio]
In questo caso si chiede la definizione (la corrispondenza esatta) della parola «ciao» con il primo dizionario disponibile. Il punto esclamativo appare preceduto dalla barra obliqua inversa perché altrimenti la shell lo interpreterebbe con un significato speciale.
1 definition found From freedict-eng-cro [freedict-eng-cro]: ciao ćao |
In questo caso è stata ottenuta la traduzione dall'inglese al croato.
$
dict -d \* ciao
[Invio]
Questa volta si vuole la definizione della parola da tutti i dizionari disponibili (anche in questo caso la barra obliqua inversa, che precede l'asterisco, serve a evitare che la shell interpreti l'asterisco in modo speciale); qui si vedono gli ultimi due:
6 definitions found ... From freedict-eng-ara [freedict-eng-ara]: Ciao مرحبًا أو إلى اللّقاء From freedict-ita-eng [freedict-ita-eng]: ciao hello |
$
dict ciao
[Invio]
Si ottiene esattamente la stessa cosa del comando precedente; poiché, se non si specifica il dizionario, vengono scanditi tutti.
$
dict -m -s soundex amore
[Invio]
Viene cercata la parola «amore», attraverso il metodo di ricerca (strategia) soundex, su tutti i dizionari disponibili:
gcide: Aimer Ameer Amir Amorwe Amour Anear Annoyer Annuary Anoura anoura Anura anuria Anury Anywhere Aumery wn: ameer Amhara amir Amor amora amour Amur annoyer Anura anuria anywhere moby-thes: Amor amour vera: amr anhr anr jargon: annoyware foldoc: annoyware anr easton: Amariah Aner hitchcock: Amariah Aner gazetteer: Amery Amory Anmoore Aynor gaz-place: Amery "Amery, WI" Amory Anmoore Aynor |
Eventualmente, dopo si può fare una ricerca normale (come «definizione»), specificando anche il dizionario, per avere maggiori indicazioni su una parola dell'elenco trovato.
$
dict -D -h dict.org
[Invio]
Elenca i dizionari disponibili presso l'elaboratore dict.org
:
Databases available: ... english English Monolingual Dictionaries trans Translating Dictionaries all All Dictionaries (English-Only and Translating) web1913 Webster's Revised Unabridged Dictionary (1913) world95 The CIA World Factbook (1995) |
$
dict -S -h dict.org
[Invio]
Strategies available: exact Match headwords exactly prefix Match prefixes substring Match substring occurring anywhere in a headword suffix Match suffixes re POSIX 1003.2 (modern) regular expressions regexp Old (basic) regular expressions soundex Match using SOUNDEX algorithm lev Match headwords within Levenshtein distance one word Match separate words within headwords |
$
dict dict://dict.org/d:ciao
[Invio]
Si chiede la definizione (la corrispondenza esatta) della parola «ciao» con tutti i dizionari disponibili presso dict.org
.
1 definition found From WordNet (r) 2.0 [wn]: ciao n : an acknowledgment that can be used to say hello or goodbye (aloha is Hawaiian and ciao is Italian) [syn: {aloha}] |
$
dict dict://dict.org/d:love:easton
[Invio]
Cerca la definizione della parola «love» nel dizionario easton, presso dict.org
:
1 definition found From Easton's 1897 Bible Dictionary [easton]: Love This word seems to require explanation only in the case of its use by our Lord in his interview with "Simon, the son of Jonas," after his resurrection (John 21:16, 17). When our Lord says, "Lovest thou me?" he uses the Greek word _agapas_; and when Simon answers, he uses the Greek word _philo_, i.e., "I love." This is the usage in the first and second questions put by our Lord; but in the third our Lord uses Simon's word. The distinction between these two Greek words is thus fitly described by Trench:, "_Agapan_ has more of judgment and deliberate choice; _philein_ has more of attachment and peculiar personal affection. Thus the 'Lovest thou' (Gr. agapas) on the lips of the Lord seems to Peter at this moment too cold a word, as though his Lord were keeping him at a distance, or at least not inviting him to draw near, as in the passionate yearning of his heart he desired now to do. Therefore he puts by the word and substitutes his own stronger 'I love' (Gr. philo) in its room. A second time he does the same. And now he has conquered; for when the Lord demands a third time whether he loves him, he does it in the word which alone will satisfy Peter ('Lovest thou,' Gr. phileis), which alone claims from him that personal attachment and affection with which indeed he knows that his heart is full." In 1 Cor. 13 the apostle sets forth the excellency of love, as the word "charity" there is rendered in the Revised Version. |
$
dict dict://dict.org/m:amore:\*:soundex
[Invio]
Viene cercata la parola «amore», attraverso il metodo di ricerca (strategia) soundex, su tutti i dizionari disponibili, presso dict.org
:
gcide: Aimer Ameer Amir Amorwe Amour Anear Annoyer Annuary Anoura anoura Anura anuria Anury Anywhere Aumery wn: ameer Amhara amir Amor amora amour Amur annoyer Anura anuria anywhere moby-thes: Amor amour vera: amr anhr anr jargon: annoyware foldoc: annoyware anr easton: Amariah Aner hitchcock: Amariah Aner gazetteer: Amery Amory Anmoore Aynor gaz-place: Amery "Amery, WI" Amory Anmoore Aynor |
wordtrans(1)(4)
Si tratta di un programma analogo a Dict, che può consultare direttamente alcuni dizionari in forma di file di testo, che possiede anche una versione grafica. Nelle sue versioni iniziali ha dei problemi con la codifica UTF-8.
DICT.org
RFC 2229: A dictionary server protocol, 1997
Appunti di informatica libera 2007.02 --- Copyright © 2000-2007 Daniele Giacomini -- <daniele (ad) swlibero·org>
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome dizionari.htm
[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico]