2 # Markdown flashcard utility
6 from curses import wrapper
8 from random import shuffle
11 from . import display, parse
12 from .deck import Status
16 parser = argparse.ArgumentParser(description="Terminal flashcards from Markdown")
17 parser.add_argument("inp",
21 parser.add_argument("-f", "--flip",
23 help="show second column first")
24 parser.add_argument("-r", "--reverse",
26 help="reverse card order")
27 parser.add_argument("-s", "--shuffle",
29 help="shuffle card order")
30 parser.add_argument("-v", "--version",
32 version="lightcards 0.3.0")
33 return parser.parse_args()
36 def show(args, stack, headers):
38 Manipulate deck according to passed arguments, and send it to the display
44 x[0], x[1] = x[1], x[0]
45 headers[0], headers[1] = headers[1], headers[0]
50 wrapper(display.init_disp, stack, headers, idx)
55 os.system(f"$EDITOR {args.inp[0]}"),
56 return parse.parse_html(parse.md2html(args.inp[0]))
59 def main(args=sys.argv):
61 (headers, stack) = parse.parse_html(parse.md2html(args.inp[0]))
62 show(args, stack, headers)
65 if __name__ == "__main__":