randomtest fixes
[oweals/busybox.git] / include / usage.h
index 7863a716b108cab2cdbf0a0fc56ef7bc975b32f7..9d9ad008bad554b6aa60b20b05fc4ee8f86ba8cb 100644 (file)
@@ -57,7 +57,7 @@
 #define adjtimex_trivial_usage \
        "[-q] [-o OFF] [-f FREQ] [-p TCONST] [-t TICK]"
 #define adjtimex_full_usage "\n\n" \
-       "Read and optionally set system timebase parameters. See adjtimex(2).\n" \
+       "Read and optionally set system timebase parameters. See adjtimex(2)\n" \
      "\nOptions:" \
      "\n       -q      Quiet" \
      "\n       -o OFF  Time offset, microseconds" \
      "\n       -r      Repetitions" \
      "\n       -n      Start new tone" \
 
-#define fbsplash_trivial_usage \
-       "-s IMGFILE [-c] [-d DEV] [-i INIFILE] [-f CMD]"
-#define fbsplash_full_usage "\n\n" \
-       "Options:" \
-     "\n       -s      Image" \
-     "\n       -c      Hide cursor" \
-     "\n       -d      Framebuffer device (default /dev/fb0)" \
-     "\n       -i      Config file (var=value):" \
-     "\n                       BAR_LEFT,BAR_TOP,BAR_WIDTH,BAR_HEIGHT" \
-     "\n                       BAR_R,BAR_G,BAR_B" \
-     "\n       -f      Control pipe (else exit after drawing image)" \
-     "\n                       commands: 'NN' (% for progress bar) or 'exit'" \
+#define bootchartd_trivial_usage \
+       "start [PROG ARGS]|stop|init"
+#define bootchartd_full_usage "\n\n" \
+       "Create /var/log/bootchart.tgz with boot chart data\n" \
+     "\nOptions:" \
+     "\nstart: start background logging; with PROG, run PROG, then kill logging with USR1" \
+     "\nstop: send USR1 to all bootchartd processes" \
+     "\ninit: start background logging; stop when getty/xdm is seen (for init scripts)" \
+     "\nUnder PID 1: as init, then exec $bootchart_init, /init, /sbin/init" \
 
 #define brctl_trivial_usage \
        "COMMAND [BRIDGE [INTERFACE]]"
      "\n       setpathcost BRIDGE COST         Set path cost" \
      "\n       setportprio BRIDGE PRIO         Set port priority" \
      "\n       setbridgeprio BRIDGE PRIO       Set bridge priority" \
-     "\n       stp BRIDGE [1|0]                STP on/off" \
+     "\n       stp BRIDGE [1/yes/on|0/no/off]  STP on/off" \
        ) \
 
 #define bunzip2_trivial_usage \
-       "[OPTIONS] [FILE]"
+       "[OPTIONS] [FILE]..."
 #define bunzip2_full_usage "\n\n" \
-       "Uncompress FILE (or standard input)\n" \
+       "Uncompress FILEs (or stdin)\n" \
      "\nOptions:" \
-     "\n       -c      Write to standard output" \
+     "\n       -c      Write to stdout" \
      "\n       -f      Force" \
 
 #define bzip2_trivial_usage \
        "[OPTIONS] [FILE]..."
 #define bzip2_full_usage "\n\n" \
-       "Compress FILEs (or standard input) with bzip2 algorithm.\n" \
+       "Compress FILEs (or stdin) with bzip2 algorithm\n" \
      "\nOptions:" \
-     "\n       -c      Write to standard output" \
+     "\n       -c      Write to stdout" \
      "\n       -d      Decompress" \
      "\n       -f      Force" \
      "\n       -1..-9  Compression level" \
 #define lzop_trivial_usage \
        "[-cfvd123456789CF] [FILE]..."
 #define lzop_full_usage "\n\n" \
-       "       -c      Write to standard output" \
+       "       -c      Write to stdout" \
      "\n       -f      Force" \
      "\n       -v      Verbose" \
      "\n       -d      Decompress" \
 #define unlzop_trivial_usage \
        "[-cfvCF] [FILE]..."
 #define unlzop_full_usage "\n\n" \
-       "       -c      Write to standard output" \
+       "       -c      Write to stdout" \
      "\n       -f      Force" \
      "\n       -v      Verbose" \
      "\n       -F      Don't store or verify checksum" \
        "Uncompress to stdout"
 
 #define unlzma_trivial_usage \
-       "[OPTIONS] [FILE]"
+       "[OPTIONS] [FILE]..."
 #define unlzma_full_usage "\n\n" \
-       "Uncompress FILE (or standard input)\n" \
+       "Uncompress FILE (or stdin)\n" \
      "\nOptions:" \
-     "\n       -c      Write to standard output" \
+     "\n       -c      Write to stdout" \
      "\n       -f      Force" \
 
 #define lzmacat_trivial_usage \
      "\n       -c BYTES        Limit core file size" \
      "\n       -v              Verbose" \
      "\n       -P              Create new process group" \
-     "\n       -0              Close standard input" \
-     "\n       -1              Close standard output" \
-     "\n       -2              Close standard error" \
+     "\n       -0              Close stdin" \
+     "\n       -1              Close stdout" \
+     "\n       -2              Close stderr" \
 
 #define setuidgid_trivial_usage \
        "USER PROG ARGS"
        "Clear screen"
 
 #define cmp_trivial_usage \
-       "[-l] [-s] FILE1 [FILE2" IF_DESKTOP(" [SKIP1 [SKIP2]") "]]"
+       "[-l] [-s] FILE1 [FILE2" IF_DESKTOP(" [SKIP1 [SKIP2]]") "]"
 #define cmp_full_usage "\n\n" \
-       "Compares FILE1 vs stdin if FILE2 is not specified\n" \
+       "Compare FILE1 with FILE2 (or stdin)\n" \
      "\nOptions:" \
      "\n       -l      Write the byte numbers (decimal) and values (octal)" \
      "\n               for all differing bytes" \
 #define comm_trivial_usage \
        "[-123] FILE1 FILE2"
 #define comm_full_usage "\n\n" \
-       "Compare FILE1 to FILE2, or to stdin if - is specified\n" \
+       "Compare FILE1 with FILE2\n" \
      "\nOptions:" \
      "\n       -1      Suppress lines unique to FILE1" \
      "\n       -2      Suppress lines unique to FILE2" \
        "Extract or list files from a cpio archive" \
        IF_FEATURE_CPIO_O(", or" \
      "\ncreate an archive" IF_FEATURE_CPIO_P(" (-o) or copy files (-p)") \
-               " using file list on standard input" \
+               " using file list on stdin" \
        ) \
      "\n" \
      "\nMain operation mode:" \
 #define cut_trivial_usage \
        "[OPTIONS] [FILE]..."
 #define cut_full_usage "\n\n" \
-       "Print selected fields from each input FILE to standard output\n" \
+       "Print selected fields from each input FILE to stdout\n" \
      "\nOptions:" \
      "\n       -b LIST Output only bytes from LIST" \
      "\n       -c LIST Output only characters from LIST" \
        "p - print top of the stack (without altering the stack),\n" \
        "f - print entire stack, o - pop the value and set output radix\n" \
        "(value must be 10 or 16).\n" \
-       "Examples: 'dc 2 2 add' -> 4, 'dc 8 8 * 2 2 + /' -> 16.\n" \
+       "Examples: 'dc 2 2 add' -> 4, 'dc 8 8 * 2 2 + /' -> 16\n" \
 
 #define dc_example_usage \
        "$ dc 2 2 + p\n" \
 #define dpkg_full_usage "\n\n" \
        "Install, remove and manage Debian packages\n" \
      "\nOptions:" \
+       IF_LONG_OPTS( \
+     "\n       -i,--install    Install the package" \
+     "\n       -l,--list       List of installed packages" \
+     "\n       --configure     Configure an unpackaged package" \
+     "\n       -P,--purge      Purge all files of a package" \
+     "\n       -r,--remove     Remove all but the configuration files for a package" \
+     "\n       --unpack        Unpack a package, but don't configure it" \
+     "\n       --force-depends Ignore dependency problems" \
+     "\n       --force-confnew Overwrite existing config files when installing" \
+     "\n       --force-confold Keep old config files when installing" \
+       ) \
+       IF_NOT_LONG_OPTS( \
      "\n       -i              Install the package" \
      "\n       -l              List of installed packages" \
      "\n       -C              Configure an unpackaged package" \
-     "\n       -F depends      Ignore dependency problems" \
      "\n       -P              Purge all files of a package" \
      "\n       -r              Remove all but the configuration files for a package" \
      "\n       -u              Unpack a package, but don't configure it" \
+     "\n       -F depends      Ignore dependency problems" \
+     "\n       -F confnew      Overwrite existing config files when installing" \
+     "\n       -F confold      Keep old config files when installing" \
+       )
 
 #define dpkg_deb_trivial_usage \
        "[-cefxX] FILE [argument]"
 #define dumpkmap_trivial_usage \
        "> keymap"
 #define dumpkmap_full_usage "\n\n" \
-       "Print a binary keyboard translation table to standard output"
+       "Print a binary keyboard translation table to stdout"
 #define dumpkmap_example_usage \
        "$ dumpkmap > keymap\n"
 
        "Display DHCP leases granted by udhcpd\n" \
      "\nOptions:" \
        IF_LONG_OPTS( \
-     "\n       -f,--file=FILE  Leases file to load" \
-     "\n       -r,--remaining  Interpret lease times as time remaining" \
-     "\n       -a,--absolute   Interpret lease times as expire time" \
+     "\n       -f,--file=FILE  Lease file" \
+     "\n       -r,--remaining  Show remaining time" \
+     "\n       -a,--absolute   Show expiration time" \
        ) \
        IF_NOT_LONG_OPTS( \
-     "\n       -f FILE Leases file to load" \
-     "\n       -r      Interpret lease times as time remaining" \
-     "\n       -a      Interpret lease times as expire time" \
+     "\n       -f FILE Lease file" \
+     "\n       -r      Show remaining time" \
+     "\n       -a      Show expiration time" \
        )
 
 /*
        IF_FEATURE_FANCY_ECHO( "\n" \
      "\nOptions:" \
      "\n       -n      Suppress trailing newline" \
-     "\n       -e      Interpret backslash-escaped characters (i.e., \\t=tab)" \
-     "\n       -E      Disable interpretation of backslash-escaped characters" \
+     "\n       -e      Interpret backslash escapes (i.e., \\t=tab)" \
+     "\n       -E      Don't interpret backslash escapes (default)" \
        )
 #define echo_example_usage \
        "$ echo \"Erik is cool\"\n" \
 #define eject_trivial_usage \
        "[-t] [-T] [DEVICE]"
 #define eject_full_usage "\n\n" \
-       "Eject specified DEVICE (or default /dev/cdrom)\n" \
+       "Eject DEVICE or default /dev/cdrom\n" \
      "\nOptions:" \
        IF_FEATURE_EJECT_SCSI( \
      "\n       -s      SCSI device" \
      "\n       -p pass         Append four or six byte password PW to the packet" \
 
 #define expand_trivial_usage \
-       "[-i] [-t N] [FILE|-]"
+       "[-i] [-t N] [FILE]..."
 #define expand_full_usage "\n\n" \
-       "Convert tabs to spaces, writing to standard output\n" \
+       "Convert tabs to spaces, writing to stdout\n" \
      "\nOptions:" \
        IF_FEATURE_EXPAND_LONG_OPTIONS( \
      "\n       -i,--initial    Don't convert tabs after non blanks" \
 #define expr_trivial_usage \
        "EXPRESSION"
 #define expr_full_usage "\n\n" \
-       "Print the value of EXPRESSION to standard output\n" \
+       "Print the value of EXPRESSION to stdout\n" \
     "\n" \
        "EXPRESSION may be:\n" \
        "       ARG1 | ARG2     ARG1 if it is neither null nor 0, otherwise ARG2\n" \
        "$ echo $?\n" \
        "1\n"
 
+#define fbsplash_trivial_usage \
+       "-s IMGFILE [-c] [-d DEV] [-i INIFILE] [-f CMD]"
+#define fbsplash_full_usage "\n\n" \
+       "Options:" \
+     "\n       -s      Image" \
+     "\n       -c      Hide cursor" \
+     "\n       -d      Framebuffer device (default /dev/fb0)" \
+     "\n       -i      Config file (var=value):" \
+     "\n                       BAR_LEFT,BAR_TOP,BAR_WIDTH,BAR_HEIGHT" \
+     "\n                       BAR_R,BAR_G,BAR_B" \
+     "\n       -f      Control pipe (else exit after drawing image)" \
+     "\n                       commands: 'NN' (% for progress bar) or 'exit'" \
+
 #define fbset_trivial_usage \
        "[OPTIONS] [MODE]"
 #define fbset_full_usage "\n\n" \
        ) \
      "\n       -b 2048         (for certain MO disks) use 2048-byte sectors" \
      "\n       -C CYLINDERS    Set number of cylinders/heads/sectors" \
-     "\n       -H HEADS\n" \
+     "\n       -H HEADS" \
      "\n       -S SECTORS" \
 
 #define blkid_trivial_usage \
        IF_FEATURE_FIND_DEPTH( \
      "\n       -depth          Process directory name after traversing it") \
        IF_FEATURE_FIND_SIZE( \
-     "\n       -size N[bck]    File size is N (c:bytes,k:kbytes,b:512 bytes(def.))." \
+     "\n       -size N[bck]    File size is N (c:bytes,k:kbytes,b:512 bytes(def.))" \
      "\n                       +/-N: file size is bigger/smaller than N") \
        IF_FEATURE_FIND_LINKS( \
      "\n       -links N        Number of links is greater than (+N), less than (-N)," \
      "\nOptions:" \
      "\n       -v      Verbose" \
 
+#define flock_trivial_usage \
+       "[-sxun] FD|{FILE [-c] PROG ARGS}"
+#define flock_full_usage "\n\n" \
+       "[Un]lock file descriptor, or lock FILE and run PROG\n" \
+     "\nOptions:" \
+     "\n       -s      Shared lock" \
+     "\n       -x      Exclusive lock (default)" \
+     "\n       -u      Unlock FD" \
+     "\n       -n      Fail rather than wait" \
+
 #define fold_trivial_usage \
-       "[-bs] [-w WIDTH] [FILE]"
+       "[-bs] [-w WIDTH] [FILE]..."
 #define fold_full_usage "\n\n" \
-       "Wrap input lines in each FILE (standard input by default), writing to\n" \
-       "standard output\n" \
+       "Wrap input lines in each FILE (or stdin), writing to stdout\n" \
      "\nOptions:" \
      "\n       -b      Count bytes rather than columns" \
      "\n       -s      Break at spaces" \
        "#!/bin/sh\n" \
        "GETOPT=`getopt -o ab:c:: --long a-long,b-long:,c-long:: \\\n" \
        "       -n 'example.busybox' -- \"$@\"`\n" \
-       "if [ $? != 0 ]; then  exit 1; fi\n" \
+       "if [ $? != 0 ]; then exit 1; fi\n" \
        "eval set -- \"$GETOPT\"\n" \
        "while true; do\n" \
        " case $1 in\n" \
 #define getsebool_trivial_usage \
        "-a or getsebool boolean..."
 #define getsebool_full_usage "\n\n" \
-       "       -a      Show all SELinux booleans"
+       "       -a      Show all selinux booleans"
 
 #define getty_trivial_usage \
        "[OPTIONS] BAUD_RATE TTY [TERMTYPE]"
      "\n       -H HOST         Log HOST into the utmp file as the hostname" \
 
 #define grep_trivial_usage \
-       "[-HhnlLoqvsri" \
-       IF_DESKTOP("w") \
+       "[-HhnlLoqvsriw" \
        "F" \
        IF_FEATURE_GREP_EGREP_ALIAS("E") \
        IF_EXTRA_COMPAT("z") \
        IF_FEATURE_GREP_CONTEXT("[-A/B/C N] ") \
        "PATTERN/-e PATTERN.../-f FILE [FILE]..."
 #define grep_full_usage "\n\n" \
-       "Search for PATTERN in each FILE or standard input\n" \
+       "Search for PATTERN in FILEs (or stdin)\n" \
      "\nOptions:" \
      "\n       -H      Add 'filename:' prefix" \
      "\n       -h      Do not add 'filename:' prefix" \
      "\n       -s      Suppress open and read errors" \
      "\n       -r      Recurse" \
      "\n       -i      Ignore case" \
-       IF_DESKTOP( \
      "\n       -w      Match whole words only" \
-       ) \
      "\n       -F      PATTERN is a literal (not regexp)" \
        IF_FEATURE_GREP_EGREP_ALIAS( \
      "\n       -E      PATTERN is an extended regexp" \
 #define gunzip_trivial_usage \
        "[OPTIONS] [FILE]..."
 #define gunzip_full_usage "\n\n" \
-       "Uncompress FILEs (or standard input)\n" \
+       "Uncompress FILEs (or stdin)\n" \
      "\nOptions:" \
-     "\n       -c      Write to standard output" \
+     "\n       -c      Write to stdout" \
      "\n       -f      Force" \
      "\n       -t      Test file integrity" \
 
 #define gzip_trivial_usage \
        "[OPTIONS] [FILE]..."
 #define gzip_full_usage "\n\n" \
-       "Compress FILEs (or standard input)\n" \
+       "Compress FILEs (or stdin)\n" \
      "\nOptions:" \
-     "\n       -c      Write to standard output" \
+     "\n       -c      Write to stdout" \
      "\n       -d      Decompress" \
      "\n       -f      Force" \
 
 #define head_trivial_usage \
        "[OPTIONS] [FILE]..."
 #define head_full_usage "\n\n" \
-       "Print first 10 lines of each FILE (or standard input) to standard output.\n" \
-       "With more than one FILE, precede each with a header giving the file name.\n" \
+       "Print first 10 lines of each FILE (or stdin) to stdout.\n" \
+       "With more than one FILE, precede each with a filename header.\n" \
      "\nOptions:" \
-     "\n       -n N    Print first N lines instead of first 10" \
+     "\n       -n N[kbm]       Print first N lines" \
        IF_FEATURE_FANCY_HEAD( \
-     "\n       -c N    Output the first N bytes" \
-     "\n       -q      Never output headers giving file names" \
-     "\n       -v      Always output headers giving file names") \
+     "\n       -c N[kbm]       Print first N bytes" \
+     "\n       -q              Never print headers" \
+     "\n       -v              Always print headers" \
+       ) \
+     "\n" \
+     "\nN may be suffixed by k (x1024), b (x512), or m (x1024^2)." \
 
 #define head_example_usage \
        "$ head -n 2 /etc/passwd\n" \
        "root:x:0:0:root:/root:/bin/bash\n" \
        "daemon:x:1:1:daemon:/usr/sbin:/bin/sh\n"
 
+#define tail_trivial_usage \
+       "[OPTIONS] [FILE]..."
+#define tail_full_usage "\n\n" \
+       "Print last 10 lines of each FILE (or stdin) to stdout.\n" \
+       "With more than one FILE, precede each with a filename header.\n" \
+     "\nOptions:" \
+     "\n       -f              Print data as file grows" \
+       IF_FEATURE_FANCY_TAIL( \
+     "\n       -s SECONDS      Wait SECONDS between reads with -f" \
+       ) \
+     "\n       -n N[kbm]       Print last N lines" \
+       IF_FEATURE_FANCY_TAIL( \
+     "\n       -c N[kbm]       Print last N bytes" \
+     "\n       -q              Never print headers" \
+     "\n       -v              Always print headers" \
+     "\n" \
+     "\nN may be suffixed by k (x1024), b (x512), or m (x1024^2)." \
+     "\nIf N starts with a '+', output begins with the Nth item from the start" \
+     "\nof each file, not from the end." \
+       ) \
+
+#define tail_example_usage \
+       "$ tail -n 1 /etc/resolv.conf\n" \
+       "nameserver 10.0.0.1\n"
+
 #define hexdump_trivial_usage \
-       "[-bcCdefnosvx" IF_FEATURE_HEXDUMP_REVERSE("R") "] FILE..."
+       "[-bcCdefnosvx" IF_FEATURE_HEXDUMP_REVERSE("R") "] [FILE]..."
 #define hexdump_full_usage "\n\n" \
-       "Display FILEs or standard input in a user specified format\n" \
+       "Display FILEs (or stdin) in a user specified format\n" \
      "\nOptions:" \
      "\n       -b              One-byte octal display" \
      "\n       -c              One-byte character display" \
      "\n       -i              Inetd mode" \
      "\n       -f              Don't daemonize" \
      "\n       -v[v]           Verbose" \
-     "\n       -c FILE         Configuration file (default httpd.conf)" \
      "\n       -p [IP:]PORT    Bind to ip:port (default *:80)" \
        IF_FEATURE_HTTPD_SETUID( \
      "\n       -u USER[:GRP]   Set uid/gid after binding to port") \
        IF_FEATURE_HTTPD_BASIC_AUTH( \
      "\n       -r REALM        Authentication Realm for Basic Authentication") \
      "\n       -h HOME         Home directory (default .)" \
+     "\n       -c FILE         Configuration file (default {/etc,HOME}/httpd.conf)" \
        IF_FEATURE_HTTPD_AUTH_MD5( \
      "\n       -m STRING       MD5 crypt STRING") \
      "\n       -e STRING       HTML encode STRING" \
 "      ::shutdown:/sbin/swapoff -a\n"
 
 #define inotifyd_trivial_usage \
-       "PROG FILE1[:MASK] ..."
+       "PROG FILE1[:MASK]..."
 #define inotifyd_full_usage "\n\n" \
        "Run PROG on filesystem changes." \
      "\nWhen a filesystem event matching MASK occurs on FILEn," \
-     "\nPROG <actual_event(s)> <FILEn> [<subfile_name>] is run." \
+     "\nPROG ACTUAL_EVENTS FILEn [SUBFILE] is run." \
      "\nEvents:" \
      "\n       a       File is accessed" \
      "\n       c       File is modified" \
      "\n       d       Subfile is deleted" \
      "\n" \
      "\ninotifyd waits for PROG to exit." \
-     "\nWhen x event happens for all FILEs, inotifyd exits" \
+     "\nWhen x event happens for all FILEs, inotifyd exits." \
 
 /* 2.6 style insmod has no options and required filename
  * (not module name - .ko can't be omitted) */
 #define less_trivial_usage \
        "[-EMNmh~I?] [FILE]..."
 #define less_full_usage "\n\n" \
-       "View a file or list of files. The position within files can be\n" \
-       "changed, and files can be manipulated in various ways.\n" \
+       "View FILE (or stdin) one screenful at a time\n" \
      "\nOptions:" \
      "\n       -E      Quit once the end of a file is reached" \
      "\n       -M,-m   Display status line with line numbers" \
 #define loadfont_trivial_usage \
        "< font"
 #define loadfont_full_usage "\n\n" \
-       "Load a console font from standard input" \
+       "Load a console font from stdin" \
 /*   "\n       -C TTY  Affect TTY instead of /dev/tty" */ \
 
 #define loadfont_example_usage \
 #define loadkmap_trivial_usage \
        "< keymap"
 #define loadkmap_full_usage "\n\n" \
-       "Load a binary keyboard translation table from standard input\n" \
+       "Load a binary keyboard translation table from stdin\n" \
 /*   "\n       -C TTY  Affect TTY instead of /dev/tty" */ \
 
 #define loadkmap_example_usage \
 #define logger_trivial_usage \
        "[OPTIONS] [MESSAGE]"
 #define logger_full_usage "\n\n" \
-       "Write MESSAGE to the system log. If MESSAGE is omitted, log stdin.\n" \
+       "Write MESSAGE (or stdin) to syslog\n" \
      "\nOptions:" \
      "\n       -s      Log to stderr as well as the system log" \
      "\n       -t TAG  Log using the specified tag (defaults to user name)" \
 #define more_trivial_usage \
        "[FILE]..."
 #define more_full_usage "\n\n" \
-       "View FILE or standard input one screenful at a time"
+       "View FILE (or stdin) one screenful at a time"
 
 #define more_example_usage \
        "$ dmesg | more\n"
        "[-aBbcDdeFfHhIiLlOovXx] " IF_DESKTOP("[-t TYPE] ") "[FILE]"
 #define od_full_usage "\n\n" \
        "Write an unambiguous representation, octal bytes by default, of FILE\n" \
-       "(or standard input) to standard output."
+       "(or stdin) to stdout"
 
 #define openvt_trivial_usage \
        "[-c N] [-sw] [PROG ARGS]"
 /*   "\n       -c              Use tcpclient. Ignored" */ \
 /*   "\n       -a              Use APOP protocol. Implied. If server supports APOP -> use it" */ \
      "\n       -s              Skip authorization" \
-     "\n       -T              Get messages with TOP instead with RETR" \
+     "\n       -T              Get messages with TOP instead of RETR" \
      "\n       -k              Keep retrieved messages on the server" \
      "\n       -t SEC          Network timeout" \
        IF_FEATURE_POPMAILDIR_DELIVERY( \
-     "\n       -F \"PROG ARGS\"        Filter program. May be multiple" \
+     "\n       -F \"PROG ARGS\"        Filter program (may be repeated)" \
      "\n       -M \"PROG ARGS\"        Delivery program" \
        ) \
+     "\n" \
+     "\nFetch from plain POP3 server:" \
+     "\npopmaildir -k DIR nc pop3.server.com 110 <user_and_pass.txt" \
+     "\nFetch from SSLed POP3 server and delete fetched emails:" \
+     "\npopmaildir DIR -- openssl s_client -quiet -connect pop3.server.com:995 <user_and_pass.txt"
 /*   "\n       -R BYTES        Remove old messages on the server >= BYTES. Ignored" */
 /*   "\n       -Z N1-N2        Remove messages from N1 to N2 (dangerous). Ignored" */
 /*   "\n       -L BYTES        Don't retrieve new messages >= BYTES. Ignored" */
        "Halt and shut off power\n" \
      "\nOptions:" \
      "\n       -d      Delay interval for halting" \
-     "\n       -n      No call to sync()" \
+     "\n       -n      Do not sync" \
      "\n       -f      Force power off (don't go through init)" \
 
 #define printenv_trivial_usage \
        "Report process status\n" \
        USAGE_PS \
        IF_SELINUX( \
-     "\n       -Z      Show SE Linux context" \
+     "\n       -Z      Show selinux context" \
        ) \
        IF_FEATURE_PS_WIDE( \
      "\n       w       Wide output" \
        "Options:" \
      "\n       -m mapfile      (Default: /boot/System.map)" \
      "\n       -p profile      (Default: /proc/profile)" \
-     "\n       -M mult         Set the profiling multiplier to mult" \
+     "\n       -M NUM          Set the profiling multiplier to NUM" \
      "\n       -i              Print only info about the sampling step" \
      "\n       -v              Verbose" \
      "\n       -a              Print all symbols, even if count is 0" \
        "Parse MIME-encoded message\n" \
      "\nOptions:" \
      "\n       -x PREFIX       Extract content of MIME sections to files" \
-     "\n       -X PROG ARGS    Filter content of MIME sections through prog." \
+     "\n       -X PROG ARGS    Filter content of MIME sections through PROG" \
      "\n                       Must be the last option" \
      "\n" \
-     "\nOther options are silently ignored." \
+     "\nOther options are silently ignored" \
 
 #define renice_trivial_usage \
        "{{-n INCREMENT} | PRIORITY} [[-p | -g | -u] ID...]"
        "Resize the screen"
 
 #define restorecon_trivial_usage \
-       "[-iFnrRv] [-e excludedir]... [-o filename] [-f filename | pathname]"
+       "[-iFnRv] [-e EXCLUDEDIR]... [-o FILE] [-f FILE]"
 #define restorecon_full_usage "\n\n" \
        "Reset security contexts of files in pathname\n" \
-     "\n       -i              Ignore files that don't exist" \
-     "\n       -f file         File with list of files to process. Use - for stdin" \
-     "\n       -e directory    Directory to exclude" \
-     "\n       -R,-r           Recurse" \
-     "\n       -n              Don't change any file labels" \
-     "\n       -o file         Save list of files with incorrect context" \
-     "\n       -v              Verbose" \
-     "\n       -vv             Show changed labels" \
-     "\n       -F              Force reset of context to match file_context" \
-     "\n                       for customizable files, or the user section," \
-     "\n                       if it has changed" \
+     "\n       -i      Ignore files that don't exist" \
+     "\n       -f FILE File with list of files to process" \
+     "\n       -e DIR  Directory to exclude" \
+     "\n       -R,-r   Recurse" \
+     "\n       -n      Don't change any file labels" \
+     "\n       -o FILE Save list of files with incorrect context" \
+     "\n       -v      Verbose" \
+     "\n       -vv     Show changed labels" \
+     "\n       -F      Force reset of context to match file_context" \
+     "\n               for customizable files, or the user section," \
+     "\n               if it has changed" \
+
+#define rfkill_trivial_usage \
+       "COMMAND [INDEX|TYPE]"
+#define rfkill_full_usage "\n\n" \
+       "Enable/disable wireless devices\n" \
+       "\nCommands:" \
+     "\n       list [INDEX|TYPE]       List current state" \
+     "\n       block INDEX|TYPE        Disable device" \
+     "\n       unblock INDEX|TYPE      Enable device" \
+     "\n" \
+     "\n       TYPE: all, wlan(wifi), bluetooth, uwb(ultrawideband)," \
+     "\n               wimax, wwan, gps, fm" \
 
 #define rm_trivial_usage \
        "[OPTIONS] FILE..."
      "\n       -A inet" IF_FEATURE_IPV6("{6}") "       Select address family" \
 
 #define rpm_trivial_usage \
-       "-i -q[ildc]p PACKAGE.rpm"
+       "-i PACKAGE.rpm; rpm -qp[ildc] PACKAGE.rpm"
 #define rpm_full_usage "\n\n" \
        "Manipulate RPM packages\n" \
-     "\nOptions:" \
+     "\nCommands:" \
      "\n       -i      Install package" \
-     "\n       -q      Query package" \
-     "\n       -p      Query uninstalled package" \
+     "\n       -qp     Query package" \
+     "\nOptions:" \
      "\n       -i      Show information" \
      "\n       -l      List contents" \
      "\n       -d      List documents" \
 
 #define runcon_trivial_usage \
        "[-c] [-u USER] [-r ROLE] [-t TYPE] [-l RANGE] PROG ARGS\n" \
-       "       runcon CONTEXT PROG ARGS"
+       "runcon CONTEXT PROG ARGS"
 #define runcon_full_usage "\n\n" \
        "Run PROG in a different security context\n" \
      "\n       CONTEXT         Complete security context\n" \
 #define script_full_usage "\n\n" \
        "Options:" \
      "\n       -a      Append output" \
-     "\n       -c      Run PROG, not shell" \
+     "\n       -c PROG Run PROG, not shell" \
      "\n       -f      Flush output after each write" \
      "\n       -q      Quiet" \
        IF_SCRIPTREPLAY( \
        "[-w] [-s SEP] [FIRST [INC]] LAST"
 #define seq_full_usage "\n\n" \
        "Print numbers from FIRST to LAST, in steps of INC.\n" \
-       "FIRST, INC default to 1\n" \
+       "FIRST, INC default to 1.\n" \
      "\nOptions:" \
      "\n       -w      Pad to last with leading zeros" \
      "\n       -s SEP  String separator" \
      "\n       -e DIR  Exclude DIR" \
      "\n       -F      Force reset of context to match file_context for customizable files" \
      "\n       -o FILE Save list of files with incorrect context" \
-     "\n       -s      Take a list of files from standard input (instead of command line)" \
+     "\n       -s      Take a list of files from stdin (instead of command line)" \
      "\n       -v      Show changes in file labels, if type or role are changing" \
      "\n       -vv     Show changes in file labels, if type, role, or user are changing" \
      "\n       -W      Display warnings about entries that had no matching files" \
        "Set entries into the kernel's scancode-to-keycode map,\n" \
        "allowing unusual keyboards to generate usable keycodes.\n\n" \
        "SCANCODE may be either xx or e0xx (hexadecimal),\n" \
-       "and KEYCODE is given in decimal" \
+       "and KEYCODE is given in decimal." \
 
 #define setkeycodes_example_usage \
        "$ setkeycodes e030 127\n"
        "See setsid(2) for details." \
 
 #define last_trivial_usage \
-       ""IF_FEATURE_LAST_FANCY("[-HW] [-f file]")
+       ""IF_FEATURE_LAST_FANCY("[-HW] [-f FILE]")
 #define last_full_usage "\n\n" \
        "Show listing of the last users that logged into the system" \
        IF_FEATURE_LAST_FANCY( "\n" \
      "\nOptions:" \
 /*   "\n       -H      Show header line" */ \
      "\n       -W      Display with no host column truncation" \
-     "\n       -f file Read from file instead of /var/log/wtmp" \
+     "\n       -f FILE Read from FILE instead of /var/log/wtmp" \
        )
 
 #define showkey_trivial_usage \
        " %d    Free file nodes in file system\n" \
        " %f    Free blocks in file system\n" \
        IF_SELINUX( \
-       " %C    Security context in SELinux\n" \
+       " %C    Security context in selinux\n" \
        ) \
        " %i    File System ID in hex\n" \
        " %l    Maximum length of filenames\n" \
        "STOP, CONT, HUP, ALRM, INT, QUIT, USR1, USR2, TERM, KILL signal to service" \
 
 #define svlogd_trivial_usage \
-       "[-ttv] [-r c] [-R abc] [-l len] [-b buflen] dir..."
+       "[-ttv] [-r C] [-R CHARS] [-l MATCHLEN] [-b BUFLEN] DIR..."
 #define svlogd_full_usage "\n\n" \
-       "Continuously read log data from standard input, optionally\n" \
+       "Continuously read log data from stdin, optionally\n" \
        "filter log messages, and write the data to one or more automatically\n" \
        "rotated logs" \
 
        "[OPTIONS]"
 #define syslogd_full_usage "\n\n" \
        "System logging utility.\n" \
-       "Note that this version of syslogd ignores /etc/syslog.conf.\n" \
+       "This version of syslogd ignores /etc/syslog.conf\n" \
      "\nOptions:" \
      "\n       -n              Run in foreground" \
      "\n       -O FILE         Log to given file (default:/var/log/messages)" \
 #define tac_full_usage "\n\n" \
        "Concatenate FILEs and print them in reverse"
 
-#define tail_trivial_usage \
-       "[OPTIONS] [FILE]..."
-#define tail_full_usage "\n\n" \
-       "Print last 10 lines of each FILE (or standard input) to standard output.\n" \
-       "With more than one FILE, precede each with a header giving the file name.\n" \
-     "\nOptions:" \
-       IF_FEATURE_FANCY_TAIL( \
-     "\n       -c N[kbm]       Output last N bytes") \
-     "\n       -n N[kbm]       Print last N lines instead of last 10" \
-     "\n       -f              Output data as the file grows" \
-       IF_FEATURE_FANCY_TAIL( \
-     "\n       -q              Never output headers giving file names" \
-     "\n       -s SEC          Wait SEC seconds between reads with -f" \
-     "\n       -v              Always output headers giving file names" \
-     "\n" \
-     "\nIf the first character of N (bytes or lines) is a '+', output begins with" \
-     "\nthe Nth item from the start of each file, otherwise, print the last N items" \
-     "\nin the file. N bytes may be suffixed by k (x1024), b (x512), or m (1024^2)." ) \
-
-#define tail_example_usage \
-       "$ tail -n 1 /etc/resolv.conf\n" \
-       "nameserver 10.0.0.1\n"
-
 #define tar_trivial_usage \
        "-[" IF_FEATURE_TAR_CREATE("c") "xt" IF_FEATURE_SEAMLESS_GZ("z") \
        IF_FEATURE_SEAMLESS_BZ2("j") IF_FEATURE_SEAMLESS_LZMA("a") \
 #define tee_trivial_usage \
        "[OPTIONS] [FILE]..."
 #define tee_full_usage "\n\n" \
-       "Copy standard input to each FILE, and also to standard output\n" \
+       "Copy stdin to each FILE, and also to stdout\n" \
      "\nOptions:" \
      "\n       -a      Append to the given FILEs, don't overwrite" \
      "\n       -i      Ignore interrupt signals (SIGINT)" \
 /* with not-implemented options: */
 /*     "[-hpEvv] [-c N] [-C N[:MSG]] [-b N] [-u USER] [-l NAME] [-i DIR|-x CDB] [-t SEC] IP PORT PROG" */
 #define tcpsvd_full_usage "\n\n" \
-       "Create TCP socket, bind  to IP:PORT and listen\n" \
+       "Create TCP socket, bind to IP:PORT and listen\n" \
        "for incoming connection. Run PROG for each connection.\n" \
      "\n       IP              IP to listen on. '0' = all" \
      "\n       PORT            Port to listen on" \
 #define time_trivial_usage \
        "[OPTIONS] PROG ARGS"
 #define time_full_usage "\n\n" \
-       "Run PROG. When it finishes, its resource usage is displayed.\n" \
+       "Run PROG, display resource usage when it exits\n" \
      "\nOptions:" \
      "\n       -v      Verbose" \
 
 #define timeout_trivial_usage \
-       "[-t SECS] [-s SIG] PROG ARGS"
+       "[-t SECS] [-s SIG] PROG ARGS"
 #define timeout_full_usage "\n\n" \
        "Runs PROG. Sends SIG to it if it is not gone in SECS seconds.\n" \
        "Defaults: SECS: 10, SIG: TERM." \
 #define top_full_usage "\n\n" \
        "Provide a view of process activity in real time.\n" \
        "Read the status of all processes from /proc each SECONDS\n" \
-       "and show the status for however many processes will fit on the screen." \
+       "and display a screenful of them." \
+//TODO: add options and keyboard commands
 
 #define touch_trivial_usage \
        "[-c] [-d DATE] FILE [FILE]..."
 #define tr_trivial_usage \
        "[-cds] STRING1 [STRING2]"
 #define tr_full_usage "\n\n" \
-       "Translate, squeeze, and/or delete characters from\n" \
-       "standard input, writing to standard output\n" \
+       "Translate, squeeze, or delete characters from stdin, writing to stdout\n" \
      "\nOptions:" \
      "\n       -c      Take complement of STRING1" \
      "\n       -d      Delete input characters coded STRING1" \
 #define tty_trivial_usage \
        ""
 #define tty_full_usage "\n\n" \
-       "Print file name of standard input's terminal" \
+       "Print file name of stdin's terminal" \
        IF_INCLUDE_SUSv2( "\n" \
      "\nOptions:" \
      "\n       -s      Print nothing, only return exit status" \
 #define ttysize_trivial_usage \
        "[w] [h]"
 #define ttysize_full_usage "\n\n" \
-       "Print dimension(s) of standard input's terminal, on error return 80x25"
+       "Print dimension(s) of stdin's terminal, on error return 80x25"
 
 #define tunctl_trivial_usage \
        "[-f device] ([-t name] | -d name)" IF_FEATURE_TUNCTL_UG(" [-u owner] [-g group] [-b]")
        "Adjust filesystem options on ext[23] filesystems"
 
 #define udhcpc_trivial_usage \
-       "[-Cfbnqtvo] [-c CID] [-V VCLS] [-H HOSTNAME] [-i INTERFACE]\n" \
-       "       [-p pidfile] [-r IP] [-s script] [-O dhcp-option]..." IF_FEATURE_UDHCP_PORT(" [-P N]")
-#define udhcpc_full_usage "\n\n" \
+       "[-fbnqvoCR] [-i IFACE] [-r IP] [-s PROG] [-p PIDFILE]\n" \
+       "       [-H HOSTNAME] [-c CID] [-V VENDOR] [-O DHCP_OPT]..." IF_FEATURE_UDHCP_PORT(" [-P N]")
+#define udhcpc_full_usage "\n" \
        IF_LONG_OPTS( \
-       "       -V,--vendorclass=CLASSID        Vendor class identifier" \
-     "\n       -i,--interface=INTERFACE        Interface to use (default eth0)" \
-     "\n       -H,-h,--hostname=HOSTNAME       Client hostname" \
-     "\n       -c,--clientid=CLIENTID  Client identifier" \
-     "\n       -C,--clientid-none      Suppress default client identifier" \
-     "\n       -p,--pidfile=FILE       Create pidfile" \
-     "\n       -r,--request=IP         IP address to request" \
-     "\n       -s,--script=FILE        Run FILE at DHCP events (default "CONFIG_UDHCPC_DEFAULT_SCRIPT")" \
-     "\n       -t,--retries=N          Send up to N discover packets" \
-     "\n       -T,--timeout=N          Pause between packets (default 3 seconds)" \
-     "\n       -A,--tryagain=N         Wait N seconds (default 20) after failure" \
-     "\n       -O,--request-option=OPT Request DHCP option OPT (cumulative)" \
-     "\n       -o,--no-default-options Don't request any options (unless -O is also given)" \
-     "\n       -f,--foreground Run in foreground" \
+     "\n       -i,--interface IFACE    Interface to use (default eth0)" \
+     "\n       -p,--pidfile FILE       Create pidfile" \
+     "\n       -r,--request IP         IP address to request" \
+     "\n       -s,--script PROG        Run PROG at DHCP events (default "CONFIG_UDHCPC_DEFAULT_SCRIPT")" \
+     "\n       -t,--retries N          Send up to N discover packets" \
+     "\n       -T,--timeout N          Pause between packets (default 3 seconds)" \
+     "\n       -A,--tryagain N         Wait N seconds after failure (default 20)" \
+     "\n       -f,--foreground         Run in foreground" \
        USE_FOR_MMU( \
-     "\n       -b,--background Background if lease is not immediately obtained" \
+     "\n       -b,--background         Background if lease is not obtained" \
        ) \
-     "\n       -S,--syslog     Log to syslog too" \
-     "\n       -n,--now        Exit with failure if lease is not immediately obtained" \
-     "\n       -q,--quit       Quit after obtaining lease" \
-     "\n       -R,--release    Release IP on quit" \
+     "\n       -S,--syslog             Log to syslog too" \
+     "\n       -n,--now                Exit if lease is not obtained" \
+     "\n       -q,--quit               Exit after obtaining lease" \
+     "\n       -R,--release            Release IP on exit" \
        IF_FEATURE_UDHCP_PORT( \
-     "\n       -P,--client-port N  Use port N instead of default 68" \
+     "\n       -P,--client-port N      Use port N (default 68)" \
        ) \
        IF_FEATURE_UDHCPC_ARPING( \
-     "\n       -a,--arping     Use arping to validate offered address" \
+     "\n       -a,--arping             Use arping to validate offered address" \
        ) \
+     "\n       -O,--request-option OPT Request DHCP option OPT (cumulative)" \
+     "\n       -o,--no-default-options Don't request any options (unless -O is given)" \
+     "\n       -x OPT:VAL              Include option OPT in sent packets (cumulative)" \
+     "\n       -F,--fqdn NAME          Ask server to update DNS mapping for NAME" \
+     "\n       -H,-h,--hostname NAME   Send NAME as client hostname (default none)" \
+     "\n       -V,--vendorclass VENDOR Vendor identifier (default 'udhcp VERSION')" \
+     "\n       -c,--clientid CLIENTID  Client identifier (default own MAC)" \
+     "\n       -C,--clientid-none      Don't send client identifier" \
        ) \
        IF_NOT_LONG_OPTS( \
-       "       -V CLASSID      Vendor class identifier" \
-     "\n       -i INTERFACE    Interface to use (default: eth0)" \
-     "\n       -H,-h HOSTNAME  Client hostname" \
-     "\n       -c CLIENTID     Client identifier" \
-     "\n       -C              Suppress default client identifier" \
+     "\n       -i IFACE        Interface to use (default eth0)" \
      "\n       -p FILE         Create pidfile" \
      "\n       -r IP           IP address to request" \
-     "\n       -s FILE         Run FILE at DHCP events (default "CONFIG_UDHCPC_DEFAULT_SCRIPT")" \
-     "\n       -t N            Send up to N request packets" \
-     "\n       -T N            Try to get a lease for N seconds (default 3)" \
+     "\n       -s PROG         Run PROG at DHCP events (default "CONFIG_UDHCPC_DEFAULT_SCRIPT")" \
+     "\n       -t N            Send up to N discover packets" \
+     "\n       -T N            Pause between packets (default 3 seconds)" \
      "\n       -A N            Wait N seconds (default 20) after failure" \
+     "\n       -x OPT:VAL      Include option OPT in sent packets" \
      "\n       -O OPT          Request DHCP option OPT (cumulative)" \
-     "\n       -o              Don't request any options (unless -O is also given)" \
+     "\n       -o              Don't request any options (unless -O is given)" \
      "\n       -f              Run in foreground" \
        USE_FOR_MMU( \
-     "\n       -b              Background if lease is not immediately obtained" \
+     "\n       -b              Background if lease is not obtained" \
        ) \
      "\n       -S              Log to syslog too" \
-     "\n       -n              Exit with failure if lease is not immediately obtained" \
-     "\n       -q              Quit after obtaining lease" \
-     "\n       -R              Release IP on quit" \
+     "\n       -n              Exit if lease is not obtained" \
+     "\n       -q              Exit after obtaining lease" \
+     "\n       -R              Release IP on exit" \
        IF_FEATURE_UDHCP_PORT( \
-     "\n       -P N            Use port N instead of default 68" \
+     "\n       -P N            Use port N (default 68)" \
        ) \
        IF_FEATURE_UDHCPC_ARPING( \
      "\n       -a              Use arping to validate offered address" \
        ) \
+     "\n       -F NAME         Ask server to update DNS mapping for NAME" \
+     "\n       -H,-h NAME      Send NAME as client hostname (default none)" \
+     "\n       -V VENDOR       Vendor identifier (default 'udhcp VERSION')" \
+     "\n       -c CLIENTID     Client identifier (default own MAC)" \
+     "\n       -C              Don't send client identifier" \
        )
 
 #define udhcpd_trivial_usage \
      "\n       -f      Run in foreground" \
      "\n       -S      Log to syslog too" \
        IF_FEATURE_UDHCP_PORT( \
-     "\n       -P N    Use port N instead of default 67" \
+     "\n       -P N    Use port N (default 67)" \
        )
 
 #define umount_trivial_usage \
        "Linux debian 2.4.23 #2 Tue Dec 23 17:09:10 MST 2003 i686 GNU/Linux\n"
 
 #define uncompress_trivial_usage \
-       "[-c] [-f] [FILE]..."
+       "[-cf] [FILE]..."
 #define uncompress_full_usage "\n\n" \
        "Uncompress .Z file[s]\n" \
      "\nOptions:" \
      "\n       -f      Overwrite an existing file" \
 
 #define unexpand_trivial_usage \
-       "[-f][-a][-t N] [FILE|-]"
+       "[-fa][-t N] [FILE]..."
 #define unexpand_full_usage "\n\n" \
-       "Convert spaces to tabs, writing to standard output\n" \
+       "Convert spaces to tabs, writing to stdout\n" \
      "\nOptions:" \
        IF_FEATURE_UNEXPAND_LONG_OPTIONS( \
      "\n       -a,--all        Convert all blanks" \
        )
 
 #define uniq_trivial_usage \
-       "[-fscduw]... [INPUT [OUTPUT]]"
+       "[-cdu][-f,s,w N] [INPUT [OUTPUT]]"
 #define uniq_full_usage "\n\n" \
        "Discard duplicate lines\n" \
      "\nOptions:" \
        "c\n"
 
 #define unzip_trivial_usage \
-       "[-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir]"
+       "[-opts[modifiers]] FILE[.zip] [LIST] [-x XLIST] [-d DIR]"
 #define unzip_full_usage "\n\n" \
        "Extract files from ZIP archives\n" \
      "\nOptions:" \
      "\n       -o      Overwrite files without prompting" \
      "\n       -p      Send output to stdout" \
      "\n       -q      Quiet" \
-     "\n       -x      Exclude these files" \
-     "\n       -d      Extract files into this directory" \
+     "\n       -x XLST Exclude these files" \
+     "\n       -d DIR  Extract files into DIR" \
 
 #define uptime_trivial_usage \
        ""
 #define wall_trivial_usage \
        "[FILE]"
 #define wall_full_usage "\n\n" \
-       "Write content of FILE or standard-input to all logged-in users"
+       "Write content of FILE or stdin to all logged-in users"
 #define wall_sample_usage \
        "echo foo | wall\n" \
        "wall ./mymessage"
 #define wc_trivial_usage \
        "[OPTIONS] [FILE]..."
 #define wc_full_usage "\n\n" \
-       "Print line, word, and byte counts for each FILE, and a total line if\n" \
-       "more than one FILE is specified. With no FILE, read standard input.\n" \
+       "Print line, word, and byte counts for each FILE (or stdin),\n" \
+       "and a total line if more than one FILE is specified\n" \
      "\nOptions:" \
      "\n       -c      Print the byte counts" \
      "\n       -l      Print the newline counts" \
 
 #define wget_trivial_usage \
        IF_FEATURE_WGET_LONG_OPTIONS( \
-       "[-c|--continue] [-s|--spider] [-q|--quiet] [-O|--output-document file]\n" \
+       "[-c|--continue] [-s|--spider] [-q|--quiet] [-O|--output-document FILE]\n" \
        "       [--header 'header: value'] [-Y|--proxy on/off] [-P DIR]\n" \
-       "       [--no-check-certificate] [-U|--user-agent agent] url" \
+       "       [--no-check-certificate] [-U|--user-agent AGENT] URL" \
        ) \
        IF_NOT_FEATURE_WGET_LONG_OPTIONS( \
-       "[-csq] [-O file] [-Y on/off] [-P DIR] [-U agent] url" \
+       "[-csq] [-O FILE] [-Y on/off] [-P DIR] [-U AGENT] URL" \
        )
 #define wget_full_usage "\n\n" \
        "Retrieve files via HTTP or FTP\n" \
      "\n       -c      Continue retrieval of aborted transfer" \
      "\n       -q      Quiet" \
      "\n       -P      Set directory prefix to DIR" \
-     "\n       -O      Save to filename ('-' for stdout)" \
-     "\n       -U      Adjust 'User-Agent' field" \
+     "\n       -O FILE Save to FILE ('-' for stdout)" \
+     "\n       -U STR  Use STR for User-Agent header" \
      "\n       -Y      Use proxy ('on' or 'off')" \
 
 #define which_trivial_usage \
 #define xargs_trivial_usage \
        "[OPTIONS] [PROG ARGS]"
 #define xargs_full_usage "\n\n" \
-       "Run PROG on every item given by standard input\n" \
+       "Run PROG on every item given by stdin\n" \
      "\nOptions:" \
        IF_FEATURE_XARGS_SUPPORT_CONFIRMATION( \
      "\n       -p      Ask user whether to run each command") \