X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLaTeX.cpp;h=6003772cbb4dd071a81f5bc13fe78e456ea74f9b;hb=2f271f61bcd514da3ab5b44d2b7bf61e12ac0c44;hp=082872a57aee76c67458764ac828ce0c918af912;hpb=9439b6e6e0cf950aafe8ce8d76d380c543110db7;p=lyx.git diff --git a/src/LaTeX.cpp b/src/LaTeX.cpp index 082872a57a..6003772cbb 100644 --- a/src/LaTeX.cpp +++ b/src/LaTeX.cpp @@ -17,14 +17,14 @@ #include "BufferList.h" #include "LaTeX.h" -#include "support/gettext.h" #include "LyXRC.h" -#include "support/debug.h" #include "DepTable.h" +#include "support/debug.h" #include "support/convert.h" #include "support/FileName.h" #include "support/filetools.h" +#include "support/gettext.h" #include "support/lstrings.h" #include "support/Systemcall.h" #include "support/os.h" @@ -261,7 +261,7 @@ int LaTeX::run(TeXErrors & terr) if (head.haschanged(idxfile)) { // no checks for now LYXERR(Debug::LATEX, "Running MakeIndex."); - message(_("Running MakeIndex.")); + message(_("Running Index Processor.")); // onlyFilename() is needed for cygwin rerun |= runMakeIndex(onlyFilename(idxfile.absFilename()), runparams); @@ -335,7 +335,7 @@ int LaTeX::run(TeXErrors & terr) if (head.haschanged(idxfile)) { // no checks for now LYXERR(Debug::LATEX, "Running MakeIndex."); - message(_("Running MakeIndex.")); + message(_("Running Index Processor.")); // onlyFilename() is needed for cygwin rerun = runMakeIndex(onlyFilename(changeExtension( file.absFilename(), ".idx")), runparams); @@ -416,12 +416,14 @@ bool LaTeX::runMakeIndexNomencl(FileName const & file, { LYXERR(Debug::LATEX, "Running MakeIndex for nomencl."); message(_("Running MakeIndex for nomencl.")); + string tmp = lyxrc.nomencl_command + ' '; // onlyFilename() is needed for cygwin - string const nomenclstr = " -s nomencl.ist -o " + tmp += quoteName(onlyFilename(changeExtension(file.absFilename(), nlo))); + tmp += " -o " + onlyFilename(changeExtension(file.toFilesystemEncoding(), nls)); - return runMakeIndex( - onlyFilename(changeExtension(file.absFilename(), nlo)), - runparams, nomenclstr); + Systemcall one; + one.startscript(Systemcall::Wait, tmp); + return true; } @@ -594,6 +596,12 @@ int LaTeX::scanLogFile(TeXErrors & terr) if (contains(token, "Rerun to get cross-references")) { retval |= RERUN; LYXERR(Debug::LATEX, "We should rerun."); + // package clefval needs 2 latex runs before bibtex + } else if (contains(token, "Value of") + && contains(token, "on page") + && contains(token, "undefined")) { + retval |= ERROR_RERUN; + LYXERR(Debug::LATEX, "Force rerun."); } else if (contains(token, "Citation") && contains(token, "on page") && contains(token, "undefined")) {