Skip to content

scalarwaves/leximaven

Repository files navigation

leximaven

Build Status npm version Standard - JavaScript Style Guide

Introduction

leximaven is a powerful tool for searching word-related APIs from the command line. It can fetch acronyms, 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.

Platform

Looking for testers on other platforms. Developed and tested on Linux. Works on Windows, see Windows below.

Supported Node.js versions:

  • Typescript
  • 12.x
  • 11.x
  • 10.x
  • 8.x

Install

Linux installation

To initialize the config file and load themes, your NODE_PATH environment variable must point to the 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"

Provided these lines are towards the end of the shell initialization file (at least after any NVM stuff) this should work for a system installation of Node.js and nvm.

Add all of this to .bashrc, .zshrc, etc. then:

npm install -g leximaven
leximaven config init

Windows installation

I highly recommend using nodist to install Node.js on Windows. It automatically sets %NODE_PATH% for you, though you may have to edit it to make sure it doesn't contain itself (i.e. C:......\node_modules;%NODE_PATH%). If you install Node.js manually, npm install --global leximaven will install the package in C:\Users\username\AppData\Roaming\npm\node_modules. And if you just do npm install leximaven then it will install the package to a subfolder of the Node.js installation, but that won't be the NODE_PATH folder unless you manually set it. Either way, you're going to have to mess around with Windows environment variables to get it to work. And don't forget to put your Wordnik API key into an environment variable WORDNIK

As for getting the ANSI color escape codes to work, Cmder seems to be the easiest way. It doesn't install a full linux environment like Cygwin, but you can still use some linux commands like which, cat, and ls.

Usage

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 datamuse 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 wordmap ubiquity

Resources

The following links can help you use leximaven or perform related tasks.

Contributing

See CONTRIBUTING.

License

MIT ©️ 2017-2019 Andrew Prentice

Powered by

Acronym Server, Datamuse, Onelook, Rhymebrain, Urban Dictionary, and Wordnik

Extras

Prose

For fun, read some of my prose...

Take Command

See take-command.