This happens in trunk.

1) Move apart the preferences file
   (mv ~/.lyx-2.0/preferences ~/.lyx-2.0/preferences.save)
2) In Tools->Preferences, change something and then save.
3) Now load a document with some bibliography and try to view the output.
4) References are missing [??] because bibtex failed.

Looking at ~/.lyx-2.0/preferences I see these lines:

...
#
# MISC SECTION ######################################
#

\bibtex_alternatives "bibtex"
\bibtex_alternatives "bibtex8"
\bibtex_alternatives "bibtex"
\bibtex_alternatives "bibtex8"
\bibtex_command "bibtex bibtex"
\index_alternatives "makeindex -c -q"
\index_alternatives "makeindex -c -q"
...

So, bibtex is failing because it is called in the wrong way.
Looking at Tools->Preferences->Output->LaTeX, the Options field for
bibtex contains "bibtex", which explains the bogus \bibtex_command
above.

Removing "bibtex" from Options fixes it, however, anytime the preferences
are saved, the number of \bibtex_alternatives and \index_alternatives
lines that are written to the preferences file increases.

I think that this is due to the following code in LyXRC.cpp:

    case RC_BIBTEX_ALTERNATIVES:
            if (ignore_system_lyxrc ||
                bibtex_alternatives != system_lyxrc.bibtex_alternatives) {
                    for (vector<string>::const_iterator it = 
bibtex_alternatives.begin();
                         it != bibtex_alternatives.end(); ++it)
                    os << "\\bibtex_alternatives \"" << *it << "\"\n";
            }


Here, bibtex_alternatives and system_lyxrc.bibtex_alternatives are two
different vectors, such that the check
bibtex_alternatives != system_lyxrc.bibtex_alternatives
is always true. Same story for index_alternatives.

I have still to investigate the bogus "bibtex" option problem.

-- 
Enrico

Reply via email to