1a51c0a6e1
Changes : * Factored the help-formatting code out of OptionParser into some new classes (HelpFormatter and subclasses) in help.py. This should make it a lot easier to customize how help is formatted. * Added the notion of "option groups": an OptionParser can now contain several option groups, each which contains several options. The main purpose of this is to enable sensibly-grouped help output, but it opens up all sorts of interesting (and largely untested) possibilities for code to throw whole option groups around instead of individual options. Added two new classes: OptionGroup, and OptionContainer for code common to OptionParser and OptionGroup. (OptionContainer should be invisible to programmers using Optik). * Added the 'description' attribute and set_description() method to both OptionParser and OptionGroup (actually OptionContainer). Again, this is to make help output more useful. * Made it easier for OptionParser subclasses to decide whether they should have the standard "help" option, by moving the logic from class level to the _populate_option_list() method. * Added the "choice" option type, which is just a string type constrained to a fixed set of values. * Added method get_default_values() to OptionParser. * Rewrote how OptionParser recognizes abbreviated long options; removed a redundant internal instance attribute. * Simplify parsing logic in OptionParser a tad by relocating a loop and renaming _process_arg() to _process_args(). |
||
---|---|---|
.. | ||
DESCR | ||
distinfo | ||
Makefile | ||
PLIST |