diff --git a/chrome/content/zotero/itemPane.xul b/chrome/content/zotero/itemPane.xul index 50a8e4d497..c9facea7de 100644 --- a/chrome/content/zotero/itemPane.xul +++ b/chrome/content/zotero/itemPane.xul @@ -109,7 +109,7 @@ Choose the version of the item to use as the master item: - + diff --git a/chrome/content/zotero/xpcom/citeproc.js b/chrome/content/zotero/xpcom/citeproc.js index cbbfc4439f..fc64f51060 100644 --- a/chrome/content/zotero/xpcom/citeproc.js +++ b/chrome/content/zotero/xpcom/citeproc.js @@ -2133,7 +2133,7 @@ CSL.DateParser = function () { }; CSL.Engine = function (sys, style, lang, forceLang) { var attrs, langspec, localexml, locale; - this.processor_version = "1.0.278"; + this.processor_version = "1.0.279"; this.csl_version = "1.0"; this.sys = sys; this.sys.xml = new CSL.System.Xml.Parsing(); @@ -7506,6 +7506,8 @@ CSL.Node.text = { if (parseInt(m[1]) >= parseInt(m[2])) { locator = m[1] + "-" + m[2]; } + } else { + locator = locator.replace(/\u2013/g,"-"); } state.output.append(locator, this, false, false, true); } @@ -7527,6 +7529,15 @@ CSL.Node.text = { func = function (state, Item) { var value = state.getVariable(Item, "page", form); if (value) { + value = value.replace(/--*/g,"\u2013"); + var m = value.match(/^([0-9]+)\s*\u2013\s*([0-9]+)$/) + if (m) { + if (parseInt(m[1]) >= parseInt(m[2])) { + value = m[1] + "-" + m[2]; + } + } else { + value = value.replace(/\u2013/g,"-"); + } value = state.fun.page_mangler(value); state.output.append(value, this, false, false, true); } diff --git a/chrome/content/zotero/xpcom/integration.js b/chrome/content/zotero/xpcom/integration.js index 71cdc1ba1a..050f266d34 100644 --- a/chrome/content/zotero/xpcom/integration.js +++ b/chrome/content/zotero/xpcom/integration.js @@ -1620,7 +1620,7 @@ Zotero.Integration.Fields.prototype.addEditCitation = function(field, callback) try { session.lookupItems(citation); } catch(e) { - if(e instanceof MissingItemException) { + if(e instanceof Zotero.Integration.MissingItemException) { citation.citationItems = []; } else { throw e;