Context & context)
{
Context newcontext(context);
- // Don't inherit the extra stuff
- newcontext.extra_stuff.clear();
+ // Don't inherit the paragraph-level extra stuff
+ newcontext.par_extra_stuff.clear();
parse_text(p, os, flags, outer, newcontext);
// Make sure that we don't create invalid .lyx files
context.need_layout = newcontext.need_layout;
newcontext.need_end_layout = false;
newcontext.new_layout_allowed = false;
// Avoid warning by Context::~Context()
- newcontext.extra_stuff.clear();
+ newcontext.par_extra_stuff.clear();
ostringstream os;
parse_text_snippet(p, os, flags, outer, newcontext);
return os.str();
// they are commands not environments. They are furthermore switches that
// can be ended by another switches, but also by commands like \footnote or
// \parbox. So the only safe way is to leave them untouched.
- else if (name == "center" || name == "flushleft" || name == "flushright") {
+ else if (name == "center" || name == "centering" ||
+ name == "flushleft" || name == "flushright" ||
+ name == "singlespace" || name == "onehalfspace" ||
+ name == "doublespace" || name == "spacing") {
eat_whitespace(p, os, parent_context, false);
// We must begin a new paragraph if not already done
if (! parent_context.atParagraphStart()) {
parent_context.add_extra_stuff("\\align left\n");
else if (name == "flushright")
parent_context.add_extra_stuff("\\align right\n");
- else if (name == "center")
+ else if (name == "center" || name == "centering")
parent_context.add_extra_stuff("\\align center\n");
+ else if (name == "singlespace")
+ parent_context.add_extra_stuff("\\paragraph_spacing single\n");
+ else if (name == "onehalfspace")
+ parent_context.add_extra_stuff("\\paragraph_spacing onehalf\n");
+ else if (name == "doublespace")
+ parent_context.add_extra_stuff("\\paragraph_spacing double\n");
+ else if (name == "spacing")
+ parent_context.add_extra_stuff("\\paragraph_spacing other " + p.verbatim_item() + "\n");
parse_text(p, os, FLAG_END, outer, parent_context);
// Just in case the environment is empty
parent_context.extra_stuff.erase();
parent_context.check_end_layout(os);
switch (context.layout->latextype) {
case LATEX_LIST_ENVIRONMENT:
- context.extra_stuff = "\\labelwidthstring "
- + p.verbatim_item() + '\n';
+ context.add_par_extra_stuff("\\labelwidthstring "
+ + p.verbatim_item() + '\n');
p.skip_spaces();
break;
case LATEX_BIB_ENVIRONMENT:
else if (t.cs() == "noindent") {
p.skip_spaces();
- context.add_extra_stuff("\\noindent\n");
+ context.add_par_extra_stuff("\\noindent\n");
}
else if (t.cs() == "appendix") {
- context.add_extra_stuff("\\start_of_appendix\n");
+ context.add_par_extra_stuff("\\start_of_appendix\n");
// We need to start a new paragraph. Otherwise the
// appendix in 'bla\appendix\chapter{' would start
// too late.