NAME
ximenes - Anagram utility
SYNOPSIS
ximenes -template|-t *template* [ *wordlist...* ]
ximenes -phrase|-p *fodder* [ -minlen|-m *num* ] [ -maxlen|-M *num* ]
[ -minwrd|-w *num* ] [ -maxwrd|-W *num* ] [ *wordlist...* ]
ximenes -regex|-r *regular_expression* [ *wordlist...* ]
ximenes -jumble|-j *fodder[/essential]* [ -minlen|-m *num* ]
[ -maxlen|-M *num* ] [ *wordlist...* ]
ximenes -version | -help | -options | -man
DESCRIPTION
ximenes searches the named *wordlist*s (or standard input if no files
are named, or the file name - is given) for anagrams matching the given
pattern.
OPTIONS
-template *template*
Lowercase letters are floating. Uppercase letters are anchored.
Wildcard is "." (period). Word separator is "/" (slash).
See EXAMPLES
-phrase *fodder*
Find multi-word anagrams of *fodder* (very slowly). Fodder may
contain multiple "." (period) as a wildcard.
-regex|-r *regular_expression*
Find words (*not anagrams*)from dictionary which match
*regular_expression*. For convenience (possibly...) regexps are
anchored at beginnning and end.
-jumble|-j *fodder[/essential]*
Find words from dictionary which are contained within *fodder*
letters (and which in turn contain *essential* letters)
-maxlen|-M *num*
(jumble,phrase mode) Find words which are not more than *num*
characters long
-minlen|-m *num*
(jumble,phrase mode) Find words which are not less than *num*
characters long
-maxwrd|-W *num*
(phrase mode) Find 'phrases' which are not more than *num* words
long
-minwrd|-w *num*
(phrase mode) Find 'phrases' which are not less than *num* words
long
EXAMPLES
Template Mode
* Crossword clue *Noble protecting superb tower, as one opposed to war
(11)*. *Noble* suggests *peer*, *tower* suggests *keep*, three
letters remain:
$ ximenes -t peerkeep... /usr/share/dict/words
peacekeeper
sheepkeeper
* Crossword clue *Let drum, by spinning, process clothes thus (6,3)*,
"----L-,---". Suggests anagram of *letdrumby*. Anchor L in fifth
place with uppercase, and remaining letters lowercase; use "/"
(slash) to separate words:
$ ximenes -t etdrLu/mby /usr/share/dict/words
... LOTS of finds ...
tumble dry
Phrase Mode
Find multi-word anagrams of *Magnus Smith*, constrained to words longer
than 3 letters, and not more than 4 words in phrase
$ ximenes -p magnussmith -m 3 -W 4 /usr/share/dict/words
... LOTS of finds (and a long wait) ...
this smug man
Hmm.
Jumble Mode
Find words, longer than 3 letters, contained in the grid
EHI
KOR
RSY
Words must contain the central letter (*o*).
$ ximenes -j ehikorrsy/o /usr/share/dict/words -minlen 3
... LOTS of finds ...
sorry
soy
yoke
yorkshire
Regex Mode
ximenes -r j.b.e.w.c.y /usr/share/dict/words
is equivalent to (and probably slower than)
grep "^j.b.e.w.c.y$" /usr/share/dict/words
BUGS
Very slow.
VERSION
$Id: ximenes 3599 2007-07-30 23:14:03Z mlewissmith $
$Id: xim.cgi 4044 2009-02-17 09:42:22Z mlewissmith $ 127.0.0.1