using std::ostringstream;
using std::string;
+// anonym namespace
+namespace {
+int findToken(char const * const str[], string const search_token)
+{
+ int i = 0;
+
+ if (search_token != "default") {
+ while (str[i][0] && str[i] != search_token) {
+ ++i;
+ }
+ if (!str[i][0]) {
+ i = -1;
+ }
+ }
+
+ return i;
+}
+
+}
+
ParagraphParameters::ParagraphParameters()
: noindent_(false),
if (token == "\\noindent") {
noindent(true);
} else if (token == "\\leftindent") {
- lex.nextToken();
+ lex.next();
LyXLength value(lex.getString());
leftIndent(value);
} else if (token == "\\start_of_appendix") {
} else if (tmp == "other") {
lex.next();
spacing(Spacing(Spacing::Other,
- lex.getFloat()));
+ lex.getString()));
} else {
lex.printError("Unknown spacing token: '$$Token'");
}
} else if (token == "\\align") {
- int tmpret = lex.findToken(string_align);
+ lex.next();
+ int tmpret = findToken(string_align, lex.getString());
if (tmpret == -1)
++tmpret;
align(LyXAlignment(1 << tmpret));
// Start of appendix?
if (startOfAppendix())
- os << "\\start_of_appendix ";
+ os << "\\start_of_appendix\n";
// Noindent?
if (noindent())
- os << "\\noindent ";
+ os << "\\noindent\n";
// Do we have a manual left indent?
if (!leftIndent().zero())
- os << "\\leftindent " << leftIndent().asString()
- << ' ';
+ os << "\\leftindent " << leftIndent().asString() << '\n';
// Alignment?
if (align() != LYX_ALIGN_LAYOUT) {
case LYX_ALIGN_CENTER: h = 3; break;
default: h = 0; break;
}
- os << "\\align " << string_align[h] << ' ';
+ os << "\\align " << string_align[h] << '\n';
}
}
params.write(os);
// Is alignment possible
- os << '\n' << "\\alignpossible " << layout->alignpossible << '\n';
+ os << "\\alignpossible " << layout->alignpossible << '\n';
/// set default alignment
os << "\\aligndefault " << layout->align << '\n';