Search Log In

CmDO (pronounced “commando”) is a tool that makes it easier to build other tools. It selectively exposes Python modules and functions as a complete command line interface.

Present functionality:

  • Includes the very useful ArDO command line archive manager, a lightweight and ultra-simple local backup tool.
  • Find modules in standard locations, based on main program name.
  • Discover public functions using assigned decorators.
  • Convert discovered modules and functions to a command line syntax.
  • Validate and interpret function arguments based on decorator type specifications.
  • Resolve CmDO module dependencies on demand.
  • Extract documentation from decorators and documentation modules.
  • Format documentation in pretty text, HTML, XML, or custom format
  • Present documentation in terminal, browser or other viewer.
  • Provide simple bash completion.

The Future

  • Generate curses and graphical user interfaces based on meta-data in decorators.
  • Adopt more standards for documentation input and output formats and add more formatting options.
  • We’re very open to suggestions.

More information:

  • README
  • Installation guide
  • Development guide

cmdo
projects