DICT


DICT is a dictionary network protocol created by the DICT Development Group. It is described by RFC 2229, published in 1997. Its goal is to surpass the Webster protocol and to allow clients to access more dictionaries during use. DICT servers and clients use TCP port 2628.

Resources for free dictionaries from DICT protocol servers

The standard dictd server made by the DICT Development Group uses a special DICT file format, although other dictd servers may optionally use other file formats.
Dictionaries in the standard DICT file format are made up of two files, a.index file and a.dict file. These files are not usually written manually but are compiled 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, installing it in the server is normally a matter of typing something like:
mv mydict.dict mydict.index /usr/share/dictd/
/usr/sbin/dictdconfig -—write
/etc/init.d/dictd restart

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:
There are also programs that read the DICT file format directly. For example, S60Dict, 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 converters

In order to efficiently store dictionary data, dictzip, an extension to the gzip compression format, 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.