This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Command line interface framework

Project Description

NOTE:

This project is abandoned and unsupported. Use argparse or docopt instead.


cmdstyle

cmdstyle is a library for creating command line interfaces using the command style used by programs like svn or hg.

Example

Sample File:

#! /usr/bin/env python3.2

import sys

import cmdstyle

class HelloCommand(cmdstyle.Command):
    'Print a greeting'

    name = cmdstyle.PosParam()
    shout = cmdstyle.Flag(
        description='Print the greeting in upper case',
        shortname='')
    exclamations = cmdstyle.Option(
        description='The number of exclamation marks used to end the '
                    'greeting',
        default=1)

    def __call__(self):
        #Note that the library does not do validations
        exclamations_int = int(self.exclamations)

        greeting = 'Hello'
        if self.name:
            greeting += ', ' + self.name
        if self.shout:
            greeting = greeting.upper()
        greeting += exclamations_int * '!'

        print(greeting)


class ByeCommand(cmdstyle.Command):
    'Print bye'

    def __call__(self):
        print('Bye!')


program = cmdstyle.Program(
    'sample.py',
    'Sample Program',
    'Just a sample program',
    'http://...')

program.register(HelloCommand())
program.register(ByeCommand())

if __name__ == '__main__':
    program.run(sys.argv)

Sample Being Used:

$ ./sample.py
Use `sample.py help` for usage.


$ ./sample.py help
usage: sample.py <command> [options] [args]

Sample Program
Just a sample program

Available commands:
  bye
  hello

Use `sample.py help <command>` for help on a specific command.
See http://... for additional information.


$ ./sample.py help hello
hello: Print a greeting
usage: hello NAME
Options:

   --shout             Print the greeting in upper case
-e --exclamations ARG  The number of exclamation marks used to end the greeting


$ ./sample.py hello
Hello!


$ ./sample.py hello --shout --exclamations 3
HELLO!!!
Release History

Release History

This version
History Node

0.1.0

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
cmdstyle-0.1.0.tar.gz (10.2 kB) Copy SHA256 Checksum SHA256 Source Nov 9, 2011

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting