Leximaven is a powerful tool for searching word-related APIs from the command line. It can fetch acronyms, anagrams, bi-gram phrases, definitions, etymologies, example uses, hyphenation, offensive word flags, portmanteaus, pronunciations (Arpabet & IPA), related words, rhymes, slang, syllable stress and count, and more. See the wiki for more info.
Currently Leximaven is intended for UNIX-like operating systems. Testing on Windows and Mac OSX is planned. Supported Node versions:
- 4.x
- 5.x
- 6.x
To initialize the config file and load themes, your NODE_PATH environment variable must point to the lib/node_modules directory of the Node.js installation. You can set this path automatically like this:
export NP=$(which node)
export BP=${NP%bin/node} #this replaces the string '/bin/node'
export LP="${BP}lib/node_modules"
export NODE_PATH="$LP"
This should work for a system installation of Node.js and nvm. You'll also need to get a Wordnik API key and put it in an environment variable WORDNIK. Add all of this to .bashrc, .zshrc, etc. Then run:
npm install -g leximaven
leximaven config init
Leximaven has a built-in help system for CLI parameters and options. Access it with leximaven -h|--help [command] [subcommand]
. There is also the wiki.
Here are some examples:
// Get definitions for 'catharsis'
leximaven wordnik define catharsis
// Get antonyms for 'noise'
leximaven wordnik relate --canon --type antonym noises
// Pronounce 'quixotic'
leximaven wordnik pronounce quixotic
// Get etymology for 'special'
leximaven wordnik origin special
// Get words that sound like 'blue'
leximaven dmuse get sl=blue
// Get slang/colloquialisms for 'diesel'
leximaven urban diesel
// Get anagrams with at least 2 letters in each word and a maximum of 3 words
// per anagram using short form flags and exporting to JSON
leximaven anagram -n2 -w3 -o anagrams.json toomanysecrets
// Get a wordmap for 'ubiquity'
leximaven map ubiquity
See the tests for more.
The following links can help you use Leximaven or perform related tasks.
- alex Checks your writing for words or phrasings that might offend someone
- proselint checks your writing style and has plugins for multiple editors
- retext is a framework for natural language processing
- write-good Naive linter for English prose for developers who can't write good and wanna learn to do other stuff good too
- ISO 639-1 Language Codes for Rhymebrain functions
- Arpabet phoneme list and IPA equivalents
- Dewey Decimal Classes for acronyms
- Browse Datamuse's Onelook dictionaries, use its dictionary lookup, thesaurus/reverse lookup, and RhymeZone
See CONTRIBUTING.
Many thanks to all contributors to the libraries used in this project! And thanks to the creators and maintainers of the APIs that this tool consumes. Acronym Server, Datamuse, Onelook, Rhymebrain, Urban Dictionary, Wordnik, and Wordsmith are awesome!
For fun, read some of my prose...