progress (_ ("Running `%s' on file `%s' to detect default page settings.\n")
% (global_options.latex_program, tmpfile))
- cmd = 'TEXINPUTS=%s:$TEXINPUTS %s %s' \
- % (global_options.input_dir, global_options.latex_program, tmpfile)
+ cmd = '%s %s' % (global_options.latex_program, tmpfile)
debug ("Executing: %s\n" % cmd)
run_env = os.environ.copy()
run_env['LC_ALL'] = 'C'
+ run_env['TEXINPUTS'] = '%s:%s' % \
+ (global_options.input_dir, run_env.get('TEXINPUTS',""))
### unknown why this is necessary
universal_newlines = True
output_filename = os.path.join(output_dir, 'output.txt')
# call command
cmd += " > %s" % output_filename
+ oldtexinputs = os.environ.get ('TEXINPUTS')
+ os.environ['TEXINPUTS'] = run_env['TEXINPUTS']
returncode = os.system(cmd)
+ if oldtexinputs:
+ os.environ['TEXINPUTS'] = oldtexinputs
+ else:
+ del os.environ['TEXINPUTS']
parameter_string = open(output_filename).read()
if returncode != 0:
warning (_ ("Unable to auto-detect default settings:\n"))
def input_fullname (self, input_filename):
# Use kpsewhich if available, otherwise fall back to the default:
if ly.search_exe_path ('kpsewhich'):
- return os.popen ('kpsewhich ' + input_filename).read()[:-1]
- else:
- return BookBase.BookOutputFormat.input_fullname (self, input_filename)
+ trial = os.popen ('kpsewhich ' + input_filename).read()[:-1]
+ if trial:
+ return trial
+ return BookBase.BookOutputFormat.input_fullname (self, input_filename)
def process_chunks (self, chunks):
for c in chunks: