Cleans up now after compiling
This commit is contained in:
+19
-5
@@ -2,6 +2,7 @@ import argparse
|
||||
import os
|
||||
import sys
|
||||
from subprocess import check_call, DEVNULL, STDOUT, CalledProcessError
|
||||
from shutil import copyfile, rmtree
|
||||
|
||||
parser = argparse.ArgumentParser(description='Convert sgf go records into a kifu format.')
|
||||
|
||||
@@ -104,7 +105,7 @@ def generate_moves():
|
||||
parsedHeader = {
|
||||
"event" : get_tag_from_header("EV"),
|
||||
"gameName" : get_tag_from_header("GN"),
|
||||
"date" : get_tag_from_header("RD"),
|
||||
"date" : get_tag_from_header("DT"),
|
||||
"boardSize" : int(get_tag_from_header("SZ")),
|
||||
"playerBlack" : get_tag_from_header("PB"),
|
||||
"playerWhite" : get_tag_from_header("PW"),
|
||||
@@ -119,8 +120,13 @@ parsedHeader = {
|
||||
event = parsedHeader["event"]
|
||||
date = parsedHeader["date"]
|
||||
result = parsedHeader["result"]
|
||||
komi = parsedHeader["komi"]
|
||||
playerWhite = parsedHeader["playerWhite"]
|
||||
playerBlack = parsedHeader["playerBlack"]
|
||||
if parsedHeader["rankBlack"] != "":
|
||||
playerBlack += f" ({parsedHeader['rankBlack']})"
|
||||
if parsedHeader["rankWhite"] != "":
|
||||
playerWhite += f" ({parsedHeader['rankWhite']})"
|
||||
moves = generate_moves()
|
||||
|
||||
outText = f"""
|
||||
@@ -147,7 +153,7 @@ outText = f"""
|
||||
\\begin{{tabularx}}{{\\textwidth}}{{ R | c | X }}
|
||||
\\hline
|
||||
\\stone{{black}} {playerBlack} & \\textbf{{{result}}} & {playerWhite} \\stone{{white}} \\\\\\hline
|
||||
& 7.5 komi & \\\\\\hline
|
||||
& {komi} Komi & \\\\\\hline
|
||||
\\end{{tabularx}}
|
||||
\\vspace{{3cm}}
|
||||
|
||||
@@ -163,11 +169,19 @@ with open(f"{fileBase}.tex", 'w') as outFile:
|
||||
# should be compiled to pdf?
|
||||
if args.c:
|
||||
try:
|
||||
check_call(['latex', f"{fileBase}.tex"], stdout=DEVNULL, stderr=STDOUT)
|
||||
check_call(['dvips', f"{fileBase}.dvi", "-P", "pdf"], stdout=DEVNULL, stderr=STDOUT)
|
||||
check_call(['ps2pdf', f"{fileBase}.ps"], stdout=DEVNULL, stderr=STDOUT)
|
||||
os.makedirs(os.path.dirname(f"{fileBase}/"), exist_ok=True)
|
||||
copyfile(f"{fileBase}.tex", f"{fileBase}/temp.tex")
|
||||
os.remove(f"{fileBase}.tex") # poor mans `move` that works on win and linux
|
||||
check_call(['latex', f"temp.tex"],
|
||||
stdout=DEVNULL, stderr=STDOUT, cwd=f'{fileBase}')
|
||||
check_call(['dvips', f"temp.dvi", "-P", "pdf"],
|
||||
stdout=DEVNULL, stderr=STDOUT, cwd=f'{fileBase}')
|
||||
check_call(['ps2pdf', f"temp.ps"],
|
||||
stdout=DEVNULL, stderr=STDOUT, cwd=f'{fileBase}')
|
||||
except CalledProcessError:
|
||||
print("error")
|
||||
else:
|
||||
copyfile(f"{fileBase}/temp.pdf", f"{fileBase}.pdf")
|
||||
rmtree(f"{fileBase}/")
|
||||
if args.o:
|
||||
os.system(f'"{fileBase}.pdf"')
|
||||
|
||||
Reference in New Issue
Block a user