Dictionary for websites in low-resource languages
# My Dictionary for Chrome
My Dictionary is a Chrome extension that allows you to quickly look up
definitions of words and phrases in a clean inline box. The definitions come
from Wiktionary, but have been preprocessed to reduce formatting and provide
faster lookup. Hold Alt and double-click or select any word to look it up - an
inline box will open to the dictionary entry of that word, usually including
examples, audio pronunciation and synonyms.
## Parts
The application is powered by three separate parts:
* The actual Chrome extension that is embedded in pages, queries the lookup
server for definitions and formats them for display. Written in Javascript.
* The lightweight lookup server script that receives word or phrase queries and
returns matches from a local database. It also does some trivial spelling
suggestions based on a a Soundex index. Written in PHP. The canonical server
is hosted on .
* The scripts which parse a Wiktionary dump and produce a database of machine
readable definitions appropriate for quick lookup. Written mainly in Python.
## Building
The extension itself, located in the `extension` subfolder, does not require
building - it can be loaded or packed into a CRX by Chrome as is.
The lookup server script, located in the `lookup_server` subfolder, does not
require building either. However, it expects the lookup database built by the
Wiktionary parser to be accessible - the database settings can be edited at the
top of the file (the `$MYSQL_*` variables).
The Wiktionary parser is a little more complicated. Here's a step-by-step guide
to running the whole thing:
1. Run `wiktionary_setup/build-mediawiki.sh` to create a MediaWiki installation
with the ExpandTemplates and ParserFunctions extensions and the additions
needed by the Wiktionary parser. This is a dummy server that is only used to
expand Wiktionary templates. You may need to edit the database settings in
`wiktionary_setup/build-mediawiki.sh` before running the script. Note that
t …