{ "translatorID": "9cb70025-a888-4a29-a210-93ec52da40d4", "translatorType": 3, "label": "BibTeX", "creator": "Simon Kornblith, Richard Karnesky and Emiliano heyns", "target": "bib", "minVersion": "2.1.9", "maxVersion": null, "priority": 200, "inRepository": true, "configOptions": { "async": true, "getCollections": true }, "displayOptions": { "exportCharset": "UTF-8", "exportNotes": true, "exportFileData": false, "useJournalAbbreviation": false }, "lastUpdated": "2024-03-25 15:15:00" } /* BibTeX Translator Copyright (C) 2019 CHNM, Simon Kornblith, Richard Karnesky and Emiliano heyns This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ function detectImport() { var maxChars = 1048576; // 1MB var inComment = false; var block = ""; var buffer = ""; var chr = ""; var charsRead = 0; var re = /^\s*@[a-zA-Z]+[\(\{]/; while ((buffer = Zotero.read(4096)) && charsRead < maxChars) { Zotero.debug("Scanning " + buffer.length + " characters for BibTeX"); charsRead += buffer.length; for (var i=0; i 1) { rec.field = line.substr(0,splitAt).trim(); rec.value = line.substr(splitAt + 1).trim(); } fields.push(rec); } return fields; } function extraFieldsToString(extra) { var str = ''; for (var i=0; i":"{\\textgreater}", "~":"{\\textasciitilde}", "^":"{\\textasciicircum}", "\\":"{\\textbackslash}", // See http://tex.stackexchange.com/questions/230750/open-brace-in-bibtex-fields/230754 "{" : "\\{\\vphantom{\\}}", "}" : "\\vphantom{\\{}\\}" }; var strings = {}; var keyRe = /[a-zA-Z0-9\-]/; // Split keywords on space by default when called from another translator // This is purely for historical reasons. Otherwise we risk breaking tag import // from some websites var keywordSplitOnSpace = !!Zotero.parentTranslator; var keywordDelimRe = /\s*[,;]\s*/; function setKeywordSplitOnSpace( val ) { keywordSplitOnSpace = val; } function setKeywordDelimRe( val, flags ) { //expect string, but it could be RegExp if (typeof(val) != 'string') { val = val.toString(); flags = val.slice(val.lastIndexOf('/')+1); val = val.slice(1, val.lastIndexOf('/')); } keywordDelimRe = new RegExp(val, flags); } function processField(item, field, value, rawValue) { if (Zotero.Utilities.trim(value) == '') return null; if (fieldMap[field]) { //map DOIs + Label to Extra for unsupported item types if (field == "doi" &&!ZU.fieldIsValidForType("DOI", item.itemType) && ZU.cleanDOI(value)) { item._extraFields.push({field: "DOI", value: ZU.cleanDOI(value)}); } if (field == "url") { // pass raw values for URL item.url = rawValue; } else { item[fieldMap[field]] = value; } } else if (inputFieldMap[field]) { item[inputFieldMap[field]] = value; } else if (field == "subtitle") { if (!item.title) item.title = ''; item.title = item.title.trim(); value = value.trim(); if (!/[-–—:!?.;]$/.test(item.title) && !/^[-–—:.;¡¿]/.test(value) ) { item.title += ': '; } else if (item.title.length) { item.title += ' '; } item.title += value; } else if (field == "journal") { if (item.publicationTitle) { item.journalAbbreviation = value; } else { item.publicationTitle = value; } } else if (field == "fjournal") { if (item.publicationTitle) { // move publicationTitle to abbreviation, since it probably came from 'journal' item.journalAbbreviation = item.publicationTitle; } item.publicationTitle = value; } else if (field == "author" || field == "editor" || field == "translator") { // parse authors/editors/translators var names = splitUnprotected(rawValue.trim(), /\s+and\s+/gi); for (var i in names) { var name = names[i]; // skip empty names if (!name) continue; // Names in BibTeX can have three commas var pieces = splitUnprotected(name, /\s*,\s*/g); var creator = {}; if (pieces.length > 1) { creator.firstName = pieces.pop(); creator.lastName = unescapeBibTeX(pieces.shift()); if (pieces.length) { // If anything is left, it should only be the 'Jr' part creator.firstName += ', ' + pieces.join(', '); } creator.firstName = unescapeBibTeX(creator.firstName); creator.creatorType = field; } else if (splitUnprotected(name, / +/g).length > 1){ creator = Zotero.Utilities.cleanAuthor(unescapeBibTeX(name), field, false); } else { creator = { lastName: unescapeBibTeX(name), creatorType: field, fieldMode: 1 }; } item.creators.push(creator); } } else if (field == "institution" || field == "organization") { item.backupPublisher = value; } else if (field == "location") { item.backupLocation = value; } else if (field == "number") { // fix for techreport if (item.itemType == "report") { item.reportNumber = value; } else if (item.itemType == "book" || item.itemType == "bookSection") { item.seriesNumber = value; } else if (item.itemType == "patent"){ item.patentNumber = value; } else { item.issue = value; } } else if (field == "day") { // this and the following two blocks assign to temporary fields that // are cleared before the item is completed. "day" isn't an official // field, but some sites use it. item.day = value; } else if (field == "month") { var monthIndex = months.indexOf(value.toLowerCase()); if (monthIndex != -1) { value = Zotero.Utilities.formatDate({month:monthIndex}); } item.month = value; } else if (field == "year") { item.year = value; } else if (field == "date") { //We're going to assume that "date" and the date parts don't occur together. If they do, we pick date, which should hold all. item.date = value; } else if (field == "pages") { if (item.itemType == "book" || item.itemType == "thesis" || item.itemType == "manuscript") { item.numPages = value; } else { item.pages = value.replace(/--/g, "-"); } } else if (field == "note") { var isExtraId = false; for (var element in extraIdentifiers) { if (value.trim().startsWith(extraIdentifiers[element])) { isExtraId = true; } } if (isExtraId) { item._extraFields.push({raw: value.trim()}); } else { item.notes.push({note:Zotero.Utilities.text2html(value)}); } } else if (field == "howpublished") { if (value.length >= 7) { var str = value.substr(0, 7); if (str == "http://" || str == "https:/" || str == "mailto:") { item.url = value; } else { item._extraFields.push({field: 'Published', value: value}); } } } //accept lastchecked or urldate for access date. These should never both occur. //If they do we don't know which is better so we might as well just take the second one else if (field == "lastchecked"|| field == "urldate"){ item.accessDate = value; } else if (field == "keywords" || field == "keyword") { item.tags = value.split(keywordDelimRe); if (item.tags.length == 1 && keywordSplitOnSpace) { item.tags = value.split(/\s+/); } } else if (field == "comment" || field == "annote" || field == "review" || field == "notes") { item.notes.push({note:Zotero.Utilities.text2html(value)}); } else if (field == "pdf" || field == "path" /*Papers2 compatibility*/) { item.attachments.push({path:value, mimeType:"application/pdf"}); } else if (field == "sentelink") { // the reference manager 'Sente' has a unique file scheme in exported BibTeX; it can occur multiple times item.attachments.push({path:value.split(",")[0], mimeType:"application/pdf"}); } else if (field == "file") { var start = 0, attachment; rawValue = rawValue.replace(/\$\\backslash\$/g, '\\') // Mendeley invention? .replace(/([^\\](?:\\\\)*)\\(.){}/g, '$1$2'); // part of Mendeley's escaping (e.g. \~{} = ~) for (var i=0; inextPossibleSplit.index) { // Must have been inside braces nextPossibleSplit = delim.exec(str); if (!nextPossibleSplit) { parts.push(str.substr(nextPartStart)); return parts; } } if (str[i] == '\\') { // Skip next character i++; continue; } if (str[i] == '{') { open++; continue; } if (str[i] == '}') { open--; if (open < 0) open = 0; // Shouldn't happen, but... continue; } if (open) continue; if (i == nextPossibleSplit.index) { parts.push(str.substring(nextPartStart, i)); i += nextPossibleSplit[0].length - 1; // We can jump past the split delim nextPartStart = i + 1; nextPossibleSplit = delim.exec(str); if (!nextPossibleSplit) { parts.push(str.substr(nextPartStart)); return parts; } } } // I don't think we should ever get here*, but just to be safe // *we should always be returning from the for loop var last = str.substr(nextPartStart).trim(); if (last) parts.push(last); return parts; } function parseFilePathRecord(record) { var start = 0, fields = []; for (var i=0; i {\v c} value = value.replace(/(\\[a-z]){(\\?[A-Za-z])}/g, "{$1 $2}"); //convert tex markup into permitted HTML value = mapTeXmarkup(value); for (var mapped in reversemappingTable) { // really really slow! var unicode = reversemappingTable[mapped]; while (value.includes(mapped)) { Zotero.debug("Replace " + mapped + " in " + value + " with " + unicode); value = value.replace(mapped, unicode); } mapped = mapped.replace(/[{}]/g, ""); while (value.includes(mapped)) { //Z.debug(value) Zotero.debug("Replace(2) " + mapped + " in " + value + " with " + unicode); value = value.replace(mapped, unicode); } } value = value.replace(/\$([^$]+)\$/g, '$1') // kill braces value = value.replace(/([^\\])[{}]+/g, "$1"); if (value[0] == "{") { value = value.substr(1); } // chop off backslashes value = value.replace(/([^\\])\\([#$%&~_^\\{}])/g, "$1$2"); value = value.replace(/([^\\])\\([#$%&~_^\\{}])/g, "$1$2"); if (value[0] == "\\" && "#$%&~_^\\{}".includes(value[1])) { value = value.substr(1); } if (value[value.length-1] == "\\" && "#$%&~_^\\{}".includes(value[value.length-2])) { value = value.substr(0, value.length-1); } value = value.replace(/\\\\/g, "\\"); value = value.replace(/\s+/g, " "); // Unescape HTML entities coming from web translators if (Zotero.parentTranslator && value.includes('&')) { value = value.replace(/&#?\w+;/g, function(entity) { var char = ZU.unescapeHTML(entity); if (char == entity) char = ZU.unescapeHTML(entity.toLowerCase()); // Sometimes case can be incorrect and entities are case-sensitive return char; }); } return value; } function jabrefSplit(str, sep) { var quoted = false; var result = []; str = str.split(''); while (str.length > 0) { if (result.length == 0) { result = ['']; } if (str[0] == sep) { str.shift(); result.push(''); } else { if (str[0] == '\\') { str.shift(); } result[result.length - 1] += str.shift(); } } return result; } function jabrefCollect(arr, func) { if (arr == null) { return []; } var result = []; for (var i = 0; i < arr.length; i++) { if (func(arr[i])) { result.push(arr[i]); } } return result; } function processComment() { var comment = ""; var read; var collectionPath = []; var parentCollection, collection; while (read = Zotero.read(1)) { if (read == "}") { break; } // JabRef ought to escape '}' but doesn't; embedded '}' chars will break the import just as it will on JabRef itself comment += read; } if (comment == 'jabref-meta: groupsversion:3;') { jabref.format = 3; return; } if (comment.startsWith('jabref-meta: groupstree:')) { if (jabref.format != 3) { Zotero.debug("jabref: fatal: unsupported group format: " + jabref.format); return; } comment = comment.replace(/^jabref-meta: groupstree:/, '').replace(/[\r\n]/gm, ''); var records = jabrefSplit(comment, ';'); while (records.length > 0) { var record = records.shift(); var keys = jabrefSplit(record, ';'); if (keys.length < 2) { continue; } var record = {id: keys.shift()}; record.data = record.id.match(/^([0-9]) ([^:]*):(.*)/); if (record.data == null) { Zotero.debug("jabref: fatal: unexpected non-match for group " + record.id); return; } record.level = parseInt(record.data[1]); record.type = record.data[2]; record.name = record.data[3]; record.intersection = keys.shift(); // 0 = independent, 1 = intersection, 2 = union if (isNaN(record.level)) { Zotero.debug("jabref: fatal: unexpected record level in " + record.id); return; } if (record.level == 0) { continue; } if (record.type != 'ExplicitGroup') { Zotero.debug("jabref: fatal: group type " + record.type + " is not supported"); return; } collectionPath = collectionPath.slice(0, record.level - 1).concat([record.name]); Zotero.debug("jabref: locating level " + record.level + ": " + collectionPath.join('/')); if (jabref.root.hasOwnProperty(collectionPath[0])) { collection = jabref.root[collectionPath[0]]; Zotero.debug("jabref: root " + collection.name + " found"); } else { collection = new Zotero.Collection(); collection.name = collectionPath[0]; collection.type = 'collection'; collection.children = []; jabref.root[collectionPath[0]] = collection; Zotero.debug("jabref: root " + collection.name + " created"); } parentCollection = null; for (var i = 1; i < collectionPath.length; i++) { var path = collectionPath[i]; Zotero.debug("jabref: looking for child " + path + " under " + collection.name); var child = jabrefCollect(collection.children, function(n) { return (n.name == path); }); if (child.length != 0) { child = child[0]; Zotero.debug("jabref: child " + child.name + " found under " + collection.name); } else { child = new Zotero.Collection(); child.name = path; child.type = 'collection'; child.children = []; collection.children.push(child); Zotero.debug("jabref: child " + child.name + " created under " + collection.name); } parentCollection = collection; collection = child; } if (parentCollection) { parentCollection = jabrefCollect(parentCollection.children, function(n) { return (n.type == 'item'); }); } if (record.intersection == '2' && parentCollection) { // union with parent collection.children = parentCollection; } while (keys.length > 0) { var key = keys.shift(); if (key != '') { Zotero.debug('jabref: adding ' + key + ' to ' + collection.name); collection.children.push({type: 'item', id: key}); } } if (parentCollection && record.intersection == '1') { // intersection with parent collection.children = jabrefMap(collection.children, function(n) { parentCollection.includes(n); }); } } } } function beginRecord(type, closeChar) { type = Zotero.Utilities.trimInternal(type.toLowerCase()); if (type !== "string" && type !== "preamble") { var zoteroType = bibtex2zoteroTypeMap[type]; if (!zoteroType) { Zotero.debug("discarded item from BibTeX; type was "+type); return; } var item = new Zotero.Item(zoteroType); item._extraFields = []; } else if (type == "preamble") { // Preamble (keeping separate in case we want to do something with these) Zotero.debug("discarded preamble from BibTeX"); return; } // For theses write the thesisType determined by the BibTeX type. if (type == "mastersthesis" && item) item.type = "Master's Thesis"; if (type == "phdthesis" && item) item.type = "PhD Thesis"; var field = ""; // by setting dontRead to true, we can skip a read on the next iteration // of this loop. this is useful after we read past the end of a string. var dontRead = false; var value, rawValue; while (dontRead || (read = Zotero.read(1))) { dontRead = false; // the equal sign indicate the start of the value // which will be handled in the following part // possible formats are: // = 42, // = "42", // = {42}, // = name, (where this is defined as a string) if (read == "=") { var valueArray = []; var rawValueArray = []; // concatenation is possible with # and for that we // do this do-while-loop here, e.g. // = name # " and " # "Adam Smith", do { var read = Zotero.read(1); // skip whitespaces while (" \n\r\t".includes(read)) { read = Zotero.read(1); } if (keyRe.test(read)) { // read numeric data here, since we might get an end bracket // that we should care about value = ""; value += read; // character is a number or part of a string name while ((read = Zotero.read(1)) && /[a-zA-Z0-9\-:_]/.test(read)) { value += read; } // don't read the next char; instead, process the character // we already read past the end of the string dontRead = true; // see if there's a defined string if (strings[value.toLowerCase()]) value = strings[value.toLowerCase()]; // rawValue has to be set for some fields to process // thus, in this case, we set it equal to value rawValue = value; } else { rawValue = getFieldValue(read); value = unescapeBibTeX(rawValue); } valueArray.push(value); rawValueArray.push(rawValue); while (" \n\r\t".includes(read)) { read = Zotero.read(1); } } while (read === "#"); value = valueArray.join(''); rawValue = rawValueArray.join(''); if (item) { processField(item, field.toLowerCase(), value, rawValue); } else if (type == "string") { strings[field.toLowerCase()] = value; } field = ""; } // commas reset, i.e. we are not reading a field // but rather we are reading the bibkey else if (read == ",") { if (item.itemID == null) { item.itemID = field; // itemID = citekey } field = ""; } // closing character else if (read == closeChar) { if (item) { if (item.backupLocation) { if (item.itemType=="conferencePaper") { item._extraFields.push({field: "event-place", value: item.backupLocation}); } else if (!item.place) { item.place = item.backupLocation; } delete item.backupLocation; } if (!item.date) { item.date = dateFieldsToDate(item.year, item.month, item.day); } delete item.year; delete item.month; delete item.day; item.extra = extraFieldsToString(item._extraFields); delete item._extraFields; if (!item.publisher && item.backupPublisher){ item.publisher=item.backupPublisher; delete item.backupPublisher; } return item.complete(); } return; } // skip whitespaces; the rest will become // the field name (or bibkey) else if (!" \n\r\t".includes(read)) { field += read; } } } function doImport() { if (typeof Promise == 'undefined') { readString( function () {}, function (e) { throw e; } ); } else { return new Promise(function (resolve, reject) { readString(resolve, reject); }); } } function readString(resolve, reject) { var read = ""; var type = false; var next = function () { readString(resolve, reject); }; try { while (read = Zotero.read(1)) { if (read == "@") { type = ""; } else if (type !== false) { if (type == "comment") { processComment(); type = false; } else if (read == "{") { // possible open character // This might return a promise if an item was saved // TODO: When 5.0-only, make sure this always returns a promise var maybePromise = beginRecord(type, "}"); if (maybePromise) { maybePromise.then(next); return; } } else if (read == "(") { // possible open character var maybePromise = beginRecord(type, ")"); if (maybePromise) { maybePromise.then(next); return; } } else if (/[a-zA-Z0-9-_]/.test(read)) { type += read; } } } for (var key in jabref.root) { // TODO: Handle promise? if (jabref.root.hasOwnProperty(key)) { jabref.root[key].complete(); } } } catch (e) { reject(e); return; } resolve(); } // some fields are, in fact, macros. If that is the case then we should not put the // data in the braces as it will cause the macros to not expand properly function writeField(field, value, isMacro) { if (!value && typeof value != "number") return; value = value + ""; // convert integers to strings Zotero.write(",\n\t" + field + " = "); if (!isMacro) Zotero.write("{"); // url field is preserved, for use with \href and \url // Other fields (DOI?) may need similar treatment if (!isMacro && !(field == "url" || field == "doi" || field == "file" || field == "lccn" )) { // I hope these are all the escape characters! value = escapeSpecialCharacters(value); if (caseProtectedFields.includes(field)) { value = ZU.XRegExp.replace(value, protectCapsRE, "$1{$2$3}"); // only $2 or $3 will have a value, not both } } var exportCharset = Zotero.getOption("exportCharset"); if (exportCharset && !exportCharset.startsWith("UTF-8")) { value = value.replace(/[\u0080-\uFFFF]/g, mapAccent); } //convert the HTML markup allowed in Zotero for rich text to TeX; excluding doi/url/file shouldn't be necessary, but better to be safe; if (!((field == "url") || (field == "doi") || (field == "file"))) value = mapHTMLmarkup(value); Zotero.write(value); if (!isMacro) Zotero.write("}"); } function mapHTMLmarkup(characters){ //converts the HTML markup allowed in Zotero for rich text to TeX //since < and > have already been escaped, we need this rather hideous code - I couldn't see a way around it though. //italics and bold characters = characters.replace(/\{\\textless\}i\{\\textgreater\}(.+?)\{\\textless\}\/i{\\textgreater\}/g, "\\textit{$1}") .replace(/\{\\textless\}b\{\\textgreater\}(.+?)\{\\textless\}\/b{\\textgreater\}/g, "\\textbf{$1}"); //sub and superscript characters = characters.replace(/\{\\textless\}sup\{\\textgreater\}(.+?)\{\\textless\}\/sup{\\textgreater\}/g, "\$^{\\textrm{$1}}\$") .replace(/\{\\textless\}sub\{\\textgreater\}(.+?)\{\\textless\}\/sub\{\\textgreater\}/g, "\$_{\\textrm{$1}}\$"); //two variants of small caps characters = characters.replace(/\{\\textless\}span\sstyle=\"small\-caps\"\{\\textgreater\}(.+?)\{\\textless\}\/span{\\textgreater\}/g, "\\textsc{$1}") .replace(/\{\\textless\}sc\{\\textgreater\}(.+?)\{\\textless\}\/sc\{\\textgreater\}/g, "\\textsc{$1}"); return characters; } function xcase(prefix, cased, tag, tex) { return (prefix ? `$${prefix}$` : '') + (reversemappingTable[`$${tex}{${cased}}$`] || `<${tag}>${cased}`) } function sup(match, prefix, cased) { return xcase(prefix, cased, 'sup', '^'); } function sub(match, prefix, cased) { return xcase(prefix, cased, 'sub', '_'); } function mapTeXmarkup(tex){ //reverse of the above - converts tex mark-up into html mark-up permitted by Zotero //italics and bold tex = tex.replace(/\\textit\{([^\}]+\})/g, "$1").replace(/\\textbf\{([^\}]+\})/g, "$1"); //two versions of subscript the .* after $ is necessary because people m tex = tex.replace(/\$([^\{\$]*)_\{([^\}]+)\}\$/g, sub).replace(/\$([^\{\$]*)_\{\\textrm\{([^\}\$]+)\}\}\$/g, sub); //two version of superscript tex = tex.replace(/\$([^\{\$]*)\^\{([^\}]+)\}\$/g, sup).replace(/\$([^\{\$]*)\^\{\\textrm\{([^\}]+)\}\}\$/g, sup); //small caps tex = tex.replace(/\\textsc\{([^\}]+)/g, "$1"); return tex; } //Disable the isTitleCase function until we decide what to do with it. /* const skipWords = ["but", "or", "yet", "so", "for", "and", "nor", "a", "an", "the", "at", "by", "from", "in", "into", "of", "on", "to", "with", "up", "down", "as", "while", "aboard", "about", "above", "across", "after", "against", "along", "amid", "among", "anti", "around", "as", "before", "behind", "below", "beneath", "beside", "besides", "between", "beyond", "but", "despite", "down", "during", "except", "for", "inside", "like", "near", "off", "onto", "over", "past", "per", "plus", "round", "save", "since", "than", "through", "toward", "towards", "under", "underneath", "unlike", "until", "upon", "versus", "via", "within", "without"]; function isTitleCase(string) { const wordRE = /[\s[(]([^\s,\.:?!\])]+)/g; var word; while (word = wordRE.exec(string)) { word = word[1]; if (word.search(/\d/) != -1 //ignore words with numbers (including just numbers) || skipWords.includes(word.toLowerCase())) { continue; } if (word.toLowerCase() == word) return false; } return true; } */ // See http://tex.stackexchange.com/questions/230750/open-brace-in-bibtex-fields/230754 var vphantomRe = /\\vphantom{\\}}((?:.(?!\\vphantom{\\}}))*)\\vphantom{\\{}/g; function escapeSpecialCharacters(str) { var newStr = str.replace(/[|\<\>\~\^\\\{\}]/g, function(c) { return alwaysMap[c]; }) .replace(/([\#\$\%\&\_])/g, "\\$1"); // We escape each brace in the text by making sure that it has a counterpart, // but sometimes this is overkill if the brace already has a counterpart in // the text. if (newStr.includes('\\vphantom')) { var m; while (m = vphantomRe.exec(newStr)) { // Can't use a simple replace, because we want to match up inner with inner // and outer with outer newStr = newStr.substr(0,m.index) + m[1] + newStr.substr(m.index + m[0].length); vphantomRe.lastIndex = 0; // Start over, because the previous replacement could have created a new pair } } return newStr; } function mapAccent(character) { return (mappingTable[character] ? mappingTable[character] : "?"); } var filePathSpecialChars = '\\\\:;$'; // $ for Mendeley (see cleanFilePath for {}) var encodeFilePathRE = new RegExp('[' + filePathSpecialChars + ']', 'g'); // We strip out {} in general, because \{ and \} still break BibTeX (0.99d) function cleanFilePath(str) { if (!str) return ''; return str.replace(/(?:\s*[{}]+)+\s*/g, ' '); } function encodeFilePathComponent(value) { if (!value) return ''; return value.replace(encodeFilePathRE, "\\$&"); } function decodeFilePathComponent(value) { if (!value) return ''; return value.replace(/\\([^A-Za-z0-9.])/g, "$1"); } // a little substitution function for BibTeX keys, where we don't want LaTeX // escaping, but we do want to preserve the base characters function tidyAccents(s) { var r=s.toLowerCase(); // XXX Remove conditional when we drop Zotero 2.1.x support // This is supported in Zotero 3.0 and higher if (ZU.removeDiacritics !== undefined) r = ZU.removeDiacritics(r, true); else { // We fall back on the replacement list we used previously r = r.replace(new RegExp("[ä]", 'g'),"ae"); r = r.replace(new RegExp("[ö]", 'g'),"oe"); r = r.replace(new RegExp("[ü]", 'g'),"ue"); r = r.replace(new RegExp("[àáâãå]", 'g'),"a"); r = r.replace(new RegExp("æ", 'g'),"ae"); r = r.replace(new RegExp("ç", 'g'),"c"); r = r.replace(new RegExp("[èéêë]", 'g'),"e"); r = r.replace(new RegExp("[ìíîï]", 'g'),"i"); r = r.replace(new RegExp("ñ", 'g'),"n"); r = r.replace(new RegExp("[òóôõ]", 'g'),"o"); r = r.replace(new RegExp("œ", 'g'),"oe"); r = r.replace(new RegExp("[ùúû]", 'g'),"u"); r = r.replace(new RegExp("[ýÿ]", 'g'),"y"); } return r; }; var numberRe = /^[0-9]+/; // Below is a list of words that should not appear as part of the citation key // it includes the indefinite articles of English, German, French and Spanish, as well as a small set of English prepositions whose // force is more grammatical than lexical, i.e. which are likely to strike many as 'insignificant'. // The assumption is that most who want a title word in their key would prefer the first word of significance. // Also remove markup var citeKeyTitleBannedRe = /\b(a|an|the|some|from|on|in|to|of|do|with|der|die|das|ein|eine|einer|eines|einem|einen|un|une|la|le|l\'|les|el|las|los|al|uno|una|unos|unas|de|des|del|d\')(\s+|\b)|(<\/?(i|b|sup|sub|sc|span style=\"small-caps\"|span)>)/g; var citeKeyConversionsRe = /%([a-zA-Z])/; var citeKeyConversions = { "a":function (flags, item) { if (item.creators && item.creators[0] && item.creators[0].lastName) { return item.creators[0].lastName.toLowerCase().replace(/ /g,"_").replace(/,/g,""); } return "noauthor"; }, "t":function (flags, item) { if (item["title"]) { return item["title"].toLowerCase().replace(citeKeyTitleBannedRe, "").split(/\s+/g)[0]; } return "notitle"; }, "y":function (flags, item) { if (item.date) { var date = Zotero.Utilities.strToDate(item.date); if (date.year && numberRe.test(date.year)) { return date.year; } } return "nodate"; } }; function buildCiteKey (item, extraFields, citekeys) { if (extraFields) { const citationKey = extraFields.findIndex(field => field.field && field.value && field.field.toLowerCase() === 'citation key'); if (citationKey >= 0) return extraFields.splice(citationKey, 1)[0].value; } if (item.citationKey) return item.citationKey; var basekey = ""; var counter = 0; var citeKeyFormatRemaining = citeKeyFormat; while (citeKeyConversionsRe.test(citeKeyFormatRemaining)) { if (counter > 100) { Zotero.debug("Pathological BibTeX format: " + citeKeyFormat); break; } var m = citeKeyFormatRemaining.match(citeKeyConversionsRe); if (m.index > 0) { //add data before the conversion match to basekey basekey = basekey + citeKeyFormatRemaining.substr(0, m.index); } var flags = ""; // for now var f = citeKeyConversions[m[1]]; if (typeof(f) == "function") { var value = f(flags, item); Zotero.debug("Got value " + value + " for %" + m[1]); //add conversion to basekey basekey = basekey + value; } citeKeyFormatRemaining = citeKeyFormatRemaining.substr(m.index + m.length); counter++; } if (citeKeyFormatRemaining.length > 0) { basekey = basekey + citeKeyFormatRemaining; } // for now, remove any characters not explicitly known to be allowed; // we might want to allow UTF-8 citation keys in the future, depending // on implementation support. // // no matter what, we want to make sure we exclude // " # % ' ( ) , = { } ~ and backslash // however, we want to keep the base characters basekey = tidyAccents(basekey); // use legacy pattern for all old items to not break existing usages var citeKeyCleanRe = /[^a-z0-9\!\$\&\*\+\-\.\/\:\;\<\>\?\[\]\^\_\`\|]+/g; // but use the simple pattern for all newly added items // or always if the hiddenPref is set // extensions.zotero.translators.BibTeX.export.simpleCitekey if ((Zotero.getHiddenPref && Zotero.getHiddenPref('BibTeX.export.simpleCitekey')) || (item.dateAdded && parseInt(item.dateAdded.substr(0, 4)) >= 2020)) { citeKeyCleanRe = /[^a-z0-9_-]/g; } basekey = basekey.replace(citeKeyCleanRe, ""); var citekey = basekey; var i = 0; while (citekeys[citekey]) { i++; citekey = basekey + "-" + i; } citekeys[citekey] = true; return citekey; } var protectCapsRE; function doExport() { if (Zotero.getHiddenPref && Zotero.getHiddenPref('BibTeX.export.dontProtectInitialCase')) { // Case of words with uppercase characters in non-initial positions is // preserved with braces. // Two extra captures because of the other regexp below protectCapsRE = new ZU.XRegExp("()()\\b([\\p{Letter}\\d]+\\p{Uppercase_Letter}[\\p{Letter}\\d]*)", 'g'); } else { // Protect all upper case letters, even if the uppercase letter is only in // initial position of the word. // Don't protect first word if only first letter is capitalized protectCapsRE = new ZU.XRegExp( "(.)\\b([\\p{Letter}\\d]*\\p{Uppercase_Letter}[\\p{Letter}\\d]*)" // Non-initial words with capital letter anywhere + "|^([\\p{Letter}\\d]+\\p{Uppercase_Letter}[\\p{Letter}\\d]*)" // Initial word with capital in non-initial position , 'g'); } //Zotero.write("% BibTeX export generated by Zotero "+Zotero.Utilities.getVersion()); // to make sure the BOM gets ignored Zotero.write("\n"); var first = true; var citekeys = new Object(); var item; while (item = Zotero.nextItem()) { //don't export standalone notes and attachments if (item.itemType == "note" || item.itemType == "attachment") continue; // determine type var type = zotero2bibtexTypeMap[item.itemType]; if (typeof(type) == "function") { type = type(item); } // For theses BibTeX distinguish between @mastersthesis and @phdthesis // and the default mapping will map all Zotero thesis items to a // BibTeX phdthesis item. Here we try to fix this by examining the // Zotero thesisType field. if (type == "phdthesis") { // In practice, we just want to separate out masters theses, // and will assume everything else maps to @phdthesis. Better to // err on the side of caution. var thesisType = item.type && item.type.toLowerCase().replace(/[\s.]+|thesis|unpublished/g, ''); if (thesisType && (thesisType == 'master' || thesisType == 'masters' || thesisType == "master's" || thesisType == 'ms' || thesisType == 'msc' || thesisType == 'ma')) { type = "mastersthesis"; item["type"] = ""; } } if (!type) type = "misc"; // create a unique citation key var extraFields = item.extra ? parseExtraFields(item.extra) : null; var citekey = buildCiteKey(item, extraFields, citekeys); // write citation key Zotero.write((first ? "" : "\n\n") + "@"+type+"{"+citekey); first = false; for (var field in fieldMap) { if (item[fieldMap[field]]) { writeField(field, item[fieldMap[field]]); } } if (item.reportNumber || item.issue || item.seriesNumber || item.patentNumber) { writeField("number", item.reportNumber || item.issue || item.seriesNumber|| item.patentNumber); } if (item.accessDate){ var accessYMD = item.accessDate.replace(/\s*\d+:\d+:\d+/, ""); writeField("urldate", accessYMD); } if (item.publicationTitle) { if (item.itemType == "bookSection" || item.itemType == "conferencePaper") { writeField("booktitle", item.publicationTitle); } else if (Zotero.getOption("useJournalAbbreviation") && item.journalAbbreviation){ writeField("journal", item.journalAbbreviation); } else { writeField("journal", item.publicationTitle); } } if (item.publisher) { if (item.itemType == "thesis") { writeField("school", item.publisher); } else if (item.itemType =="report") { writeField("institution", item.publisher); } else { writeField("publisher", item.publisher); } } if (item.creators && item.creators.length) { // split creators into subcategories var author = ""; var editor = ""; var translator = ""; var collaborator = ""; var primaryCreatorType = Zotero.Utilities.getCreatorsForType(item.itemType)[0]; for (var i in item.creators) { var creator = item.creators[i]; var creatorString; if (creator.firstName) { var fname = creator.firstName.split(/\s*,!?\s*/); fname.push(fname.shift()); // If we have a Jr. part(s), it should precede first name creatorString = creator.lastName + ", " + fname.join(', '); } else { creatorString = creator.lastName; } creatorString = escapeSpecialCharacters(creatorString); if (creator.fieldMode == true) { // fieldMode true, assume corporate author creatorString = "{" + creatorString + "}"; } else { creatorString = creatorString.replace(/ (and) /gi, ' {$1} '); } if (creator.creatorType == "editor" || creator.creatorType == "seriesEditor") { editor += " and "+creatorString; } else if (creator.creatorType == "translator") { translator += " and "+creatorString; } else if (creator.creatorType == primaryCreatorType) { author += " and "+creatorString; } else { collaborator += " and "+creatorString; } } if (author) { writeField("author", "{" + author.substr(5) + "}", true); } if (editor) { writeField("editor", "{" + editor.substr(5) + "}", true); } if (translator) { writeField("translator", "{" + translator.substr(5) + "}", true); } if (collaborator) { writeField("collaborator", "{" + collaborator.substr(5) + "}", true); } } if (item.date) { var date = Zotero.Utilities.strToDate(item.date); // need to use non-localized abbreviation if (typeof date.month == "number") { writeField("month", months[date.month], true); } if (date.year) { writeField("year", date.year); } } if (extraFields) { // Export identifiers for (var i=0; i", // TRIANGULAR BULLET "\u2024":".", // ONE DOT LEADER "\u2025":"..", // TWO DOT LEADER "\u2026":"{\\textellipsis}", // HORIZONTAL ELLIPSIS "\u2027":"-", // HYPHENATION POINT "\u202F":" ", // NARROW NO-BREAK SPACE "\u2030":"{\\textperthousand}", // PER MILLE SIGN "\u2032":"'", // PRIME "\u2033":"'", // DOUBLE PRIME "\u2034":"'''", // TRIPLE PRIME "\u2035":"`", // REVERSED PRIME "\u2036":"``", // REVERSED DOUBLE PRIME "\u2037":"```", // REVERSED TRIPLE PRIME "\u2039":"{\\guilsinglleft}", // SINGLE LEFT-POINTING ANGLE QUOTATION MARK "\u203A":"{\\guilsinglright}", // SINGLE RIGHT-POINTING ANGLE QUOTATION MARK "\u203C":"!!", // DOUBLE EXCLAMATION MARK "\u203E":"-", // OVERLINE "\u2043":"-", // HYPHEN BULLET "\u2044":"{\\textfractionsolidus}", // FRACTION SLASH "\u2048":"?!", // QUESTION EXCLAMATION MARK "\u2049":"!?", // EXCLAMATION QUESTION MARK "\u204A":"7", // TIRONIAN SIGN ET "\u2070":"$^{0}$", // SUPERSCRIPT ZERO "\u2074":"$^{4}$", // SUPERSCRIPT FOUR "\u2075":"$^{5}$", // SUPERSCRIPT FIVE "\u2076":"$^{6}$", // SUPERSCRIPT SIX "\u2077":"$^{7}$", // SUPERSCRIPT SEVEN "\u2078":"$^{8}$", // SUPERSCRIPT EIGHT "\u2079":"$^{9}$", // SUPERSCRIPT NINE "\u207A":"$^{+}$", // SUPERSCRIPT PLUS SIGN "\u207B":"$^{-}$", // SUPERSCRIPT MINUS "\u207C":"$^{=}$", // SUPERSCRIPT EQUALS SIGN "\u207D":"$^{(}$", // SUPERSCRIPT LEFT PARENTHESIS "\u207E":"$^{)}$", // SUPERSCRIPT RIGHT PARENTHESIS "\u207F":"$^{n}$", // SUPERSCRIPT LATIN SMALL LETTER N "\u2080":"$_{0}$", // SUBSCRIPT ZERO "\u2081":"$_{1}$", // SUBSCRIPT ONE "\u2082":"$_{2}$", // SUBSCRIPT TWO "\u2083":"$_{3}$", // SUBSCRIPT THREE "\u2084":"$_{4}$", // SUBSCRIPT FOUR "\u2085":"$_{5}$", // SUBSCRIPT FIVE "\u2086":"$_{6}$", // SUBSCRIPT SIX "\u2087":"$_{7}$", // SUBSCRIPT SEVEN "\u2088":"$_{8}$", // SUBSCRIPT EIGHT "\u2089":"$_{9}$", // SUBSCRIPT NINE "\u208A":"$_{+}$", // SUBSCRIPT PLUS SIGN "\u208B":"$_{-}$", // SUBSCRIPT MINUS "\u208C":"$_{=}$", // SUBSCRIPT EQUALS SIGN "\u208D":"$_{(}$", // SUBSCRIPT LEFT PARENTHESIS "\u208E":"$_{)}$", // SUBSCRIPT RIGHT PARENTHESIS "\u20AC":"{\\texteuro}", // EURO SIGN "\u2100":"a/c", // ACCOUNT OF "\u2101":"a/s", // ADDRESSED TO THE SUBJECT "\u2103":"{\\textcelsius}", // DEGREE CELSIUS "\u2105":"c/o", // CARE OF "\u2106":"c/u", // CADA UNA "\u2109":"F", // DEGREE FAHRENHEIT "\u2113":"l", // SCRIPT SMALL L "\u2116":"{\\textnumero}", // NUMERO SIGN "\u2117":"{\\textcircledP}", // SOUND RECORDING COPYRIGHT "\u2120":"{\\textservicemark}", // SERVICE MARK "\u2121":"TEL", // TELEPHONE SIGN "\u2122":"{\\texttrademark}", // TRADE MARK SIGN "\u2126":"{\\textohm}", // OHM SIGN "\u212A":"K", // KELVIN SIGN "\u212B":"A", // ANGSTROM SIGN "\u212E":"{\\textestimated}", // ESTIMATED SYMBOL "\u2153":" 1/3", // VULGAR FRACTION ONE THIRD "\u2154":" 2/3", // VULGAR FRACTION TWO THIRDS "\u2155":" 1/5", // VULGAR FRACTION ONE FIFTH "\u2156":" 2/5", // VULGAR FRACTION TWO FIFTHS "\u2157":" 3/5", // VULGAR FRACTION THREE FIFTHS "\u2158":" 4/5", // VULGAR FRACTION FOUR FIFTHS "\u2159":" 1/6", // VULGAR FRACTION ONE SIXTH "\u215A":" 5/6", // VULGAR FRACTION FIVE SIXTHS "\u215B":" 1/8", // VULGAR FRACTION ONE EIGHTH "\u215C":" 3/8", // VULGAR FRACTION THREE EIGHTHS "\u215D":" 5/8", // VULGAR FRACTION FIVE EIGHTHS "\u215E":" 7/8", // VULGAR FRACTION SEVEN EIGHTHS "\u215F":" 1/", // FRACTION NUMERATOR ONE "\u2160":"I", // ROMAN NUMERAL ONE "\u2161":"II", // ROMAN NUMERAL TWO "\u2162":"III", // ROMAN NUMERAL THREE "\u2163":"IV", // ROMAN NUMERAL FOUR "\u2164":"V", // ROMAN NUMERAL FIVE "\u2165":"VI", // ROMAN NUMERAL SIX "\u2166":"VII", // ROMAN NUMERAL SEVEN "\u2167":"VIII", // ROMAN NUMERAL EIGHT "\u2168":"IX", // ROMAN NUMERAL NINE "\u2169":"X", // ROMAN NUMERAL TEN "\u216A":"XI", // ROMAN NUMERAL ELEVEN "\u216B":"XII", // ROMAN NUMERAL TWELVE "\u216C":"L", // ROMAN NUMERAL FIFTY "\u216D":"C", // ROMAN NUMERAL ONE HUNDRED "\u216E":"D", // ROMAN NUMERAL FIVE HUNDRED "\u216F":"M", // ROMAN NUMERAL ONE THOUSAND "\u2170":"i", // SMALL ROMAN NUMERAL ONE "\u2171":"ii", // SMALL ROMAN NUMERAL TWO "\u2172":"iii", // SMALL ROMAN NUMERAL THREE "\u2173":"iv", // SMALL ROMAN NUMERAL FOUR "\u2174":"v", // SMALL ROMAN NUMERAL FIVE "\u2175":"vi", // SMALL ROMAN NUMERAL SIX "\u2176":"vii", // SMALL ROMAN NUMERAL SEVEN "\u2177":"viii", // SMALL ROMAN NUMERAL EIGHT "\u2178":"ix", // SMALL ROMAN NUMERAL NINE "\u2179":"x", // SMALL ROMAN NUMERAL TEN "\u217A":"xi", // SMALL ROMAN NUMERAL ELEVEN "\u217B":"xii", // SMALL ROMAN NUMERAL TWELVE "\u217C":"l", // SMALL ROMAN NUMERAL FIFTY "\u217D":"c", // SMALL ROMAN NUMERAL ONE HUNDRED "\u217E":"d", // SMALL ROMAN NUMERAL FIVE HUNDRED "\u217F":"m", // SMALL ROMAN NUMERAL ONE THOUSAND "\u2190":"{\\textleftarrow}", // LEFTWARDS ARROW "\u2191":"{\\textuparrow}", // UPWARDS ARROW "\u2192":"{\\textrightarrow}", // RIGHTWARDS ARROW "\u2193":"{\\textdownarrow}", // DOWNWARDS ARROW "\u2194":"<->", // LEFT RIGHT ARROW "\u21D0":"<=", // LEFTWARDS DOUBLE ARROW "\u21D2":"=>", // RIGHTWARDS DOUBLE ARROW "\u21D4":"<=>", // LEFT RIGHT DOUBLE ARROW "\u2212":"-", // MINUS SIGN "\u2215":"/", // DIVISION SLASH "\u2216":"\\", // SET MINUS "\u2217":"*", // ASTERISK OPERATOR "\u2218":"o", // RING OPERATOR "\u2219":".", // BULLET OPERATOR "\u221E":"$\\infty$", // INFINITY "\u2223":"|", // DIVIDES "\u2225":"||", // PARALLEL TO "\u2236":":", // RATIO "\u223C":"\\~{}", // TILDE OPERATOR "\u2260":"/=", // NOT EQUAL TO "\u2261":"=", // IDENTICAL TO "\u2264":"<=", // LESS-THAN OR EQUAL TO "\u2265":">=", // GREATER-THAN OR EQUAL TO "\u226A":"<<", // MUCH LESS-THAN "\u226B":">>", // MUCH GREATER-THAN "\u2295":"(+)", // CIRCLED PLUS "\u2296":"(-)", // CIRCLED MINUS "\u2297":"(x)", // CIRCLED TIMES "\u2298":"(/)", // CIRCLED DIVISION SLASH "\u22A2":"|-", // RIGHT TACK "\u22A3":"-|", // LEFT TACK "\u22A6":"|-", // ASSERTION "\u22A7":"|=", // MODELS "\u22A8":"|=", // TRUE "\u22A9":"||-", // FORCES "\u22C5":".", // DOT OPERATOR "\u22C6":"*", // STAR OPERATOR "\u22D5":"$\\#$", // EQUAL AND PARALLEL TO "\u22D8":"<<<", // VERY MUCH LESS-THAN "\u22D9":">>>", // VERY MUCH GREATER-THAN "\u2329":"{\\textlangle}", // LEFT-POINTING ANGLE BRACKET "\u232A":"{\\textrangle}", // RIGHT-POINTING ANGLE BRACKET "\u2400":"NUL", // SYMBOL FOR NULL "\u2401":"SOH", // SYMBOL FOR START OF HEADING "\u2402":"STX", // SYMBOL FOR START OF TEXT "\u2403":"ETX", // SYMBOL FOR END OF TEXT "\u2404":"EOT", // SYMBOL FOR END OF TRANSMISSION "\u2405":"ENQ", // SYMBOL FOR ENQUIRY "\u2406":"ACK", // SYMBOL FOR ACKNOWLEDGE "\u2407":"BEL", // SYMBOL FOR BELL "\u2408":"BS", // SYMBOL FOR BACKSPACE "\u2409":"HT", // SYMBOL FOR HORIZONTAL TABULATION "\u240A":"LF", // SYMBOL FOR LINE FEED "\u240B":"VT", // SYMBOL FOR VERTICAL TABULATION "\u240C":"FF", // SYMBOL FOR FORM FEED "\u240D":"CR", // SYMBOL FOR CARRIAGE RETURN "\u240E":"SO", // SYMBOL FOR SHIFT OUT "\u240F":"SI", // SYMBOL FOR SHIFT IN "\u2410":"DLE", // SYMBOL FOR DATA LINK ESCAPE "\u2411":"DC1", // SYMBOL FOR DEVICE CONTROL ONE "\u2412":"DC2", // SYMBOL FOR DEVICE CONTROL TWO "\u2413":"DC3", // SYMBOL FOR DEVICE CONTROL THREE "\u2414":"DC4", // SYMBOL FOR DEVICE CONTROL FOUR "\u2415":"NAK", // SYMBOL FOR NEGATIVE ACKNOWLEDGE "\u2416":"SYN", // SYMBOL FOR SYNCHRONOUS IDLE "\u2417":"ETB", // SYMBOL FOR END OF TRANSMISSION BLOCK "\u2418":"CAN", // SYMBOL FOR CANCEL "\u2419":"EM", // SYMBOL FOR END OF MEDIUM "\u241A":"SUB", // SYMBOL FOR SUBSTITUTE "\u241B":"ESC", // SYMBOL FOR ESCAPE "\u241C":"FS", // SYMBOL FOR FILE SEPARATOR "\u241D":"GS", // SYMBOL FOR GROUP SEPARATOR "\u241E":"RS", // SYMBOL FOR RECORD SEPARATOR "\u241F":"US", // SYMBOL FOR UNIT SEPARATOR "\u2420":"SP", // SYMBOL FOR SPACE "\u2421":"DEL", // SYMBOL FOR DELETE "\u2423":"{\\textvisiblespace}", // OPEN BOX "\u2424":"NL", // SYMBOL FOR NEWLINE "\u2425":"///", // SYMBOL FOR DELETE FORM TWO "\u2426":"?", // SYMBOL FOR SUBSTITUTE FORM TWO "\u2460":"(1)", // CIRCLED DIGIT ONE "\u2461":"(2)", // CIRCLED DIGIT TWO "\u2462":"(3)", // CIRCLED DIGIT THREE "\u2463":"(4)", // CIRCLED DIGIT FOUR "\u2464":"(5)", // CIRCLED DIGIT FIVE "\u2465":"(6)", // CIRCLED DIGIT SIX "\u2466":"(7)", // CIRCLED DIGIT SEVEN "\u2467":"(8)", // CIRCLED DIGIT EIGHT "\u2468":"(9)", // CIRCLED DIGIT NINE "\u2469":"(10)", // CIRCLED NUMBER TEN "\u246A":"(11)", // CIRCLED NUMBER ELEVEN "\u246B":"(12)", // CIRCLED NUMBER TWELVE "\u246C":"(13)", // CIRCLED NUMBER THIRTEEN "\u246D":"(14)", // CIRCLED NUMBER FOURTEEN "\u246E":"(15)", // CIRCLED NUMBER FIFTEEN "\u246F":"(16)", // CIRCLED NUMBER SIXTEEN "\u2470":"(17)", // CIRCLED NUMBER SEVENTEEN "\u2471":"(18)", // CIRCLED NUMBER EIGHTEEN "\u2472":"(19)", // CIRCLED NUMBER NINETEEN "\u2473":"(20)", // CIRCLED NUMBER TWENTY "\u2474":"(1)", // PARENTHESIZED DIGIT ONE "\u2475":"(2)", // PARENTHESIZED DIGIT TWO "\u2476":"(3)", // PARENTHESIZED DIGIT THREE "\u2477":"(4)", // PARENTHESIZED DIGIT FOUR "\u2478":"(5)", // PARENTHESIZED DIGIT FIVE "\u2479":"(6)", // PARENTHESIZED DIGIT SIX "\u247A":"(7)", // PARENTHESIZED DIGIT SEVEN "\u247B":"(8)", // PARENTHESIZED DIGIT EIGHT "\u247C":"(9)", // PARENTHESIZED DIGIT NINE "\u247D":"(10)", // PARENTHESIZED NUMBER TEN "\u247E":"(11)", // PARENTHESIZED NUMBER ELEVEN "\u247F":"(12)", // PARENTHESIZED NUMBER TWELVE "\u2480":"(13)", // PARENTHESIZED NUMBER THIRTEEN "\u2481":"(14)", // PARENTHESIZED NUMBER FOURTEEN "\u2482":"(15)", // PARENTHESIZED NUMBER FIFTEEN "\u2483":"(16)", // PARENTHESIZED NUMBER SIXTEEN "\u2484":"(17)", // PARENTHESIZED NUMBER SEVENTEEN "\u2485":"(18)", // PARENTHESIZED NUMBER EIGHTEEN "\u2486":"(19)", // PARENTHESIZED NUMBER NINETEEN "\u2487":"(20)", // PARENTHESIZED NUMBER TWENTY "\u2488":"1.", // DIGIT ONE FULL STOP "\u2489":"2.", // DIGIT TWO FULL STOP "\u248A":"3.", // DIGIT THREE FULL STOP "\u248B":"4.", // DIGIT FOUR FULL STOP "\u248C":"5.", // DIGIT FIVE FULL STOP "\u248D":"6.", // DIGIT SIX FULL STOP "\u248E":"7.", // DIGIT SEVEN FULL STOP "\u248F":"8.", // DIGIT EIGHT FULL STOP "\u2490":"9.", // DIGIT NINE FULL STOP "\u2491":"10.", // NUMBER TEN FULL STOP "\u2492":"11.", // NUMBER ELEVEN FULL STOP "\u2493":"12.", // NUMBER TWELVE FULL STOP "\u2494":"13.", // NUMBER THIRTEEN FULL STOP "\u2495":"14.", // NUMBER FOURTEEN FULL STOP "\u2496":"15.", // NUMBER FIFTEEN FULL STOP "\u2497":"16.", // NUMBER SIXTEEN FULL STOP "\u2498":"17.", // NUMBER SEVENTEEN FULL STOP "\u2499":"18.", // NUMBER EIGHTEEN FULL STOP "\u249A":"19.", // NUMBER NINETEEN FULL STOP "\u249B":"20.", // NUMBER TWENTY FULL STOP "\u249C":"(a)", // PARENTHESIZED LATIN SMALL LETTER A "\u249D":"(b)", // PARENTHESIZED LATIN SMALL LETTER B "\u249E":"(c)", // PARENTHESIZED LATIN SMALL LETTER C "\u249F":"(d)", // PARENTHESIZED LATIN SMALL LETTER D "\u24A0":"(e)", // PARENTHESIZED LATIN SMALL LETTER E "\u24A1":"(f)", // PARENTHESIZED LATIN SMALL LETTER F "\u24A2":"(g)", // PARENTHESIZED LATIN SMALL LETTER G "\u24A3":"(h)", // PARENTHESIZED LATIN SMALL LETTER H "\u24A4":"(i)", // PARENTHESIZED LATIN SMALL LETTER I "\u24A5":"(j)", // PARENTHESIZED LATIN SMALL LETTER J "\u24A6":"(k)", // PARENTHESIZED LATIN SMALL LETTER K "\u24A7":"(l)", // PARENTHESIZED LATIN SMALL LETTER L "\u24A8":"(m)", // PARENTHESIZED LATIN SMALL LETTER M "\u24A9":"(n)", // PARENTHESIZED LATIN SMALL LETTER N "\u24AA":"(o)", // PARENTHESIZED LATIN SMALL LETTER O "\u24AB":"(p)", // PARENTHESIZED LATIN SMALL LETTER P "\u24AC":"(q)", // PARENTHESIZED LATIN SMALL LETTER Q "\u24AD":"(r)", // PARENTHESIZED LATIN SMALL LETTER R "\u24AE":"(s)", // PARENTHESIZED LATIN SMALL LETTER S "\u24AF":"(t)", // PARENTHESIZED LATIN SMALL LETTER T "\u24B0":"(u)", // PARENTHESIZED LATIN SMALL LETTER U "\u24B1":"(v)", // PARENTHESIZED LATIN SMALL LETTER V "\u24B2":"(w)", // PARENTHESIZED LATIN SMALL LETTER W "\u24B3":"(x)", // PARENTHESIZED LATIN SMALL LETTER X "\u24B4":"(y)", // PARENTHESIZED LATIN SMALL LETTER Y "\u24B5":"(z)", // PARENTHESIZED LATIN SMALL LETTER Z "\u24B6":"(A)", // CIRCLED LATIN CAPITAL LETTER A "\u24B7":"(B)", // CIRCLED LATIN CAPITAL LETTER B "\u24B8":"(C)", // CIRCLED LATIN CAPITAL LETTER C "\u24B9":"(D)", // CIRCLED LATIN CAPITAL LETTER D "\u24BA":"(E)", // CIRCLED LATIN CAPITAL LETTER E "\u24BB":"(F)", // CIRCLED LATIN CAPITAL LETTER F "\u24BC":"(G)", // CIRCLED LATIN CAPITAL LETTER G "\u24BD":"(H)", // CIRCLED LATIN CAPITAL LETTER H "\u24BE":"(I)", // CIRCLED LATIN CAPITAL LETTER I "\u24BF":"(J)", // CIRCLED LATIN CAPITAL LETTER J "\u24C0":"(K)", // CIRCLED LATIN CAPITAL LETTER K "\u24C1":"(L)", // CIRCLED LATIN CAPITAL LETTER L "\u24C2":"(M)", // CIRCLED LATIN CAPITAL LETTER M "\u24C3":"(N)", // CIRCLED LATIN CAPITAL LETTER N "\u24C4":"(O)", // CIRCLED LATIN CAPITAL LETTER O "\u24C5":"(P)", // CIRCLED LATIN CAPITAL LETTER P "\u24C6":"(Q)", // CIRCLED LATIN CAPITAL LETTER Q "\u24C7":"(R)", // CIRCLED LATIN CAPITAL LETTER R "\u24C8":"(S)", // CIRCLED LATIN CAPITAL LETTER S "\u24C9":"(T)", // CIRCLED LATIN CAPITAL LETTER T "\u24CA":"(U)", // CIRCLED LATIN CAPITAL LETTER U "\u24CB":"(V)", // CIRCLED LATIN CAPITAL LETTER V "\u24CC":"(W)", // CIRCLED LATIN CAPITAL LETTER W "\u24CD":"(X)", // CIRCLED LATIN CAPITAL LETTER X "\u24CE":"(Y)", // CIRCLED LATIN CAPITAL LETTER Y "\u24CF":"(Z)", // CIRCLED LATIN CAPITAL LETTER Z "\u24D0":"(a)", // CIRCLED LATIN SMALL LETTER A "\u24D1":"(b)", // CIRCLED LATIN SMALL LETTER B "\u24D2":"(c)", // CIRCLED LATIN SMALL LETTER C "\u24D3":"(d)", // CIRCLED LATIN SMALL LETTER D "\u24D4":"(e)", // CIRCLED LATIN SMALL LETTER E "\u24D5":"(f)", // CIRCLED LATIN SMALL LETTER F "\u24D6":"(g)", // CIRCLED LATIN SMALL LETTER G "\u24D7":"(h)", // CIRCLED LATIN SMALL LETTER H "\u24D8":"(i)", // CIRCLED LATIN SMALL LETTER I "\u24D9":"(j)", // CIRCLED LATIN SMALL LETTER J "\u24DA":"(k)", // CIRCLED LATIN SMALL LETTER K "\u24DB":"(l)", // CIRCLED LATIN SMALL LETTER L "\u24DC":"(m)", // CIRCLED LATIN SMALL LETTER M "\u24DD":"(n)", // CIRCLED LATIN SMALL LETTER N "\u24DE":"(o)", // CIRCLED LATIN SMALL LETTER O "\u24DF":"(p)", // CIRCLED LATIN SMALL LETTER P "\u24E0":"(q)", // CIRCLED LATIN SMALL LETTER Q "\u24E1":"(r)", // CIRCLED LATIN SMALL LETTER R "\u24E2":"(s)", // CIRCLED LATIN SMALL LETTER S "\u24E3":"(t)", // CIRCLED LATIN SMALL LETTER T "\u24E4":"(u)", // CIRCLED LATIN SMALL LETTER U "\u24E5":"(v)", // CIRCLED LATIN SMALL LETTER V "\u24E6":"(w)", // CIRCLED LATIN SMALL LETTER W "\u24E7":"(x)", // CIRCLED LATIN SMALL LETTER X "\u24E8":"(y)", // CIRCLED LATIN SMALL LETTER Y "\u24E9":"(z)", // CIRCLED LATIN SMALL LETTER Z "\u24EA":"(0)", // CIRCLED DIGIT ZERO "\u2500":"-", // BOX DRAWINGS LIGHT HORIZONTAL "\u2501":"=", // BOX DRAWINGS HEAVY HORIZONTAL "\u2502":"|", // BOX DRAWINGS LIGHT VERTICAL "\u2503":"|", // BOX DRAWINGS HEAVY VERTICAL "\u2504":"-", // BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL "\u2505":"=", // BOX DRAWINGS HEAVY TRIPLE DASH HORIZONTAL "\u2506":"|", // BOX DRAWINGS LIGHT TRIPLE DASH VERTICAL "\u2507":"|", // BOX DRAWINGS HEAVY TRIPLE DASH VERTICAL "\u2508":"-", // BOX DRAWINGS LIGHT QUADRUPLE DASH HORIZONTAL "\u2509":"=", // BOX DRAWINGS HEAVY QUADRUPLE DASH HORIZONTAL "\u250A":"|", // BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL "\u250B":"|", // BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL "\u250C":"+", // BOX DRAWINGS LIGHT DOWN AND RIGHT "\u250D":"+", // BOX DRAWINGS DOWN LIGHT AND RIGHT HEAVY "\u250E":"+", // BOX DRAWINGS DOWN HEAVY AND RIGHT LIGHT "\u250F":"+", // BOX DRAWINGS HEAVY DOWN AND RIGHT "\u2510":"+", // BOX DRAWINGS LIGHT DOWN AND LEFT "\u2511":"+", // BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY "\u2512":"+", // BOX DRAWINGS DOWN HEAVY AND LEFT LIGHT "\u2513":"+", // BOX DRAWINGS HEAVY DOWN AND LEFT "\u2514":"+", // BOX DRAWINGS LIGHT UP AND RIGHT "\u2515":"+", // BOX DRAWINGS UP LIGHT AND RIGHT HEAVY "\u2516":"+", // BOX DRAWINGS UP HEAVY AND RIGHT LIGHT "\u2517":"+", // BOX DRAWINGS HEAVY UP AND RIGHT "\u2518":"+", // BOX DRAWINGS LIGHT UP AND LEFT "\u2519":"+", // BOX DRAWINGS UP LIGHT AND LEFT HEAVY "\u251A":"+", // BOX DRAWINGS UP HEAVY AND LEFT LIGHT "\u251B":"+", // BOX DRAWINGS HEAVY UP AND LEFT "\u251C":"+", // BOX DRAWINGS LIGHT VERTICAL AND RIGHT "\u251D":"+", // BOX DRAWINGS VERTICAL LIGHT AND RIGHT HEAVY "\u251E":"+", // BOX DRAWINGS UP HEAVY AND RIGHT DOWN LIGHT "\u251F":"+", // BOX DRAWINGS DOWN HEAVY AND RIGHT UP LIGHT "\u2520":"+", // BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT "\u2521":"+", // BOX DRAWINGS DOWN LIGHT AND RIGHT UP HEAVY "\u2522":"+", // BOX DRAWINGS UP LIGHT AND RIGHT DOWN HEAVY "\u2523":"+", // BOX DRAWINGS HEAVY VERTICAL AND RIGHT "\u2524":"+", // BOX DRAWINGS LIGHT VERTICAL AND LEFT "\u2525":"+", // BOX DRAWINGS VERTICAL LIGHT AND LEFT HEAVY "\u2526":"+", // BOX DRAWINGS UP HEAVY AND LEFT DOWN LIGHT "\u2527":"+", // BOX DRAWINGS DOWN HEAVY AND LEFT UP LIGHT "\u2528":"+", // BOX DRAWINGS VERTICAL HEAVY AND LEFT LIGHT "\u2529":"+", // BOX DRAWINGS DOWN LIGHT AND LEFT UP HEAVY "\u252A":"+", // BOX DRAWINGS UP LIGHT AND LEFT DOWN HEAVY "\u252B":"+", // BOX DRAWINGS HEAVY VERTICAL AND LEFT "\u252C":"+", // BOX DRAWINGS LIGHT DOWN AND HORIZONTAL "\u252D":"+", // BOX DRAWINGS LEFT HEAVY AND RIGHT DOWN LIGHT "\u252E":"+", // BOX DRAWINGS RIGHT HEAVY AND LEFT DOWN LIGHT "\u252F":"+", // BOX DRAWINGS DOWN LIGHT AND HORIZONTAL HEAVY "\u2530":"+", // BOX DRAWINGS DOWN HEAVY AND HORIZONTAL LIGHT "\u2531":"+", // BOX DRAWINGS RIGHT LIGHT AND LEFT DOWN HEAVY "\u2532":"+", // BOX DRAWINGS LEFT LIGHT AND RIGHT DOWN HEAVY "\u2533":"+", // BOX DRAWINGS HEAVY DOWN AND HORIZONTAL "\u2534":"+", // BOX DRAWINGS LIGHT UP AND HORIZONTAL "\u2535":"+", // BOX DRAWINGS LEFT HEAVY AND RIGHT UP LIGHT "\u2536":"+", // BOX DRAWINGS RIGHT HEAVY AND LEFT UP LIGHT "\u2537":"+", // BOX DRAWINGS UP LIGHT AND HORIZONTAL HEAVY "\u2538":"+", // BOX DRAWINGS UP HEAVY AND HORIZONTAL LIGHT "\u2539":"+", // BOX DRAWINGS RIGHT LIGHT AND LEFT UP HEAVY "\u253A":"+", // BOX DRAWINGS LEFT LIGHT AND RIGHT UP HEAVY "\u253B":"+", // BOX DRAWINGS HEAVY UP AND HORIZONTAL "\u253C":"+", // BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL "\u253D":"+", // BOX DRAWINGS LEFT HEAVY AND RIGHT VERTICAL LIGHT "\u253E":"+", // BOX DRAWINGS RIGHT HEAVY AND LEFT VERTICAL LIGHT "\u253F":"+", // BOX DRAWINGS VERTICAL LIGHT AND HORIZONTAL HEAVY "\u2540":"+", // BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT "\u2541":"+", // BOX DRAWINGS DOWN HEAVY AND UP HORIZONTAL LIGHT "\u2542":"+", // BOX DRAWINGS VERTICAL HEAVY AND HORIZONTAL LIGHT "\u2543":"+", // BOX DRAWINGS LEFT UP HEAVY AND RIGHT DOWN LIGHT "\u2544":"+", // BOX DRAWINGS RIGHT UP HEAVY AND LEFT DOWN LIGHT "\u2545":"+", // BOX DRAWINGS LEFT DOWN HEAVY AND RIGHT UP LIGHT "\u2546":"+", // BOX DRAWINGS RIGHT DOWN HEAVY AND LEFT UP LIGHT "\u2547":"+", // BOX DRAWINGS DOWN LIGHT AND UP HORIZONTAL HEAVY "\u2548":"+", // BOX DRAWINGS UP LIGHT AND DOWN HORIZONTAL HEAVY "\u2549":"+", // BOX DRAWINGS RIGHT LIGHT AND LEFT VERTICAL HEAVY "\u254A":"+", // BOX DRAWINGS LEFT LIGHT AND RIGHT VERTICAL HEAVY "\u254B":"+", // BOX DRAWINGS HEAVY VERTICAL AND HORIZONTAL "\u254C":"-", // BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL "\u254D":"=", // BOX DRAWINGS HEAVY DOUBLE DASH HORIZONTAL "\u254E":"|", // BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL "\u254F":"|", // BOX DRAWINGS HEAVY DOUBLE DASH VERTICAL "\u2550":"=", // BOX DRAWINGS DOUBLE HORIZONTAL "\u2551":"|", // BOX DRAWINGS DOUBLE VERTICAL "\u2552":"+", // BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE "\u2553":"+", // BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE "\u2554":"+", // BOX DRAWINGS DOUBLE DOWN AND RIGHT "\u2555":"+", // BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE "\u2556":"+", // BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE "\u2557":"+", // BOX DRAWINGS DOUBLE DOWN AND LEFT "\u2558":"+", // BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE "\u2559":"+", // BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE "\u255A":"+", // BOX DRAWINGS DOUBLE UP AND RIGHT "\u255B":"+", // BOX DRAWINGS UP SINGLE AND LEFT DOUBLE "\u255C":"+", // BOX DRAWINGS UP DOUBLE AND LEFT SINGLE "\u255D":"+", // BOX DRAWINGS DOUBLE UP AND LEFT "\u255E":"+", // BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE "\u255F":"+", // BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE "\u2560":"+", // BOX DRAWINGS DOUBLE VERTICAL AND RIGHT "\u2561":"+", // BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE "\u2562":"+", // BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE "\u2563":"+", // BOX DRAWINGS DOUBLE VERTICAL AND LEFT "\u2564":"+", // BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE "\u2565":"+", // BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE "\u2566":"+", // BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL "\u2567":"+", // BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE "\u2568":"+", // BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE "\u2569":"+", // BOX DRAWINGS DOUBLE UP AND HORIZONTAL "\u256A":"+", // BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE "\u256B":"+", // BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE "\u256C":"+", // BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL "\u256D":"+", // BOX DRAWINGS LIGHT ARC DOWN AND RIGHT "\u256E":"+", // BOX DRAWINGS LIGHT ARC DOWN AND LEFT "\u256F":"+", // BOX DRAWINGS LIGHT ARC UP AND LEFT "\u2570":"+", // BOX DRAWINGS LIGHT ARC UP AND RIGHT "\u2571":"/", // BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER LEFT "\u2572":"\\", // BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER RIGHT "\u2573":"X", // BOX DRAWINGS LIGHT DIAGONAL CROSS "\u257C":"-", // BOX DRAWINGS LIGHT LEFT AND HEAVY RIGHT "\u257D":"|", // BOX DRAWINGS LIGHT UP AND HEAVY DOWN "\u257E":"-", // BOX DRAWINGS HEAVY LEFT AND LIGHT RIGHT "\u257F":"|", // BOX DRAWINGS HEAVY UP AND LIGHT DOWN "\u25CB":"o", // WHITE CIRCLE "\u25E6":"{\\textopenbullet}", // WHITE BULLET "\u2605":"*", // BLACK STAR "\u2606":"*", // WHITE STAR "\u2612":"X", // BALLOT BOX WITH X "\u2613":"X", // SALTIRE "\u2639":":-(", // WHITE FROWNING FACE "\u263A":":-)", // WHITE SMILING FACE "\u263B":"(-:", // BLACK SMILING FACE "\u266D":"b", // MUSIC FLAT SIGN "\u266F":"$\\#$", // MUSIC SHARP SIGN "\u2701":"$\\%<$", // UPPER BLADE SCISSORS "\u2702":"$\\%<$", // BLACK SCISSORS "\u2703":"$\\%<$", // LOWER BLADE SCISSORS "\u2704":"$\\%<$", // WHITE SCISSORS "\u270C":"V", // VICTORY HAND "\u2713":"v", // CHECK MARK "\u2714":"V", // HEAVY CHECK MARK "\u2715":"x", // MULTIPLICATION X "\u2716":"x", // HEAVY MULTIPLICATION X "\u2717":"X", // BALLOT X "\u2718":"X", // HEAVY BALLOT X "\u2719":"+", // OUTLINED GREEK CROSS "\u271A":"+", // HEAVY GREEK CROSS "\u271B":"+", // OPEN CENTRE CROSS "\u271C":"+", // HEAVY OPEN CENTRE CROSS "\u271D":"+", // LATIN CROSS "\u271E":"+", // SHADOWED WHITE LATIN CROSS "\u271F":"+", // OUTLINED LATIN CROSS "\u2720":"+", // MALTESE CROSS "\u2721":"*", // STAR OF DAVID "\u2722":"+", // FOUR TEARDROP-SPOKED ASTERISK "\u2723":"+", // FOUR BALLOON-SPOKED ASTERISK "\u2724":"+", // HEAVY FOUR BALLOON-SPOKED ASTERISK "\u2725":"+", // FOUR CLUB-SPOKED ASTERISK "\u2726":"+", // BLACK FOUR POINTED STAR "\u2727":"+", // WHITE FOUR POINTED STAR "\u2729":"*", // STRESS OUTLINED WHITE STAR "\u272A":"*", // CIRCLED WHITE STAR "\u272B":"*", // OPEN CENTRE BLACK STAR "\u272C":"*", // BLACK CENTRE WHITE STAR "\u272D":"*", // OUTLINED BLACK STAR "\u272E":"*", // HEAVY OUTLINED BLACK STAR "\u272F":"*", // PINWHEEL STAR "\u2730":"*", // SHADOWED WHITE STAR "\u2731":"*", // HEAVY ASTERISK "\u2732":"*", // OPEN CENTRE ASTERISK "\u2733":"*", // EIGHT SPOKED ASTERISK "\u2734":"*", // EIGHT POINTED BLACK STAR "\u2735":"*", // EIGHT POINTED PINWHEEL STAR "\u2736":"*", // SIX POINTED BLACK STAR "\u2737":"*", // EIGHT POINTED RECTILINEAR BLACK STAR "\u2738":"*", // HEAVY EIGHT POINTED RECTILINEAR BLACK STAR "\u2739":"*", // TWELVE POINTED BLACK STAR "\u273A":"*", // SIXTEEN POINTED ASTERISK "\u273B":"*", // TEARDROP-SPOKED ASTERISK "\u273C":"*", // OPEN CENTRE TEARDROP-SPOKED ASTERISK "\u273D":"*", // HEAVY TEARDROP-SPOKED ASTERISK "\u273E":"*", // SIX PETALLED BLACK AND WHITE FLORETTE "\u273F":"*", // BLACK FLORETTE "\u2740":"*", // WHITE FLORETTE "\u2741":"*", // EIGHT PETALLED OUTLINED BLACK FLORETTE "\u2742":"*", // CIRCLED OPEN CENTRE EIGHT POINTED STAR "\u2743":"*", // HEAVY TEARDROP-SPOKED PINWHEEL ASTERISK "\u2744":"*", // SNOWFLAKE "\u2745":"*", // TIGHT TRIFOLIATE SNOWFLAKE "\u2746":"*", // HEAVY CHEVRON SNOWFLAKE "\u2747":"*", // SPARKLE "\u2748":"*", // HEAVY SPARKLE "\u2749":"*", // BALLOON-SPOKED ASTERISK "\u274A":"*", // EIGHT TEARDROP-SPOKED PROPELLER ASTERISK "\u274B":"*", // HEAVY EIGHT TEARDROP-SPOKED PROPELLER ASTERISK "\uFB00":"ff", // LATIN SMALL LIGATURE FF "\uFB01":"fi", // LATIN SMALL LIGATURE FI "\uFB02":"fl", // LATIN SMALL LIGATURE FL "\uFB03":"ffi", // LATIN SMALL LIGATURE FFI "\uFB04":"ffl", // LATIN SMALL LIGATURE FFL "\uFB05":"st", // LATIN SMALL LIGATURE LONG S T "\uFB06":"st", // LATIN SMALL LIGATURE ST /* Derived accented characters */ /* These two require the "semtrans" package to work; uncomment to enable */ /* "\u02BF":"\{\\Ayn}", // MGR Ayn "\u02BE":"\{\\Alif}", // MGR Alif/Hamza */ "\u00C0":"{\\`A}", // LATIN CAPITAL LETTER A WITH GRAVE "\u00C1":"{\\'A}", // LATIN CAPITAL LETTER A WITH ACUTE "\u00C2":"{\\^A}", // LATIN CAPITAL LETTER A WITH CIRCUMFLEX "\u00C3":"{\\~A}", // LATIN CAPITAL LETTER A WITH TILDE "\u00C4":"{\\\"A}", // LATIN CAPITAL LETTER A WITH DIAERESIS "\u00C5":"{\\r A}", // LATIN CAPITAL LETTER A WITH RING ABOVE "\u00C7":"{\\c C}", // LATIN CAPITAL LETTER C WITH CEDILLA "\u00C8":"{\\`E}", // LATIN CAPITAL LETTER E WITH GRAVE "\u00C9":"{\\'E}", // LATIN CAPITAL LETTER E WITH ACUTE "\u00CA":"{\\^E}", // LATIN CAPITAL LETTER E WITH CIRCUMFLEX "\u00CB":"{\\\"E}", // LATIN CAPITAL LETTER E WITH DIAERESIS "\u00CC":"{\\`I}", // LATIN CAPITAL LETTER I WITH GRAVE "\u00CD":"{\\'I}", // LATIN CAPITAL LETTER I WITH ACUTE "\u00CE":"{\\^I}", // LATIN CAPITAL LETTER I WITH CIRCUMFLEX "\u00CF":"{\\\"I}", // LATIN CAPITAL LETTER I WITH DIAERESIS "\u00D1":"{\\~N}", // LATIN CAPITAL LETTER N WITH TILDE "\u00D2":"{\\`O}", // LATIN CAPITAL LETTER O WITH GRAVE "\u00D3":"{\\'O}", // LATIN CAPITAL LETTER O WITH ACUTE "\u00D4":"{\\^O}", // LATIN CAPITAL LETTER O WITH CIRCUMFLEX "\u00D5":"{\\~O}", // LATIN CAPITAL LETTER O WITH TILDE "\u00D6":"{\\\"O}", // LATIN CAPITAL LETTER O WITH DIAERESIS "\u00D9":"{\\`U}", // LATIN CAPITAL LETTER U WITH GRAVE "\u00DA":"{\\'U}", // LATIN CAPITAL LETTER U WITH ACUTE "\u00DB":"{\\^U}", // LATIN CAPITAL LETTER U WITH CIRCUMFLEX "\u00DC":"{\\\"U}", // LATIN CAPITAL LETTER U WITH DIAERESIS "\u00DD":"{\\'Y}", // LATIN CAPITAL LETTER Y WITH ACUTE "\u00E0":"{\\`a}", // LATIN SMALL LETTER A WITH GRAVE "\u00E1":"{\\'a}", // LATIN SMALL LETTER A WITH ACUTE "\u00E2":"{\\^a}", // LATIN SMALL LETTER A WITH CIRCUMFLEX "\u00E3":"{\\~a}", // LATIN SMALL LETTER A WITH TILDE "\u00E4":"{\\\"a}", // LATIN SMALL LETTER A WITH DIAERESIS "\u00E5":"{\\r a}", // LATIN SMALL LETTER A WITH RING ABOVE "\u00E7":"{\\c c}", // LATIN SMALL LETTER C WITH CEDILLA "\u00E8":"{\\`e}", // LATIN SMALL LETTER E WITH GRAVE "\u00E9":"{\\'e}", // LATIN SMALL LETTER E WITH ACUTE "\u00EA":"{\\^e}", // LATIN SMALL LETTER E WITH CIRCUMFLEX "\u00EB":"{\\\"e}", // LATIN SMALL LETTER E WITH DIAERESIS "\u00EC":"{\\`i}", // LATIN SMALL LETTER I WITH GRAVE "\u00ED":"{\\'i}", // LATIN SMALL LETTER I WITH ACUTE "\u00EE":"{\\^i}", // LATIN SMALL LETTER I WITH CIRCUMFLEX "\u00EF":"{\\\"i}", // LATIN SMALL LETTER I WITH DIAERESIS "\u00F1":"{\\~n}", // LATIN SMALL LETTER N WITH TILDE "\u00F2":"{\\`o}", // LATIN SMALL LETTER O WITH GRAVE "\u00F3":"{\\'o}", // LATIN SMALL LETTER O WITH ACUTE "\u00F4":"{\\^o}", // LATIN SMALL LETTER O WITH CIRCUMFLEX "\u00F5":"{\\~o}", // LATIN SMALL LETTER O WITH TILDE "\u00F6":"{\\\"o}", // LATIN SMALL LETTER O WITH DIAERESIS "\u00F9":"{\\`u}", // LATIN SMALL LETTER U WITH GRAVE "\u00FA":"{\\'u}", // LATIN SMALL LETTER U WITH ACUTE "\u00FB":"{\\^u}", // LATIN SMALL LETTER U WITH CIRCUMFLEX "\u00FC":"{\\\"u}", // LATIN SMALL LETTER U WITH DIAERESIS "\u00FD":"{\\'y}", // LATIN SMALL LETTER Y WITH ACUTE "\u00FF":"{\\\"y}", // LATIN SMALL LETTER Y WITH DIAERESIS "\u0100":"{\\=A}", // LATIN CAPITAL LETTER A WITH MACRON "\u0101":"{\\=a}", // LATIN SMALL LETTER A WITH MACRON "\u0102":"{\\u A}", // LATIN CAPITAL LETTER A WITH BREVE "\u0103":"{\\u a}", // LATIN SMALL LETTER A WITH BREVE "\u0104":"{\\k A}", // LATIN CAPITAL LETTER A WITH OGONEK "\u0105":"{\\k a}", // LATIN SMALL LETTER A WITH OGONEK "\u0106":"{\\'C}", // LATIN CAPITAL LETTER C WITH ACUTE "\u0107":"{\\'c}", // LATIN SMALL LETTER C WITH ACUTE "\u0108":"{\\^C}", // LATIN CAPITAL LETTER C WITH CIRCUMFLEX "\u0109":"{\\^c}", // LATIN SMALL LETTER C WITH CIRCUMFLEX "\u010A":"{\\.C}", // LATIN CAPITAL LETTER C WITH DOT ABOVE "\u010B":"{\\.c}", // LATIN SMALL LETTER C WITH DOT ABOVE "\u010C":"{\\v C}", // LATIN CAPITAL LETTER C WITH CARON "\u010D":"{\\v c}", // LATIN SMALL LETTER C WITH CARON "\u010E":"{\\v D}", // LATIN CAPITAL LETTER D WITH CARON "\u010F":"{\\v d}", // LATIN SMALL LETTER D WITH CARON "\u0112":"{\\=E}", // LATIN CAPITAL LETTER E WITH MACRON "\u0113":"{\\=e}", // LATIN SMALL LETTER E WITH MACRON "\u0114":"{\\u E}", // LATIN CAPITAL LETTER E WITH BREVE "\u0115":"{\\u e}", // LATIN SMALL LETTER E WITH BREVE "\u0116":"{\\.E}", // LATIN CAPITAL LETTER E WITH DOT ABOVE "\u0117":"{\\.e}", // LATIN SMALL LETTER E WITH DOT ABOVE "\u0118":"{\\k E}", // LATIN CAPITAL LETTER E WITH OGONEK "\u0119":"{\\k e}", // LATIN SMALL LETTER E WITH OGONEK "\u011A":"{\\v E}", // LATIN CAPITAL LETTER E WITH CARON "\u011B":"{\\v e}", // LATIN SMALL LETTER E WITH CARON "\u011C":"{\\^G}", // LATIN CAPITAL LETTER G WITH CIRCUMFLEX "\u011D":"{\\^g}", // LATIN SMALL LETTER G WITH CIRCUMFLEX "\u011E":"{\\u G}", // LATIN CAPITAL LETTER G WITH BREVE "\u011F":"{\\u g}", // LATIN SMALL LETTER G WITH BREVE "\u0120":"{\\.G}", // LATIN CAPITAL LETTER G WITH DOT ABOVE "\u0121":"{\\.g}", // LATIN SMALL LETTER G WITH DOT ABOVE "\u0122":"{\\c G}", // LATIN CAPITAL LETTER G WITH CEDILLA "\u0123":"{\\c g}", // LATIN SMALL LETTER G WITH CEDILLA "\u0124":"{\\^H}", // LATIN CAPITAL LETTER H WITH CIRCUMFLEX "\u0125":"{\\^h}", // LATIN SMALL LETTER H WITH CIRCUMFLEX "\u0128":"{\\~I}", // LATIN CAPITAL LETTER I WITH TILDE "\u0129":"{\\~i}", // LATIN SMALL LETTER I WITH TILDE "\u012A":"{\\=I}", // LATIN CAPITAL LETTER I WITH MACRON "\u012B":"{\\=\\i}", // LATIN SMALL LETTER I WITH MACRON "\u012C":"{\\u I}", // LATIN CAPITAL LETTER I WITH BREVE "\u012D":"{\\u i}", // LATIN SMALL LETTER I WITH BREVE "\u012E":"{\\k I}", // LATIN CAPITAL LETTER I WITH OGONEK "\u012F":"{\\k i}", // LATIN SMALL LETTER I WITH OGONEK "\u0130":"{\\.I}", // LATIN CAPITAL LETTER I WITH DOT ABOVE "\u0134":"{\\^J}", // LATIN CAPITAL LETTER J WITH CIRCUMFLEX "\u0135":"{\\^j}", // LATIN SMALL LETTER J WITH CIRCUMFLEX "\u0136":"{\\c K}", // LATIN CAPITAL LETTER K WITH CEDILLA "\u0137":"{\\c k}", // LATIN SMALL LETTER K WITH CEDILLA "\u0139":"{\\'L}", // LATIN CAPITAL LETTER L WITH ACUTE "\u013A":"{\\'l}", // LATIN SMALL LETTER L WITH ACUTE "\u013B":"{\\c L}", // LATIN CAPITAL LETTER L WITH CEDILLA "\u013C":"{\\c l}", // LATIN SMALL LETTER L WITH CEDILLA "\u013D":"{\\v L}", // LATIN CAPITAL LETTER L WITH CARON "\u013E":"{\\v l}", // LATIN SMALL LETTER L WITH CARON "\u0141":"{\\L }", //LATIN CAPITAL LETTER L WITH STROKE "\u0142":"{\\l }", //LATIN SMALL LETTER L WITH STROKE "\u0143":"{\\'N}", // LATIN CAPITAL LETTER N WITH ACUTE "\u0144":"{\\'n}", // LATIN SMALL LETTER N WITH ACUTE "\u0145":"{\\c N}", // LATIN CAPITAL LETTER N WITH CEDILLA "\u0146":"{\\c n}", // LATIN SMALL LETTER N WITH CEDILLA "\u0147":"{\\v N}", // LATIN CAPITAL LETTER N WITH CARON "\u0148":"{\\v n}", // LATIN SMALL LETTER N WITH CARON "\u014C":"{\\=O}", // LATIN CAPITAL LETTER O WITH MACRON "\u014D":"{\\=o}", // LATIN SMALL LETTER O WITH MACRON "\u014E":"{\\u O}", // LATIN CAPITAL LETTER O WITH BREVE "\u014F":"{\\u o}", // LATIN SMALL LETTER O WITH BREVE "\u0150":"{\\H O}", // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE "\u0151":"{\\H o}", // LATIN SMALL LETTER O WITH DOUBLE ACUTE "\u0154":"{\\'R}", // LATIN CAPITAL LETTER R WITH ACUTE "\u0155":"{\\'r}", // LATIN SMALL LETTER R WITH ACUTE "\u0156":"{\\c R}", // LATIN CAPITAL LETTER R WITH CEDILLA "\u0157":"{\\c r}", // LATIN SMALL LETTER R WITH CEDILLA "\u0158":"{\\v R}", // LATIN CAPITAL LETTER R WITH CARON "\u0159":"{\\v r}", // LATIN SMALL LETTER R WITH CARON "\u015A":"{\\'S}", // LATIN CAPITAL LETTER S WITH ACUTE "\u015B":"{\\'s}", // LATIN SMALL LETTER S WITH ACUTE "\u015C":"{\\^S}", // LATIN CAPITAL LETTER S WITH CIRCUMFLEX "\u015D":"{\\^s}", // LATIN SMALL LETTER S WITH CIRCUMFLEX "\u015E":"{\\c S}", // LATIN CAPITAL LETTER S WITH CEDILLA "\u015F":"{\\c s}", // LATIN SMALL LETTER S WITH CEDILLA "\u0160":"{\\v S}", // LATIN CAPITAL LETTER S WITH CARON "\u0161":"{\\v s}", // LATIN SMALL LETTER S WITH CARON "\u0162":"{\\c T}", // LATIN CAPITAL LETTER T WITH CEDILLA "\u0163":"{\\c t}", // LATIN SMALL LETTER T WITH CEDILLA "\u0164":"{\\v T}", // LATIN CAPITAL LETTER T WITH CARON "\u0165":"{\\v t}", // LATIN SMALL LETTER T WITH CARON "\u0168":"{\\~U}", // LATIN CAPITAL LETTER U WITH TILDE "\u0169":"{\\~u}", // LATIN SMALL LETTER U WITH TILDE "\u016A":"{\\=U}", // LATIN CAPITAL LETTER U WITH MACRON "\u016B":"{\\=u}", // LATIN SMALL LETTER U WITH MACRON "\u016C":"{\\u U}", // LATIN CAPITAL LETTER U WITH BREVE "\u016D":"{\\u u}", // LATIN SMALL LETTER U WITH BREVE "\u016E":"{\\r U}", // LATIN CAPITAL U WITH A RING ABOVE "\u016F":"{\\r u}", // LATIN SMALL U WITH A RING ABOVE "\u0170":"{\\H U}", // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE "\u0171":"{\\H u}", // LATIN SMALL LETTER U WITH DOUBLE ACUTE "\u0172":"{\\k U}", // LATIN CAPITAL LETTER U WITH OGONEK "\u0173":"{\\k u}", // LATIN SMALL LETTER U WITH OGONEK "\u0174":"{\\^W}", // LATIN CAPITAL LETTER W WITH CIRCUMFLEX "\u0175":"{\\^w}", // LATIN SMALL LETTER W WITH CIRCUMFLEX "\u0176":"{\\^Y}", // LATIN CAPITAL LETTER Y WITH CIRCUMFLEX "\u0177":"{\\^y}", // LATIN SMALL LETTER Y WITH CIRCUMFLEX "\u0178":"{\\\"Y}", // LATIN CAPITAL LETTER Y WITH DIAERESIS "\u0179":"{\\'Z}", // LATIN CAPITAL LETTER Z WITH ACUTE "\u017A":"{\\'z}", // LATIN SMALL LETTER Z WITH ACUTE "\u017B":"{\\.Z}", // LATIN CAPITAL LETTER Z WITH DOT ABOVE "\u017C":"{\\.z}", // LATIN SMALL LETTER Z WITH DOT ABOVE "\u017D":"{\\v Z}", // LATIN CAPITAL LETTER Z WITH CARON "\u017E":"{\\v z}", // LATIN SMALL LETTER Z WITH CARON "\u01CD":"{\\v A}", // LATIN CAPITAL LETTER A WITH CARON "\u01CE":"{\\v a}", // LATIN SMALL LETTER A WITH CARON "\u01CF":"{\\v I}", // LATIN CAPITAL LETTER I WITH CARON "\u01D0":"{\\v i}", // LATIN SMALL LETTER I WITH CARON "\u01D1":"{\\v O}", // LATIN CAPITAL LETTER O WITH CARON "\u01D2":"{\\v o}", // LATIN SMALL LETTER O WITH CARON "\u01D3":"{\\v U}", // LATIN CAPITAL LETTER U WITH CARON "\u01D4":"{\\v u}", // LATIN SMALL LETTER U WITH CARON "\u01E6":"{\\v G}", // LATIN CAPITAL LETTER G WITH CARON "\u01E7":"{\\v g}", // LATIN SMALL LETTER G WITH CARON "\u01E8":"{\\v K}", // LATIN CAPITAL LETTER K WITH CARON "\u01E9":"{\\v k}", // LATIN SMALL LETTER K WITH CARON "\u01EA":"{\\k O}", // LATIN CAPITAL LETTER O WITH OGONEK "\u01EB":"{\\k o}", // LATIN SMALL LETTER O WITH OGONEK "\u01F0":"{\\v j}", // LATIN SMALL LETTER J WITH CARON "\u01F4":"{\\'G}", // LATIN CAPITAL LETTER G WITH ACUTE "\u01F5":"{\\'g}", // LATIN SMALL LETTER G WITH ACUTE "\u1E02":"{\\.B}", // LATIN CAPITAL LETTER B WITH DOT ABOVE "\u1E03":"{\\.b}", // LATIN SMALL LETTER B WITH DOT ABOVE "\u1E04":"{\\d B}", // LATIN CAPITAL LETTER B WITH DOT BELOW "\u1E05":"{\\d b}", // LATIN SMALL LETTER B WITH DOT BELOW "\u1E06":"{\\b B}", // LATIN CAPITAL LETTER B WITH LINE BELOW "\u1E07":"{\\b b}", // LATIN SMALL LETTER B WITH LINE BELOW "\u1E0A":"{\\.D}", // LATIN CAPITAL LETTER D WITH DOT ABOVE "\u1E0B":"{\\.d}", // LATIN SMALL LETTER D WITH DOT ABOVE "\u1E0C":"{\\d D}", // LATIN CAPITAL LETTER D WITH DOT BELOW "\u1E0D":"{\\d d}", // LATIN SMALL LETTER D WITH DOT BELOW "\u1E0E":"{\\b D}", // LATIN CAPITAL LETTER D WITH LINE BELOW "\u1E0F":"{\\b d}", // LATIN SMALL LETTER D WITH LINE BELOW "\u1E10":"{\\c D}", // LATIN CAPITAL LETTER D WITH CEDILLA "\u1E11":"{\\c d}", // LATIN SMALL LETTER D WITH CEDILLA "\u1E1E":"{\\.F}", // LATIN CAPITAL LETTER F WITH DOT ABOVE "\u1E1F":"{\\.f}", // LATIN SMALL LETTER F WITH DOT ABOVE "\u1E20":"{\\=G}", // LATIN CAPITAL LETTER G WITH MACRON "\u1E21":"{\\=g}", // LATIN SMALL LETTER G WITH MACRON "\u1E22":"{\\.H}", // LATIN CAPITAL LETTER H WITH DOT ABOVE "\u1E23":"{\\.h}", // LATIN SMALL LETTER H WITH DOT ABOVE "\u1E24":"{\\d H}", // LATIN CAPITAL LETTER H WITH DOT BELOW "\u1E25":"{\\d h}", // LATIN SMALL LETTER H WITH DOT BELOW "\u1E26":"{\\\"H}", // LATIN CAPITAL LETTER H WITH DIAERESIS "\u1E27":"{\\\"h}", // LATIN SMALL LETTER H WITH DIAERESIS "\u1E28":"{\\c H}", // LATIN CAPITAL LETTER H WITH CEDILLA "\u1E29":"{\\c h}", // LATIN SMALL LETTER H WITH CEDILLA "\u1E30":"{\\'K}", // LATIN CAPITAL LETTER K WITH ACUTE "\u1E31":"{\\'k}", // LATIN SMALL LETTER K WITH ACUTE "\u1E32":"{\\d K}", // LATIN CAPITAL LETTER K WITH DOT BELOW "\u1E33":"{\\d k}", // LATIN SMALL LETTER K WITH DOT BELOW "\u1E34":"{\\b K}", // LATIN CAPITAL LETTER K WITH LINE BELOW "\u1E35":"{\\b k}", // LATIN SMALL LETTER K WITH LINE BELOW "\u1E36":"{\\d L}", // LATIN CAPITAL LETTER L WITH DOT BELOW "\u1E37":"{\\d l}", // LATIN SMALL LETTER L WITH DOT BELOW "\u1E3A":"{\\b L}", // LATIN CAPITAL LETTER L WITH LINE BELOW "\u1E3B":"{\\b l}", // LATIN SMALL LETTER L WITH LINE BELOW "\u1E3E":"{\\'M}", // LATIN CAPITAL LETTER M WITH ACUTE "\u1E3F":"{\\'m}", // LATIN SMALL LETTER M WITH ACUTE "\u1E40":"{\\.M}", // LATIN CAPITAL LETTER M WITH DOT ABOVE "\u1E41":"{\\.m}", // LATIN SMALL LETTER M WITH DOT ABOVE "\u1E42":"{\\d M}", // LATIN CAPITAL LETTER M WITH DOT BELOW "\u1E43":"{\\d m}", // LATIN SMALL LETTER M WITH DOT BELOW "\u1E44":"{\\.N}", // LATIN CAPITAL LETTER N WITH DOT ABOVE "\u1E45":"{\\.n}", // LATIN SMALL LETTER N WITH DOT ABOVE "\u1E46":"{\\d N}", // LATIN CAPITAL LETTER N WITH DOT BELOW "\u1E47":"{\\d n}", // LATIN SMALL LETTER N WITH DOT BELOW "\u1E48":"{\\b N}", // LATIN CAPITAL LETTER N WITH LINE BELOW "\u1E49":"{\\b n}", // LATIN SMALL LETTER N WITH LINE BELOW "\u1E54":"{\\'P}", // LATIN CAPITAL LETTER P WITH ACUTE "\u1E55":"{\\'p}", // LATIN SMALL LETTER P WITH ACUTE "\u1E56":"{\\.P}", // LATIN CAPITAL LETTER P WITH DOT ABOVE "\u1E57":"{\\.p}", // LATIN SMALL LETTER P WITH DOT ABOVE "\u1E58":"{\\.R}", // LATIN CAPITAL LETTER R WITH DOT ABOVE "\u1E59":"{\\.r}", // LATIN SMALL LETTER R WITH DOT ABOVE "\u1E5A":"{\\d R}", // LATIN CAPITAL LETTER R WITH DOT BELOW "\u1E5B":"{\\d r}", // LATIN SMALL LETTER R WITH DOT BELOW "\u1E5E":"{\\b R}", // LATIN CAPITAL LETTER R WITH LINE BELOW "\u1E5F":"{\\b r}", // LATIN SMALL LETTER R WITH LINE BELOW "\u1E60":"{\\.S}", // LATIN CAPITAL LETTER S WITH DOT ABOVE "\u1E61":"{\\.s}", // LATIN SMALL LETTER S WITH DOT ABOVE "\u1E62":"{\\d S}", // LATIN CAPITAL LETTER S WITH DOT BELOW "\u1E63":"{\\d s}", // LATIN SMALL LETTER S WITH DOT BELOW "\u1E6A":"{\\.T}", // LATIN CAPITAL LETTER T WITH DOT ABOVE "\u1E6B":"{\\.t}", // LATIN SMALL LETTER T WITH DOT ABOVE "\u1E6C":"{\\d T}", // LATIN CAPITAL LETTER T WITH DOT BELOW "\u1E6D":"{\\d t}", // LATIN SMALL LETTER T WITH DOT BELOW "\u1E6E":"{\\b T}", // LATIN CAPITAL LETTER T WITH LINE BELOW "\u1E6F":"{\\b t}", // LATIN SMALL LETTER T WITH LINE BELOW "\u1E7C":"{\\~V}", // LATIN CAPITAL LETTER V WITH TILDE "\u1E7D":"{\\~v}", // LATIN SMALL LETTER V WITH TILDE "\u1E7E":"{\\d V}", // LATIN CAPITAL LETTER V WITH DOT BELOW "\u1E7F":"{\\d v}", // LATIN SMALL LETTER V WITH DOT BELOW "\u1E80":"{\\`W}", // LATIN CAPITAL LETTER W WITH GRAVE "\u1E81":"{\\`w}", // LATIN SMALL LETTER W WITH GRAVE "\u1E82":"{\\'W}", // LATIN CAPITAL LETTER W WITH ACUTE "\u1E83":"{\\'w}", // LATIN SMALL LETTER W WITH ACUTE "\u1E84":"{\\\"W}", // LATIN CAPITAL LETTER W WITH DIAERESIS "\u1E85":"{\\\"w}", // LATIN SMALL LETTER W WITH DIAERESIS "\u1E86":"{\\.W}", // LATIN CAPITAL LETTER W WITH DOT ABOVE "\u1E87":"{\\.w}", // LATIN SMALL LETTER W WITH DOT ABOVE "\u1E88":"{\\d W}", // LATIN CAPITAL LETTER W WITH DOT BELOW "\u1E89":"{\\d w}", // LATIN SMALL LETTER W WITH DOT BELOW "\u1E8A":"{\\.X}", // LATIN CAPITAL LETTER X WITH DOT ABOVE "\u1E8B":"{\\.x}", // LATIN SMALL LETTER X WITH DOT ABOVE "\u1E8C":"{\\\"X}", // LATIN CAPITAL LETTER X WITH DIAERESIS "\u1E8D":"{\\\"x}", // LATIN SMALL LETTER X WITH DIAERESIS "\u1E8E":"{\\.Y}", // LATIN CAPITAL LETTER Y WITH DOT ABOVE "\u1E8F":"{\\.y}", // LATIN SMALL LETTER Y WITH DOT ABOVE "\u1E90":"{\\^Z}", // LATIN CAPITAL LETTER Z WITH CIRCUMFLEX "\u1E91":"{\\^z}", // LATIN SMALL LETTER Z WITH CIRCUMFLEX "\u1E92":"{\\d Z}", // LATIN CAPITAL LETTER Z WITH DOT BELOW "\u1E93":"{\\d z}", // LATIN SMALL LETTER Z WITH DOT BELOW "\u1E94":"{\\b Z}", // LATIN CAPITAL LETTER Z WITH LINE BELOW "\u1E95":"{\\b z}", // LATIN SMALL LETTER Z WITH LINE BELOW "\u1E96":"{\\b h}", // LATIN SMALL LETTER H WITH LINE BELOW "\u1E97":"{\\\"t}", // LATIN SMALL LETTER T WITH DIAERESIS "\u1E98":"{\\r w}", // LATIN SMALL W WITH A RING ABOVE "\u1E99":"{\\r y}", // LATIN SMALL Y WITH A RING ABOVE "\u1EA0":"{\\d A}", // LATIN CAPITAL LETTER A WITH DOT BELOW "\u1EA1":"{\\d a}", // LATIN SMALL LETTER A WITH DOT BELOW "\u1EB8":"{\\d E}", // LATIN CAPITAL LETTER E WITH DOT BELOW "\u1EB9":"{\\d e}", // LATIN SMALL LETTER E WITH DOT BELOW "\u1EBC":"{\\~E}", // LATIN CAPITAL LETTER E WITH TILDE "\u1EBD":"{\\~e}", // LATIN SMALL LETTER E WITH TILDE "\u1ECA":"{\\d I}", // LATIN CAPITAL LETTER I WITH DOT BELOW "\u1ECB":"{\\d i}", // LATIN SMALL LETTER I WITH DOT BELOW "\u1ECC":"{\\d O}", // LATIN CAPITAL LETTER O WITH DOT BELOW "\u1ECD":"{\\d o}", // LATIN SMALL LETTER O WITH DOT BELOW "\u1EE4":"{\\d U}", // LATIN CAPITAL LETTER U WITH DOT BELOW "\u1EE5":"{\\d u}", // LATIN SMALL LETTER U WITH DOT BELOW "\u1EF2":"{\\`Y}", // LATIN CAPITAL LETTER Y WITH GRAVE "\u1EF3":"{\\`y}", // LATIN SMALL LETTER Y WITH GRAVE "\u1EF4":"{\\d Y}", // LATIN CAPITAL LETTER Y WITH DOT BELOW "\u1EF5":"{\\d y}", // LATIN SMALL LETTER Y WITH DOT BELOW "\u1EF8":"{\\~Y}", // LATIN CAPITAL LETTER Y WITH TILDE "\u1EF9":"{\\~y}" // LATIN SMALL LETTER Y WITH TILDE }; /* unfortunately the mapping isn't reversible - hence this second table - sigh! */ var reversemappingTable = { "\\url" : "", // strip 'url' "\\href" : "", // strip 'href' "{\\textexclamdown}" : "\u00A1", // INVERTED EXCLAMATION MARK "{\\textcent}" : "\u00A2", // CENT SIGN "{\\textsterling}" : "\u00A3", // POUND SIGN "{\\textyen}" : "\u00A5", // YEN SIGN "{\\textbrokenbar}" : "\u00A6", // BROKEN BAR "{\\textsection}" : "\u00A7", // SECTION SIGN "{\\textasciidieresis}" : "\u00A8", // DIAERESIS "{\\textcopyright}" : "\u00A9", // COPYRIGHT SIGN "{\\textordfeminine}" : "\u00AA", // FEMININE ORDINAL INDICATOR "{\\guillemotleft}" : "\u00AB", // LEFT-POINTING DOUBLE ANGLE QUOTATION MARK "{\\textlnot}" : "\u00AC", // NOT SIGN "{\\textregistered}" : "\u00AE", // REGISTERED SIGN "{\\textasciimacron}" : "\u00AF", // MACRON "{\\textdegree}" : "\u00B0", // DEGREE SIGN "{\\textpm}" : "\u00B1", // PLUS-MINUS SIGN "{\\texttwosuperior}" : "\u00B2", // SUPERSCRIPT TWO "{\\textthreesuperior}" : "\u00B3", // SUPERSCRIPT THREE "{\\textasciiacute}" : "\u00B4", // ACUTE ACCENT "{\\textmu}" : "\u00B5", // MICRO SIGN "{\\textparagraph}" : "\u00B6", // PILCROW SIGN "{\\textperiodcentered}" : "\u00B7", // MIDDLE DOT "{\\c\\ }" : "\u00B8", // CEDILLA "{\\textonesuperior}" : "\u00B9", // SUPERSCRIPT ONE "{\\textordmasculine}" : "\u00BA", // MASCULINE ORDINAL INDICATOR "{\\guillemotright}" : "\u00BB", // RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK "{\\textonequarter}" : "\u00BC", // VULGAR FRACTION ONE QUARTER "{\\textonehalf}" : "\u00BD", // VULGAR FRACTION ONE HALF "{\\textthreequarters}" : "\u00BE", // VULGAR FRACTION THREE QUARTERS "{\\textquestiondown}" : "\u00BF", // INVERTED QUESTION MARK "{\\AE}" : "\u00C6", // LATIN CAPITAL LETTER AE "{\\DH}" : "\u00D0", // LATIN CAPITAL LETTER ETH "{\\texttimes}" : "\u00D7", // MULTIPLICATION SIGN "{\\O}" : "\u00D8", // LATIN SMALL LETTER O WITH STROKE "{\\TH}" : "\u00DE", // LATIN CAPITAL LETTER THORN "{\\ss}" : "\u00DF", // LATIN SMALL LETTER SHARP S "{\\ae}" : "\u00E6", // LATIN SMALL LETTER AE "{\\dh}" : "\u00F0", // LATIN SMALL LETTER ETH "{\\textdiv}" : "\u00F7", // DIVISION SIGN "{\\o}" : "\u00F8", // LATIN SMALL LETTER O WITH STROKE "{\\th}" : "\u00FE", // LATIN SMALL LETTER THORN "{\\i}" : "\u0131", // LATIN SMALL LETTER DOTLESS I //"'n" : "\u0149", // LATIN SMALL LETTER N PRECEDED BY APOSTROPHE "{\\NG}" : "\u014A", // LATIN CAPITAL LETTER ENG "{\\ng}" : "\u014B", // LATIN SMALL LETTER ENG "{\\OE}" : "\u0152", // LATIN CAPITAL LIGATURE OE "{\\oe}" : "\u0153", // LATIN SMALL LIGATURE OE "{\\textasciicircum}" : "\u02C6", // MODIFIER LETTER CIRCUMFLEX ACCENT // "\\~{}" : "\u02DC", // SMALL TILDE "{\\textacutedbl}" : "\u02DD", // DOUBLE ACUTE ACCENT //Greek Letters Courtesy of Spartanroc "$\\Gamma$" : "\u0393", // GREEK Gamma "$\\Delta$" : "\u0394", // GREEK Delta "$\\Theta$" : "\u0398", // GREEK Theta "$\\Lambda$" : "\u039B", // GREEK Lambda "$\\Xi$" : "\u039E", // GREEK Xi "$\\Pi$" : "\u03A0", // GREEK Pi "$\\Sigma$" : "\u03A3", // GREEK Sigma "$\\Phi$" : "\u03A6", // GREEK Phi "$\\Psi$" : "\u03A8", // GREEK Psi "$\\Omega$" : "\u03A9", // GREEK Omega "$\\alpha$" : "\u03B1", // GREEK alpha "$\\beta$" : "\u03B2", // GREEK beta "$\\gamma$" : "\u03B3", // GREEK gamma "$\\delta$" : "\u03B4", // GREEK delta "$\\varepsilon$": "\u03B5", // GREEK var-epsilon "$\\zeta$" : "\u03B6", // GREEK zeta "$\\eta$" : "\u03B7", // GREEK eta "$\\theta$" : "\u03B8", // GREEK theta "$\\iota$" : "\u03B9", // GREEK iota "$\\kappa$" : "\u03BA", // GREEK kappa "$\\lambda$" : "\u03BB", // GREEK lambda "$\\mu$" : "\u03BC", // GREEK mu "$\\nu$" : "\u03BD", // GREEK nu "$\\xi$" : "\u03BE", // GREEK xi "$\\pi$" : "\u03C0", // GREEK pi "$\\rho$" : "\u03C1", // GREEK rho "$\\varsigma$" : "\u03C2", // GREEK var-sigma "$\\sigma$" : "\u03C3", // GREEK sigma "$\\tau$" : "\u03C4", // GREEK tau "$\\upsilon$" : "\u03C5", // GREEK upsilon "$\\varphi$" : "\u03C6", // GREEK var-phi "$\\chi$" : "\u03C7", // GREEK chi "$\\psi$" : "\u03C8", // GREEK psi "$\\omega$" : "\u03C9", // GREEK omega "$\\vartheta$" : "\u03D1", // GREEK var-theta "$\\Upsilon$" : "\u03D2", // GREEK Upsilon "$\\phi$" : "\u03D5", // GREEK phi "$\\varpi$" : "\u03D6", // GREEK var-pi "$\\varrho$" : "\u03F1", // GREEK var-rho "$\\epsilon$" : "\u03F5", // GREEK epsilon //Greek letters end "{\\textendash}" : "\u2013", // EN DASH "{\\textemdash}" : "\u2014", // EM DASH "---" : "\u2014", // EM DASH "--" : "\u2013", // EN DASH "{\\textbardbl}" : "\u2016", // DOUBLE VERTICAL LINE "{\\textunderscore}" : "\u2017", // DOUBLE LOW LINE "{\\textquoteleft}" : "\u2018", // LEFT SINGLE QUOTATION MARK "{\\textquoteright}" : "\u2019", // RIGHT SINGLE QUOTATION MARK "{\\textquotesingle}" : "'", // APOSTROPHE / NEUTRAL SINGLE QUOTATION MARK "{\\quotesinglbase}" : "\u201A", // SINGLE LOW-9 QUOTATION MARK "{\\textquotedblleft}" : "\u201C", // LEFT DOUBLE QUOTATION MARK "{\\textquotedblright}" : "\u201D", // RIGHT DOUBLE QUOTATION MARK "{\\quotedblbase}" : "\u201E", // DOUBLE LOW-9 QUOTATION MARK // "{\\quotedblbase}" : "\u201F", // DOUBLE HIGH-REVERSED-9 QUOTATION MARK "{\\textdagger}" : "\u2020", // DAGGER "{\\textdaggerdbl}" : "\u2021", // DOUBLE DAGGER "{\\textbullet}" : "\u2022", // BULLET "{\\textellipsis}" : "\u2026", // HORIZONTAL ELLIPSIS "{\\textperthousand}" : "\u2030", // PER MILLE SIGN "'''" : "\u2034", // TRIPLE PRIME "''" : "\u201D", // RIGHT DOUBLE QUOTATION MARK (could be a double prime) "``" : "\u201C", // LEFT DOUBLE QUOTATION MARK (could be a reversed double prime) "```" : "\u2037", // REVERSED TRIPLE PRIME "{\\guilsinglleft}" : "\u2039", // SINGLE LEFT-POINTING ANGLE QUOTATION MARK "{\\guilsinglright}" : "\u203A", // SINGLE RIGHT-POINTING ANGLE QUOTATION MARK "!!" : "\u203C", // DOUBLE EXCLAMATION MARK "{\\textfractionsolidus}" : "\u2044", // FRACTION SLASH "?!" : "\u2048", // QUESTION EXCLAMATION MARK "!?" : "\u2049", // EXCLAMATION QUESTION MARK "$^{0}$" : "\u2070", // SUPERSCRIPT ZERO "$^{4}$" : "\u2074", // SUPERSCRIPT FOUR "$^{5}$" : "\u2075", // SUPERSCRIPT FIVE "$^{6}$" : "\u2076", // SUPERSCRIPT SIX "$^{7}$" : "\u2077", // SUPERSCRIPT SEVEN "$^{8}$" : "\u2078", // SUPERSCRIPT EIGHT "$^{9}$" : "\u2079", // SUPERSCRIPT NINE "$^{+}$" : "\u207A", // SUPERSCRIPT PLUS SIGN "$^{-}$" : "\u207B", // SUPERSCRIPT MINUS "$^{=}$" : "\u207C", // SUPERSCRIPT EQUALS SIGN "$^{(}$" : "\u207D", // SUPERSCRIPT LEFT PARENTHESIS "$^{)}$" : "\u207E", // SUPERSCRIPT RIGHT PARENTHESIS "$^{n}$" : "\u207F", // SUPERSCRIPT LATIN SMALL LETTER N "$_{0}$" : "\u2080", // SUBSCRIPT ZERO "$_{1}$" : "\u2081", // SUBSCRIPT ONE "$_{2}$" : "\u2082", // SUBSCRIPT TWO "$_{3}$" : "\u2083", // SUBSCRIPT THREE "$_{4}$" : "\u2084", // SUBSCRIPT FOUR "$_{5}$" : "\u2085", // SUBSCRIPT FIVE "$_{6}$" : "\u2086", // SUBSCRIPT SIX "$_{7}$" : "\u2087", // SUBSCRIPT SEVEN "$_{8}$" : "\u2088", // SUBSCRIPT EIGHT "$_{9}$" : "\u2089", // SUBSCRIPT NINE "$_{+}$" : "\u208A", // SUBSCRIPT PLUS SIGN "$_{-}$" : "\u208B", // SUBSCRIPT MINUS "$_{=}$" : "\u208C", // SUBSCRIPT EQUALS SIGN "$_{(}$" : "\u208D", // SUBSCRIPT LEFT PARENTHESIS "$_{)}$" : "\u208E", // SUBSCRIPT RIGHT PARENTHESIS "{\\texteuro}" : "\u20AC", // EURO SIGN //"a/c" : "\u2100", // ACCOUNT OF //"a/s" : "\u2101", // ADDRESSED TO THE SUBJECT "{\\textcelsius}" : "\u2103", // DEGREE CELSIUS //"c/o" : "\u2105", // CARE OF //"c/u" : "\u2106", // CADA UNA "{\\textnumero}" : "\u2116", // NUMERO SIGN "{\\textcircledP}" : "\u2117", // SOUND RECORDING COPYRIGHT "{\\textservicemark}" : "\u2120", // SERVICE MARK "{TEL}" : "\u2121", // TELEPHONE SIGN "{\\texttrademark}" : "\u2122", // TRADE MARK SIGN "{\\textohm}" : "\u2126", // OHM SIGN "{\\textestimated}" : "\u212E", // ESTIMATED SYMBOL /*" 1/3" : "\u2153", // VULGAR FRACTION ONE THIRD " 2/3" : "\u2154", // VULGAR FRACTION TWO THIRDS " 1/5" : "\u2155", // VULGAR FRACTION ONE FIFTH " 2/5" : "\u2156", // VULGAR FRACTION TWO FIFTHS " 3/5" : "\u2157", // VULGAR FRACTION THREE FIFTHS " 4/5" : "\u2158", // VULGAR FRACTION FOUR FIFTHS " 1/6" : "\u2159", // VULGAR FRACTION ONE SIXTH " 5/6" : "\u215A", // VULGAR FRACTION FIVE SIXTHS " 1/8" : "\u215B", // VULGAR FRACTION ONE EIGHTH " 3/8" : "\u215C", // VULGAR FRACTION THREE EIGHTHS " 5/8" : "\u215D", // VULGAR FRACTION FIVE EIGHTHS " 7/8" : "\u215E", // VULGAR FRACTION SEVEN EIGHTHS " 1/" : "\u215F", // FRACTION NUMERATOR ONE */ "{\\textleftarrow}" : "\u2190", // LEFTWARDS ARROW "{\\textuparrow}" : "\u2191", // UPWARDS ARROW "{\\textrightarrow}" : "\u2192", // RIGHTWARDS ARROW "{\\textdownarrow}" : "\u2193", // DOWNWARDS ARROW /*"<->" : "\u2194", // LEFT RIGHT ARROW "<=" : "\u21D0", // LEFTWARDS DOUBLE ARROW "=>" : "\u21D2", // RIGHTWARDS DOUBLE ARROW "<=>" : "\u21D4", // LEFT RIGHT DOUBLE ARROW */ "$\\infty$" : "\u221E", // INFINITY /*"||" : "\u2225", // PARALLEL TO "/=" : "\u2260", // NOT EQUAL TO "<=" : "\u2264", // LESS-THAN OR EQUAL TO ">=" : "\u2265", // GREATER-THAN OR EQUAL TO "<<" : "\u226A", // MUCH LESS-THAN ">>" : "\u226B", // MUCH GREATER-THAN "(+)" : "\u2295", // CIRCLED PLUS "(-)" : "\u2296", // CIRCLED MINUS "(x)" : "\u2297", // CIRCLED TIMES "(/)" : "\u2298", // CIRCLED DIVISION SLASH "|-" : "\u22A2", // RIGHT TACK "-|" : "\u22A3", // LEFT TACK "|-" : "\u22A6", // ASSERTION "|=" : "\u22A7", // MODELS "|=" : "\u22A8", // TRUE "||-" : "\u22A9", // FORCES */ "$\\#$" : "\u22D5", // EQUAL AND PARALLEL TO //"<<<" : "\u22D8", // VERY MUCH LESS-THAN //">>>" : "\u22D9", // VERY MUCH GREATER-THAN "{\\textlangle}" : "\u2329", // LEFT-POINTING ANGLE BRACKET "{\\textrangle}" : "\u232A", // RIGHT-POINTING ANGLE BRACKET "{\\textvisiblespace}" : "\u2423", // OPEN BOX //"///" : "\u2425", // SYMBOL FOR DELETE FORM TWO "{\\textopenbullet}" : "\u25E6", // WHITE BULLET //":-(" : "\u2639", // WHITE FROWNING FACE //":-)" : "\u263A", // WHITE SMILING FACE //"(-: " : "\u263B", // BLACK SMILING FACE // "$\\#$" : "\u266F", // MUSIC SHARP SIGN "$\\%<$" : "\u2701", // UPPER BLADE SCISSORS /* "$\\%<$" : "\u2702", // BLACK SCISSORS "$\\%<$" : "\u2703", // LOWER BLADE SCISSORS "$\\%<$" : "\u2704", // WHITE SCISSORS */ /* Derived accented characters */ "{\\`A}" : "\u00C0", // LATIN CAPITAL LETTER A WITH GRAVE "{\\'A}" : "\u00C1", // LATIN CAPITAL LETTER A WITH ACUTE "{\\^A}" : "\u00C2", // LATIN CAPITAL LETTER A WITH CIRCUMFLEX "{\\~A}" : "\u00C3", // LATIN CAPITAL LETTER A WITH TILDE "{\\\"A}" : "\u00C4", // LATIN CAPITAL LETTER A WITH DIAERESIS "{\\r A}" : "\u00C5", // LATIN CAPITAL LETTER A WITH RING ABOVE "{\\AA}" : "\u00C5", // LATIN CAPITAL LETTER A WITH RING ABOVE "{\\c C}" : "\u00C7", // LATIN CAPITAL LETTER C WITH CEDILLA "{\\`E}" : "\u00C8", // LATIN CAPITAL LETTER E WITH GRAVE "{\\'E}" : "\u00C9", // LATIN CAPITAL LETTER E WITH ACUTE "{\\^E}" : "\u00CA", // LATIN CAPITAL LETTER E WITH CIRCUMFLEX "{\\\"E}" : "\u00CB", // LATIN CAPITAL LETTER E WITH DIAERESIS "{\\`I}" : "\u00CC", // LATIN CAPITAL LETTER I WITH GRAVE "{\\'I}" : "\u00CD", // LATIN CAPITAL LETTER I WITH ACUTE "{\\^I}" : "\u00CE", // LATIN CAPITAL LETTER I WITH CIRCUMFLEX "{\\\"I}" : "\u00CF", // LATIN CAPITAL LETTER I WITH DIAERESIS "{\\~N}" : "\u00D1", // LATIN CAPITAL LETTER N WITH TILDE "{\\`O}" : "\u00D2", // LATIN CAPITAL LETTER O WITH GRAVE "{\\'O}" : "\u00D3", // LATIN CAPITAL LETTER O WITH ACUTE "{\\^O}" : "\u00D4", // LATIN CAPITAL LETTER O WITH CIRCUMFLEX "{\\~O}" : "\u00D5", // LATIN CAPITAL LETTER O WITH TILDE "{\\\"O}" : "\u00D6", // LATIN CAPITAL LETTER O WITH DIAERESIS "{\\`U}" : "\u00D9", // LATIN CAPITAL LETTER U WITH GRAVE "{\\'U}" : "\u00DA", // LATIN CAPITAL LETTER U WITH ACUTE "{\\^U}" : "\u00DB", // LATIN CAPITAL LETTER U WITH CIRCUMFLEX "{\\\"U}" : "\u00DC", // LATIN CAPITAL LETTER U WITH DIAERESIS "{\\'Y}" : "\u00DD", // LATIN CAPITAL LETTER Y WITH ACUTE "{\\`a}" : "\u00E0", // LATIN SMALL LETTER A WITH GRAVE "{\\'a}" : "\u00E1", // LATIN SMALL LETTER A WITH ACUTE "{\\^a}" : "\u00E2", // LATIN SMALL LETTER A WITH CIRCUMFLEX "{\\~a}" : "\u00E3", // LATIN SMALL LETTER A WITH TILDE "{\\\"a}" : "\u00E4", // LATIN SMALL LETTER A WITH DIAERESIS "{\\r a}" : "\u00E5", // LATIN SMALL LETTER A WITH RING ABOVE "{\\aa}" : "\u00E5", // LATIN SMALL LETTER A WITH RING ABOVE "{\\c c}" : "\u00E7", // LATIN SMALL LETTER C WITH CEDILLA "{\\`e}" : "\u00E8", // LATIN SMALL LETTER E WITH GRAVE "{\\'e}" : "\u00E9", // LATIN SMALL LETTER E WITH ACUTE "{\\^e}" : "\u00EA", // LATIN SMALL LETTER E WITH CIRCUMFLEX "{\\\"e}" : "\u00EB", // LATIN SMALL LETTER E WITH DIAERESIS "{\\`i}" : "\u00EC", // LATIN SMALL LETTER I WITH GRAVE "{\\'i}" : "\u00ED", // LATIN SMALL LETTER I WITH ACUTE "{\\^i}" : "\u00EE", // LATIN SMALL LETTER I WITH CIRCUMFLEX "{\\\"i}" : "\u00EF", // LATIN SMALL LETTER I WITH DIAERESIS "{\\~n}" : "\u00F1", // LATIN SMALL LETTER N WITH TILDE "{\\`o}" : "\u00F2", // LATIN SMALL LETTER O WITH GRAVE "{\\'o}" : "\u00F3", // LATIN SMALL LETTER O WITH ACUTE "{\\^o}" : "\u00F4", // LATIN SMALL LETTER O WITH CIRCUMFLEX "{\\~o}" : "\u00F5", // LATIN SMALL LETTER O WITH TILDE "{\\\"o}" : "\u00F6", // LATIN SMALL LETTER O WITH DIAERESIS "{\\`u}" : "\u00F9", // LATIN SMALL LETTER U WITH GRAVE "{\\'u}" : "\u00FA", // LATIN SMALL LETTER U WITH ACUTE "{\\^u}" : "\u00FB", // LATIN SMALL LETTER U WITH CIRCUMFLEX "{\\\"u}" : "\u00FC", // LATIN SMALL LETTER U WITH DIAERESIS "{\\'y}" : "\u00FD", // LATIN SMALL LETTER Y WITH ACUTE "{\\\"y}" : "\u00FF", // LATIN SMALL LETTER Y WITH DIAERESIS "{\\=A}" : "\u0100", // LATIN CAPITAL LETTER A WITH MACRON "{\\=a}" : "\u0101", // LATIN SMALL LETTER A WITH MACRON "{\\u A}" : "\u0102", // LATIN CAPITAL LETTER A WITH BREVE "{\\u a}" : "\u0103", // LATIN SMALL LETTER A WITH BREVE "{\\k A}" : "\u0104", // LATIN CAPITAL LETTER A WITH OGONEK "{\\k a}" : "\u0105", // LATIN SMALL LETTER A WITH OGONEK "{\\'C}" : "\u0106", // LATIN CAPITAL LETTER C WITH ACUTE "{\\'c}" : "\u0107", // LATIN SMALL LETTER C WITH ACUTE "{\\^C}" : "\u0108", // LATIN CAPITAL LETTER C WITH CIRCUMFLEX "{\\^c}" : "\u0109", // LATIN SMALL LETTER C WITH CIRCUMFLEX "{\\.C}" : "\u010A", // LATIN CAPITAL LETTER C WITH DOT ABOVE "{\\.c}" : "\u010B", // LATIN SMALL LETTER C WITH DOT ABOVE "{\\v C}" : "\u010C", // LATIN CAPITAL LETTER C WITH CARON "{\\v c}" : "\u010D", // LATIN SMALL LETTER C WITH CARON "{\\v D}" : "\u010E", // LATIN CAPITAL LETTER D WITH CARON "{\\v d}" : "\u010F", // LATIN SMALL LETTER D WITH CARON "{\\=E}" : "\u0112", // LATIN CAPITAL LETTER E WITH MACRON "{\\=e}" : "\u0113", // LATIN SMALL LETTER E WITH MACRON "{\\u E}" : "\u0114", // LATIN CAPITAL LETTER E WITH BREVE "{\\u e}" : "\u0115", // LATIN SMALL LETTER E WITH BREVE "{\\.E}" : "\u0116", // LATIN CAPITAL LETTER E WITH DOT ABOVE "{\\.e}" : "\u0117", // LATIN SMALL LETTER E WITH DOT ABOVE "{\\k E}" : "\u0118", // LATIN CAPITAL LETTER E WITH OGONEK "{\\k e}" : "\u0119", // LATIN SMALL LETTER E WITH OGONEK "{\\v E}" : "\u011A", // LATIN CAPITAL LETTER E WITH CARON "{\\v e}" : "\u011B", // LATIN SMALL LETTER E WITH CARON "{\\^G}" : "\u011C", // LATIN CAPITAL LETTER G WITH CIRCUMFLEX "{\\^g}" : "\u011D", // LATIN SMALL LETTER G WITH CIRCUMFLEX "{\\u G}" : "\u011E", // LATIN CAPITAL LETTER G WITH BREVE "{\\u g}" : "\u011F", // LATIN SMALL LETTER G WITH BREVE "{\\.G}" : "\u0120", // LATIN CAPITAL LETTER G WITH DOT ABOVE "{\\.g}" : "\u0121", // LATIN SMALL LETTER G WITH DOT ABOVE "{\\c G}" : "\u0122", // LATIN CAPITAL LETTER G WITH CEDILLA "{\\c g}" : "\u0123", // LATIN SMALL LETTER G WITH CEDILLA "{\\^H}" : "\u0124", // LATIN CAPITAL LETTER H WITH CIRCUMFLEX "{\\^h}" : "\u0125", // LATIN SMALL LETTER H WITH CIRCUMFLEX "{\\~I}" : "\u0128", // LATIN CAPITAL LETTER I WITH TILDE "{\\~i}" : "\u0129", // LATIN SMALL LETTER I WITH TILDE "{\\=I}" : "\u012A", // LATIN CAPITAL LETTER I WITH MACRON "{\\=i}" : "\u012B", // LATIN SMALL LETTER I WITH MACRON "{\\=\\i}" : "\u012B", // LATIN SMALL LETTER I WITH MACRON "{\\u I}" : "\u012C", // LATIN CAPITAL LETTER I WITH BREVE "{\\u i}" : "\u012D", // LATIN SMALL LETTER I WITH BREVE "{\\k I}" : "\u012E", // LATIN CAPITAL LETTER I WITH OGONEK "{\\k i}" : "\u012F", // LATIN SMALL LETTER I WITH OGONEK "{\\.I}" : "\u0130", // LATIN CAPITAL LETTER I WITH DOT ABOVE "{\\^J}" : "\u0134", // LATIN CAPITAL LETTER J WITH CIRCUMFLEX "{\\^j}" : "\u0135", // LATIN SMALL LETTER J WITH CIRCUMFLEX "{\\c K}" : "\u0136", // LATIN CAPITAL LETTER K WITH CEDILLA "{\\c k}" : "\u0137", // LATIN SMALL LETTER K WITH CEDILLA "{\\'L}" : "\u0139", // LATIN CAPITAL LETTER L WITH ACUTE "{\\'l}" : "\u013A", // LATIN SMALL LETTER L WITH ACUTE "{\\c L}" : "\u013B", // LATIN CAPITAL LETTER L WITH CEDILLA "{\\c l}" : "\u013C", // LATIN SMALL LETTER L WITH CEDILLA "{\\v L}" : "\u013D", // LATIN CAPITAL LETTER L WITH CARON "{\\v l}" : "\u013E", // LATIN SMALL LETTER L WITH CARON "{\\L}" : "\u0141", //LATIN CAPITAL LETTER L WITH STROKE "{\\l}" : "\u0142", //LATIN SMALL LETTER L WITH STROKE "{\\'N}" : "\u0143", // LATIN CAPITAL LETTER N WITH ACUTE "{\\'n}" : "\u0144", // LATIN SMALL LETTER N WITH ACUTE "{\\c N}" : "\u0145", // LATIN CAPITAL LETTER N WITH CEDILLA "{\\c n}" : "\u0146", // LATIN SMALL LETTER N WITH CEDILLA "{\\v N}" : "\u0147", // LATIN CAPITAL LETTER N WITH CARON "{\\v n}" : "\u0148", // LATIN SMALL LETTER N WITH CARON "{\\=O}" : "\u014C", // LATIN CAPITAL LETTER O WITH MACRON "{\\=o}" : "\u014D", // LATIN SMALL LETTER O WITH MACRON "{\\u O}" : "\u014E", // LATIN CAPITAL LETTER O WITH BREVE "{\\u o}" : "\u014F", // LATIN SMALL LETTER O WITH BREVE "{\\H O}" : "\u0150", // LATIN CAPITAL LETTER O WITH DOUBLE ACUTE "{\\H o}" : "\u0151", // LATIN SMALL LETTER O WITH DOUBLE ACUTE "{\\'R}" : "\u0154", // LATIN CAPITAL LETTER R WITH ACUTE "{\\'r}" : "\u0155", // LATIN SMALL LETTER R WITH ACUTE "{\\c R}" : "\u0156", // LATIN CAPITAL LETTER R WITH CEDILLA "{\\c r}" : "\u0157", // LATIN SMALL LETTER R WITH CEDILLA "{\\v R}" : "\u0158", // LATIN CAPITAL LETTER R WITH CARON "{\\v r}" : "\u0159", // LATIN SMALL LETTER R WITH CARON "{\\'S}" : "\u015A", // LATIN CAPITAL LETTER S WITH ACUTE "{\\'s}" : "\u015B", // LATIN SMALL LETTER S WITH ACUTE "{\\^S}" : "\u015C", // LATIN CAPITAL LETTER S WITH CIRCUMFLEX "{\\^s}" : "\u015D", // LATIN SMALL LETTER S WITH CIRCUMFLEX "{\\c S}" : "\u015E", // LATIN CAPITAL LETTER S WITH CEDILLA "{\\c s}" : "\u015F", // LATIN SMALL LETTER S WITH CEDILLA "{\\v S}" : "\u0160", // LATIN CAPITAL LETTER S WITH CARON "{\\v s}" : "\u0161", // LATIN SMALL LETTER S WITH CARON "{\\c T}" : "\u0162", // LATIN CAPITAL LETTER T WITH CEDILLA "{\\c t}" : "\u0163", // LATIN SMALL LETTER T WITH CEDILLA "{\\v T}" : "\u0164", // LATIN CAPITAL LETTER T WITH CARON "{\\v t}" : "\u0165", // LATIN SMALL LETTER T WITH CARON "{\\~U}" : "\u0168", // LATIN CAPITAL LETTER U WITH TILDE "{\\~u}" : "\u0169", // LATIN SMALL LETTER U WITH TILDE "{\\=U}" : "\u016A", // LATIN CAPITAL LETTER U WITH MACRON "{\\=u}" : "\u016B", // LATIN SMALL LETTER U WITH MACRON "{\\u U}" : "\u016C", // LATIN CAPITAL LETTER U WITH BREVE "{\\u u}" : "\u016D", // LATIN SMALL LETTER U WITH BREVE "{\\r U}" : "\u016E", // LATIN CAPITAL LETTER U WITH RING ABOVE "{\\r u}" : "\u016F", // LATIN SMALL LETTER U WITH RING ABOVE "{\\H U}" : "\u0170", // LATIN CAPITAL LETTER U WITH DOUBLE ACUTE "{\\H u}" : "\u0171", // LATIN SMALL LETTER U WITH DOUBLE ACUTE "{\\k U}" : "\u0172", // LATIN CAPITAL LETTER U WITH OGONEK "{\\k u}" : "\u0173", // LATIN SMALL LETTER U WITH OGONEK "{\\^W}" : "\u0174", // LATIN CAPITAL LETTER W WITH CIRCUMFLEX "{\\^w}" : "\u0175", // LATIN SMALL LETTER W WITH CIRCUMFLEX "{\\^Y}" : "\u0176", // LATIN CAPITAL LETTER Y WITH CIRCUMFLEX "{\\^y}" : "\u0177", // LATIN SMALL LETTER Y WITH CIRCUMFLEX "{\\\"Y}" : "\u0178", // LATIN CAPITAL LETTER Y WITH DIAERESIS "{\\'Z}" : "\u0179", // LATIN CAPITAL LETTER Z WITH ACUTE "{\\'z}" : "\u017A", // LATIN SMALL LETTER Z WITH ACUTE "{\\.Z}" : "\u017B", // LATIN CAPITAL LETTER Z WITH DOT ABOVE "{\\.z}" : "\u017C", // LATIN SMALL LETTER Z WITH DOT ABOVE "{\\v Z}" : "\u017D", // LATIN CAPITAL LETTER Z WITH CARON "{\\v z}" : "\u017E", // LATIN SMALL LETTER Z WITH CARON "{\\v A}" : "\u01CD", // LATIN CAPITAL LETTER A WITH CARON "{\\v a}" : "\u01CE", // LATIN SMALL LETTER A WITH CARON "{\\v I}" : "\u01CF", // LATIN CAPITAL LETTER I WITH CARON "{\\v i}" : "\u01D0", // LATIN SMALL LETTER I WITH CARON "{\\v O}" : "\u01D1", // LATIN CAPITAL LETTER O WITH CARON "{\\v o}" : "\u01D2", // LATIN SMALL LETTER O WITH CARON "{\\v U}" : "\u01D3", // LATIN CAPITAL LETTER U WITH CARON "{\\v u}" : "\u01D4", // LATIN SMALL LETTER U WITH CARON "{\\v G}" : "\u01E6", // LATIN CAPITAL LETTER G WITH CARON "{\\v g}" : "\u01E7", // LATIN SMALL LETTER G WITH CARON "{\\v K}" : "\u01E8", // LATIN CAPITAL LETTER K WITH CARON "{\\v k}" : "\u01E9", // LATIN SMALL LETTER K WITH CARON "{\\k O}" : "\u01EA", // LATIN CAPITAL LETTER O WITH OGONEK "{\\k o}" : "\u01EB", // LATIN SMALL LETTER O WITH OGONEK "{\\v j}" : "\u01F0", // LATIN SMALL LETTER J WITH CARON "{\\'G}" : "\u01F4", // LATIN CAPITAL LETTER G WITH ACUTE "{\\'g}" : "\u01F5", // LATIN SMALL LETTER G WITH ACUTE "{\\.B}" : "\u1E02", // LATIN CAPITAL LETTER B WITH DOT ABOVE "{\\.b}" : "\u1E03", // LATIN SMALL LETTER B WITH DOT ABOVE "{\\d B}" : "\u1E04", // LATIN CAPITAL LETTER B WITH DOT BELOW "{\\d b}" : "\u1E05", // LATIN SMALL LETTER B WITH DOT BELOW "{\\b B}" : "\u1E06", // LATIN CAPITAL LETTER B WITH LINE BELOW "{\\b b}" : "\u1E07", // LATIN SMALL LETTER B WITH LINE BELOW "{\\.D}" : "\u1E0A", // LATIN CAPITAL LETTER D WITH DOT ABOVE "{\\.d}" : "\u1E0B", // LATIN SMALL LETTER D WITH DOT ABOVE "{\\d D}" : "\u1E0C", // LATIN CAPITAL LETTER D WITH DOT BELOW "{\\d d}" : "\u1E0D", // LATIN SMALL LETTER D WITH DOT BELOW "{\\b D}" : "\u1E0E", // LATIN CAPITAL LETTER D WITH LINE BELOW "{\\b d}" : "\u1E0F", // LATIN SMALL LETTER D WITH LINE BELOW "{\\c D}" : "\u1E10", // LATIN CAPITAL LETTER D WITH CEDILLA "{\\c d}" : "\u1E11", // LATIN SMALL LETTER D WITH CEDILLA "{\\.F}" : "\u1E1E", // LATIN CAPITAL LETTER F WITH DOT ABOVE "{\\.f}" : "\u1E1F", // LATIN SMALL LETTER F WITH DOT ABOVE "{\\=G}" : "\u1E20", // LATIN CAPITAL LETTER G WITH MACRON "{\\=g}" : "\u1E21", // LATIN SMALL LETTER G WITH MACRON "{\\.H}" : "\u1E22", // LATIN CAPITAL LETTER H WITH DOT ABOVE "{\\.h}" : "\u1E23", // LATIN SMALL LETTER H WITH DOT ABOVE "{\\d H}" : "\u1E24", // LATIN CAPITAL LETTER H WITH DOT BELOW "{\\d h}" : "\u1E25", // LATIN SMALL LETTER H WITH DOT BELOW "{\\\"H}" : "\u1E26", // LATIN CAPITAL LETTER H WITH DIAERESIS "{\\\"h}" : "\u1E27", // LATIN SMALL LETTER H WITH DIAERESIS "{\\c H}" : "\u1E28", // LATIN CAPITAL LETTER H WITH CEDILLA "{\\c h}" : "\u1E29", // LATIN SMALL LETTER H WITH CEDILLA "{\\'K}" : "\u1E30", // LATIN CAPITAL LETTER K WITH ACUTE "{\\'k}" : "\u1E31", // LATIN SMALL LETTER K WITH ACUTE "{\\d K}" : "\u1E32", // LATIN CAPITAL LETTER K WITH DOT BELOW "{\\d k}" : "\u1E33", // LATIN SMALL LETTER K WITH DOT BELOW "{\\b K}" : "\u1E34", // LATIN CAPITAL LETTER K WITH LINE BELOW "{\\b k}" : "\u1E35", // LATIN SMALL LETTER K WITH LINE BELOW "{\\d L}" : "\u1E36", // LATIN CAPITAL LETTER L WITH DOT BELOW "{\\d l}" : "\u1E37", // LATIN SMALL LETTER L WITH DOT BELOW "{\\b L}" : "\u1E3A", // LATIN CAPITAL LETTER L WITH LINE BELOW "{\\b l}" : "\u1E3B", // LATIN SMALL LETTER L WITH LINE BELOW "{\\'M}" : "\u1E3E", // LATIN CAPITAL LETTER M WITH ACUTE "{\\'m}" : "\u1E3F", // LATIN SMALL LETTER M WITH ACUTE "{\\.M}" : "\u1E40", // LATIN CAPITAL LETTER M WITH DOT ABOVE "{\\.m}" : "\u1E41", // LATIN SMALL LETTER M WITH DOT ABOVE "{\\d M}" : "\u1E42", // LATIN CAPITAL LETTER M WITH DOT BELOW "{\\d m}" : "\u1E43", // LATIN SMALL LETTER M WITH DOT BELOW "{\\.N}" : "\u1E44", // LATIN CAPITAL LETTER N WITH DOT ABOVE "{\\.n}" : "\u1E45", // LATIN SMALL LETTER N WITH DOT ABOVE "{\\d N}" : "\u1E46", // LATIN CAPITAL LETTER N WITH DOT BELOW "{\\d n}" : "\u1E47", // LATIN SMALL LETTER N WITH DOT BELOW "{\\b N}" : "\u1E48", // LATIN CAPITAL LETTER N WITH LINE BELOW "{\\b n}" : "\u1E49", // LATIN SMALL LETTER N WITH LINE BELOW "{\\'P}" : "\u1E54", // LATIN CAPITAL LETTER P WITH ACUTE "{\\'p}" : "\u1E55", // LATIN SMALL LETTER P WITH ACUTE "{\\.P}" : "\u1E56", // LATIN CAPITAL LETTER P WITH DOT ABOVE "{\\.p}" : "\u1E57", // LATIN SMALL LETTER P WITH DOT ABOVE "{\\.R}" : "\u1E58", // LATIN CAPITAL LETTER R WITH DOT ABOVE "{\\.r}" : "\u1E59", // LATIN SMALL LETTER R WITH DOT ABOVE "{\\d R}" : "\u1E5A", // LATIN CAPITAL LETTER R WITH DOT BELOW "{\\d r}" : "\u1E5B", // LATIN SMALL LETTER R WITH DOT BELOW "{\\b R}" : "\u1E5E", // LATIN CAPITAL LETTER R WITH LINE BELOW "{\\b r}" : "\u1E5F", // LATIN SMALL LETTER R WITH LINE BELOW "{\\.S}" : "\u1E60", // LATIN CAPITAL LETTER S WITH DOT ABOVE "{\\.s}" : "\u1E61", // LATIN SMALL LETTER S WITH DOT ABOVE "{\\d S}" : "\u1E62", // LATIN CAPITAL LETTER S WITH DOT BELOW "{\\d s}" : "\u1E63", // LATIN SMALL LETTER S WITH DOT BELOW "{\\.T}" : "\u1E6A", // LATIN CAPITAL LETTER T WITH DOT ABOVE "{\\.t}" : "\u1E6B", // LATIN SMALL LETTER T WITH DOT ABOVE "{\\d T}" : "\u1E6C", // LATIN CAPITAL LETTER T WITH DOT BELOW "{\\d t}" : "\u1E6D", // LATIN SMALL LETTER T WITH DOT BELOW "{\\b T}" : "\u1E6E", // LATIN CAPITAL LETTER T WITH LINE BELOW "{\\b t}" : "\u1E6F", // LATIN SMALL LETTER T WITH LINE BELOW "{\\~V}" : "\u1E7C", // LATIN CAPITAL LETTER V WITH TILDE "{\\~v}" : "\u1E7D", // LATIN SMALL LETTER V WITH TILDE "{\\d V}" : "\u1E7E", // LATIN CAPITAL LETTER V WITH DOT BELOW "{\\d v}" : "\u1E7F", // LATIN SMALL LETTER V WITH DOT BELOW "{\\`W}" : "\u1E80", // LATIN CAPITAL LETTER W WITH GRAVE "{\\`w}" : "\u1E81", // LATIN SMALL LETTER W WITH GRAVE "{\\'W}" : "\u1E82", // LATIN CAPITAL LETTER W WITH ACUTE "{\\'w}" : "\u1E83", // LATIN SMALL LETTER W WITH ACUTE "{\\\"W}" : "\u1E84", // LATIN CAPITAL LETTER W WITH DIAERESIS "{\\\"w}" : "\u1E85", // LATIN SMALL LETTER W WITH DIAERESIS "{\\.W}" : "\u1E86", // LATIN CAPITAL LETTER W WITH DOT ABOVE "{\\.w}" : "\u1E87", // LATIN SMALL LETTER W WITH DOT ABOVE "{\\d W}" : "\u1E88", // LATIN CAPITAL LETTER W WITH DOT BELOW "{\\d w}" : "\u1E89", // LATIN SMALL LETTER W WITH DOT BELOW "{\\.X}" : "\u1E8A", // LATIN CAPITAL LETTER X WITH DOT ABOVE "{\\.x}" : "\u1E8B", // LATIN SMALL LETTER X WITH DOT ABOVE "{\\\"X}" : "\u1E8C", // LATIN CAPITAL LETTER X WITH DIAERESIS "{\\\"x}" : "\u1E8D", // LATIN SMALL LETTER X WITH DIAERESIS "{\\.Y}" : "\u1E8E", // LATIN CAPITAL LETTER Y WITH DOT ABOVE "{\\.y}" : "\u1E8F", // LATIN SMALL LETTER Y WITH DOT ABOVE "{\\^Z}" : "\u1E90", // LATIN CAPITAL LETTER Z WITH CIRCUMFLEX "{\\^z}" : "\u1E91", // LATIN SMALL LETTER Z WITH CIRCUMFLEX "{\\d Z}" : "\u1E92", // LATIN CAPITAL LETTER Z WITH DOT BELOW "{\\d z}" : "\u1E93", // LATIN SMALL LETTER Z WITH DOT BELOW "{\\b Z}" : "\u1E94", // LATIN CAPITAL LETTER Z WITH LINE BELOW "{\\b z}" : "\u1E95", // LATIN SMALL LETTER Z WITH LINE BELOW "{\\b h}" : "\u1E96", // LATIN SMALL LETTER H WITH LINE BELOW "{\\\"t}" : "\u1E97", // LATIN SMALL LETTER T WITH DIAERESIS "{\\r w}" : "\u1E98", // LATIN SMALL LETTER W WITH RING ABOVE "{\\r y}" : "\u1e99", // LATIN SMALL LETTER Y WITH RING ABOVE "{\\d A}" : "\u1EA0", // LATIN CAPITAL LETTER A WITH DOT BELOW "{\\d a}" : "\u1EA1", // LATIN SMALL LETTER A WITH DOT BELOW "{\\d E}" : "\u1EB8", // LATIN CAPITAL LETTER E WITH DOT BELOW "{\\d e}" : "\u1EB9", // LATIN SMALL LETTER E WITH DOT BELOW "{\\~E}" : "\u1EBC", // LATIN CAPITAL LETTER E WITH TILDE "{\\~e}" : "\u1EBD", // LATIN SMALL LETTER E WITH TILDE "{\\d I}" : "\u1ECA", // LATIN CAPITAL LETTER I WITH DOT BELOW "{\\d i}" : "\u1ECB", // LATIN SMALL LETTER I WITH DOT BELOW "{\\d O}" : "\u1ECC", // LATIN CAPITAL LETTER O WITH DOT BELOW "{\\d o}" : "\u1ECD", // LATIN SMALL LETTER O WITH DOT BELOW "{\\d U}" : "\u1EE4", // LATIN CAPITAL LETTER U WITH DOT BELOW "{\\d u}" : "\u1EE5", // LATIN SMALL LETTER U WITH DOT BELOW "{\\`Y}" : "\u1EF2", // LATIN CAPITAL LETTER Y WITH GRAVE "{\\`y}" : "\u1EF3", // LATIN SMALL LETTER Y WITH GRAVE "{\\d Y}" : "\u1EF4", // LATIN CAPITAL LETTER Y WITH DOT BELOW "{\\d y}" : "\u1EF5", // LATIN SMALL LETTER Y WITH DOT BELOW "{\\~Y}" : "\u1EF8", // LATIN CAPITAL LETTER Y WITH TILDE "{\\~y}" : "\u1EF9", // LATIN SMALL LETTER Y WITH TILDE "{\\~}" : "\u223C", // TILDE OPERATOR "~" : "\u00A0" // NO-BREAK SPACE };/** BEGIN TEST CASES **/ var testCases = [ { "type": "import", "input": "@article{Adams2001,\nauthor = {Adams, Nancy K and DeSilva, Shanaka L and Self, Steven and Salas, Guido and Schubring, Steven and Permenter, Jason L and Arbesman, Kendra},\nfile = {:Users/heatherwright/Documents/Scientific Papers/Adams\\_Huaynaputina.pdf:pdf;::},\njournal = {Bulletin of Volcanology},\nkeywords = {Vulcanian eruptions,breadcrust,plinian},\npages = {493--518},\ntitle = {{The physical volcanology of the 1600 eruption of Huaynaputina, southern Peru}},\nvolume = {62},\nyear = {2001}\n}", "items": [ { "itemType": "journalArticle", "title": "The physical volcanology of the 1600 eruption of Huaynaputina, southern Peru", "creators": [ { "firstName": "Nancy K", "lastName": "Adams", "creatorType": "author" }, { "firstName": "Shanaka L", "lastName": "DeSilva", "creatorType": "author" }, { "firstName": "Steven", "lastName": "Self", "creatorType": "author" }, { "firstName": "Guido", "lastName": "Salas", "creatorType": "author" }, { "firstName": "Steven", "lastName": "Schubring", "creatorType": "author" }, { "firstName": "Jason L", "lastName": "Permenter", "creatorType": "author" }, { "firstName": "Kendra", "lastName": "Arbesman", "creatorType": "author" } ], "date": "2001", "itemID": "Adams2001", "pages": "493–518", "publicationTitle": "Bulletin of Volcanology", "volume": "62", "attachments": [ { "path": "Users/heatherwright/Documents/Scientific Papers/Adams_Huaynaputina.pdf", "mimeType": "application/pdf", "title": "Attachment" } ], "tags": [ "Vulcanian eruptions", "breadcrust", "plinian" ], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@Book{abramowitz+stegun,\n author = \"Milton {Abramowitz} and Irene A. {Stegun}\",\n title = \"Handbook of Mathematical Functions with\n Formulas, Graphs, and Mathematical Tables\",\n publisher = \"Dover\",\n year = 1964,\n address = \"New York\",\n edition = \"ninth Dover printing, tenth GPO printing\"\n}\n\n@Book{Torre2008,\n author = \"Joe Torre and Tom Verducci\",\n publisher = \"Doubleday\",\n title = \"The Yankee Years\",\n year = 2008,\n isbn = \"0385527403\"\n}\n", "items": [ { "itemType": "book", "title": "Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables", "creators": [ { "firstName": "Milton", "lastName": "Abramowitz", "creatorType": "author" }, { "firstName": "Irene A.", "lastName": "Stegun", "creatorType": "author" } ], "date": "1964", "edition": "ninth Dover printing, tenth GPO printing", "itemID": "abramowitz+stegun", "place": "New York", "publisher": "Dover", "attachments": [], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "book", "title": "The Yankee Years", "creators": [ { "firstName": "Joe", "lastName": "Torre", "creatorType": "author" }, { "firstName": "Tom", "lastName": "Verducci", "creatorType": "author" } ], "date": "2008", "ISBN": "0385527403", "itemID": "Torre2008", "publisher": "Doubleday", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@INPROCEEDINGS {author:06,\n title = {Some publication title},\n author = {First Author and Second Author},\n crossref = {conference:06},\n pages = {330—331},\n}\n@PROCEEDINGS {conference:06,\n editor = {First Editor and Second Editor},\n title = {Proceedings of the Xth Conference on XYZ},\n booktitle = {Proceedings of the Xth Conference on XYZ},\n year = {2006},\n month = oct,\n}", "items": [ { "itemType": "conferencePaper", "title": "Some publication title", "creators": [ { "firstName": "First", "lastName": "Author", "creatorType": "author" }, { "firstName": "Second", "lastName": "Author", "creatorType": "author" } ], "itemID": "author:06", "pages": "330—331", "attachments": [], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "book", "title": "Proceedings of the Xth Conference on XYZ", "creators": [ { "firstName": "First", "lastName": "Editor", "creatorType": "editor" }, { "firstName": "Second", "lastName": "Editor", "creatorType": "editor" } ], "date": "2006-10", "itemID": "conference:06", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@Book{hicks2001,\n author = \"von Hicks, III, Michael\",\n title = \"Design of a Carbon Fiber Composite Grid Structure for the GLAST\n Spacecraft Using a Novel Manufacturing Technique\",\n publisher = \"Stanford Press\",\n year = 2001,\n address = \"Palo Alto\",\n edition = \"1st,\",\n isbn = \"0-69-697269-4\"\n}", "items": [ { "itemType": "book", "title": "Design of a Carbon Fiber Composite Grid Structure for the GLAST Spacecraft Using a Novel Manufacturing Technique", "creators": [ { "firstName": "Michael, III", "lastName": "von Hicks", "creatorType": "author" } ], "date": "2001", "ISBN": "0-69-697269-4", "edition": "1st,", "itemID": "hicks2001", "place": "Palo Alto", "publisher": "Stanford Press", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@article{Oliveira_2009, title={USGS monitoring ecological impacts}, volume={107}, number={29}, journal={Oil & Gas Journal}, author={Oliveira, A}, year={2009}, pages={29}}", "items": [ { "itemType": "journalArticle", "title": "USGS monitoring ecological impacts", "creators": [ { "firstName": "A", "lastName": "Oliveira", "creatorType": "author" } ], "date": "2009", "issue": "29", "itemID": "Oliveira_2009", "pages": "29", "publicationTitle": "Oil & Gas Journal", "volume": "107", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@article{test-ticket1661,\ntitle={non-braking space: ~; accented characters: {\\~n} and \\~{n}; tilde operator: \\~},\n} ", "items": [ { "itemType": "journalArticle", "title": "non-braking space: ; accented characters: ñ and ñ; tilde operator: ∼", "creators": [], "itemID": "test-ticket1661", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@ARTICLE{Frit2,\n author = {Fritz, U. and Corti, C. and P\\\"{a}ckert, M.},\n title = {Test of markupconversion: Italics, bold, superscript, subscript, and small caps: Mitochondrial DNA$_{\\textrm{2}}$ sequences suggest unexpected phylogenetic position\n of Corso-Sardinian grass snakes (\\textit{Natrix cetti}) and \\textbf{do not}\n support their \\textsc{species status}, with notes on phylogeography and subspecies\n delineation of grass snakes.},\n journal = {Actes du $4^{\\textrm{ème}}$ Congrès Français d'Acoustique},\n year = {2012},\n volume = {12},\n pages = {71-80},\n doi = {10.1007/s13127-011-0069-8}\n}\n", "items": [ { "itemType": "journalArticle", "title": "Test of markupconversion: Italics, bold, superscript, subscript, and small caps: Mitochondrial DNA₂ sequences suggest unexpected phylogenetic position of Corso-Sardinian grass snakes (Natrix cetti) and do not support their species status, with notes on phylogeography and subspecies delineation of grass snakes.", "creators": [ { "firstName": "U.", "lastName": "Fritz", "creatorType": "author" }, { "firstName": "C.", "lastName": "Corti", "creatorType": "author" }, { "firstName": "M.", "lastName": "Päckert", "creatorType": "author" } ], "date": "2012", "DOI": "10.1007/s13127-011-0069-8", "itemID": "Frit2", "pages": "71-80", "publicationTitle": "Actes du 4ème Congrès Français d'Acoustique", "volume": "12", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@misc{american_rights_at_work_public_2012,\n title = {Public Service Research Foundation},\n\turl = {http://www.americanrightsatwork.org/blogcategory-275/},\n\turldate = {2012-07-27},\n\tauthor = {American Rights at Work},\n\tyear = {2012},\n\thowpublished = {http://www.americanrightsatwork.org/blogcategory-275/},\n}", "items": [ { "itemType": "document", "title": "Public Service Research Foundation", "creators": [ { "firstName": "American Rights at", "lastName": "Work", "creatorType": "author" } ], "date": "2012", "itemID": "american_rights_at_work_public_2012", "url": "http://www.americanrightsatwork.org/blogcategory-275/", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@article{zoteroFilePath1,\n title = {Zotero: single attachment},\n file = {Test:files/47/test2.pdf:application/pdf}\n}\n\n@article{zoteroFilePaths2,\n title = {Zotero: multiple attachments},\n file = {Test1:files/47/test2.pdf:application/pdf;Test2:files/46/test2-min.pdf:application/pdf}\n}\n\n@article{zoteroFilePaths3,\n title = {Zotero: linked attachments (old)},\n file = {Test:E:\\some\\random\\folder\\test2.pdf:application/pdf}\n}\n\n@article{zoteroFilePaths4,\n title = {Zotero: linked attachments},\n file = {Test:E\\:\\\\some\\\\random\\\\folder\\\\test2.pdf:application/pdf}\n}\n\n@article{mendeleyFilePaths1,\n title = {Mendeley: single attachment},\n url = {https://forums.zotero.org/discussion/28347/unable-to-get-pdfs-stored-on-computer-into-zotero-standalone/},\n file = {:C$\\backslash$:/Users/somewhere/AppData/Local/Mendeley Ltd./Mendeley Desktop/Downloaded/test.pdf:pdf}\n}\n\n@article{mendeleyFilePaths2,\ntitle = {Mendeley: escaped characters}\nfile = {:C$\\backslash$:/some/path/,.$\\backslash$;'[]\\{\\}`-=\\~{}!@\\#\\$\\%\\^{}\\&()\\_+.pdf:pdf},\n}\n\n@article{citaviFilePaths1,\n title = {Citavi: single attachment},\n url = {https://forums.zotero.org/discussion/35909/bibtex-import-from-citavi-including-pdf-attachments/},\n file = {Test:Q\\:\\\\some\\\\random\\\\folder\\\\test.pdf:pdf}\n}", "items": [ { "itemType": "journalArticle", "title": "Zotero: single attachment", "creators": [], "itemID": "zoteroFilePath1", "attachments": [ { "title": "Test", "path": "files/47/test2.pdf", "mimeType": "application/pdf" } ], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "journalArticle", "title": "Zotero: multiple attachments", "creators": [], "itemID": "zoteroFilePaths2", "attachments": [ { "title": "Test1", "path": "files/47/test2.pdf", "mimeType": "application/pdf" }, { "title": "Test2", "path": "files/46/test2-min.pdf", "mimeType": "application/pdf" } ], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "journalArticle", "title": "Zotero: linked attachments (old)", "creators": [], "itemID": "zoteroFilePaths3", "attachments": [], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "journalArticle", "title": "Zotero: linked attachments", "creators": [], "itemID": "zoteroFilePaths4", "attachments": [ { "title": "Test", "path": "E:\\some\\random\\folder\\test2.pdf", "mimeType": "application/pdf" } ], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "journalArticle", "title": "Mendeley: single attachment", "creators": [], "itemID": "mendeleyFilePaths1", "url": "https://forums.zotero.org/discussion/28347/unable-to-get-pdfs-stored-on-computer-into-zotero-standalone/", "attachments": [ { "title": "Attachment", "path": "C:/Users/somewhere/AppData/Local/Mendeley Ltd./Mendeley Desktop/Downloaded/test.pdf", "mimeType": "application/pdf" } ], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "journalArticle", "title": "Mendeley: escaped characters", "creators": [], "itemID": "mendeleyFilePaths2", "attachments": [ { "title": "Attachment", "path": "C:/some/path/,.;'[]{}`-=~!@#$%^&()_+.pdf", "mimeType": "application/pdf" } ], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "journalArticle", "title": "Citavi: single attachment", "creators": [], "itemID": "citaviFilePaths1", "url": "https://forums.zotero.org/discussion/35909/bibtex-import-from-citavi-including-pdf-attachments/", "attachments": [ { "title": "Test", "path": "Q:\\some\\random\\folder\\test.pdf", "mimeType": "application/pdf" } ], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@article{BibTeXEscapeTest1,\n title = {\textbackslash\textbackslash\\{\\}: \\\\{}}\n}", "items": [ { "itemType": "journalArticle", "title": "extbackslash extbackslash{}: {", "creators": [], "itemID": "BibTeXEscapeTest1", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@article{sasson_increasing_2013,\n title = {Increasing cardiopulmonary resuscitation provision in communities with low bystander cardiopulmonary resuscitation rates: a science advisory from the American Heart Association for healthcare providers, policymakers, public health departments, and community leaders},\n\tvolume = {127},\n\tissn = {1524-4539},\n\tshorttitle = {Increasing cardiopulmonary resuscitation provision in communities with low bystander cardiopulmonary resuscitation rates},\n\tdoi = {10.1161/CIR.0b013e318288b4dd},\n\tlanguage = {eng},\n\tnumber = {12},\n\tjournal = {Circulation},\n\tauthor = {Sasson, Comilla and Meischke, Hendrika and Abella, Benjamin S and Berg, Robert A and Bobrow, Bentley J and Chan, Paul S and Root, Elisabeth Dowling and Heisler, Michele and Levy, Jerrold H and Link, Mark and Masoudi, Frederick and Ong, Marcus and Sayre, Michael R and Rumsfeld, John S and Rea, Thomas D and {American Heart Association Council on Quality of Care and Outcomes Research} and {Emergency Cardiovascular Care Committee} and {Council on Cardiopulmonary, Critical Care, Perioperative and Resuscitation} and {Council on Clinical Cardiology} and {Council on Cardiovascular Surgery and Anesthesia}},\n\tmonth = mar,\n\tyear = {2013},\n\tnote = {{PMID:} 23439512},\n\tkeywords = {Administrative Personnel, American Heart Association, Cardiopulmonary Resuscitation, Community Health Services, Health Personnel, Heart Arrest, Humans, Leadership, Public Health, United States},\n\tpages = {1342--1350}\n}", "items": [ { "itemType": "journalArticle", "title": "Increasing cardiopulmonary resuscitation provision in communities with low bystander cardiopulmonary resuscitation rates: a science advisory from the American Heart Association for healthcare providers, policymakers, public health departments, and community leaders", "creators": [ { "firstName": "Comilla", "lastName": "Sasson", "creatorType": "author" }, { "firstName": "Hendrika", "lastName": "Meischke", "creatorType": "author" }, { "firstName": "Benjamin S", "lastName": "Abella", "creatorType": "author" }, { "firstName": "Robert A", "lastName": "Berg", "creatorType": "author" }, { "firstName": "Bentley J", "lastName": "Bobrow", "creatorType": "author" }, { "firstName": "Paul S", "lastName": "Chan", "creatorType": "author" }, { "firstName": "Elisabeth Dowling", "lastName": "Root", "creatorType": "author" }, { "firstName": "Michele", "lastName": "Heisler", "creatorType": "author" }, { "firstName": "Jerrold H", "lastName": "Levy", "creatorType": "author" }, { "firstName": "Mark", "lastName": "Link", "creatorType": "author" }, { "firstName": "Frederick", "lastName": "Masoudi", "creatorType": "author" }, { "firstName": "Marcus", "lastName": "Ong", "creatorType": "author" }, { "firstName": "Michael R", "lastName": "Sayre", "creatorType": "author" }, { "firstName": "John S", "lastName": "Rumsfeld", "creatorType": "author" }, { "firstName": "Thomas D", "lastName": "Rea", "creatorType": "author" }, { "lastName": "American Heart Association Council on Quality of Care and Outcomes Research", "creatorType": "author", "fieldMode": 1 }, { "lastName": "Emergency Cardiovascular Care Committee", "creatorType": "author", "fieldMode": 1 }, { "lastName": "Council on Cardiopulmonary, Critical Care, Perioperative and Resuscitation", "creatorType": "author", "fieldMode": 1 }, { "lastName": "Council on Clinical Cardiology", "creatorType": "author", "fieldMode": 1 }, { "lastName": "Council on Cardiovascular Surgery and Anesthesia", "creatorType": "author", "fieldMode": 1 } ], "date": "2013-03", "DOI": "10.1161/CIR.0b013e318288b4dd", "ISSN": "1524-4539", "extra": "PMID: 23439512", "issue": "12", "itemID": "sasson_increasing_2013", "language": "eng", "pages": "1342–1350", "publicationTitle": "Circulation", "shortTitle": "Increasing cardiopulmonary resuscitation provision in communities with low bystander cardiopulmonary resuscitation rates", "volume": "127", "attachments": [], "tags": [ { "tag": "Administrative Personnel" }, { "tag": "American Heart Association" }, { "tag": "Cardiopulmonary Resuscitation" }, { "tag": "Community Health Services" }, { "tag": "Health Personnel" }, { "tag": "Heart Arrest" }, { "tag": "Humans" }, { "tag": "Leadership" }, { "tag": "Public Health" }, { "tag": "United States" } ], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@article{smith_testing_????,\n title = {Testing identifier import},\n\tauthor = {Smith, John},\n\tdoi = {10.12345/123456},\n\tlccn = {L123456},\n\tmrnumber = {MR123456},\n\tzmnumber = {ZM123456},\n\tpmid = {P123456},\n\tpmcid = {PMC123456},\n\teprinttype = {arxiv},\n\teprint = {AX123456}\n}", "items": [ { "itemType": "journalArticle", "title": "Testing identifier import", "creators": [ { "firstName": "John", "lastName": "Smith", "creatorType": "author" } ], "DOI": "10.12345/123456", "extra": "LCCN: L123456\nMR: MR123456\nZbl: ZM123456\nPMID: P123456\nPMCID: PMC123456\narXiv: AX123456", "itemID": "smith_testing_????", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@inbook{smith_testing_????,\n title = {Testing identifier import chapter},\n\tauthor = {Smith, John},\n\tdoi = {10.12345/123456},\n\tlccn = {L123456},\n\tmrnumber = {MR123456},\n\tzmnumber = {ZM123456},\n\tpmid = {P123456},\n\tpmcid = {PMC123456},\n\teprinttype = {arxiv},\n\teprint = {AX123456}\n}", "items": [ { "itemType": "bookSection", "title": "Testing identifier import chapter", "creators": [ { "firstName": "John", "lastName": "Smith", "creatorType": "author" } ], "extra": "DOI: 10.12345/123456\nLCCN: L123456\nMR: MR123456\nZbl: ZM123456\nPMID: P123456\nPMCID: PMC123456\narXiv: AX123456", "itemID": "smith_testing_????", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@mastersthesis{DBLP:ms/Hoffmann2008,\n author = {Oliver Hoffmann},\n title = {Regelbasierte Extraktion und asymmetrische Fusion bibliographischer\n Informationen},\n school = {Diplomarbeit, Universit{\\\"{a}}t Trier, {FB} IV, {DBIS/DBLP}},\n year = {2009},\n url = {http://dblp.uni-trier.de/papers/DiplomarbeitOliverHoffmann.pdf},\n timestamp = {Wed, 03 Aug 2011 15:40:21 +0200},\n biburl = {http://dblp.org/rec/bib/ms/Hoffmann2008},\n bibsource = {dblp computer science bibliography, http://dblp.org}\n}\n\n@phdthesis{DBLP:phd/Ackermann2009,\n author = {Marcel R. Ackermann},\n title = {Algorithms for the Bregman k-Median problem},\n school = {University of Paderborn},\n year = {2009},\n url = {http://digital.ub.uni-paderborn.de/hs/content/titleinfo/1561},\n urn = {urn:nbn:de:hbz:466-20100407029},\n timestamp = {Thu, 01 Dec 2016 16:33:49 +0100},\n biburl = {http://dblp.org/rec/bib/phd/Ackermann2009},\n bibsource = {dblp computer science bibliography, http://dblp.org}\n}", "items": [ { "itemType": "thesis", "title": "Regelbasierte Extraktion und asymmetrische Fusion bibliographischer Informationen", "creators": [ { "firstName": "Oliver", "lastName": "Hoffmann", "creatorType": "author" } ], "date": "2009", "itemID": "DBLP:ms/Hoffmann2008", "thesisType": "Master's Thesis", "university": "Diplomarbeit, Universität Trier, FB IV, DBIS/DBLP", "url": "http://dblp.uni-trier.de/papers/DiplomarbeitOliverHoffmann.pdf", "attachments": [], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "thesis", "title": "Algorithms for the Bregman k-Median problem", "creators": [ { "firstName": "Marcel R.", "lastName": "Ackermann", "creatorType": "author" } ], "date": "2009", "itemID": "DBLP:phd/Ackermann2009", "thesisType": "PhD Thesis", "university": "University of Paderborn", "url": "http://digital.ub.uni-paderborn.de/hs/content/titleinfo/1561", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@inproceedings{Giannotti:2007:TPM:1281192.1281230,\n author = {Giannotti, Fosca and Nanni, Mirco and Pinelli, Fabio and Pedreschi, Dino},\n title = {Trajectory Pattern Mining},\n booktitle = {Proceedings of the 13th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining},\n series = {KDD '07},\n year = {2007},\n isbn = {978-1-59593-609-7},\n location = {San Jose, California, USA},\n pages = {330--339},\n numpages = {10},\n url = {http://doi.acm.org/10.1145/1281192.1281230},\n doi = {10.1145/1281192.1281230},\n acmid = {1281230},\n publisher = {ACM},\n address = {New York, NY, USA},\n keywords = {spatio-temporal data mining, trajectory patterns},\n }", "items": [ { "itemType": "conferencePaper", "title": "Trajectory Pattern Mining", "creators": [ { "firstName": "Fosca", "lastName": "Giannotti", "creatorType": "author" }, { "firstName": "Mirco", "lastName": "Nanni", "creatorType": "author" }, { "firstName": "Fabio", "lastName": "Pinelli", "creatorType": "author" }, { "firstName": "Dino", "lastName": "Pedreschi", "creatorType": "author" } ], "date": "2007", "DOI": "10.1145/1281192.1281230", "ISBN": "978-1-59593-609-7", "extra": "event-place: San Jose, California, USA", "itemID": "Giannotti:2007:TPM:1281192.1281230", "pages": "330–339", "place": "New York, NY, USA", "proceedingsTitle": "Proceedings of the 13th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining", "publisher": "ACM", "series": "KDD '07", "url": "http://doi.acm.org/10.1145/1281192.1281230", "attachments": [], "tags": [ { "tag": "spatio-temporal data mining" }, { "tag": "trajectory patterns" } ], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@article{madoc40756,\n author = {Elias Naumann and Moritz He{\\ss} and Leander Steinkopf},\n number = {6},\n language = {Deutsch},\n volume = {44},\n publisher = {Lucius \\& Lucius},\n address = {Stuttgart},\n pages = {426--446},\n journal = {Zeitschrift f{\\\"u}r Soziologie : ZfS},\n year = {2015},\n doi = {10.1515/zfsoz-2015-0604},\n title = {Die Alterung der Gesellschaft und der Generationenkonflikt in Europa},\n url = {https://madoc.bib.uni-mannheim.de/40756/}\n}\n\n@article {MR3077863,\nAUTHOR = {Eli{\\'a}{\\v{s}}, Marek and Matou{\\v{s}}ek, Ji{\\v{r}}{\\'{\\i}}},\nTITLE = {Higher-order {E}rd{\\H o}s-{S}zekeres theorems},\nJOURNAL = {Adv. Math.},\nFJOURNAL = {Advances in Mathematics},\nVOLUME = {244},\nYEAR = {2013},\nPAGES = {1--15},\nISSN = {0001-8708},\nMRCLASS = {05C65 (05C55 52C10)},\nMRNUMBER = {3077863},\nMRREVIEWER = {David Conlon},\nDOI = {10.1016/j.aim.2013.04.020},\nURL = {http://dx.doi.org/10.1016/j.aim.2013.04.020},\n}", "items": [ { "itemType": "journalArticle", "title": "Die Alterung der Gesellschaft und der Generationenkonflikt in Europa", "creators": [ { "firstName": "Elias", "lastName": "Naumann", "creatorType": "author" }, { "firstName": "Moritz", "lastName": "Heß", "creatorType": "author" }, { "firstName": "Leander", "lastName": "Steinkopf", "creatorType": "author" } ], "date": "2015", "DOI": "10.1515/zfsoz-2015-0604", "issue": "6", "itemID": "madoc40756", "language": "Deutsch", "pages": "426–446", "publicationTitle": "Zeitschrift für Soziologie : ZfS", "url": "https://madoc.bib.uni-mannheim.de/40756/", "volume": "44", "attachments": [], "tags": [], "notes": [], "seeAlso": [] }, { "itemType": "journalArticle", "title": "Higher-order Erdős-Szekeres theorems", "creators": [ { "firstName": "Marek", "lastName": "Eliáš", "creatorType": "author" }, { "firstName": "Jiří", "lastName": "Matoušek", "creatorType": "author" } ], "date": "2013", "DOI": "10.1016/j.aim.2013.04.020", "ISSN": "0001-8708", "extra": "MR: 3077863", "itemID": "MR3077863", "journalAbbreviation": "Adv. Math.", "pages": "1–15", "publicationTitle": "Advances in Mathematics", "url": "http://dx.doi.org/10.1016/j.aim.2013.04.020", "volume": "244", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@incollection{madoc44942,\n language = {isl},\n author = {Eva H. {\\\"O}nnud{\\'o}ttir},\n title = {B{\\'u}s{\\'a}haldabyltingin : P{\\'o}lit{\\'i}skt jafnr{\\ae}{\\dh}i og {\\th}{\\'a}tttaka almennings {\\'i} m{\\'o}tm{\\ae}lum},\n year = {2011},\n publisher = {F{\\'e}lagsv{\\'i}sindastofnun H{\\'a}sk{\\'o}la {\\'I}slands},\n address = {Reykjavik},\n pages = {36--44}\n}\n", "items": [ { "itemType": "bookSection", "title": "Búsáhaldabyltingin : Pólitískt jafnræði og þátttaka almennings í mótmælum", "creators": [ { "firstName": "Eva H.", "lastName": "Önnudóttir", "creatorType": "author" } ], "date": "2011", "itemID": "madoc44942", "language": "isl", "pages": "36–44", "place": "Reykjavik", "publisher": "Félagsvísindastofnun Háskóla Íslands", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@String {zotero-url = {https://www.zotero.org/}}\n@string(zotero-creator = \"Corporation for Digital Scholarship\"))\n\n@Electronic{example-electronic-string,\n author = zotero-creator,\n title= {Zotero's Homepage},\n year = 2019,\n url =zotero-url,\n urldate=\"2019-10-12\"\n}\n", "items": [ { "itemType": "webpage", "title": "Zotero's Homepage", "creators": [ { "firstName": "Corporation for Digital", "lastName": "Scholarship", "creatorType": "author" } ], "date": "2019", "itemID": "example-electronic-string", "url": "https://www.zotero.org/", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@String {meta:maintainer = \"Xavier D\\\\'ecoret\"}\n\n@\n %a\npreamble\n %a\n{ \"Maintained by \" # meta:maintainer }\n@String(Stefan = \"Stefan Swe{\\\\i}g\")\n@String(and = \" and \")\n\n@Book{sweig42,\n Author =\t stefan # And # meta:maintainer,\n title =\t { The {impossible} TEL---book },\n publisher =\t { D\\\\\"ead Po$_{eee}$t Society},\n yEAr =\t 1942,\n month = mar\n}", "items": [ { "itemType": "book", "title": "The impossible ℡—book", "creators": [ { "firstName": "Stefan", "lastName": "Swe\\ıg", "creatorType": "author" }, { "firstName": "Xavier", "lastName": "D\\écoret", "creatorType": "author" } ], "date": "1942-03", "itemID": "sweig42", "publisher": "D\\ëad Poeeet Society", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@preamble{BibTeX for papers by David Kotz; for complete/updated list see\nhttps://www.cs.dartmouth.edu/~kotz/research/papers.html}\n\n@Article{batsis:rural,\n author = {John A. Batsis and Curtis L. Petersen and Matthew M. Clark and Summer B. Cook and David Kotz and Tyler L. Gooding and Meredith N. Roderka and Rima I. Al-Nimr and Dawna M. Pidgeon and Ann Haedrich and KC Wright and Christina Aquila and Todd A. Mackenzie},\n title = {A Rural Mobile Health Obesity Wellness Intervention for Older Adults with Obesity},\n journal = {BMC Geriatrics},\n year = 2020,\n month = {December},\n copyright = {the authors},\n URL = {https://www.cs.dartmouth.edu/~kotz/research/batsis-rural/index.html},\n note = {Accepted for publication},\n}\n", "items": [ { "itemType": "journalArticle", "title": "A Rural Mobile Health Obesity Wellness Intervention for Older Adults with Obesity", "creators": [ { "firstName": "John A.", "lastName": "Batsis", "creatorType": "author" }, { "firstName": "Curtis L.", "lastName": "Petersen", "creatorType": "author" }, { "firstName": "Matthew M.", "lastName": "Clark", "creatorType": "author" }, { "firstName": "Summer B.", "lastName": "Cook", "creatorType": "author" }, { "firstName": "David", "lastName": "Kotz", "creatorType": "author" }, { "firstName": "Tyler L.", "lastName": "Gooding", "creatorType": "author" }, { "firstName": "Meredith N.", "lastName": "Roderka", "creatorType": "author" }, { "firstName": "Rima I.", "lastName": "Al-Nimr", "creatorType": "author" }, { "firstName": "Dawna M.", "lastName": "Pidgeon", "creatorType": "author" }, { "firstName": "Ann", "lastName": "Haedrich", "creatorType": "author" }, { "firstName": "K. C.", "lastName": "Wright", "creatorType": "author" }, { "firstName": "Christina", "lastName": "Aquila", "creatorType": "author" }, { "firstName": "Todd A.", "lastName": "Mackenzie", "creatorType": "author" } ], "date": "2020-12", "itemID": "batsis:rural", "publicationTitle": "BMC Geriatrics", "rights": "the authors", "url": "https://www.cs.dartmouth.edu/~kotz/research/batsis-rural/index.html", "attachments": [], "tags": [], "notes": [ { "note": "

Accepted for publication

" } ], "seeAlso": [] } ] }, { "type": "import", "input": "@techreport{ietf-bmwg-evpntest-09,\n\tnumber =\t{draft-ietf-bmwg-evpntest-09},\n\ttype =\t\t{Internet-Draft},\n\tinstitution =\t{Internet Engineering Task Force},\n\tpublisher =\t{Internet Engineering Task Force},\n\tnote =\t\t{Work in Progress},\n\turl =\t\t{https://datatracker.ietf.org/doc/html/draft-ietf-bmwg-evpntest-09},\n author =\t{sudhin jacob and Kishore Tiruveedhula},\n\ttitle =\t\t{{Benchmarking Methodology for EVPN and PBB-EVPN}},\n\tpagetotal =\t28,\n\tyear =\t\t2021,\n\tmonth =\t\tjun,\n\tday =\t\t18,\n\tabstract =\t{This document defines methodologies for benchmarking EVPN and PBB- EVPN performance. EVPN is defined in RFC 7432, and is being deployed in Service Provider networks. Specifically, this document defines the methodologies for benchmarking EVPN/PBB-EVPN convergence, data plane performance, and control plane performance.},\n}\n", "items": [ { "itemType": "report", "title": "Benchmarking Methodology for EVPN and PBB-EVPN", "creators": [ { "firstName": "sudhin", "lastName": "jacob", "creatorType": "author" }, { "firstName": "Kishore", "lastName": "Tiruveedhula", "creatorType": "author" } ], "date": "2021-06-18", "abstractNote": "This document defines methodologies for benchmarking EVPN and PBB- EVPN performance. EVPN is defined in RFC 7432, and is being deployed in Service Provider networks. Specifically, this document defines the methodologies for benchmarking EVPN/PBB-EVPN convergence, data plane performance, and control plane performance.", "institution": "Internet Engineering Task Force", "itemID": "ietf-bmwg-evpntest-09", "reportNumber": "draft-ietf-bmwg-evpntest-09", "reportType": "Internet-Draft", "url": "https://datatracker.ietf.org/doc/html/draft-ietf-bmwg-evpntest-09", "attachments": [], "tags": [], "notes": [ { "note": "

Work in Progress

" } ], "seeAlso": [] } ] }, { "type": "import", "input": "@inproceedings{NIPS2009_0188e8b8,\n author = {Cuturi, Marco and Vert, Jean-philippe and D\\textquotesingle aspremont, Alexandre},\n booktitle = {Advances in Neural Information Processing Systems},\n editor = {Y. Bengio and D. Schuurmans and J. Lafferty and C. Williams and A. Culotta},\n pages = {},\n publisher = {Curran Associates, Inc.},\n title = {White Functionals for Anomaly Detection in Dynamical Systems},\n url = {https://proceedings.neurips.cc/paper/2009/file/0188e8b8b014829e2fa0f430f0a95961-Paper.pdf},\n volume = {22},\n year = {2009}\n}", "items": [ { "itemType": "conferencePaper", "title": "White Functionals for Anomaly Detection in Dynamical Systems", "creators": [ { "firstName": "Marco", "lastName": "Cuturi", "creatorType": "author" }, { "firstName": "Jean-philippe", "lastName": "Vert", "creatorType": "author" }, { "firstName": "Alexandre", "lastName": "D' aspremont", "creatorType": "author" }, { "firstName": "Y.", "lastName": "Bengio", "creatorType": "editor" }, { "firstName": "D.", "lastName": "Schuurmans", "creatorType": "editor" }, { "firstName": "J.", "lastName": "Lafferty", "creatorType": "editor" }, { "firstName": "C.", "lastName": "Williams", "creatorType": "editor" }, { "firstName": "A.", "lastName": "Culotta", "creatorType": "editor" } ], "date": "2009", "itemID": "NIPS2009_0188e8b8", "proceedingsTitle": "Advances in Neural Information Processing Systems", "publisher": "Curran Associates, Inc.", "url": "https://proceedings.neurips.cc/paper/2009/file/0188e8b8b014829e2fa0f430f0a95961-Paper.pdf", "volume": "22", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@article{Borissov:2855446,\r\n author = \"Borissov, Alexander and Solokhin, Sergei\",\r\n collaboration = \"ALICE\",\r\n title = \"{Production of $\\Sigma^{0}$ Hyperon and Search of\r\n $\\Sigma^{0}$ Hypernuclei at LHC with ALICE}\",\r\n journal = \"Phys. At. Nucl.\",\r\n volume = \"85\",\r\n number = \"6\",\r\n pages = \"970-975\",\r\n year = \"2023\",\r\n url = \"https://cds.cern.ch/record/2855446\",\r\n doi = \"10.1134/S1063778823010131\",\r\n }", "items": [ { "itemType": "journalArticle", "title": "Production of Σ⁰ Hyperon and Search of Σ⁰ Hypernuclei at LHC with ALICE", "creators": [ { "firstName": "Alexander", "lastName": "Borissov", "creatorType": "author" }, { "firstName": "Sergei", "lastName": "Solokhin", "creatorType": "author" } ], "date": "2023", "DOI": "10.1134/S1063778823010131", "issue": "6", "itemID": "Borissov:2855446", "pages": "970-975", "publicationTitle": "Phys. At. Nucl.", "url": "https://cds.cern.ch/record/2855446", "volume": "85", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] }, { "type": "import", "input": "@book{derbis1998poczucie,\r\ntitle={Poczucie jako{\\'s}ci {\\.z}ycia a swoboda dzia{\\l}ania i odpowiedzialno{\\'s}{\\'c}},\r\nauthor={Derbis, Romuald and Ba{\\'n}ka, Augustyn},\r\nyear={1998},\r\npublisher={Stowarzyszenie Psychologia i Architektura}\r\n}", "items": [ { "itemType": "book", "title": "Poczucie jakości życia a swoboda działania i odpowiedzialność", "creators": [ { "firstName": "Romuald", "lastName": "Derbis", "creatorType": "author" }, { "firstName": "Augustyn", "lastName": "Bańka", "creatorType": "author" } ], "date": "1998", "itemID": "derbis1998poczucie", "publisher": "Stowarzyszenie Psychologia i Architektura", "attachments": [], "tags": [], "notes": [], "seeAlso": [] } ] } ] /** END TEST CASES **/