DICT
{{Short description|Dictionary network protocol}}
{{About|a network protocol|the dict
data structure in PostScript, Erlang, Python, TCL, or etc. |associative array|the Philippine executive department|Department of Information and Communications Technology}}
{{Infobox networking protocol
| title = DICT
| logo =
| logo alt =
| image =
| image alt =
| caption =
| is stack = No
| abbreviation =
| purpose = Allow clients access to remote dictionaries
| developer = DICT Development Group
| date = {{Start date and age|1997|01|01}}
| based on =
| influenced =
| osilayer = Application layer (7)
| ports = 2628 (TCP)
| rfcs = {{IETF RFC|2229}} A Dictionary Server Protocol
}}
{{Confusing|date=June 2010}}
DICT is a dictionary network protocol created by the DICT Development Group{{cite web|url=http://www.dict.org/|title=dict.org|publisher=Dict.org|access-date=16 October 2014}} in 1997, described by
In section 3.2 of the DICT protocol RFC, queries and definitions are sent in clear-text, meaning that there is no encryption. Nevertheless, according to section 3.1 of the RFC, various forms of authentication (sans encryption) are supported, including Kerberos version 4.
The protocol consists of a few commands a server must recognize so a client can access the available data and lookup word definitions. DICT servers and clients use TCP port 2628 by default. Queries are captured in the following URL scheme:
dict://; @ : / : : : :
Resources for free dictionaries from DICT protocol servers
A repository of source files for the DICT Development group's dict protocol server (with a few sample dictionaries) is available online.{{cite web|title=dict.org: Resources|url=http://www.dict.org/links.html|url-status=dead|archive-url=https://web.archive.org/web/20200830164200/http://www.dict.org/links.html|archive-date=30 August 2020|access-date=11 September 2021|publisher=Dict.org}}
=Dictionaries of English=
- Bouvier's Law Dictionary, Revised 6th Ed (1856)
- CIA World Factbook
- Easton's Bible Dictionary (1897)
- Elements database
- Free On-line Dictionary of Computing
- GNU Collaborative International Dictionary of English (GCIDE)
- Hitchcock's Bible Names Dictionary
- Jargon File
- Moby Thesaurus
- Oxford Advanced Learner's Dictionary{{Citation needed|date=November 2011}}
- The Devil's Dictionary (1911)
- The U.S. Gazetteer{{cite web |url=http://www.census.gov/cgi-bin/gazetteer |title=U.S. Gazetteer |website=www.census.gov |access-date=13 January 2022 |archive-url=https://web.archive.org/web/19970101144813/http://www.census.gov/cgi-bin/gazetteer |archive-date=1 January 1997 |url-status=dead}} (1990 Census)
- V.E.R.A.{{cite web|url=http://www.delorie.com/gnu/docs/vera/vera.html|title=delorie.com|publisher=Delorie.com|access-date=16 October 2014}} – Virtual Entity of Relevant Acronyms which are used in the field of computing
- Webster's Revised Unabridged Dictionary (1913)
- WordNet
=Bilingual dictionaries=
- Big English–Russian Dictionary
- English–French dictionary
- Freedict provides a collection of over 85 translating dictionaries, as XML source files with the data, mostly accompanied by databases generated from the XML files in the format used by DICT servers and clients. These are available from the Freedict project web site at.{{cite web|url=http://freedict.org|title=freedict.org|author=|publisher=FreeDict Project|access-date=28 October 2017}}
- FREELANG Dictionary
- Lingvo English–Russian and Russian–English dictionaries are not free, but when purchased, can easily be converted into DICT format
- Mueller's English–Russian dictionary
- Slovak-English legal dictionary
- Slovak-Italian legal dictionary
DICT servers
- dictd{{Cite web|title=DICT Development Group|url=https://sourceforge.net/projects/dict/|access-date=2021-09-11|website=SourceForge|language=en}} (the standard server made by the DICT Development Group)
- DictD++{{cite web|url=https://www.ndl.kiev.ua/content/dictd|title=ndl.kie.ua|date=26 March 2010|publisher=Ndl.kiev.ua|access-date=16 October 2014}} – modern powerful server written in C++ with heavy usage of STL and boost (abandoned)
- GNU Dico{{cite web|url=https://www.gnu.org/software/dico/|title=gnu.org|publisher=Gnu.org|access-date=16 October 2014}}
- JDictd{{cite web|url=http://www.informatik.uni-leipzig.de/~duc/Java/JDictd/|title=informatik.uni-leipzig.de|author=Ho Ngoc Duc|publisher=Informatik.uni-leipzig.de|access-date=16 October 2014}} – a Java-based DICT server implementation (abandoned)
DICT clients
A dictd server can be used from Telnet. For example, to connect to the DICT server on localhost, on a Unix system one can normally type:
telnet localhost dict
and then enter the command "help" to see the available commands. The standard dictd package also provides a "dict" command for command-line use.
More sophisticated DICT clients include:
- cURL
- dictc (DICT Client){{cite web|title=DICT Client|url=http://sourceforge.net/projects/dictc/|url-status=live|archive-url=https://web.archive.org/web/20130505214912/http://sourceforge.net/projects/dictc/|archive-date=5 May 2013|access-date=11 September 2021|publisher=SourceForge}} client for Windows written in Delphi.
- dict.org's own client (part of the dictd package)
- dictem,{{cite web|url=http://sourceforge.net/projects/dictem|title=DictEm - Dictionary client for Emacs download|publisher=SourceForge|archive-url=https://web.archive.org/web/20151001133822/http://sourceforge.net/projects/dictem/|archive-date=1 October 2015}} for the Emacs text editor
- Dictionary, an application included with Mac OS X. Online dictionaries can be accessed by setting it as the helper for 'dict://' URI schemes.
- Fantasdic
- GNOME Dictionary, comes with GNOME
- GNU dico's own client (part of the dico package)
- Kdict, comes with KDE
- KTranslator, KDE dictionary
- MaemoDict,{{cite web|url=http://garage.maemo.org/projects/maemodict/ |title=garage: MaemoDict: Project Info |publisher=Garage.maemo.org |date= |access-date=2015-03-07}} for the Nokia 770
- MATE Dictionary (with accompanying applet)
- Mozdev.org's 'dict',{{cite web |author= |url=http://dict.mozdev.org/ |title=mozdev.org - dict: index |publisher=Dict.mozdev.org |date= |access-date=2015-03-07 |archive-date=2009-12-26 |archive-url=https://web.archive.org/web/20091226231904/http://dict.mozdev.org/ |url-status=dead }} a Firefox/Mozilla extension
- OKDict,{{cite web|url=http://www.kilargo.com/en/products/okdict |title=OKDict |publisher=Kilargo |date= |access-date=2015-03-07}} an OpenOffice.org extension
- OmniDictionary, for Mac OS X
- StarDict{{citation needed|reason=I can't get StarDict to connect to my local dictd or any other dictd, it seems to just offer its own dictionaries on its own protocol|date=March 2011}}
- ZopeDictDB{{cite web|url=http://www.pentila.com/produits/zopedictdb-product/|title=Presentation|publisher=Pentila|archive-url=https://web.archive.org/web/20081022174939/http://www.pentila.com/produits/zopedictdb-product/|archive-date=22 October 2008}} for Zope{{cite web|url=http://www.zope.org |title=Start — |publisher=Zope.org |date= |access-date=2015-03-07}} from Pentila{{cite web |url=http://www.pentila.com/ |title=Pentila Néro |publisher=Pentila.com |date= |access-date=2015-03-07 |archive-date=2007-02-05 |archive-url=https://web.archive.org/web/20070205181947/http://www.pentila.com/ |url-status=dead }}
- GoldenDict
- xfce4-dict, from the Xfce project{{Cite web|title=apps:xfce4-dict:start [Xfce Docs]|url=https://docs.xfce.org/apps/xfce4-dict/start|access-date=2022-01-27|website=docs.xfce.org}}
There are also programs that read the DICT file format directly. For example, S60Dict,{{cite web|url=http://users.forthnet.gr/ath/kgiannak/S60Dict.html|title=S60Dict|first=Kostas|last=Giannakakis|archive-url=https://web.archive.org/web/20130611225015/http://users.forthnet.gr/ath/kgiannak/S60Dict.html|archive-date=11 June 2013}} is a dictionary program for Symbian Series 60 that uses DICT dictionaries. Additionally, some DICT clients, such as Fantasdic, are also capable of reading the DICT format directly.
Dict file format
The standard dictd server made by the DICT Development Group uses a special dict file format. It comprises two files, a .index file and a .dict file (or .dict.dz if compressed). These files are usually generated by a program called dictfmt. For example, the Unix command:
dictfmt --utf8 --allchars -s "My Dictionary" -j mydict < mydict.txt
will compile a Unicode-compatible DICT file called mydict, with heading My Dictionary, from mydict.txt which is in Jargon File format i.e.:
:word1:definition 1
:word2:definition 2
etc.
Once the dictionary file has been produced, it can be easily installed on a server with commands similar to this:
mv mydict.dict mydict.index /usr/share/dictd/
/usr/sbin/dictdconfig—write
/etc/init.d/dictd restart
= Format converters =
- Linguae Software{{cite web|url=http://linguae.stalikez.info/ |title=Linguae, gestionnaire de dictionnaires |publisher=Linguae.stalikez.info |date= |access-date=2015-03-07}} is able to convert from/to wb, dict (stardict and dictd) csv, xdxf, txt, ini and ling (native) file formats, Linux, Windows and Mac OS X.
- XDXF{{cite web|author= |url=https://github.com/soshial/xdxf_makedict |title=soshial/xdxf_makedict · GitHub |publisher=Github.com |date= |access-date=2015-03-07}} XML Dictionary Exchange Format converts between various dictionary formats using pluggable codec architecture.
= dictzip =
In order to efficiently store dictionary data, dictzip, an extension to the gzip compression format (also the name of the utility), can be used to compress a .dict file.
Dictzip compresses file in chunks and stores the chunk index in the gzip file header, thus allowing random access to the data.
See also
References
{{Reflist}}
External links
- [https://datatracker.ietf.org/doc/html/rfc2229 RFC 2229] – Definition of the DICT protocol
- [http://www.dict.org dict.org] DICT Development Group. A WWW interface to several freely available on-line dictionaries.
- [https://servers.freedict.org/ DICT protocol server list] by the FreeDict project
{{URI scheme}}
{{DEFAULTSORT:Dict}}