there were 2 issues:
- the body was not output to the Preamble
- the theorem module already defines a theorem. It must not be output to the preamble to avoid a redefinition error of LaTeX
update the test files accordingly
string const body = p.verbatim_item();
string const opt3 = p.getFullOpt();
string const body = p.verbatim_item();
string const opt3 = p.getFullOpt();
- add_known_theorem(name, opt1, !opt2.empty(),
- from_utf8("\\newtheorem{" + name + '}' +
- opt1 + opt2 + '{' + body + '}' + opt3));
+ string const complete = "\\newtheorem{" + name + '}' +
+ opt1 + opt2 + '{' + body + '}' + opt3;
+
+ add_known_theorem(name, opt1, !opt2.empty(), from_utf8(complete));
+
+ // we know that our theorem module already add automatically some
+ // theorem definition. They must not be output in the preamble to
+ // avoid LaTeX errors about redefinitions
+ if (complete == "\\newtheorem{thm}{\\protect\\theoremname}")
+ in_lyx_preamble = true;
+ else
+ in_lyx_preamble = false;
if (!in_lyx_preamble)
h_preamble << "\\newtheorem{" << name << '}'
if (!in_lyx_preamble)
h_preamble << "\\newtheorem{" << name << '}'
- << opt1 << opt2 << '{' << '}' << opt3;
+ << opt1 << opt2 << '{' << body << '}' << opt3;
}
else if (t.cs() == "def") {
}
else if (t.cs() == "def") {
\origin roundtrip
\textclass amsart
\begin_preamble
\origin roundtrip
\textclass amsart
\begin_preamble
+\numberwithin{equation}{section} %% Comment out for sequentially-numbered
+\numberwithin{figure}{section} %% Comment out for sequentially-numbered
+\providecommand{\theoremname}{Theorem}
+\theoremstyle{plain}
+\newtheorem{lem}[thm]{Lemma}
+
\end_preamble
\use_default_options false
\begin_modules
\end_preamble
\use_default_options false
\begin_modules
-%% LyX 1.6.1 created this file. For more info, see http://www.lyx.org/.
-%% Do not edit unless you really know what you are doing.
\documentclass[oneside,english]{amsart}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{amsthm}
\documentclass[oneside,english]{amsart}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{amsthm}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Textclass specific LaTeX commands.
\numberwithin{equation}{section} %% Comment out for sequentially-numbered
\numberwithin{figure}{section} %% Comment out for sequentially-numbered
\providecommand{\theoremname}{Theorem}
\theoremstyle{plain}
\numberwithin{equation}{section} %% Comment out for sequentially-numbered
\numberwithin{figure}{section} %% Comment out for sequentially-numbered
\providecommand{\theoremname}{Theorem}
\theoremstyle{plain}
\newtheorem{thm}{\protect\theoremname}
\newtheorem{thm}{\protect\theoremname}
- \theoremstyle{plain}
- \newtheorem{lem}[thm]{Lemma}
+\theoremstyle{plain}
+\newtheorem{lem}[thm]{Lemma}