cli: Add the --questions option to list questions on the stack
authorW. Trevor King <wking@tremily.us>
Wed, 6 Feb 2013 17:41:23 +0000 (12:41 -0500)
committerW. Trevor King <wking@tremily.us>
Wed, 6 Feb 2013 17:41:23 +0000 (12:41 -0500)
This lets you see what a quiz will ask without actually taking the
quiz.  In the future, it may be useful for jumping to a specific
question.

quizzer/cli.py

index e40332f5ffd130cf230d6fe486969a83858849e6..60cd645ebebfe7cff03283a3a8c043682d72ac43 100644 (file)
@@ -44,6 +44,10 @@ def main():
     parser.add_argument(
         '--tags', action='store_const', const=True, default=False,
         help='instead of running the quiz, print a list of tags on the stack')
+    parser.add_argument(
+        '--questions', action='store_const', const=True, default=False,
+        help=('instead of running the quiz, '
+              'print a list of questions on the stack'))
     parser.add_argument(
         'quiz', metavar='QUIZ',
         help='path to a quiz file')
@@ -70,6 +74,12 @@ def main():
         for tag in sorted(tags):
             print(tag)
         return
+    if args.questions:
+        for i,q in enumerate(stack):
+            print('Question {}:'.format(i))
+            print(q.prompt)
+            print()
+        return
     ui = _cli.CommandLineInterface(quiz=quiz, answers=answers, stack=stack)
     ui.run()
     ui.answers.save()