diff options
-rw-r--r-- | usr.bin/units/units.1 | 12 | ||||
-rw-r--r-- | usr.bin/units/units.c | 12 |
2 files changed, 17 insertions, 7 deletions
diff --git a/usr.bin/units/units.1 b/usr.bin/units/units.1 index dff0f58..f971d9c 100644 --- a/usr.bin/units/units.1 +++ b/usr.bin/units/units.1 @@ -13,17 +13,19 @@ .Sh OPTIONS The following options are available: .Bl -tag -width indent -.It Fl f Ar filename +.It Fl f Ar filename No , Fl -file Ar filename Specify the name of the units data file to load. -.It Fl q +.It Fl q No , Fl -quiet Suppress prompting of the user for units and the display of statistics about the number of units loaded. -.It Fl U +.It Fl U No , Fl -unitsfile If the default unit file exists prints its location. If not, print .Qo Units data file not found .Qc -.It Fl V +.It Fl v No , Fl -verbose +Print the units in the conversion output. Be more verbose in general. +.It Fl V No , Fl -version Print the version number, usage, and then exit. .It Ar from-unit to-unit Allow a single unit conversion to be done directly from the command @@ -31,8 +33,6 @@ line. The program will not print prompts. It will print out the result of the single specified conversion. -.It Fl v -Print the units in the conversion output. Be more verbose in general. .El .Sh DESCRIPTION The diff --git a/usr.bin/units/units.c b/usr.bin/units/units.c index be52adf7..a0e3772 100644 --- a/usr.bin/units/units.c +++ b/usr.bin/units/units.c @@ -24,6 +24,7 @@ static const char rcsid[] = #include <err.h> #include <errno.h> #include <histedit.h> +#include <getopt.h> #include <stdbool.h> #include <stdio.h> #include <stdlib.h> @@ -702,6 +703,15 @@ usage(void) exit(3); } +static struct option longopts[] = { + {"file", required_argument, NULL, 'f'}, + {"quiet", no_argument, NULL, 'q'}, + {"verbose", no_argument, NULL, 'v'}, + {"unitsfile", no_argument, NULL, 'U'}, + {"version", no_argument, NULL, 'V'}, + { 0, 0, 0, 0 } +}; + int main(int argc, char **argv) @@ -718,7 +728,7 @@ main(int argc, char **argv) quiet = false; readfile = false; - while ((optchar = getopt(argc, argv, "f:qvUV")) != -1) { + while ((optchar = getopt_long(argc, argv, "+f:qvUV", longopts, NULL)) != -1) { switch (optchar) { case 'f': readfile = true; |