string const token_to("$$o");
string const token_path("$$p");
string const token_orig_path("$$r");
+string const token_orig_from("$$f");
string const token_encoding("$$e");
string const token_latex_encoding("$$E");
// This has the added benefit that all other files that may be
// generated by the converter are deleted when LyX closes and do not
// clutter the real working directory.
+ // FIXME: This does not work if path is an UNC path on windows
+ // (bug 6127).
string const path(onlyPath(from_file.absFileName()));
// Prevent the compiler from optimizing away p
FileName pp(path);
<< conv.from << " to " << conv.to);
}
infile = outfile;
- outfile = FileName(conv.result_dir.empty()
+ outfile = FileName(conv.result_file.empty()
? changeExtension(from_file.absFileName(), conv.To->extension())
: addName(subst(conv.result_dir,
token_base, from_base),
// if input and output files are equal, we use a
// temporary file as intermediary (JMarc)
FileName real_outfile;
+ if (!conv.result_file.empty())
+ real_outfile = FileName(changeExtension(from_file.absFileName(),
+ conv.To->extension()));
if (outfile == infile) {
real_outfile = infile;
// when importing, a buffer does not necessarily exist
command = subst(command, token_to, quoteName(outfile2));
command = subst(command, token_path, quoteName(onlyPath(infile.absFileName())));
command = subst(command, token_orig_path, quoteName(onlyPath(orig_from.absFileName())));
+ command = subst(command, token_orig_from, quoteName(onlyFileName(orig_from.absFileName())));
command = subst(command, token_encoding, buffer ? buffer->params().encoding().iconvName() : string());
command = libScriptSearch(command);