X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetBibtex.cpp;h=8f33a2de3c37ca2c2c1501cc7028aaedac1b0c11;hb=3588f2f69675df8dbf829800b0ed6e4a455c68b4;hp=ac21162b9b59c259d6b170fc8bf63e32fbb8d070;hpb=e93092e72b6240f087315cc8775b09d3cbcfdd32;p=lyx.git
diff --git a/src/insets/InsetBibtex.cpp b/src/insets/InsetBibtex.cpp
index ac21162b9b..8f33a2de3c 100644
--- a/src/insets/InsetBibtex.cpp
+++ b/src/insets/InsetBibtex.cpp
@@ -58,7 +58,7 @@ namespace os = support::os;
InsetBibtex::InsetBibtex(Buffer * buf, InsetCommandParams const & p)
: InsetCommand(buf, p)
{
- buffer().invalidateBibinfoCache();
+ buffer().invalidateBibfileCache();
buffer().removeBiblioTempFiles();
}
@@ -336,6 +336,9 @@ void InsetBibtex::latex(otexstream & os, OutputParams const & runparams) const
style = split(style, bibtotoc, ',');
}
+ if (style == "default")
+ style = buffer().params().biblio_style;
+
if (!style.empty()) {
string base = normalizeName(buffer(), runparams, style, ".bst");
FileName const try_in_file =
@@ -920,11 +923,9 @@ void InsetBibtex::validate(LaTeXFeatures & features) const
// It'd be better to be able to get this from an InsetLayout, but at present
// InsetLayouts do not seem really to work for things that aren't InsetTexts.
if (features.runparams().flavor == OutputParams::HTML)
- features.addPreambleSnippet("");
+ "span.bibtexlabel:after{ content: \"] \"; }");
}
@@ -935,9 +936,8 @@ docstring InsetBibtex::xhtml(XHTMLStream & xs, OutputParams const &) const
{
BiblioInfo const & bibinfo = buffer().masterBibInfo();
vector const & cites = bibinfo.citedEntries();
- CiteEngine const engine = buffer().params().citeEngine();
- bool const numbers =
- (engine == ENGINE_BASIC || engine == ENGINE_NATBIB_NUMERICAL);
+ CiteEngineType const engine_type = buffer().params().citeEngineType();
+ bool const numbers = (engine_type == ENGINE_TYPE_NUMERICAL);
docstring reflabel = from_ascii("References");
Language const * l = buffer().params().language;
@@ -960,7 +960,8 @@ docstring InsetBibtex::xhtml(XHTMLStream & xs, OutputParams const &) const
xs << html::StartTag("div", "class='bibtexentry'");
// FIXME XHTML
// The same name/id problem we have elsewhere.
- string const attr = "id='" + to_utf8(entry.key()) + "'";
+ string const attr =
+ "id='LyXCite-" + to_utf8(html::cleanAttr(entry.key())) + "'";
xs << html::CompTag("a", attr);
docstring citekey;
if (numbers)