X-Git-Url: https://git.armaanb.net/?a=blobdiff_plain;f=lightcards%2Flightcards.py;h=a3aa5cff0a1529cecfc7b8ccbc1a654b32dec29e;hb=94cf6952335a3965f64ea3a818ef0acad16f6574;hp=2377c69e675d2b02b2594a59d2c8479ef6abd213;hpb=fa534964b6dd5eb9311d235a6b3ec51174e750a4;p=lightcards.git diff --git a/lightcards/lightcards.py b/lightcards/lightcards.py old mode 100755 new mode 100644 index 2377c69..a3aa5cf --- a/lightcards/lightcards.py +++ b/lightcards/lightcards.py @@ -1,13 +1,14 @@ -#!/usr/bin/env python # Markdown flashcard utility # Armaan Bhojwani 2021 import argparse from curses import wrapper +import os from random import shuffle import sys -from . import display, parse +from . import parse +from .display import Display from .deck import Status @@ -28,11 +29,15 @@ def parse_args(): help="shuffle card order") parser.add_argument("-v", "--version", action='version', - version="lightcards 0.3.0") + version="lightcards 0.4.0") return parser.parse_args() def show(args, stack, headers): + """ + Manipulate deck according to passed arguments, and send it to the display + functions + """ idx = Status() if args.flip: for x in stack: @@ -42,11 +47,24 @@ def show(args, stack, headers): shuffle(stack) elif args.reverse: stack.reverse() - wrapper(display.init_disp, stack, headers, idx) + win = Display(stack, headers, idx) + wrapper(win.run) + + +def reparse(): + """Parse arguments and input file again""" + args = parse_args() + os.system(f"$EDITOR {args.inp[0]}"), + return parse.parse_html(parse.md2html(args.inp[0])) + +def get_orig(): + """Return original header and stack""" + return((headers, stack)) def main(args=sys.argv): args = parse_args() + global headers, stack (headers, stack) = parse.parse_html(parse.md2html(args.inp[0])) show(args, stack, headers)