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)