#include "support/lstrings.h"
#include "support/textutils.h"
-#include "boost/regex.hpp"
+#include "support/regex.h"
#include <set>
// unicodesymbols has things in the form: \"{u},
// whereas we may see things like: \"u. So we'll
// look for that and change it, if necessary.
- static boost::regex const reg("^\\\\\\W\\w");
- if (boost::regex_search(to_utf8(val), reg)) {
+ static lyx::regex const reg("^\\\\\\W\\w");
+ if (lyx::regex_search(to_utf8(val), reg)) {
val.insert(3, from_ascii("}"));
val.insert(2, from_ascii("{"));
}
}
else if (scanning_key)
key += char(thischar);
- else if (richtext || !scanning_rich)
+ else if (richtext) {
+ if (scanning_rich)
+ ret += thischar;
+ else {
+ // we need to escape '<' and '>'
+ if (thischar == '<')
+ ret += "<";
+ else if (thischar == '>')
+ ret += ">";
+ else
+ ret += thischar;
+ }
+ } else if (!scanning_rich /* && !richtext */)
ret += thischar;
// else the character is discarded, which will happen only if
// richtext == false and we are scanning rich text
void BiblioInfo::mergeBiblioInfo(BiblioInfo const & info)
{
bimap_.insert(info.begin(), info.end());
+ field_names_.insert(info.field_names_.begin(), info.field_names_.end());
+ entry_types_.insert(info.entry_types_.begin(), info.entry_types_.end());
}