2 # Markdown flashcard utility
6 from curses import wrapper
8 from random import shuffle
12 from .display import Display
13 from .deck import Status
17 parser = argparse.ArgumentParser(description="Terminal flashcards from Markdown")
18 parser.add_argument("inp",
22 parser.add_argument("-f", "--flip",
24 help="show second column first")
25 parser.add_argument("-r", "--reverse",
27 help="reverse card order")
28 parser.add_argument("-s", "--shuffle",
30 help="shuffle card order")
31 parser.add_argument("-v", "--version",
33 version="lightcards 0.4.0")
34 return parser.parse_args()
37 def show(args, stack, headers):
39 Manipulate deck according to passed arguments, and send it to the display
45 x[0], x[1] = x[1], x[0]
46 headers[0], headers[1] = headers[1], headers[0]
52 win = Display(stack, headers, idx)
58 os.system(f"$EDITOR {args.inp[0]}"),
59 return parse.parse_html(parse.md2html(args.inp[0]))
62 return((headers2, stack2))
64 def main(args=sys.argv):
66 (headers, stack) = parse.parse_html(parse.md2html(args.inp[0]))
67 global headers2, stack2
68 (headers2, stack2) = (headers, stack)
69 show(args, stack, headers)
72 if __name__ == "__main__":