summaryrefslogtreecommitdiff
path: root/support/asymptote
diff options
context:
space:
mode:
authorMichael Schwarz <michi.schwarz@gmail.com>2015-08-06 16:32:35 +0200
committerMichael Schwarz <michi.schwarz@gmail.com>2015-08-07 02:03:33 +0200
commit5a1604ce202077da2823bf63f4400dd9343a17df (patch)
tree874f57c9243f6b70ff5f24cd8dda65d5664714fe /support/asymptote
parent6bce36b6ede16d28626d40a0b4d60954a35ad48f (diff)
downloadpogojig-5a1604ce202077da2823bf63f4400dd9343a17df.tar.gz
pogojig-5a1604ce202077da2823bf63f4400dd9343a17df.tar.bz2
pogojig-5a1604ce202077da2823bf63f4400dd9343a17df.zip
Use Python script to run Asymptote.
Diffstat (limited to 'support/asymptote')
-rw-r--r--support/asymptote/__init__.py0
-rw-r--r--support/asymptote/__main__.py24
2 files changed, 24 insertions, 0 deletions
diff --git a/support/asymptote/__init__.py b/support/asymptote/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/support/asymptote/__init__.py
diff --git a/support/asymptote/__main__.py b/support/asymptote/__main__.py
new file mode 100644
index 0000000..1816224
--- /dev/null
+++ b/support/asymptote/__main__.py
@@ -0,0 +1,24 @@
+import os, sys
+from lib import util
+
+
+def _asymptote(in_path, out_path, asymptote_dir):
+ util.command([os.environ['ASYMPTOTE'], '-f', 'pdf', '-o', out_path, in_path], set_env = { 'ASYMPTOTE_DIR': asymptote_dir })
+
+
+def main(in_path, out_path):
+ _, out_suffix = os.path.splitext(out_path)
+
+ if out_suffix == '.pdf':
+ _asymptote(in_path, out_path, os.path.dirname(in_path))
+ else:
+ raise Exception('Unknown file type: {}'.format(out_suffix))
+
+
+try:
+ main(*sys.argv[1:])
+except util.UserError as e:
+ print 'Error:', e
+ sys.exit(1)
+except KeyboardInterrupt:
+ sys.exit(2)