From 29c673347b4b6121087d6cfa8ee90b3f29549ff1 Mon Sep 17 00:00:00 2001 From: kevinykuo Date: Tue, 18 Dec 2018 03:00:31 -0800 Subject: [PATCH] correctly extract organization authors bibtex --- src/helpers/citation.js | 5 +++++ src/transforms/citation.js | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/src/helpers/citation.js b/src/helpers/citation.js index 943139e..25cd480 100644 --- a/src/helpers/citation.js +++ b/src/helpers/citation.js @@ -58,6 +58,11 @@ function author_string(ent, template, sep, finalSep){ var names = ent.author.split(' and '); let name_strings = names.map(name => { name = name.trim(); + if (name.match(/\{.+\}/)) { + var regExp = /\{([^}]+)\}/; + var matches = regExp.exec(name); + return matches[1]; + } if (name.indexOf(',') != -1){ var last = name.split(',')[0].trim(); var firsts = name.split(',')[1]; diff --git a/src/transforms/citation.js b/src/transforms/citation.js index ca5d23f..155741c 100644 --- a/src/transforms/citation.js +++ b/src/transforms/citation.js @@ -113,6 +113,11 @@ export default function(dom, data) { var names = ent.author.split(' and '); let name_strings = names.map(name => { name = name.trim(); + if (name.match(/\{.+\}/)) { + var regExp = /\{([^}]+)\}/; + var matches = regExp.exec(name); + return matches[1]; + } if (name.indexOf(',') != -1){ var last = name.split(',')[0].trim(); var firsts = name.split(',')[1];