X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLaTeX.C;h=845fdc322dae602e293dda71d843b1550b84fcf0;hb=c688967bc365872241697371e7bd12e2b5217028;hp=7623aa3acfff738ffd18a6c30dd51219d432ed63;hpb=22c78350229142cb504881e8ecc6dbf71d5bf57e;p=lyx.git diff --git a/src/LaTeX.C b/src/LaTeX.C index 7623aa3acf..845fdc322d 100644 --- a/src/LaTeX.C +++ b/src/LaTeX.C @@ -17,6 +17,7 @@ #include "LaTeX.h" #include "bufferlist.h" #include "gettext.h" +#include "lyxrc.h" #include "debug.h" #include "DepTable.h" #include "support/filetools.h" @@ -70,13 +71,11 @@ using std::vector; // BufferList::updateIncludedTeXfiles, this should either // be done before calling LaTeX::funcs or in a completely // different way. -// - the bibtex command options should be supported. // - the makeindex style files should be taken care of with // the dependency mechanism. // - makeindex commandline options should be supported // - somewhere support viewing of bibtex and makeindex log files. // - we should perhaps also scan the bibtex log file -// - we should perhaps also scan the bibtex log file extern BufferList bufferlist; @@ -120,7 +119,7 @@ bool operator!=(Aux_Info const & a, Aux_Info const & o) * CLASS LaTeX */ -LaTeX::LaTeX(string const & latex, LatexRunParams const & rp, +LaTeX::LaTeX(string const & latex, OutputParams const & rp, string const & f, string const & p) : cmd(latex), file(f), path(p), runparams(rp) { @@ -405,7 +404,7 @@ bool LaTeX::runMakeIndex(string const & f) // to be able to make style files from within LyX. This has // to come for a later time. string tmp = "makeindex -c -q "; - tmp += f; + tmp += QuoteName(f); Systemcall one; one.startscript(Systemcall::Wait, tmp); return true; @@ -446,10 +445,10 @@ void LaTeX::scanAuxFile(string const & file, Aux_Info & aux_info) ifstream ifs(file.c_str()); string token; - regex reg1("\\\\citation\\{([^}]+)\\}"); - regex reg2("\\\\bibdata\\{([^}]+)\\}"); - regex reg3("\\\\bibstyle\\{([^}]+)\\}"); - regex reg4("\\\\@input\\{([^}]+)\\}"); + static regex const reg1("\\\\citation\\{([^}]+)\\}"); + static regex const reg2("\\\\bibdata\\{([^}]+)\\}"); + static regex const reg3("\\\\bibstyle\\{([^}]+)\\}"); + static regex const reg4("\\\\@input\\{([^}]+)\\}"); while (getline(ifs, token)) { token = rtrim(token, "\r"); @@ -528,8 +527,8 @@ bool LaTeX::runBibTeX(vector const & bibtex_info) continue; result = true; - string tmp = "bibtex "; - tmp += OnlyFilename(ChangeExtension(it->aux_file, string())); + string tmp = lyxrc.bibtex_command + " "; + tmp += QuoteName(OnlyFilename(ChangeExtension(it->aux_file, string()))); Systemcall one; one.startscript(Systemcall::Wait, tmp); }