NAME
dict - DICT Protocol Client
SYNOPSIS
dict word
dict [options] [word]
dict [options] dict://host:port/d:word:database
dict [options] dict://host:port/m:word:database:strategy
DESCRIPTION
dict
is a client for the Dictionary Server Protocol (DICT), a TCP transaction
based query/response protocol that provides access to dictionary
definitions from a set of natural language dictionary databases.
OPTIONS
- -h server or --host server
-
Specifies the hostname for the DICT server. Server/port combinations can
be specified in the configuration file. If no servers are specified the
default behavior is to try dict.org, alt0.dict.org, alt1.dict.org, and
alt2.dict.org, in that order. If IP lookup for a server expands to a list
of IP addresses (as dict.org does currently), then each IP will be tried in
the order listed.
- -p service or --port service
-
Specifies the port (e.g., 2628) or service (e.g., dict) for connections.
The default is 2628, as specified in the DICT Protocol RFC. Server/port
combinations can be specified in the configuration file.
- -d dbname or --database dbname
-
Specifies a specific database to search. The default is to search all
databases (a "*" from the DICT protocol). Note that a "!" in the DICT
protocol means to search all of the databases until a match is found, and
then stop searching.
- -m or --match
-
Instead of printing a definition, perform a match using the specified
strategy.
- -s strategy or --strategy strategy
-
Specify a matching strategy. By default, the server default match strategy
is used. This is usually "exact" for definitions, and some form of
spelling-correction strategy for matches ("." from the DICT protocol).
The available strategies are dependent on the server implemenation. For
a list of available strategies, see the -S or --strats option.
- -C or --nocorrect
-
Usually, if a definition is requested and the word cannot be found,
spelling correction is requested from the server, and a list of possible
words are provided. This option disables the generation of this list.
- -c file or --config file
-
Specify the configuration file. The default is to try
~/.dictrc
and
/etc/dict.conf,
using the first file that exists. If a specific configuration file is
specified, then the defaults will not be tried.
- -D or --dbs
-
Query the server and display a list of available databases.
- -S or --strats
-
Query the server and display a list of available search strategies.
- -H or --serverhelp
-
Query the server and display the help information that it provides.
- -i dbname or --info dbname
-
Request information on the specified database (usually the server will
provide origination, descriptive, or other information about the database
or its contents).
- -I or --serverinfo
-
Query the server and display information about the server.
- -a or --noauth
-
Disable authentication (i.e., don't send an AUTH command).
- -u user or --user user
-
Specifies the username for authentication.
- -k key or --key key
-
Specifies the shared secret for authentication.
- -V or --version
-
Display version information.
- -L or --license
-
Display copyright and license information.
- --help
-
Display help information.
- -v or --verbose
-
Be verbose.
- -r or --raw
-
Be very verbose: show the raw client/server interaction.
- -P program or --pager program
-
Specify program to use as pager. Use "-" for none.
- --pipesize
-
Specify the buffer size for pipelineing commands. The default is 256,
which should be sufficient for general tasks and be below the MTU for most
transport media. Larger values may provide faster or slower throughput,
depending on MTU. If the buffer is too small, requests will be
serialized. Values less than 0 and greater than one million are silently
changed to something more reasonable.
- --client text
-
Specifies additional text to be sent using the CLIENT command.
- --debug flag
-
Set a debugging flag. Valid flags are:
-
- verbose
-
The same as
-v or --verbose.
- raw
-
The same as
-r or --raw.
- scan
-
Debug the scanner for the configuration file.
- parse
-
Debug the parser for the configuration file.
- pipe
-
Debug TCP pipelining support (see the DICT RFC and RFC1854).
- serial
-
Disable pipelining support.
- time
-
Perform transaction timing.
CONFIGURATION
The configuration file currently has a very simple format. Lines are used
to specify servers, for example:
-
server dict.org
or, with options:
-
server dict.org { port 8080 }
server dict.org { user username secret }
server dict.org { port dict user username secret }
the
port
and
user
options may be specified in any order. The
port
option is used to specify an optional port (e.g., 2628) or service (e.g.,
dict) for the TCP/IP connection. The
user
option is used to specify a username and shared secret to be used for
authentication to this particular server.
Servers are tried in the order listed until a connection is made. If none
of the specified servers are available, then an attempt will be made to
connect on
localhost
and on
dict.org
at the standard part (2628). We expect that dict.org will point to one or
more DICT servers (perhaps in round-robin fashion) for the foreseeable
future (starting in July 1997), although it is difficult to predict
anything on the Internet for more than about 3-6 months.
The configuration file also allows the setting of a pager (keyword
pager),
similar to the
--pager
option.
CREDITS
dict
was written by Rik Faith (
faith@cs.unc.edu) and is distributed under the
terms of the GNU General Public License. If you need to distribute under
other terms, write to the author.
The main libraries used by this programs (zlib, regex, libmaa) are
distributed under different terms, so you may be able to use the libraries
for applications which are incompatible with the GPL -- please see the
copyright notices and license information that come with the libraries for
more information, and consult with your attorney to resolve these issues.
BUGS
If a
dict:
URL is given on the command line, only the first one is used. The rest are
ignored.
If a
dict:
URL contains a specifier for the nth definition or match of a word, it will
be ignored and all the definitions or matches will be provided. This
violates the RFC, and will be corrected in a future release.
If a
dict:
URL contains a shared secret, it will not be parsed correctly.
FILES
~/.dictrc
/etc/dict.conf
SEE ALSO
dictd(8),
dictzip(1),
http://www.dict.org,
RFC 2229
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- OPTIONS
-
- CONFIGURATION
-
- CREDITS
-
- BUGS
-
- FILES
-
- SEE ALSO
-