From: Ben Finney Date: Fri, 16 Jan 2015 22:33:07 +0000 (+1100) Subject: Rewrite help for command-line options. X-Git-Url: http://git.99rst.org/?a=commitdiff_plain;h=d0e8dc9008c862ba77e8fcc8f8529d915e389eaa;p=redacted-XKCD-password-generator.git Rewrite help for command-line options. The re-write describes each option consistently in terms of “make the program do FOO”, and uses the ‘metavar’ feature to reference option arguments. Signed-off-by: Steven Tobin --- diff --git a/xkcdpass/xkcd_password.py b/xkcdpass/xkcd_password.py index 5194a19..9383637 100755 --- a/xkcdpass/xkcd_password.py +++ b/xkcdpass/xkcd_password.py @@ -252,36 +252,53 @@ def main(): usage = "usage: %prog [options]" parser = optparse.OptionParser(usage) - parser.add_option("-w", "--wordfile", dest="wordfile", - default=None, - help="List of valid words for password") - parser.add_option("--min", dest="min_length", - default=5, type="int", - help="Minimum length of words to make password") - parser.add_option("--max", dest="max_length", - default=9, type="int", - help="Maximum length of words to make password") - parser.add_option("-n", "--numwords", dest="numwords", - default=6, type="int", - help="Number of words to make password") - parser.add_option("-i", "--interactive", dest="interactive", - default=False, action="store_true", - help="Interactively select a password") - parser.add_option("-v", "--valid_chars", dest="valid_chars", - default='.', - help="Valid chars, using regexp style (e.g. '[a-z]')") - parser.add_option("-V", "--verbose", dest="verbose", - default=False, action="store_true", - help="Report various metrics for given options") - parser.add_option("-a", "--acrostic", dest="acrostic", - default=False, - help="Acrostic to constrain word choices") - parser.add_option("-c", "--count", dest="count", - default=1, type="int", - help="number of passwords to generate") - parser.add_option("-d", "--delimiter", dest="delim", - default=" ", - help="separator character between words") + parser.add_option( + "-w", "--wordfile", + dest="wordfile", default=None, metavar="WORDFILE", + help=( + "Specify that the file WORDFILE contains" + " the list of valid words from which to generate passphrases.")) + parser.add_option( + "--min", + dest="min_length", type="int", default=5, metavar="MIN_LENGTH", + help="Generate passphrases containing at least MIN_LENGTH words.") + parser.add_option( + "--max", + dest="max_length", type="int", default=9, metavar="MAX_LENGTH", + help="Generate passphrases containing at most MAX_LENGTH words.") + parser.add_option( + "-n", "--numwords", + dest="numwords", type="int", default=6, metavar="NUM_WORDS", + help="Generate passphrases containing exactly NUM_WORDS words.") + parser.add_option( + "-i", "--interactive", + action="store_true", dest="interactive", default=False, + help=( + "Generate and output a passphrase," + " query the user to accept it," + " and loop until one is accepted.")) + parser.add_option( + "-v", "--valid_chars", + dest="valid_chars", default=".", metavar="VALID_CHARS", + help=( + "Limit passphrases to only include words matching" + " the regex pattern VALID_CHARS (e.g. '[a-z]').")) + parser.add_option( + "-V", "--verbose", + action="store_true", dest="verbose", default=False, + help="Report various metrics for given options.") + parser.add_option( + "-a", "--acrostic", + dest="acrostic", default=False, + help="Generate passphrases with an acrostic matching ACROSTIC.") + parser.add_option( + "-c", "--count", + dest="count", type="int", default=1, metavar="COUNT", + help="Generate COUNT passphrases.") + parser.add_option( + "-d", "--delimiter", + dest="delim", default=" ", metavar="DELIM", + help="Separate words within a passphrase with DELIM.") (options, args) = parser.parse_args() validate_options(parser, options, args)