From: Juergen Spitzmueller Date: Tue, 20 Nov 2012 11:58:36 +0000 (+0100) Subject: extend comments and fix caption argument conversion X-Git-Tag: 2.1.0beta1~1243 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=4309dd54c78ad0915650a01027dc10010cf30910;p=features.git extend comments and fix caption argument conversion --- diff --git a/src/tex2lyx/text.cpp b/src/tex2lyx/text.cpp index c6916393f0..cdef9148af 100644 --- a/src/tex2lyx/text.cpp +++ b/src/tex2lyx/text.cpp @@ -629,6 +629,8 @@ void output_command_layout(ostream & os, Parser & p, bool outer, context.check_deeper(os); context.check_layout(os); // FIXME: Adjust to format 446! + // Since format 446, layouts do not require anymore all optional + // arguments before the required ones. Needs to be implemented! int optargs = 0; while (optargs < context.layout->optArgs()) { eat_whitespace(p, os, context, false); @@ -636,7 +638,11 @@ void output_command_layout(ostream & os, Parser & p, bool outer, p.next_token().character() != '[') break; p.get_token(); // eat '[' - // FIXME: Just a workaround + // FIXME: Just a workaround. InsetArgument::updateBuffer + // will compute a proper ID for all "999" Arguments + // (which ia also what lyx2lyx produces). + // However, tex2lyx should be able to output proper IDs + // itself. begin_inset(os, "Argument 999\n"); os << "status collapsed\n\n"; parse_text_in_inset(p, os, FLAG_BRACK_LAST, outer, context); @@ -650,7 +656,11 @@ void output_command_layout(ostream & os, Parser & p, bool outer, if (p.next_token().cat() != catBegin) break; p.get_token(); // eat '{' - // FIXME: Just a workaround + // FIXME: Just a workaround. InsetArgument::updateBuffer + // will compute a proper ID for all "999" Arguments + // (which ia also what lyx2lyx produces). + // However, tex2lyx should be able to output proper IDs + // itself. begin_inset(os, "Argument 999\n"); os << "status collapsed\n\n"; parse_text_in_inset(p, os, FLAG_BRACE_LAST, outer, context); @@ -1600,11 +1610,11 @@ void parse_environment(Parser & p, ostream & os, bool outer, } context.check_deeper(os); // handle known optional and required arguments - // layouts require all optional arguments before the required ones + // FIXME: Since format 446, layouts do not require anymore all optional + // arguments before the required ones. Needs to be implemented! // Unfortunately LyX can't handle arguments of list arguments (bug 7468): // It is impossible to place anything after the environment name, // but before the first \\item. - // FIXME: Adjust to format 446! if (context.layout->latextype == LATEX_ENVIRONMENT) { bool need_layout = true; int optargs = 0; @@ -1618,7 +1628,11 @@ void parse_environment(Parser & p, ostream & os, bool outer, context.check_layout(os); need_layout = false; } - // FIXME: Just a workaround + // FIXME: Just a workaround. InsetArgument::updateBuffer + // will compute a proper ID for all "999" Arguments + // (which ia also what lyx2lyx produces). + // However, tex2lyx should be able to output proper IDs + // itself. begin_inset(os, "Argument 999\n"); os << "status collapsed\n\n"; parse_text_in_inset(p, os, FLAG_BRACK_LAST, outer, context); @@ -1636,7 +1650,11 @@ void parse_environment(Parser & p, ostream & os, bool outer, context.check_layout(os); need_layout = false; } - // FIXME: Just a workaround + // FIXME: Just a workaround. InsetArgument::updateBuffer + // will compute a proper ID for all "999" Arguments + // (which ia also what lyx2lyx produces). + // However, tex2lyx should be able to output proper IDs + // itself. begin_inset(os, "Argument 999\n"); os << "status collapsed\n\n"; parse_text_in_inset(p, os, FLAG_BRACE_LAST, outer, context); @@ -2730,10 +2748,12 @@ void parse_text(Parser & p, ostream & os, unsigned flags, bool outer, begin_inset(os, "Caption\n"); Context newcontext(true, context.textclass, 0, 0, context.font); newcontext.check_layout(os); + // FIXME InsetArgument is now properly implemented in InsetLayout + // (for captions, but also for others) if (p.next_token().cat() != catEscape && p.next_token().character() == '[') { p.get_token(); // eat '[' - begin_inset(os, "Argument\n"); + begin_inset(os, "Argument 1\n"); os << "status collapsed\n"; parse_text_in_inset(p, os, FLAG_BRACK_LAST, outer, context); end_inset(os);