tex='Tex',
)
-def read(text, argv=sys.argv[2:]):
+def read(text, argv=sys.argv[3:]):
lines = text.splitlines()
# First read all include statements
for i in range(len(lines)):
if shortname:
# Check if code is to be typeset as static
# Markdown code (e.g., shortname=py-t)
- .format(shortname))
astext = shortname[-2:] == '-t'
- .format(astext, shortname))
if astext:
# Markdown
shortname = shortname[:-2]
def driver():
"""Compile a document and its variables."""
try:
- filename = sys.argv[1]
- with open(filename, 'r') as f:
+ inputfile = sys.argv[1]
+ with open(inputfile, 'r') as f:
text = f.read()
+ # Assuming file extension .gj (generate Jupyter); TODO: less strict
+ outputfile = inputfile[:-3]+'.ipynb' if (len(sys.argv)<=2 or sys.argv[2]=='-') \
+ else sys.argv[2]
except (IndexError, IOError) as e:
- print('Usage: %s filename' % (sys.argv[0]))
+ print('Usage: %s inputfile [outputfile|- [Mako args]]' % (sys.argv[0]))
print(e)
sys.exit(1)
- cells = read(text, argv=sys.argv[2:])
+ cells = read(text, argv=sys.argv[3:])
filestr = write(cells)
- # Assuming file extension .gj (generate Jupyter); TODO: less strict
- filename = filename[:-3] + '.ipynb'
- with open(filename, 'w') as f:
+ with open(outputfile, 'w') as f:
f.write(filestr)
if __name__ == '__main__':