mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-29 05:01:49 +00:00
tex2lyx: extend titling support
Rather than checking for hardcoded title commands such as \maketitle, use the titlename and titletype as defined in the layout. This now also includes title environments. Fixes part of #6461
This commit is contained in:
parent
da4e51a6c2
commit
429edc0a59
@ -1793,6 +1793,16 @@ void parse_environment(Parser & p, ostream & os, bool outer,
|
|||||||
preamble.registerAutomaticallyLoadedPackage("tipx");
|
preamble.registerAutomaticallyLoadedPackage("tipx");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
else if (name == parent_context.textclass.titlename()
|
||||||
|
&& parent_context.textclass.titletype() == TITLE_ENVIRONMENT) {
|
||||||
|
parse_text(p, os, FLAG_END, outer, parent_context);
|
||||||
|
// Just in case the environment is empty
|
||||||
|
parent_context.extra_stuff.erase();
|
||||||
|
// We must begin a new paragraph
|
||||||
|
parent_context.new_paragraph(os);
|
||||||
|
p.skip_spaces();
|
||||||
|
}
|
||||||
|
|
||||||
else if (name == "CJK") {
|
else if (name == "CJK") {
|
||||||
// the scheme is \begin{CJK}{encoding}{mapping}text\end{CJK}
|
// the scheme is \begin{CJK}{encoding}{mapping}text\end{CJK}
|
||||||
// It is impossible to decide if a CJK environment was in its own paragraph or within
|
// It is impossible to decide if a CJK environment was in its own paragraph or within
|
||||||
@ -3630,7 +3640,9 @@ void parse_text(Parser & p, ostream & os, unsigned flags, bool outer,
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
else if (t.cs() == "makeindex" || t.cs() == "maketitle" || t.cs() == "makebeamertitle") {
|
else if (t.cs() == "makeindex"
|
||||||
|
|| (t.cs() == context.textclass.titlename()
|
||||||
|
&& context.textclass.titletype() == TITLE_COMMAND_AFTER)) {
|
||||||
if (preamble.titleLayoutFound()) {
|
if (preamble.titleLayoutFound()) {
|
||||||
// swallow this
|
// swallow this
|
||||||
skip_spaces_braces(p);
|
skip_spaces_braces(p);
|
||||||
|
Loading…
Reference in New Issue
Block a user