def main():
parser = argparse.ArgumentParser()
parser.add_argument('-v', '--verbose', action='count', default=0, dest='verbosity')
parser.add_argument('-V', '--version', action='store_true', dest='version', help='Show version and exit')
input_group = parser.add_mutually_exclusive_group()
input_group.add_argument('file', nargs='?', metavar='FILE', help='The path to the markdown file')
input_group.add_argument('--stdin', dest='stdin', action='store_true', help='Read Markdown from stdin')
parser.add_argument('-t', '--tab-spaces', dest='tab_spaces', default=4, type=int, help='Number of spaces in a tab (defaults to 4)')
try:
import argcomplete
argcomplete.autocomplete(parser)
except Exception:
pass # Optional argcomplete module not installed
args = parser.parse_args()
if args.version:
print('vmd {}'.format(VERSION))
sys.exit(0)
import logging
if args.verbosity != 0:
logging_level = 10 * max(0, 3 - args.verbosity)
logging.basicConfig(level=logging_level)
mdparser = build_parser(args)
config = load_config()
writer = create_display_writer(sys.stdout)
renderer = build_render(writer, config)
if args.stdin:
doc = mdparser.parse(sys.stdin.read())
elif args.file is not None:
with open(args.file) as f:
doc = mdparser.parse(f.read())
else:
parser.print_help()
sys.exit(1)
renderer.render_document(doc)
sys.stdout.write('\n')
sys.stdout.flush()
sys.stdout.close()
评论列表
文章目录