Commit graph

3 commits

Author SHA1 Message Date
shell
1a51c0a6e1 Updated to py-Optik-1.4
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().
2002-12-26 15:11:50 +00:00
shell
8f2e9fb11d Updated to py-Optik-1.3
- Updated my email address

Changes since Optik-1.2 :

  * Fixed a couple of lurking bugs found by PyChecker.
  * You can now get away with not supplying an option's type,
    no matter the action: Optik now assumes a default type of "string".
  * You can now get away with not supplying an option's destination:
    Optik now derives a default destination from the first long option,
    or the first short option if no long options were given.  Eg. an
    option string "--foo-bar" has the default destination 'foo_bar'.
  * Refactored both Option's and OptionParser's constructors to
    make life easier for people extending Optik.
  * Added the "examples/" subdirectory -- this is a repository of
    examples of extending and using Optik; the goal is to provide
    canonical implementations of various features that I don't want to
    add to Optik proper, but that are occasionally requested.  (Also,
    this gives me a good place to test how Optik's extensibility.)
  * Added support for long and complex option types, mainly for
    completeness (patch by Matthew Mueller).
  * Added make_option() as an alias for the Option constructor, because
    someday there might be many Option classes (in which case
    make_option() will become a factory function).
  * Added the examples/ directory to the source distribution -- this
    demonstrates various ways to extend Optik.
2002-06-10 02:29:35 +00:00
drochner
0dd0a5d492 initial import of py-Optik-1.2, a command line parsing library for Python,
submitted by Shell Hung per PR pkg/14786
2002-01-29 16:17:34 +00:00