Commit graph

28 commits

Author SHA1 Message Date
mark_story
dc9a05d49c Extracting subcommand as a separate object.
This allows the internals of ConsoleOptionParser to be more uniform and consistent.
2010-10-13 23:18:24 -04:00
mark_story
8261581b3b Pulling out some duplicated code into methods. 2010-10-13 23:18:24 -04:00
mark_story
5e8222ef39 Pulling out classes into separate files. 2010-10-13 23:18:24 -04:00
mark_story
2774493577 Refactoring arguments into a separate object. 2010-10-13 23:18:24 -04:00
mark_story
12fba88528 Refactoring options into a separate object.
There are changes that need to be made for boolean and options with choices, and having a separate object will make them much easier to do.
2010-10-13 23:18:24 -04:00
mark_story
ad367fed9a Adding addOptions and addArguments as convience methods for adding multiple options/arguments. 2010-10-13 23:18:24 -04:00
mark_story
ab794b300e Adding support for help generating help for subcommands.
Adding tests for subcommand help generation.
2010-10-13 23:18:23 -04:00
mark_story
56339e05f3 Adding subcommand to help output.
Subcommands can be shell methods or tasks.  Both should support additional parsers.  Which is not complete yet.
2010-10-13 23:18:23 -04:00
mark_story
0d522f3bd4 Changing ShellDispatcher to use --help and -h like the option parser does. 2010-10-13 23:18:22 -04:00
mark_story
7f5b5c4fbd Adding exception for unknown option usage. 2010-10-13 23:18:21 -04:00
mark_story
d3c95bc2c4 Adding epilog and description to the generate help. 2010-10-13 23:18:21 -04:00
mark_story
501e63e45d Adding argument help generation in the long help and usage string.
Fixing output of option help, formatting was calculated in 2 places.
2010-10-13 23:18:21 -04:00
mark_story
09adc38b6c Doing some fixes as the longest option + a short would cause incorrect formatting. 2010-10-13 23:18:21 -04:00
mark_story
733394d584 Adding usage generation for options. 2010-10-13 23:18:21 -04:00
mark_story
cea6cef727 Adding smart defaults for verbose, quiet, and help options.
Adding help formatting for options.
2010-10-13 23:18:21 -04:00
mark_story
f5ad54e97e Adding required argument checking. 2010-10-13 23:18:21 -04:00
mark_story
505e59ac66 Adding support for boolean options. 2010-10-13 23:18:21 -04:00
mark_story
3e402e2dfb Adding support for positional arguments.
Adding tests and support for positional arguments. Renaming description
key to help as its shorter.
2010-10-13 23:18:21 -04:00
mark_story
6f1dae208c Adding method skeleton 2010-10-13 23:18:21 -04:00
mark_story
b392f300ba Adding docs about how options work. 2010-10-13 23:18:20 -04:00
mark_story
3b9921a390 Adding support for -abc style combination of short options.
Renaming shortcut to short as its shorter :)
2010-10-13 23:18:20 -04:00
mark_story
01a7fc70b7 Removing dead code. 2010-10-13 23:18:20 -04:00
mark_story
07bda824f0 Adding test for parsing multiple options. 2010-10-13 23:18:20 -04:00
mark_story
2c2c9a38d2 Removing required, and type from option flag as they didn't really make sense to include at this point. Adding support for --foo=bar type parameters. 2010-10-13 23:18:20 -04:00
mark_story
7b1b835bc1 Adding very basic implementation for parsing long and short options. 2010-10-13 23:18:20 -04:00
mark_story
d5d9adb92b Starting to implement options and option parsing. 2010-10-13 23:18:20 -04:00
mark_story
694537933e Adding description() and epilog() to ConsoleOptionParser. Starting to build out addOption. 2010-10-13 23:18:20 -04:00
mark_story
d914c0aaea Adding ConsoleOptionParser and its test. 2010-10-13 23:18:20 -04:00