]> git.armaanb.net Git - lightcards.git/blob - lightcards/lightcards.py
Push version to 0.1.0
[lightcards.git] / lightcards / lightcards.py
1 #!/usr/bin/env python
2 # Markdown flashcard utility
3 # Armaan Bhojwani 2021
4
5 import argparse
6 from curses import wrapper
7 from random import shuffle
8 import sys
9
10 from . import display, parse
11 from .deck import Status
12
13
14 def parse_args():
15     parser = argparse.ArgumentParser(description="Simple terminal flashcards")
16     parser.add_argument("inp",
17                         metavar="input file",
18                         type=str,
19                         nargs=1)
20     parser.add_argument("-v", "--version",
21                         action='version',
22                         version="lightcards 0.1.0")
23     parser.add_argument("-s", "--shuffle",
24                         action='store_true',
25                         help="shuffle cards before starting")
26     return parser.parse_args()
27
28
29 def show(args, stack, headers):
30     idx = Status()
31     if args:
32         shuffle(stack)
33     wrapper(display.get_key, stack, headers, idx)
34
35
36 def main(args=sys.argv):
37     args = parse_args()
38     headers = parse.parse_html(parse.md2html(args.inp[0]))[0]
39     stack = parse.parse_html(parse.md2html(args.inp[0]))[1]
40     show(args, stack, headers)
41
42
43 if __name__ == "__main__":
44     main()