<?xml version="1.0" encoding="UTF-8" ?>
<rdf:RDF xmlns="http://usefulinc.com/ns/doap#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><Project><name>CmDO</name>
<shortdesc>Create command-driven scripts with smart arguments and help derived from decorated functions.</shortdesc>
<description>CmDO
====

Simplifies construction of command-based tools.  Tool development consists of:

* Creating module files in one of several known locations using special file
  extensions.
* Writing ordinary Python functions.
* Adding decorators to choose exported functions and to describe argument
  types/repetition/defaults.
* Creating new argument type classes as needed.
* Adding descriptive documentation as structured text in doc strings,
  decorators, and or separate documentation modules.

Benefits include:

* Full command line interpretation, including support for both user-friendly
  simplified syntax and developer-friendly Python expressions.
* Argument type and quantity checking.
* Argument validation, conversion and defaults.
* Keyword assignment for optional arguments.
* Automatic support for simple bash shell command line completion.
* Command line help for modules, functions and other documentation.
* Publish help to pretty text, HTML, XML, or custom format.
* View help in browser or other viewer based on mime type.
* On-demand module loading.
* Import-less inter-module calling and references through special CMDO
  namespace.
* Complete support for all normal Python capabilities.
* Error handling, logging, traceback, etc.
* Simple interactive prompted command input.</description>
<download-page>http://wijjo.com/download</download-page>
<homepage rdf:resource="http://wijjo.com/cmdo" />
<maintainer><foaf:Person><foaf:name>Steve Cooper</foaf:name>
<foaf:mbox_sha1sum>2dd8c0019f6859053c73af626ec6dee73d7c62c9</foaf:mbox_sha1sum></foaf:Person></maintainer>
<release><Version><revision>0.7</revision></Version></release>
</Project></rdf:RDF>