Coder Social home page Coder Social logo

hubtou / anagram Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 43 KB

Rearrange letters to form new words

License: BSD 3-Clause "New" or "Revised" License

Makefile 21.48% Python 78.52%
python learning-python unix shell learning-unix utility tool command-line-tool words game pnu-project wordscapes

anagram's Introduction

Installation

pip install pnu-anagram

ANAGRAM(6)

NAME

anagram - rearrange letters to form new words

SYNOPSIS

anagram [-d|--dictionary pathname] [-f|--files] [-l|--length numbers] [--debug] [--help|-?] [--version] [--] [letters]

DESCRIPTION

The anagram utility rearranges the given letters to form as many words (anagrams) as possible.

Standard input is read if no letters are provided on the command line.

The -l|--length option can be used to form words of selected size with the letters provided.

The -f|--files option can help you select a dictionary.

OPTIONS

Options Use
-d--dictionary pathname Use this dictionary pathname if you don't want the default dictionary
-f|--files Print possible dictionary files in the DICTPATH
-l|--length numbers Specify anagrams lengths if you want intermediate sizes. numbers is a number or a comma separated list of numbers or dash separated number intervals
--debug Enable debug mode
--help|-? Print usage and a short help message and exit
--version Print version and exit
-- Options processing terminator

ENVIRONMENT

The ANAGRAM_DEBUG environment variable can also be set to any value to enable debug mode.

The DICTPATH environment variable is the search path for the dictionary files. It is a colon-separated list of directories in which anagram looks for a words dictionary file. If not set it will default to /usr/share/dict:/usr/local/share/dict. Under a Posix system, $HOME/.local/share/dict will also be added to the default, while %HOMEPATH%/appdata/roaming/python/share/dict:%HOMEPATH%/appdata/local/programs/python/pythonXX/share/dict will be added under a Windows system.

The ANAGRAM_DICT environment variable provides a way to avoid specifying an alternate directory on each command line.

FILES

/usr/share/dict/words is the default (English) dictionary on a BSD operating system.

Some French dictionaries are also installed as a dependency.

EXIT STATUS

The anagram utility exits 0 on success, and >0 if an error occurs.

EXAMPLES

To solve a Wordscapes (French) level where the available letters are ABCDEFG, I use a command like:

$ export ANAGRAM_DICT=/usr/local/share/dict/dict-fr-Wordscapes
$ anagram -l 3-7 abcdefg

Other dictionaries are also available. For example:

$ export ANAGRAM_DICT=/usr/local/share/dict/dict-fr-ABU-mots_communs.ascii
$ export ANAGRAM_DICT=/usr/local/share/dict/dict-fr-AU-DELA-common-words.ascii

SEE ALSO

grep(1)

STANDARDS

The anagram utility is not a standard UNIX command.

This utility tries to follow the PEP 8 style guide for Python code.

PORTABILITY

Tested OK under Windows.

HISTORY

This utility was made for the PNU project in order to help my wife play Wordscapes when she was stuck on a level.

LICENSE

It is available under the 3-clause BSD license.

AUTHORS

Hubert Tournier

CAVEATS

An English dictionary should be packaged for operating systems that are not providing one.

Searching only for a words link to one of the directories in the DICTPATH is too limitated.

anagram's People

Contributors

hubtou avatar

Watchers

 avatar  avatar

anagram's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.