lexic/README.org

58 lines
3.0 KiB
Org Mode
Raw Permalink Normal View History

2021-11-11 18:37:09 +00:00
#+title: Emacs Lexical Information Viewer
#+author: tecosaur
2020-07-29 16:26:22 +00:00
2021-11-11 18:37:09 +00:00
#+html: <p><a href="https://melpa.org/#/lexic"><img src="https://melpa.org/packages/lexic-badge.svg"></a>
#+html: <img src="https://img.shields.io/badge/stage-%CE%B2,%20refinement-orange?style=flat-square"></p>
2021-02-04 06:11:24 +00:00
2020-07-29 16:26:22 +00:00
It's nice to know more about the words you're using. Online dictionaries have
proliferated and become quite useful, and there are some nice packages available
like [[https://github.com/abo-abo/define-word][define-word]] which make use of such online resources.
However, the quicker I can know more about the words I'm using, the better!
Offline dictionaries are obviously the way to go then, and the Console
implementation of StarDict already has a package or two for Emacs which I can
build off.
2020-07-29 16:26:22 +00:00
However, I'd like to really focus on the words, and making it easy and intuitive
as possible to gain a greater understanding of the words and phrases we use.
Thus, I wanted the focus here to not be on the specific backend used (though
2020-08-30 10:21:01 +00:00
only =sdcv= has been implemented as of yet). A near-term goal is to rewrite the
implementation to abstract away the specific tool used, allowing for online
tools among other backends (such as any future GoldenDict CLI).
From there it could be nice to allow for combination of multiple tools (e.g.
=sdcv= + online service).
2020-07-29 16:26:22 +00:00
This has rich support for the following dictionaries:
+ [[http://download.huzheng.org/dict.org/stardict-dictd-web1913-2.4.2.tar.bz2][Webster's Revised Unabridged Dictionary (1913)]]
+ [[https://packages.debian.org/sid/dict-gcide][GCIDE]] (with conversion from dict to StarDict)
+ [[http://download.huzheng.org/bigdict/stardict-Soule_s_Dictionary_of_English_Synonyms-2.4.2.tar.bz2][Soule's Dictionary of English Synonyms]]
+ [[http://download.huzheng.org/dict.org/stardict-dictd_www.dict.org_elements-2.4.2.tar.bz2][Elements Database]]
+ [[https://github.com/tuxor1337/dictmaster][Douglas Harper's Online Etymology Dictionary]]
2020-08-30 10:21:01 +00:00
If there's something you feel is missing, feel free to make an issue --- or even
better, a PR!
* Requirements
+ The command line stardict tool =sdcv= (support for other backends is planned)
+ (/optional/) ~visual-fill-column-mode~
* Configuration
2021-01-26 15:14:13 +00:00
If you happen to use Doom, you may find [[https://tecosaur.github.io/emacs-config/config.html#dictionary][this section]] of my config interesting.
2020-07-29 16:26:22 +00:00
2021-01-26 15:14:13 +00:00
In order to recognise format one of the supported dictionaries, Lexic
matches the =bookname== parameter from the StarDict =.ifo= file against the entries
in ~lexic-dictionary-specs~. Lexic needs to do this, because formatting is
inconsistent, and so must be implemented on a per-dictionary basis.
For example, if I downloaded a copy of /Soule's English Synonyms/, I'd need to
make sure that the =SoulesSynonymns.ifo= file contains the line ~bookname=Soule's
Dictionary of English Synonyms~. Check the value of ~lexic-dictionary-specs~ to see
what it expects for other dictionaries supported by default.
Then, if I open a new Emacs session, and look for a synonym I should see it
formatted nicely 🙂.
* Demo
2020-08-08 20:05:38 +00:00
[[https://tecosaur.com/lfs/lexic/lexic.gif]]