distutils.fancy_getopt
index
/usr/local/lib/python2.3/distutils/fancy_getopt.py

distutils.fancy_getopt
 
Wrapper around the standard getopt module that provides the following
additional features:
  * short and long options are tied together
  * options have help strings, so fancy_getopt could potentially
    create a complete usage summary
  * options set attributes of a passed-in object

 
Modules
       
getopt
re
string
sys

 
Classes
       
FancyGetopt
OptionDummy

 
class FancyGetopt
    Wrapper around the standard 'getopt()' module that provides some
handy extra functionality:
  * short and long options are tied together
  * options have help strings, and help text can be assembled
    from them
  * options set attributes of a passed-in object
  * boolean options can have "negative aliases" -- eg. if
    --quiet is the "negative alias" of --verbose, then "--quiet"
    on the command line sets 'verbose' to false
 
  Methods defined here:
__init__(self, option_table=None)
add_option(self, long_option, short_option=None, help_string=None)
generate_help(self, header=None)
Generate help text (a list of strings, one per suggested line of
output) from the option table for this FancyGetopt object.
get_attr_name(self, long_option)
Translate long option name 'long_option' to the form it
has as an attribute of some object: ie., translate hyphens
to underscores.
get_option_order(self)
Returns the list of (option, value) tuples processed by the
previous run of 'getopt()'.  Raises RuntimeError if
'getopt()' hasn't been called yet.
getopt(self, args=None, object=None)
Parse command-line options in args. Store as attributes on object.
 
If 'args' is None or not supplied, uses 'sys.argv[1:]'.  If
'object' is None or not supplied, creates a new OptionDummy
object, stores option values there, and returns a tuple (args,
object).  If 'object' is supplied, it is modified in place and
'getopt()' just returns 'args'; in both cases, the returned
'args' is a modified copy of the passed-in 'args' list, which
is left untouched.
has_option(self, long_option)
Return true if the option table for this parser has an
option with long name 'long_option'.
print_help(self, header=None, file=None)
set_aliases(self, alias)
Set the aliases for this option parser.
set_negative_aliases(self, negative_alias)
Set the negative aliases for this option parser.
'negative_alias' should be a dictionary mapping option names to
option names, both the key and value must already be defined
in the option table.
set_option_table(self, option_table)

 
class OptionDummy
    Dummy class just used as a place to hold command-line option
values as instance attributes.
 
  Methods defined here:
__init__(self, options=[])
Create a new OptionDummy instance.  The attributes listed in
'options' will be initialized to None.

 
Functions
       
fancy_getopt(options, negative_opt, object, args)
translate_longopt(opt)
Convert a long option name to a valid Python identifier by
changing "-" to "_".
wrap_text(text, width)
wrap_text(text : string, width : int) -> [string]
 
Split 'text' into multiple lines of no more than 'width' characters
each, and return the list of strings that results.

 
Data
        StringTypes = (<type 'str'>, <type 'unicode'>)
WS_TRANS = '\x00\x01\x02\x03\x04\x05\x06\x07\x08 \x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./...\xcf\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff'
__revision__ = '$Id: fancy_getopt.py,v 1.27 2002/11/19 13:12:27 akuchling Exp $'
longopt_pat = '[a-zA-Z](?:[a-zA-Z0-9-]*)'
longopt_re = <_sre.SRE_Pattern object>
longopt_xlate = '\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,_./...\xcf\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff'
neg_alias_re = <_sre.SRE_Pattern object>