I explained my need for an English dictionary when I wrote about my own [helm-wordnut]({% post_url 2020-06-13-helm-wordnut %}). To sum it up: my English is good but it’s not David Foster Wallace good, so a dictionary is mandatory.
Last October Torsten Hilbrich added dictionary-el to Emacs master so, in my
quest for a Vanilla Emacs appreciation, I decided to give it a try. According to
the first line of dictionary.el
this library is a client for RFC 2229 dictionary
servers, which as the RFC says, rely on the DICT protocol:
The DICT protocol is designed to provide access to multiple databases. Word definitions can be requested, the word index can be searched (using an easily extended set of algorithms), information about the server can be provided (e.g., which index search strategies are supported, or which databases are available), and information about a database can be provided (e.g., copyright, citation, or distribution information). Further, the DICT protocol has hooks that can be used to restrict access to some or all of the databases.
This is very useful because it means that one can collect different definitions from various dictionary and possibly compare synonyms.
This is how I set up dictionary.el
in my init.el
:
(global-set-key (kbd "C-c d") #'dictionary-search)
(setq dictionary-server "dict.org")
dictionary-search
cleverly picks up the word at point which means that when I
hit C-c d RET
on a word I don’t know I get a *Dictionary*
buffer with entries
coming from:
- The Collaborative International Dictionary of English
- WordNet
- Moby Thesaurus II
There is much more in dictionary.el
, though. I counted 17 defcustom
s for
starters, so go on and tweak it like any Emacs hacker would do. As for me, the
couple of ELisp lines above are adequate.