Edict

From WikEmacs
Revision as of 02:41, 31 March 2012 by Xophist (talk | contribs) (cleaned up stray text)
Jump to navigation Jump to search

The elisp package edict.el is an instance of Lookup. It is often referred to simply as edict, which is confusing because it is associated with Edict, the Japanese dictionary. The lisp package can work with other dictionaries.

edict.el allows searching a local dictionary (e.g. Edict, Kanjidic) for character at point or a region. Search results are displayed in an Emacs buffer.

Usage

  • M-x edict-search-english (prompts for word to search for)
  • M-x edict-search-kanji (first highlight a character or sequence)

Package availability

Linux

There are SUSE Linux RPMs for both edict.el and EDICT (the Japanese-English dictionary). Note that you can create your own dictionary, or use other dictionaries.

To find the RPMs:Search for edict

  • edict-emacs-0.9.8-972.2 edict.el, an Emacs Front-end for EDICT
  • edict-20060807-136.2 The Japanese Dictionary Files for Jim Breen's EDICT Project

Windows XP

The Suse RPMs can also be used on Windows XP. Use 7-Zip on the RPM, and then the enclosed cpio archive. It will create a usr/share/emacs/site-lisp/edict hierarchy, but you can move the edict folder or just its contents to anywhere, then add to load-path.

Modifications

Add to .emacs:

; set a variable edictdir to location of edict.el and the other package elisp files
(add-to-list 'load-path edictdir)
; variable edict-dictionaries points to your dictionaries. It is in suse-start.el
(load "suse-start")

The elisp files are in package edict-emacs-xxx.rpm. It is not necessary to get the edict-xxx.rpm which contains dictionaries, but suse-start.el notes that:

;; the following dictionaries should be available when you
;; have installed edict.rpm:
(setq edict-dictionaries
      (list
       "/usr/share/edict/4jwords"
       "/usr/share/edict/aviation"
       "/usr/share/edict/classical"
       "/usr/share/edict/compdic"
       "/usr/share/edict/compverb"
       "/usr/share/edict/concrete"
       "/usr/share/edict/edict"
       "/usr/share/edict/edicth"
       "/usr/share/edict/enamdict"
       "/usr/share/edict/findic"
       "/usr/share/edict/geodic"
       "/usr/share/edict/j_places"
       "/usr/share/edict/jddict.v02"
       (cons "/usr/share/edict/kanjd212"  'euc-jp)
       "/usr/share/edict/kanjidic"
       "/usr/share/edict/lingdic"
       "/usr/share/edict/mktdic"
       "/usr/share/edict/pandpdic"
       ))

I prefer to define dictionary variables in .emacs before loading suse-start. That way I never have to find suse-start.el again, just change the dictionary variable in .emacs. So a possible modification in suse-start.el is:

(setq edict-dictionaries
      (list kanjidict foodict bardict))

By default:

  • edict-search-english is on M-+
  • edict-search-kanji is on M-_

but these can be set with:

(global-set-key (kbd "C-c j") 'edict-search-english)
(global-set-key (kbd "C-c k") 'edict-search-kanji)


External Links

Find RPMs by name
Search for edict
Monash dictionary project
Jim Breem's Japanese dictionaries