Kevin K
b389743672
docs(clap): improve examples and documentation as well as include new from_usage() features
2015-04-13 22:18:50 -04:00
Kevin K
91d2904599
fix(from_usage): trim all whitespace before parsing
2015-04-13 18:05:12 -04:00
Kevin K
3710cd6916
fix(tests): fix failing doc tests
2015-04-13 15:03:22 -04:00
Kevin K
d5d48bcf46
feat(app): add support for building args from usage strings
2015-04-13 14:32:27 -04:00
Kevin K
ab409a8f1d
feat(args): add ability to create basic arguments from a usage string
2015-04-13 13:31:14 -04:00
Kevin K
3d960e8be0
docs(clap): clean up docs and add better explainations
2015-04-10 19:21:34 -04:00
Kevin K
dcbadc6275
perf(usage): remove compiler warnings and dedup some code
2015-04-10 11:50:08 -04:00
Kevin K
3636afc401
feat(usage): add ability to get usage string for subcommands too
...
You can now get the usage even for sub-commands by calling the
usage() method.
Breaking Change
ArgMatches::usage() now returns a slice (no longer an Option<&str>)
This is to improve ergonomics, as there should always be at least a
default usage statement, there should never be None
2015-04-10 10:49:12 -04:00
Kevin K
5137278942
fix(usage): remove unneeded space
2015-04-09 21:43:26 -04:00
Kevin K
ba817b9d81
fix(usage): remove warning about unused variables
2015-04-09 19:53:13 -04:00
Kevin K
e2488e50e4
tests(subcommand help): change to new usage generation known good
2015-04-09 18:39:29 -04:00
Kevin K
02462150ca
feat(ArgMatches): add method to get default usage string
2015-04-09 18:18:51 -04:00
Kevin K
64e539280e
feat(SubCommands): add method to get name and subcommand matches together
2015-04-09 17:07:28 -04:00
Kevin K
042577d254
refactor(app.rs): remove unneeded hashmap use statement
2015-04-05 20:25:03 -04:00
Kevin K
f4b2bf5767
feat(help): sort arguments by name so as to not display a random order
2015-04-05 20:20:46 -04:00
Kevin K
90e72cffde
fix(flags): fix bug not allowing users to specify -v or -h
2015-04-04 16:13:51 -04:00
Kevin K
572bc31f08
style(app.rs): clean up misc items
2015-04-04 09:25:49 -04:00
Kevin K
ca17fa494b
fix(help): fix spacing when option argument has not long version
2015-04-03 11:50:09 -04:00
Kevin K
9abdb438e3
fix(clap): remove unstable features for Rust 1.0
2015-04-03 11:02:46 -04:00
Kevin K
18dbcf3702
fix(args): improve error messages for arguments with mutual exclusions
...
Closes #51
2015-04-02 22:34:36 -04:00
Kevin K
c14c3f31fd
fix(positional args): all previous positional args become required when
...
a latter one is required
Closes #50
2015-04-02 22:18:36 -04:00
Kevin K
e869100423
fix(help): fix formatting for option arguments with no long
2015-04-02 14:45:08 -04:00
Kevin K
a0a2a40fed
fix(flags): add assertion to catch flags with specific value sets
...
Closes #52
2015-04-01 20:16:45 -04:00
Kevin K
82ad6ad775
fix(option args): fix bug in getting the wrong number of occurrences for options
2015-04-01 20:14:49 -04:00
Kevin K
6ceb88a594
fix(args): fix bug in arguments who are required and mutually exclusive
...
When arguments are required-by-default and also mutually exclusive with
other arguments and the user chooses the mutually eclusive argument, the
requirements must be updated as well.
2015-04-01 13:22:53 -04:00
Kevin K
28691b52f6
fix(help): fix formatting of help and usage
2015-04-01 13:22:53 -04:00
Kevin K
6ec1011563
fix(help): fix formatting of help for flags and options
...
When options or flags have varying lengths of names and "long" version
the formatting gets corrupted because of the use of tabs. This commit
fixes those issues.
2015-04-01 13:22:53 -04:00
Kevin K
297ddba770
feat(help): add '...' to indicate multiple values supported
2015-04-01 13:22:53 -04:00
Kevin K
b7fa72d40f
feat(positionals): add assertions for positional args with multiple vals
2015-04-01 13:22:42 -04:00
Kevin K
8078400941
feat(positionals): add support for multiple values
...
Add support for #44 (multiple values for positional arguments) when the
positional argument is the last one (i.e. highest index)
2015-04-01 13:02:58 -04:00
Kevin K
da549dcb6c
fix(apps): allow use of hyphens in application and subcommand names
2015-04-01 13:01:00 -04:00
Kevin K
0a09eb365c
fix(args): determine if the only arguments allowed are also required
2015-04-01 12:57:26 -04:00
Kevin K
270eb88925
feat(args): add support for a specific set of allowed values on options
...
or positional arguments
2015-04-01 12:56:34 -04:00
Kevin K
1b7316d4a8
fix(usage): display required args in usage, even if only required by others
2015-04-01 12:50:35 -04:00
Kevin K
4ee023442a
feat(subcommands): properly list subcommands in help and usage
...
SubCommands should be listed as parent-subcommand in help, but parent
subcommand in usage
2015-04-01 12:47:55 -04:00
Kevin K
9af52e93ce
fix(option): fix bug with option occurrence values
2015-04-01 12:39:23 -04:00
Kevin K
9e8c1fb940
feat(arg): allow lifetimes other than 'static in arguments
2015-04-01 12:36:41 -04:00
Kevin K
564b1db183
removed unneeded ref in print_help() for options
2015-03-26 11:48:36 -04:00
Kevin K
de64e3d79f
Removed extra tab when printing help
2015-03-26 11:25:54 -04:00
Kevin K
0cce6b8715
Adding tests
2015-03-25 17:02:21 -04:00
Kevin K
b4caf8a21b
Removed unneeded Box<>
2015-03-25 13:48:01 -04:00
Kevin K
d906701b0e
testing to_owned()
2015-03-24 16:21:10 -04:00
Kevin K
b047104d9a
version bump and rebuilt docs
2015-03-24 14:35:47 -04:00
Kevin K
c7f22728f1
Added test application
2015-03-24 12:16:59 -04:00
Kevin K
6286d4b008
Closes #28 - Changed App name, version, about, author, and usage to allow lifetimes other than 'static
2015-03-23 22:34:01 -04:00
Kevin K
aed37da635
Bug fixes with multiple options
2015-03-22 22:48:46 -04:00
Kevin K
46bcf02a2f
Bug fixes
2015-03-22 22:26:07 -04:00
Kevin K
66dab46760
Fixed doc error
2015-03-22 22:13:10 -04:00
Kevin K
eff1ef4ff1
Fixed makefile bug
2015-03-22 22:03:28 -04:00
Kevin K
0f7bc363ce
Moved tests to tests/ directory and crate
2015-03-22 21:57:02 -04:00
Kevin K
d5d1554b5e
Cleaned up codebase...a little
2015-03-22 21:30:48 -04:00
Kevin K
cf4dc688a5
Fixed #22
2015-03-21 10:22:46 -04:00
J/A
1e1271ed8f
Remove assertion on multi args.
...
There's an assertion on line 322 of clap-rs/master that prevents any arg
where `multiple == true` from accepting any value. This commit only
deletes that assertion. It could cause any number of other problems; I
don't really know.
2015-03-19 00:26:50 -04:00
Kevin K.
dde61de645
Merge pull request #16 from untitaker/make
...
Add makefile magic
2015-03-18 21:20:10 -04:00
Kevin K
19c205b72d
Closes #17
2015-03-18 21:15:02 -04:00
Kevin K
01e3fc6ddd
Closes #17
2015-03-18 20:35:42 -04:00
Markus Unterwaditzer
5abee664b2
Deduplicate docs
2015-03-19 00:42:06 +01:00
Kevin K
96d28df880
Initial commit for multiple option arguments
2015-03-18 18:09:42 -04:00
Kevin K
f270bc171f
Restructured project to better reflect internal workings
2015-03-18 15:00:15 -04:00
Kevin K
85648f2949
Moved to stable Rust APIs - Removed uppercasing of argument names due to Rust API stability
2015-03-18 13:40:58 -04:00
Kevin K
ff8ea640e9
Moved some for loops to more readable iterators
2015-03-18 10:15:55 -04:00
Kevin K
399ad97413
Changes to stable APIs towards Rust 1.0
2015-03-18 08:41:09 -04:00
Kevin K
0594180e29
Added support for -- where only positional arguments follow
2015-03-17 20:53:56 -04:00
Kevin K
6ae91954ae
Fixes #9
2015-03-16 18:50:53 -04:00
Kevin K.
a0746686ac
Merge pull request #7 from untitaker/tabs
...
Improve formatting for README, remove some tabs
2015-03-16 16:51:32 -04:00
Markus Unterwaditzer
59bcd85662
Improve formatting for README, remove some tabs
2015-03-16 20:56:42 +01:00
Kevin K
55ce5c5eea
Fixed formatting error in doc example
2015-03-16 15:10:00 -04:00
Kevin K
eabfa091bc
Fixed error in doc test
2015-03-16 14:53:49 -04:00
Kevin K
9f4cdc9fa3
Changed tabs to spaces
2015-03-16 14:47:09 -04:00
Kevin K
1814d87192
Added custom usage strings
2015-03-16 14:28:56 -04:00
Kevin K
b77920304c
Fixed bug with un-needed subcommands (i.e. when no subcommand is specified by developer manually - and removed deprecated flags
2015-03-16 11:17:51 -04:00
Kevin K
152aa8919a
Fixed doc tests
2015-03-15 21:05:19 -04:00
Kevin K
e05ece7696
Fixed doc tests
2015-03-15 17:39:36 -04:00
Kevin K
65a8a4f045
Added support for subcommands
2015-03-15 17:17:52 -04:00
Kevin K
5ca006cbb5
Adding subcommands
2015-03-05 22:44:11 -05:00
Kevin K
d084a40f4a
Merge branch 'dev'
2015-03-03 22:42:06 -05:00
Kevin K
e057ed4e60
Moved to consuming builder pattern, removed unneeded fields
2015-03-03 22:41:47 -05:00
Kevin K
809b43995b
Removed extra keywords, fixed borrowing issues
2015-03-03 22:04:45 -05:00
Kevin K
90ca144f02
Removed extra keywords, fixed borrowing issues
2015-03-03 22:03:00 -05:00
Kevin K
42b7a35987
adding tests
2015-03-03 14:19:44 -05:00
Kevin K
9f5b33a241
adding tests
2015-03-03 14:18:56 -05:00
Kevin K
12a727e2a9
Added initial testing
2015-03-03 14:13:31 -05:00
Kevin K
498c13c264
Fixed error in docs
2015-03-03 13:57:19 -05:00
Kevin K
62704caf8d
Removed unneeded fields from Arg Matches
2015-03-03 13:10:19 -05:00
Kevin K
8548be883b
Fixed failing tests in the docs
2015-03-01 16:58:39 -05:00
Kevin K
3c0b050a26
updated docs
2015-02-28 20:15:04 -05:00
Kevin K
1c752d38d1
Arg names, shorts, and longs must now be unique
2015-02-28 20:10:19 -05:00
Kevin K
be61ff9842
Arg names, shorts, and longs must now be unique
2015-02-28 19:56:43 -05:00
Kevin K
e9a9273ec1
added cargo docs to github folder
2015-02-28 13:49:33 -05:00
Kevin K
e7fccf0cec
bug fixes
2015-02-28 13:43:58 -05:00
Kevin K
bce1aebd7c
bug fixes
2015-02-28 13:41:37 -05:00
Kevin K
8b2b7080b7
Added version and help to list of flags
2015-02-28 13:36:00 -05:00
Kevin K
72c360dbf6
Added documentation
2015-02-28 13:18:47 -05:00
Kevin K
b0b401ab07
Added documentation and fixed some bugs
2015-02-28 13:13:43 -05:00
Kevin K
3b02a6a373
Added documentation
2015-02-28 12:04:05 -05:00
Kevin K
1a0b06147c
Added documentation
2015-02-28 11:25:44 -05:00
Kevin K
1fbf99d1ff
Added documentation - and added args() to App
2015-02-28 11:10:48 -05:00
Kevin K
e15635d1c7
Re-addedd the pub-use
2015-02-28 10:45:31 -05:00
Kevin K
0bf13bd5f2
Added documentation - and removed a pub-use
2015-02-28 10:43:49 -05:00
Kevin K
1cb1dcb73f
Added documentation
2015-02-28 10:00:24 -05:00