Skip to content

Latest commit

 

History

History

bin

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

wordpos Command-line

Version 0.1.6 introduces the command-line interface (./bin/wordpos-cli.js), available as 'wordpos' if installed globally npm install -g wordpos, otherwise as node_modules/.bin/wordpos if installed without the -g.

Usage:

$ wordpos

  Usage: wordpos <command> [options] [word ... | -i <file> | <stdin>]

  Commands:

    get        get list of words for particular POS
 
    def        lookup definitions (use -b for brief definition, less examples)
    
    syn        lookup synonyms
    
    exp        lookup examples
    
    seek       get record at synset offset. Must include one of POS -n, -a, -v, -r

    rand       get random words (starting with [word]). If first arg is a number, returns
               that many random words. Valid options are -b, -f, -j, -s, -i.

    parse      show parsed words, deduped and less stopwords

    stopwords  show list of stopwords (valid options are -b and -j)
    
  Options:

    -h, --help           output usage information
    -V, --version        output the version number
    -n, --noun           get nouns only
    -a, --adj            get adjectives only
    -v, --verb           get verbs only
    -r, --adv            get adverbs only
    -c, --count          get counts only, used with get
    -b, --brief          brief output (all on one line, no headers)
    -f, --full           full result object
    -j, --json           full result object as JSON string
    -i, --file <file>    input file
    -w, --withStopwords  include stopwords (default: stopwords are excluded)

Examples:

Get part-of-speech:

$ wordpos get The angry bear chased the frightened little squirrel
# Noun 4:
bear
chased
little
squirrel

# Adjective 3:
angry
frightened
little

# Verb 1:
bear

# Adverb 1:
little

Just the nouns, brief output:

$ wordpos get --noun -b The angry bear chased the frightened little squirrel
bear chased little squirrel

Just the counts:

$ wordpos get -c The angry bear chased the frightened little squirrel
# Noun Adjective Verb Adverb Parsed
4 3 1 1 7

Just the adjective count:

$ wordpos get --adj -c The angry bear chased the frightened little squirrel
# Noun Adjective Verb Adverb Parsed
0 3 0 0 7

Get definitions:

$ wordpos def git
git (def)
  n: a person who is deemed to be despicable or contemptible; "only a rotter would do that"; "kill the rat"; "throw the bum out"; "you cowardly little pukes!"; "the British call a contemptible persona `git'"

Brief definition: (excludes examples)

$ wordpos def -b git
git (def)
  n: a person who is deemed to be despicable or contemptible

Multiple definitions:

$ wordpos def -b git gat
git (def)
  n: a person who is deemed to be despicable or contemptible
  
gat (def)
  n: a gangster's pistol 

Get full result object:

$ wordpos def gat -f
{ gat:
   [ { synsetOffset: 3432112,
       lexFilenum: 6,
       pos: 'n',
       wCnt: 2,
       lemma: 'gat',
       synonyms: [ 'gat', 'rod' ],
       lexId: '0',
       ptrs:
        [ { pointerSymbol: '@',
            synsetOffset: 3954735,
            pos: 'n',
            sourceTarget: '0000' },
          { pointerSymbol: ';u',
            synsetOffset: 7171981,
            pos: 'n',
            sourceTarget: '0000' } ],
       gloss: 'a gangster\'s pistol  ',
       def: 'a gangster\'s pistol  ',
       exp: [] } ] }

As JSON:

$ wordpos def gat -j
{"gat":[{"synsetOffset":3432112,"lexFilenum":6,"pos":"n","wCnt":2,"lemma":"gat","synonyms":["gat","rod"],
"lexId":"0","ptrs":[{"pointerSymbol":"@","synsetOffset":3954735,"pos":"n","sourceTarget":"0000"},{"pointerSymbol":
";u","synsetOffset":7171981,"pos":"n","sourceTarget":"0000"}],"gloss":"a gangster's pistol  ","def":
"a gangster's pistol  ","exp":[]}]}

Get synonyms:

$ wordpos syn git gat
git (syn)
  n: rotter, dirty_dog, rat, skunk, stinker, stinkpot, bum, puke, crumb, lowlife, scum_bag, so-and-so, git

gat (syn)
  n: gat, rod

Get examples:

$ wordpos exp git
git (exp)
  n: "only a rotter would do that", "kill the rat", "throw the bum out", "you cowardly little pukes!", "the British call a contemptible person a `git'"

Get random words:

$ wordpos rand
#  1:
hopelessly

Get 5 random words:

$ wordpos rand 5
#  5:
bemire
swan
dignify
jaunt
daydream

Brief:

$ wordpos rand -b 5
hebrew awake urn-shaped afeard obvious

Get random POS:

Get a random adjective:

$ wordpos rand --adj
# Adjective 1:
soaked

Get 5 random verbs:

$ wordpos rand 5 --verb
# Verb 5:
centralise
abduct
kneecap
arise
rate

Get random words starting with:

Get a word staring with "foot":

$ wordpos rand foot
# foot 1:
footprint

Get 3 random words string with "foot" and "hand" each:

$ wordpos rand 3 foot hand
# foot 3:
footlocker
footmark
footwall

# hand 3:
hand-hewn
handstitched
handicap

Get a random adjective starting with "foot"

$ wordpos rand --adj foot
# foot 1:
foot-shaped

Seek a synset offset

Seek offset as adjective:

$ wordpos seek 1285602 -a
{ '1285602':
   { synsetOffset: 1285602,
       lexFilenum: 0,
       lexName: 'adj.all',
       pos: 's',
       wCnt: 5,
       lemma: 'amazing',
       synonyms: [ 'amazing', 'awe-inspiring', 'awesome', 'awful', 'awing' ],
       lexId: '0',
       ptrs:
        [ { pointerSymbol: '&',
            synsetOffset: 1285124,
            pos: 'a',
...            

Same as verb (not found!):

$ wordpos seek 1285602 -v
{ '1285602': {} }

Multiple offsets from same POS:

$ wordpos seek 1285602 1285124 -a
{ '1285124':
   { synsetOffset: 1285124,
       lexFilenum: 0,
       ...
   },
  '1285602':
    { synsetOffset: 1285602,
        lexFilenum: 0,
        ...
    }

Note that results are always returned as --full format. To get compact JSON format, add the -j option.

Stopwords

List stopwords (brief):

$ wordpos stopwords -b
about after all also am an and another any are as at be because ...

Get definition of a stopword:

$ wordpos def both -w
both (def)
  s: (used with count nouns) two considered together; the two; "both girls are pretty"