Is there any command line offline dictionary? I know that there are some like StarDict and Artha but how about one in the command line?
Also, I tried dict but it is an online dictionary.
7 Answers
sdcv is the console version of Stardict.
1. Install the dictionary
Run the following command in the terminal:
sudo apt-get install sdcv2. Download dictionary files
Download the dictionary files according to your requirements from the following sources.
- List of dictd- Dictionaries (archived):
- The Collaborative International Dictionary of English (GPL, 35MB, 174222 words) (download tarball from archive.org)
- Free On-Line Dictionary of Computing
- Jargon File - A comprehensive compendium of hacker slang illuminating many aspects of hackish tradition, folklore, and humor
- GNU Linux English-English Dictionary
3. Install downloaded dictionaries
Make the directory where sdcv looks for the dictionary:
sudo mkdir -p /usr/share/stardict/dic/The next command depends on whether the downloaded file is a .gz file or a .bz2 file.
If it is a .bz2 file:
sudo tar -xvjf downloaded.tar.bz2 -C /usr/share/stardict/dicIf it is a .gz file:
sudo tar -xvzf downlaoded.tar.gz -C /usr/share/stardict/dic4. Done!
To search for a word use:
sdcv wordEasy offline dictd installation
Rationale
The dict command can easily be used with offline dictionaries. It suffices to install the dictd daemon with its dependencies alongside a local, offline dictionary.
This turns out to be a much easier procedure than installing sdcv as suggested elsewhere on this page.
Installation
Below is shown how to install dictd along with the dict-gcide comprehensive English dictionary. There are many more dictionairies available from the standard repositories.
$ sudo apt-get install dict dictd dict-gcideUsage
$ dict word 3 definitions found From The Collaborative International Dictionary of English v.0.48 [gcide]: Word \Word\, n. [AS. word; akin to OFries. & OS. word, D. woord, G. wort, Icel. or[eth], Sw. & Dan. ord, Goth. wa['u]rd, OPruss. wirds, Lith. vardas a name, L. verbum a word; or perhaps to Gr. "rh`twr an orator. Cf. {Verb}.] [1913 Webster] 1. The spoken sign of a conception or an idea; an articulate or vocal sound, or a combination of articulate and vocal sounds, uttered by the human voice, and by custom expressing an idea or ideas; a single component part of human speech or language; a constituent part of a sentence; a term; a vocable. "A glutton of words." --Piers Plowman. [1913 Webster] You cram these words into mine ears, against The stomach of my sense. --Shak. [1913 Webster] Amongst men who confound their ideas with words, there must be endless disputes. --Locke. [1913 Webster] 2. Hence, the written or printed character, or combination of characters, expressing such a term; as, the words on a page. [1913 Webster] 3. pl. Talk; discourse; speech; language. [1913 Webster] 1 You probably also have aspell installed, which has the advantage of giving suggestions for misspelled words. You can call aspell directly on your text file with:
aspell check text.txtor use it on a single word:
echo wrd | aspell -a 1 If you're just looking to see if a word is spelled correctly or exists, you can use grep to look through the word list files in /usr/share/dict/, which are provided by the appropriate wordlist packages. An example to see if "emu" is a valid word:
grep -i "^emu$" /usr/share/dict/american-englishThat doesn't have any definitions, however.
2You can use free dictionary with dict command:
- First install via
sudo apt-get install dictd - Find out which language dict you want to use
sudo apt-cache search "dict-freedict" - After find these names install them (for ex.)
sudo apt-get install dict-freedict-eng-tur - Check which languages are installed
dict -D - Use like:
dict "word" - Specific usage:
dict -d fd-eng-tur "word"
How about downloading dictionary text file from the sites for example this link (warning: 4.5 MB), and then finding the text with command like grep "word" dictionary.txt
Or also by using VIM editor to search for the word with its command eg. /Word. And
by pressing n or N for next or previous occurance of the pattern is more fun with finding meaning of the word.
I use the Princeton University WordNet application. I did not want to deal with Tcl/Tk so prepared a make file that allows you to run WN as a command line application. You do have to compile it, but I provide instructions to help somewhat. I personally find it automatic to popup a terminal on my Linux computer and type "wn unknown-word -over" anytime I want the definition for unknown-word. The nice thing about WordNet is that you get synonyms, antonyms and other linguistic nuances if you want it. Here is my github download link:
Dalton Bentley github link for WordNet command version
Incidentally, I edited all of the Princeton linguistic help files into a rational pdf which those interested in the more advanced capabilities will appreciate.