#include "support/translator.h"
#include <boost/regex.hpp>
-#include "support/std_sstream.h"
+
#include <cmath> // std::abs
+#include <sstream>
using lyx::support::float_equal;
if (data.no_resize())
return string();
- std::ostringstream os;
+ std::ostringstream os;
if (data.usingScale()) {
double const scl = data.scale / 100.0;
os << "\\scalebox{" << scl << "}{" << scl << "}{";
if (data.no_rotation())
return string();
- std::ostringstream os;
- os << "\\rotatebox";
+ std::ostringstream os;
+ os << "\\rotatebox";
if (data.origin() != RotationData::DEFAULT)
os << "[origin=" << data.origin() << ']';
os << '{' << data.angle() << "}{";
- return os.str();
+ return os.str();
}
if (data.no_resize())
return string();
- std::ostringstream os;
+ std::ostringstream os;
if (data.usingScale()) {
if (!float_equal(data.scale, 100.0, 0.05))
os << "scale=" << data.scale / 100.0 << ',';
string::const_iterator it = begin;
// Strip any leading commas
- // "[,,,,foo..." -> "foo..."
+ // "[,,,,foo..." -> "foo..." ("foo..." may be empty)
string output;
boost::smatch what;
static boost::regex const front("^( *[[],*)(.*)$");
regex_match(it, end, what, front, boost::match_partial);
if (!what[0].matched) {
lyxerr << "Unable to sanitize LaTeX \"Option\": "
- << output << '\n';
+ << input << '\n';
return string();
}
it = what[1].second;
}
// Strip any trailing commas
- // "...foo,,,]" -> "...foo"
- static boost::regex const back("^(.*[^,])(,*[]] *)$");
+ // "...foo,,,]" -> "...foo" ("...foo,,," may be empty)
+ static boost::regex const back("^(.*[^,])?,*[]] *$");
regex_match(output, what, back);
if (!what[0].matched) {
lyxerr << "Unable to sanitize LaTeX \"Option\": "