X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLaTeX.cpp;h=49968ffdc8a6884995b4f53ff166c66fe09b7b05;hb=f37a1b8aeaf8f3a3a66a22bf0b396f7d1ceca2ff;hp=f0a33ff8e7b5062379ee7552b94289ce31fa5b46;hpb=ccc77c73da81a67656bbe196c0fab55b63d231d3;p=lyx.git diff --git a/src/LaTeX.cpp b/src/LaTeX.cpp index f0a33ff8e7..49968ffdc8 100644 --- a/src/LaTeX.cpp +++ b/src/LaTeX.cpp @@ -50,7 +50,6 @@ namespace os = support::os; // different way. // - 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 @@ -414,6 +413,9 @@ bool LaTeX::runMakeIndex(string const & f, OutputParams const & runparams, { string tmp = runparams.use_japanese ? lyxrc.jindex_command : lyxrc.index_command; + + if (!runparams.index_command.empty()) + tmp = runparams.index_command; LYXERR(Debug::LATEX, "idx file has been made, running index processor (" @@ -570,6 +572,9 @@ bool LaTeX::runBibTeX(vector const & bibtex_info, string tmp = runparams.use_japanese ? lyxrc.jbibtex_command : lyxrc.bibtex_command; + + if (!runparams.bibtex_command.empty()) + tmp = runparams.bibtex_command; tmp += " "; // onlyFilename() is needed for cygwin tmp += quoteName(onlyFilename(removeExtension( @@ -666,7 +671,9 @@ int LaTeX::scanLogFile(TeXErrors & terr) retval |= RERUN; } } else if (prefixIs(token, "! ") - || (fle_style && regex_match(token, sub, file_line_error))) { + || (fle_style + && regex_match(token, sub, file_line_error) + && !contains(token, "pdfTeX warning"))) { // Ok, we have something that looks like a TeX Error // but what do we really have. @@ -1020,7 +1027,7 @@ void LaTeX::deplog(DepTable & head) // where "File: file.ext" would be skipped if (regex_match(token, sub, reg6)) { // search for strings in (...) - static regex reg6_1("\\(([^()]+)(.).*"); + static regex reg6_1("\\(([^()]+)(.)"); smatch what; string::const_iterator first = token.begin(); string::const_iterator end = token.end();