summaryrefslogtreecommitdiff
path: root/example
diff options
context:
space:
mode:
authorGravatar Jimmi Holst Christensen2021-11-29 17:01:36 +0100
committerGravatar Komari Spaghetti2021-11-29 17:09:26 +0100
commitb2059e5d086731a37f5988bfc6bfdb0848f14ece (patch)
treec2ebf7806f383f18ebc7253bbe9e6e9da2db39d4 /example
parentFix chaining typo (diff)
downloadzig-clap-b2059e5d086731a37f5988bfc6bfdb0848f14ece.tar.gz
zig-clap-b2059e5d086731a37f5988bfc6bfdb0848f14ece.tar.xz
zig-clap-b2059e5d086731a37f5988bfc6bfdb0848f14ece.zip
Improve help and usage examples
Instead of just calling these function, have the examples be small programs that demonstrates how you would actually use them together with argument parsing. fixes #57
Diffstat (limited to '')
-rw-r--r--example/README.md.template2
-rw-r--r--example/help.zig17
-rw-r--r--example/usage.zig19
3 files changed, 23 insertions, 15 deletions
diff --git a/example/README.md.template b/example/README.md.template
index 74a2f1d..1848d03 100644
--- a/example/README.md.template
+++ b/example/README.md.template
@@ -74,6 +74,7 @@ program can take.
74``` 74```
75 75
76``` 76```
77$ zig-out/bin/help --help
77 -h, --help Display this help and exit. 78 -h, --help Display this help and exit.
78 -v, --version Output version information and exit. 79 -v, --version Output version information and exit.
79``` 80```
@@ -97,6 +98,7 @@ of the help message.
97``` 98```
98 99
99``` 100```
101$ zig-out/bin/usage --help
100[-hv] [--value <N>] 102[-hv] [--value <N>]
101``` 103```
102 104
diff --git a/example/help.zig b/example/help.zig
index d90373a..de3b707 100644
--- a/example/help.zig
+++ b/example/help.zig
@@ -2,14 +2,17 @@ const clap = @import("clap");
2const std = @import("std"); 2const std = @import("std");
3 3
4pub fn main() !void { 4pub fn main() !void {
5 const params = comptime [_]clap.Param(clap.Help){
6 clap.parseParam("-h, --help Display this help and exit. ") catch unreachable,
7 clap.parseParam("-v, --version Output version information and exit.") catch unreachable,
8 };
9
10 var args = try clap.parse(clap.Help, &params, .{});
11 defer args.deinit();
12
5 // clap.help is a function that can print a simple help message, given a 13 // clap.help is a function that can print a simple help message, given a
6 // slice of Param(Help). There is also a helpEx, which can print a 14 // slice of Param(Help). There is also a helpEx, which can print a
7 // help message for any Param, but it is more verbose to call. 15 // help message for any Param, but it is more verbose to call.
8 try clap.help( 16 if (args.flag("--help"))
9 std.io.getStdErr().writer(), 17 return clap.help(std.io.getStdErr().writer(), &params);
10 comptime &.{
11 clap.parseParam("-h, --help Display this help and exit. ") catch unreachable,
12 clap.parseParam("-v, --version Output version information and exit.") catch unreachable,
13 },
14 );
15} 18}
diff --git a/example/usage.zig b/example/usage.zig
index 90fa310..368a6b3 100644
--- a/example/usage.zig
+++ b/example/usage.zig
@@ -2,15 +2,18 @@ const clap = @import("clap");
2const std = @import("std"); 2const std = @import("std");
3 3
4pub fn main() !void { 4pub fn main() !void {
5 const params = comptime [_]clap.Param(clap.Help){
6 clap.parseParam("-h, --help Display this help and exit. ") catch unreachable,
7 clap.parseParam("-v, --version Output version information and exit. ") catch unreachable,
8 clap.parseParam(" --value <N> An option parameter, which takes a value.") catch unreachable,
9 };
10
11 var args = try clap.parse(clap.Help, &params, .{});
12 defer args.deinit();
13
5 // clap.usage is a function that can print a simple usage message, given a 14 // clap.usage is a function that can print a simple usage message, given a
6 // slice of Param(Help). There is also a usageEx, which can print a 15 // slice of Param(Help). There is also a usageEx, which can print a
7 // usage message for any Param, but it is more verbose to call. 16 // usage message for any Param, but it is more verbose to call.
8 try clap.usage( 17 if (args.flag("--help"))
9 std.io.getStdErr().writer(), 18 return clap.usage(std.io.getStdErr().writer(), &params);
10 comptime &.{
11 clap.parseParam("-h, --help Display this help and exit. ") catch unreachable,
12 clap.parseParam("-v, --version Output version information and exit. ") catch unreachable,
13 clap.parseParam(" --value <N> An option parameter, which takes a value.") catch unreachable,
14 },
15 );
16} 19}