X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=lib%2Fscripts%2Ffig2pstex.py;h=90e163de40b2819b3a1d134e1a48b062117afa67;hb=75b111aca7a8422dfe935a5168bff17d8caa1a2d;hp=e6432900364837c98c48c18d28399367961dcbe7;hpb=2f7c9e057a4e10ca4060fc2e7fba5c098160a99d;p=lyx.git diff --git a/lib/scripts/fig2pstex.py b/lib/scripts/fig2pstex.py index e643290036..90e163de40 100644 --- a/lib/scripts/fig2pstex.py +++ b/lib/scripts/fig2pstex.py @@ -1,23 +1,50 @@ -#! /usr/bin/env python -# This script converts a xfig file into Postscript/LaTeX files - -import sys -import os - -filename = sys.argv[1] -basename = os.path.splitext(filename)[0] -parameters = sys.argv[2:] - -pid = os.fork() -if pid == 0: - os.execvp("fig2dev", ["fig2dev", "-Lpstex"] + parameters + [filename, basename + ".eps"]) - print "fig2dev did not work" - os.exit(1) -os.wait() - -pid = os.fork() -if pid == 0: - os.execvp("fig2dev", ["fig2dev", "-Lpstex_t"] + parameters + [filename, basename + ".pstex_t"]) - print "convert did not work second time" - os.exit(1) -os.wait() +# -*- coding: utf-8 -*- + +# file fig2pstex.py +# This file is part of LyX, the document processor. +# Licence details can be found in the file COPYING. +# +# \author Angus Leeming +# \author Bo Peng +# +# Full author contact details are available in file CREDITS + + +# This script converts an XFIG image to something that latex can process +# into high quality PostScript. + +# Usage: +# python fig2pstex.py ${base}.fig ${base}.pstex +# This command generates +# ${base}.eps the converted eps file +# ${base}.pstex a tex file that can be included in your latex document +# using '\input{${output}}'. +# +# Note: +# Do not use this command as +# python fig2pstex.py file.fig file.eps +# the real eps file will be overwritten by a tex file named file.eps. +# + +from __future__ import print_function +import os, sys + +# We expect two args, the names of the input and output files. +if len(sys.argv) != 3: + sys.exit(1) + +input, output = sys.argv[1:] + +# Fail silently if the file doesn't exist +if not os.path.isfile(input): + sys.exit(0) + +# Strip the extension from ${output} +outbase = os.path.splitext(output)[0] + +# Generate the EPS file +# Generate the PSTEX_T file +if os.system('fig2dev -Lpstex %s %s.eps' % (input, outbase)) != 0 or \ + os.system('fig2dev -Lpstex_t -p%s %s %s' % (outbase, input, output)) != 0: + print ('fig2dev fails') + sys.exit(1)