X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FBiblioInfo.cpp;h=dac2097bb93baeec34705bf3eb44350450b72622;hb=0c05432284f144bcb6c278a60d54d9bc777829e0;hp=bb7c64cda2927fd2a3b72910746bffc02e055ada;hpb=c16ccdb5fd25a14c096ef9dfa68975c77377bf41;p=lyx.git diff --git a/src/BiblioInfo.cpp b/src/BiblioInfo.cpp index bb7c64cda2..dac2097bb9 100644 --- a/src/BiblioInfo.cpp +++ b/src/BiblioInfo.cpp @@ -541,16 +541,16 @@ docstring const BibTeXInfo::getAuthorList(Buffer const * buf, // These are defined in the styles string const etal = - buf ? buf->params().documentClass().getCiteMacro(engine_type, "_etal") + buf ? buf->params().documentClass().getCiteMacro(engine_type, "B_etal") : " et al."; string const namesep = - buf ? buf->params().documentClass().getCiteMacro(engine_type, "_namesep") + buf ? buf->params().documentClass().getCiteMacro(engine_type, "B_namesep") : ", "; string const lastnamesep = - buf ? buf->params().documentClass().getCiteMacro(engine_type, "_lastnamesep") + buf ? buf->params().documentClass().getCiteMacro(engine_type, "B_lastnamesep") : ", and "; string const pairnamesep = - buf ? buf->params().documentClass().getCiteMacro(engine_type, "_pairnamesep") + buf ? buf->params().documentClass().getCiteMacro(engine_type, "B_pairnamesep") : " and "; string firstnameform = buf ? buf->params().documentClass().getCiteMacro(engine_type, "!firstnameform") @@ -811,13 +811,20 @@ docstring BibTeXInfo::expandFormat(docstring const & format, fmt = from_utf8(val) + fmt.substr(1); counter += 1; continue; - } else if (key[0] == '_') { - // a translatable bit + } else if (prefixIs(key, "B_")) { + // a translatable bit (to the Buffer language) string const val = buf.params().documentClass().getCiteMacro(engine_type, key); docstring const trans = translateIfPossible(from_utf8(val), buf.params().language->code()); ret << trans; + } else if (key[0] == '_') { + // a translatable bit (to the GUI language) + string const val = + buf.params().documentClass().getCiteMacro(engine_type, key); + docstring const trans = + translateIfPossible(from_utf8(val)); + ret << trans; } else { docstring const val = getValueForKey(key, buf, ci, xrefs, max_keysize); @@ -1261,10 +1268,8 @@ docstring const BiblioInfo::getYear(docstring const & key, bool use_modifier) co if (xrefs.empty()) // no luck return docstring(); - vector::const_iterator it = xrefs.begin(); - vector::const_iterator en = xrefs.end(); - for (; it != en; ++it) { - BiblioInfo::const_iterator const xrefit = find(*it); + for (docstring const & xref : xrefs) { + BiblioInfo::const_iterator const xrefit = find(xref); if (xrefit == end()) continue; BibTeXInfo const & xref_data = xrefit->second; @@ -1298,14 +1303,10 @@ docstring const BiblioInfo::getInfo(docstring const & key, BibTeXInfo const & data = it->second; BibTeXInfoList xrefptrs; vector const xrefs = getXRefs(data); - if (!xrefs.empty()) { - vector::const_iterator it = xrefs.begin(); - vector::const_iterator en = xrefs.end(); - for (; it != en; ++it) { - BiblioInfo::const_iterator const xrefit = find(*it); - if (xrefit != end()) - xrefptrs.push_back(&(xrefit->second)); - } + for (docstring const & xref : getXRefs(data)) { + BiblioInfo::const_iterator const xrefit = find(xref); + if (xrefit != end()) + xrefptrs.push_back(&(xrefit->second)); } return data.getInfo(xrefptrs, buf, ci); } @@ -1337,15 +1338,10 @@ docstring const BiblioInfo::getLabel(vector keys, vector xrefptrs; if (it != end()) { data = it->second; - vector const xrefs = getXRefs(data); - if (!xrefs.empty()) { - vector::const_iterator it = xrefs.begin(); - vector::const_iterator en = xrefs.end(); - for (; it != en; ++it) { - BiblioInfo::const_iterator const xrefit = find(*it); - if (xrefit != end()) - xrefptrs.push_back(&(xrefit->second)); - } + for (docstring const & xref : getXRefs(data)) { + BiblioInfo::const_iterator const xrefit = find(xref); + if (xrefit != end()) + xrefptrs.push_back(&(xrefit->second)); } } ret = data.getLabel(xrefptrs, buf, ret, ci, key + 1 != ken, i == 1);