summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Coopersmith <alan.coopersmith@oracle.com>2023-02-09 18:02:16 -0800
committerAlan Coopersmith <alan.coopersmith@oracle.com>2023-02-09 18:02:16 -0800
commitb8db641a4de1f9ed21e24e30b2f10dc9ec7e1fe2 (patch)
tree3b618b6e1f5ebc6dd18163e9d52152a065e0632f
parentb77be679b32d3145b6133daa63cc14c37b8c62a8 (diff)
Add -help option
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-rw-r--r--showfont.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/showfont.c b/showfont.c
index 7e7d7bb..c977a07 100644
--- a/showfont.c
+++ b/showfont.c
@@ -341,7 +341,7 @@ show_info(
}
static void
-usage(const char *msg)
+usage(const char *msg, int exitval)
{
if (msg)
fprintf(stderr, "%s: %s\n", ProgramName, msg);
@@ -351,7 +351,7 @@ usage(const char *msg)
" [-start first_char] [-end last_char] -fn fontname\n"
" or: %s -version\n",
ProgramName, ProgramName);
- exit(1);
+ exit(exitval);
}
int
@@ -371,7 +371,7 @@ main(int argc, char **argv)
if (++i < argc)
servername = argv[i];
else
- usage("-server requires an argument");
+ usage("-server requires an argument", 1);
} else if (!strncmp(argv[i], "-ext", 4)) {
extents_only = True;
} else if (!strncmp(argv[i], "-noprops", 7)) {
@@ -388,43 +388,45 @@ main(int argc, char **argv)
if (++i < argc)
scan_pad = atoi(argv[i]);
else
- usage("-pad requires an argument");
+ usage("-pad requires an argument", 1);
} else if (!strncmp(argv[i], "-u", 2)) {
if (++i < argc)
scan_unit = atoi(argv[i]);
else
- usage("-unit requires an argument");
+ usage("-unit requires an argument", 1);
} else if (!strncmp(argv[i], "-b", 2)) {
if (++i < argc)
bitmap_pad = atoi(argv[i]);
else
- usage("-bitmap_pad requires an argument");
+ usage("-bitmap_pad requires an argument", 1);
} else if (!strncmp(argv[i], "-st", 3)) {
if (++i < argc)
first_ch = atoi(argv[i]);
else
- usage("-start requires an argument");
+ usage("-start requires an argument", 1);
} else if (!strncmp(argv[i], "-e", 2)) {
if (++i < argc)
end_ch = atoi(argv[i]);
else
- usage("-end requires an argument");
+ usage("-end requires an argument", 1);
} else if (!strncmp(argv[i], "-f", 2)) {
if (++i < argc)
fontname = argv[i];
else
- usage("-fn requires an argument");
+ usage("-fn requires an argument", 1);
} else if (!strcmp(argv[i], "-version")) {
puts(PACKAGE_STRING);
exit(0);
+ } else if (!strcmp(argv[i], "-help")) {
+ usage(NULL, 0);
} else {
char msg[128];
snprintf(msg, sizeof(msg), "unrecognized argument: %s", argv[i]);
- usage(msg);
+ usage(msg, 1);
}
}
if (fontname == NULL)
- usage("no fontname specified");
+ usage("no fontname specified", 1);
if (first_ch != 0 && end_ch != ~0 && end_ch < first_ch) {
fprintf(stderr,