From f5a5be4d188a20ee2a5c0213ee11bf64c0908841 Mon Sep 17 00:00:00 2001 From: Richard Heck Date: Thu, 10 Jan 2008 04:58:20 +0000 Subject: [PATCH] Modularization of the AMS classes, and the theorem environments generally. This is Part I: The changes to the layout files and modules. Part II, still to come, will involve lyx2lyx to help people who were using the older classes. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22461 a592a061-630c-0410-9148-cb99ea01b6c8 --- development/scons/scons_manifest.py | 9 +- lib/Makefile.am | 11 +- lib/layouts/amsart.layout | 1 + lib/layouts/amsbook.layout | 1 + lib/layouts/amsdefs.inc | 34 +- lib/layouts/amsmaths.inc | 32 ++ lib/layouts/theorems-ams-extended.module | 271 ++++++++++ lib/layouts/theorems-ams-withinsec.module | 28 - lib/layouts/theorems-ams.inc | 499 ------------------ lib/layouts/theorems-ams.module | 92 +++- ...withinchap.module => theorems-chap.module} | 10 +- lib/layouts/theorems-proof.inc | 39 ++ lib/layouts/theorems-sec.module | 21 + lib/layouts/theorems-starred.inc | 156 ++++++ lib/layouts/theorems-std.module | 4 +- lib/layouts/theorems-withinsec.module | 18 - lib/layouts/theorems.inc | 72 ++- 17 files changed, 669 insertions(+), 629 deletions(-) create mode 100644 lib/layouts/theorems-ams-extended.module delete mode 100644 lib/layouts/theorems-ams-withinsec.module delete mode 100644 lib/layouts/theorems-ams.inc rename lib/layouts/{theorems-withinchap.module => theorems-chap.module} (63%) create mode 100644 lib/layouts/theorems-proof.inc create mode 100644 lib/layouts/theorems-sec.module create mode 100644 lib/layouts/theorems-starred.inc delete mode 100644 lib/layouts/theorems-withinsec.module diff --git a/development/scons/scons_manifest.py b/development/scons/scons_manifest.py index 4abc860d7f..b4829d622e 100644 --- a/development/scons/scons_manifest.py +++ b/development/scons/scons_manifest.py @@ -2607,7 +2607,8 @@ lib_layouts_inc_files = Split(''' stdtitle.inc svjour.inc theorems.inc - theorems-ams.inc + theorems-proof.inc + theorems-starred.inc ''') @@ -2618,11 +2619,11 @@ lib_layouts_module_files = Split(''' hanging.module linguistics.module logicalmkup.module + theorems-ams-extended.module theorems-ams.module - theorems-ams-withinsec.module + theorems-chap.module + theorems-sec.module theorems-std.module - theorems-withinsec.module - theorems-withinchap.module ''') lib_scripts_files = Split(''' diff --git a/lib/Makefile.am b/lib/Makefile.am index 262aee34d9..03dac1e94a 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -1046,13 +1046,14 @@ dist_layouts_DATA =\ layouts/svprobth.layout \ layouts/tarticle.layout \ layouts/tbook.layout \ - layouts/theorems.inc \ - layouts/theorems-ams.inc \ + layouts/theorems-ams-extended.module \ layouts/theorems-ams.module \ - layouts/theorems-ams-withinsec.module \ + layouts/theorems-chap.module \ + layouts/theorems.inc \ + layouts/theorems-proof.inc \ + layouts/theorems-sec.module \ + layouts/theorems-starred.inc \ layouts/theorems-std.module \ - layouts/theorems-withinchap.module \ - layouts/theorems-withinsec.module \ layouts/treport.layout scriptsdir = $(pkgdatadir)/scripts diff --git a/lib/layouts/amsart.layout b/lib/layouts/amsart.layout index 43097c464a..c18972caa1 100644 --- a/lib/layouts/amsart.layout +++ b/lib/layouts/amsart.layout @@ -7,6 +7,7 @@ # Probably broken by Jean-Marc Lasgouttes # modified and modularized by Emmanuel GUREGHIAN # Tinkered with Sep. '07 by Paul Rubin +# Modularized Jan '08 by Richard Heck Format 6 Columns 1 diff --git a/lib/layouts/amsbook.layout b/lib/layouts/amsbook.layout index 0e5f7e31d6..ab7d214b50 100644 --- a/lib/layouts/amsbook.layout +++ b/lib/layouts/amsbook.layout @@ -7,6 +7,7 @@ # Probably broken by Jean-Marc Lasgouttes # modified and modularized by Emmanuel GUREGHIAN # Tinkered with Sep. '07 by Paul Rubin +# Modularized Jan '08 by Richard Heck Format 6 diff --git a/lib/layouts/amsdefs.inc b/lib/layouts/amsdefs.inc index 8c416e5039..c4ed89a1d4 100644 --- a/lib/layouts/amsdefs.inc +++ b/lib/layouts/amsdefs.inc @@ -2,10 +2,10 @@ # Probably broken by Jean-Marc Lasgouttes # modified and modularized by Emmanuel GUREGHIAN # Tinkered with Sep. '07 by Paul Rubin +# Modularized Jan '08 by Richard Heck # Including the maths stuff Format 6 -Input amsmaths.inc # The AMS documentclasses use the package amsmath and provide the # functionality of makeidx.sty. @@ -14,7 +14,6 @@ Provides makeidx 1 # the environments copied from the old amsart.layout are: -# - Proof # - Bibliography # - Title # - Author @@ -26,37 +25,6 @@ Provides makeidx 1 # - Subjectclass -Style Proof - Margin First_Dynamic - LatexType Environment - LatexName proof - NextNoIndent 1 - OptionalArgs 1 - LabelSep xx - ParIndent MMM - ParSkip 0.4 - ItemSep 0.2 - TopSep 0.7 - BottomSep 0.7 - ParSep 0.3 - Align Block - AlignPossible Block, Left - LabelType Static - LabelString "Proof." - EndLabelType Box - Font - Shape Up - Size Normal - EndFont - LabelFont - Shape Italic - EndFont - # We don't want the preamble from Theorem - Preamble - EndPreamble -End - - ### Now the title stuff. We copy do not use stdstruct.inc to keep ### things in the right order Style Title diff --git a/lib/layouts/amsmaths.inc b/lib/layouts/amsmaths.inc index a2efe1d106..443a11f981 100644 --- a/lib/layouts/amsmaths.inc +++ b/lib/layouts/amsmaths.inc @@ -589,3 +589,35 @@ Style Case {\end{list}} EndPreamble End + +Style Proof + Margin First_Dynamic + LatexType Environment + LatexName proof + NextNoIndent 1 + OptionalArgs 1 + LabelSep xx + ParIndent MMM + ParSkip 0.4 + ItemSep 0.2 + TopSep 0.7 + BottomSep 0.7 + ParSep 0.3 + Align Block + AlignPossible Block, Left + LabelType Static + LabelString "Proof." + EndLabelType Box + Font + Shape Up + Size Normal + EndFont + LabelFont + Shape Italic + EndFont +# We don't want the preamble from Theorem + Preamble + EndPreamble +End + + diff --git a/lib/layouts/theorems-ams-extended.module b/lib/layouts/theorems-ams-extended.module new file mode 100644 index 0000000000..daf4dd8cd4 --- /dev/null +++ b/lib/layouts/theorems-ams-extended.module @@ -0,0 +1,271 @@ +#\DeclareLyXModule{Theorems (AMS-Extended)} +#DescriptionBegin +#Defines some additional theorem environments for use with the +#AMS theorems packages. Includes Criterion, Algorithm, Axiom, +#Condition, Note, Notation, Summary, Acknowledgement, Conclusion, +#Fact, Assumption, and Case, in both starred and non-starred forms. +#DescriptionEnd +#Requires: Theorems (AMS) + +# Original Author : David L. Johnson +# Probably broken by Jean-Marc Lasgouttes +# modified and modularized by Emmanuel GUREGHIAN +# Tinkered with Sep. '07 by Paul Rubin +# Modularized Jan 08 by Richard Heck + +Format 6 + +Requires amsmath + +# The environnements defined (regular and starred) are : +# - Criterion +# - Algorithm +# - Axiom +# - Condition +# - Note +# - Notation +# - Summary +# - Acknowledgement +# - Conclusion +# - Fact +# - Assumption +# - Case (regular only -- defined as an enumeration) + +Style Criterion + CopyStyle Theorem + DependsOn Theorem + LatexName criterion + LabelString "Criterion \thetheorem." + Preamble + \theoremstyle{plain} + \newtheorem{criterion}[thm]{Criterion} + EndPreamble +End + +Style Criterion* + CopyStyle Theorem* + LatexName criterion* + LabelString "Criterion." + Preamble + \theoremstyle{plain} + \newtheorem*{criterion*}{Criterion} + EndPreamble +End + + +Style Algorithm + CopyStyle Theorem + DependsOn Theorem + LatexName algorithm + LabelString "Algorithm \thetheorem." + Preamble + \theoremstyle{plain} + \newtheorem{algorithm}[thm]{Algorithm} + EndPreamble +End + + +Style Algorithm* + CopyStyle Theorem* + LatexName algorithm* + LabelString "Algorithm." + Preamble + \theoremstyle{plain} + \newtheorem*{algorithm*}{Algorithm} + EndPreamble +End + + +Style Axiom + CopyStyle Theorem + DependsOn Theorem + LatexName ax + LabelString "Axiom \thetheorem." + Preamble + \theoremstyle{plain} + \newtheorem{ax}[thm]{Axiom} + EndPreamble +End + + +Style Axiom* + CopyStyle Theorem* + LatexName ax* + LabelString "Axiom." + Preamble + \theoremstyle{plain} + \newtheorem*{ax*}{Axiom} + EndPreamble +End + + +Style Condition + CopyStyle Definition + LatexName condition + LabelString "Condition \thetheorem." + Preamble + \theoremstyle{definition} + \newtheorem{condition}[thm]{Condition} + EndPreamble +End + + +Style Condition* + CopyStyle Definition* + LatexName condition* + LabelString "Condition." + Preamble + \theoremstyle{definition} + \newtheorem*{condition*}{Condition} + EndPreamble +End + + +Style Note + CopyStyle Remark + LatexName note + LabelString "Note \thetheorem." + Preamble + \theoremstyle{remark} + \newtheorem{note}[thm]{Note} + EndPreamble +End + + +Style Note* + CopyStyle Remark* + LatexName note* + LabelString "Note." + Preamble + \theoremstyle{remark} + \newtheorem*{note*}{Note} + EndPreamble +End + + +Style Notation + CopyStyle Remark + LatexName notation + LabelString "Notation \thetheorem." + Preamble + \theoremstyle{remark} + \newtheorem{notation}[thm]{Notation} + EndPreamble +End + + +Style Notation* + CopyStyle Remark* + LatexName notation* + LabelString "Notation." + Preamble + \theoremstyle{remark} + \newtheorem*{notation*}{Notation} + EndPreamble +End + + +Style Summary + CopyStyle Remark + LatexName summary + LabelString "Summary \thetheorem." + Preamble + \theoremstyle{remark} + \newtheorem{summary}[thm]{Summary} + EndPreamble +End + + +Style Summary* + CopyStyle Remark* + LatexName summary* + LabelString "Summary." + Preamble + \theoremstyle{remark} + \newtheorem*{summary*}{Summary} + EndPreamble +End + + +Style Acknowledgement + CopyStyle Remark + LatexName acknowledgement + LabelString "Acknowledgement \thetheorem." + Preamble + \theoremstyle{remark} + \newtheorem{acknowledgement}[thm]{Acknowledgement} + EndPreamble +End + + +Style Acknowledgement* + CopyStyle Remark* + LatexName acknowledgement* + LabelString "Acknowledgement." + Preamble + \theoremstyle{remark} + \newtheorem*{acknowledgement*}{Acknowledgement} + EndPreamble +End + + +Style Conclusion + CopyStyle Remark + LatexName conclusion + LabelString "Conclusion \thetheorem." + Preamble + \theoremstyle{remark} + \newtheorem{conclusion}[thm]{Conclusion} + EndPreamble +End + + +Style Conclusion* + CopyStyle Remark* + LatexName conclusion* + LabelString "Conclusion." + Preamble + \theoremstyle{remark} + \newtheorem*{conclusion*}{Conclusion} + EndPreamble +End + + +Style Assumption + CopyStyle Theorem + DependsOn Theorem + LatexName assumption + LabelString "Assumption \thetheorem." + Preamble + \theoremstyle{plain} + \newtheorem{assumption}[thm]{Assumption} + EndPreamble +End + + +Style Assumption* + CopyStyle Theorem* + LatexName assumption* + LabelString "Assumption." + Preamble + \theoremstyle{plain} + \newtheorem*{assumption*}{Assumption} + EndPreamble +End + + +# Define Case as an enumeration environment +Style Case + CopyStyle Enumerate + LatexName caseenv + LabelType Static + LeftMargin "MMMMMMN" + LabelString "Case #:" + Preamble + \newcounter{casectr} + \newenvironment{caseenv} +{\begin{list}{\bfseries\upshape Case \arabic{casectr}:}{}\setcounter{casectr}{0}\usecounter{casectr}} +{\end{list}} + EndPreamble +End + diff --git a/lib/layouts/theorems-ams-withinsec.module b/lib/layouts/theorems-ams-withinsec.module deleted file mode 100644 index 60d42f8d0b..0000000000 --- a/lib/layouts/theorems-ams-withinsec.module +++ /dev/null @@ -1,28 +0,0 @@ -#\DeclareLyXModule{Theorems (AMS, By Section)} -#DescriptionBegin -#Defines theorem environments and the proof environment for use with -#non-AMS classes, using the extended AMS machinery. The theorems are -#numbered within sections. -#DescriptionEnd -#Excludes: Theorems (AMS) | Theorems | Theorems (By Chapter) | Theorems (By Section) - -# Author: Richard Heck -# Adapted from amsdefs.inc and amsmaths.inc - -Format 6 - -Requires amsmath - -Preamble - \theoremstyle{plain} - \newtheorem{thm}{Theorem}[section] -EndPreamble - - -Counter - Name theorem - Within section -End - - -Input theorems-ams.inc diff --git a/lib/layouts/theorems-ams.inc b/lib/layouts/theorems-ams.inc deleted file mode 100644 index 5802738805..0000000000 --- a/lib/layouts/theorems-ams.inc +++ /dev/null @@ -1,499 +0,0 @@ -# Author: Richard Heck -# Stolen from amsdefs.inc and amsmaths.inc - -Style Theorem - Margin First_Dynamic - LatexType Environment - LatexName thm -#DependsOn TheoremStyle - NextNoIndent 1 - LabelSep xx - ParIndent MMM - ParSkip 0.4 - ItemSep 0.2 - TopSep 0.7 - BottomSep 0.7 - ParSep 0.3 - Align Block - AlignPossible Block, Left - LabelType Counter - LabelCounter theorem - LabelString "Theorem \thetheorem." - Font - Shape Italic - Size Normal - EndFont - LabelFont - Shape Up - Series Bold - EndFont -End - - -Style Theorem* - CopyStyle Theorem - LatexName thm* - LabelType Static - LabelString "Theorem." - Preamble - \theoremstyle{plain} - \newtheorem*{thm*}{Theorem} - EndPreamble -End - - -Style Corollary - CopyStyle Theorem - LatexName cor - LabelString "Corollary \thetheorem." - Preamble - \theoremstyle{plain} - \newtheorem{cor}[thm]{Corollary} - EndPreamble -End - - -Style Corollary* - CopyStyle Theorem* - LatexName cor* - LabelString "Corollary." - Preamble - \theoremstyle{plain} - \newtheorem*{cor*}{Corollary} - EndPreamble -End - - -Style Lemma - CopyStyle Theorem - LatexName lem - LabelString "Lemma \thetheorem." - Preamble - \theoremstyle{plain} - \newtheorem{lem}[thm]{Lemma} - EndPreamble -End - - -Style Lemma* - CopyStyle Theorem* - LatexName lem* - LabelString "Lemma." - Preamble - \theoremstyle{plain} - \newtheorem*{lem*}{Lemma} - EndPreamble -End - - -Style Proposition - CopyStyle Theorem - LatexName prop - LabelString "Proposition \thetheorem." - Preamble - \theoremstyle{plain} - \newtheorem{prop}[thm]{Proposition} - EndPreamble -End - - -Style Proposition* - CopyStyle Theorem* - LatexName prop* - LabelString "Proposition." - Preamble - \theoremstyle{plain} - \newtheorem*{prop*}{Proposition} - EndPreamble -End - - -Style Conjecture - CopyStyle Theorem - LatexName conjecture - LabelString "Conjecture \thetheorem." - Preamble - \theoremstyle{plain} - \newtheorem{conjecture}[thm]{Conjecture} - EndPreamble -End - - -Style Conjecture* - CopyStyle Theorem* - LatexName conjecture* - LabelString "Conjecture." - Preamble - \theoremstyle{plain} - \newtheorem*{conjecture*}{Conjecture} - EndPreamble -End - - -Style Criterion - CopyStyle Theorem - LatexName criterion - LabelString "Criterion \thetheorem." - Preamble - \theoremstyle{plain} - \newtheorem{criterion}[thm]{Criterion} - EndPreamble -End - - -Style Algorithm - CopyStyle Theorem - LatexName algorithm - LabelString "Algorithm \thetheorem." - Preamble - \theoremstyle{plain} - \newtheorem{algorithm}[thm]{Algorithm} - EndPreamble -End - - -Style Fact - CopyStyle Theorem - LatexName fact - LabelString "Fact \thetheorem." - Preamble - \theoremstyle{plain} - \newtheorem{fact}[thm]{Fact} - EndPreamble -End - - -Style Fact* - CopyStyle Theorem* - LatexName fact* - LabelString "Fact." - Preamble - \theoremstyle{plain} - \newtheorem*{fact*}{Fact} - EndPreamble -End - - -Style Axiom - CopyStyle Theorem - LatexName ax - LabelString "Axiom \thetheorem." - Preamble - \theoremstyle{plain} - \newtheorem{ax}[thm]{Axiom} - EndPreamble -End - - -Style Definition - CopyStyle Theorem - LatexName defn - LabelString "Definition \thetheorem." - Font - Shape Up - EndFont - LabelFont - Shape Up - Series Bold - EndFont - Preamble - \theoremstyle{definition} - \newtheorem{defn}[thm]{Definition} - EndPreamble -End - - -Style Definition* - CopyStyle Definition - LatexName defn* - LabelType Static - LabelString "Definition." - Preamble - \theoremstyle{definition} - \newtheorem*{defn*}{Definition} - EndPreamble -End - - -Style Example - CopyStyle Definition - LatexName example - LabelString "Example \thetheorem." - Preamble - \theoremstyle{definition} - \newtheorem{example}[thm]{Example} - EndPreamble -End - - -Style Example* - CopyStyle Definition* - LatexName example* - LabelString "Example." - Preamble - \theoremstyle{definition} - \newtheorem*{example*}{Example} - EndPreamble -End - - -Style Condition - CopyStyle Definition - LatexName condition - LabelString "Condition \thetheorem." - Preamble - \theoremstyle{definition} - \newtheorem{condition}[thm]{Condition} - EndPreamble -End - - -Style Condition* - CopyStyle Definition* - LatexName condition* - LabelString "Condition." - Preamble - \theoremstyle{definition} - \newtheorem*{condition*}{Condition} - EndPreamble -End - - -Style Problem - CopyStyle Definition - LatexName problem - LabelString "Problem \thetheorem." - Preamble - \theoremstyle{definition} - \newtheorem{problem}[thm]{Problem} - EndPreamble -End - - -Style Problem* - CopyStyle Definition* - LatexName problem* - LabelString "Problem." - Preamble - \theoremstyle{definition} - \newtheorem*{problem*}{Problem} - EndPreamble -End - - -Style Exercise - CopyStyle Definition - LatexName xca - LabelString "Exercise \thetheorem." - Preamble - \theoremstyle{definition} - %%Delete [section] for sequential numbering - \newtheorem{xca}[section]{Exercise} - EndPreamble -End - - -Style Exercise* - CopyStyle Definition* - LatexName xca - LabelString "Exercise." - Preamble - \theoremstyle{definition} - \newtheorem*{xca*}{Exercise} - EndPreamble -End - - -Style Remark - CopyStyle Theorem - LatexName rem - LabelString "Remark \thetheorem." - Font - Shape Up - Size Normal - EndFont - LabelFont - Series Medium - Shape Italic - EndFont - Preamble - \theoremstyle{remark} - \newtheorem{rem}[thm]{Remark} - EndPreamble -End - - -Style Remark* - CopyStyle Remark - LatexName rem* - LabelType Static - LabelString "Remark." - Preamble - \theoremstyle{remark} - \newtheorem*{rem*}{Remark} - EndPreamble -End - - -Style Claim - CopyStyle Remark - LatexName claim - LabelString "Claim \thetheorem." - Preamble - \theoremstyle{remark} - \newtheorem{claim}[thm]{Claim} - EndPreamble -End - - -Style Claim* - CopyStyle Remark* - LatexName claim* - LabelString "Claim." - Preamble - \theoremstyle{remark} - \newtheorem*{claim*}{Claim} - EndPreamble -End - - -Style Note - CopyStyle Remark - LatexName note - LabelString "Note \thetheorem." - Preamble - \theoremstyle{remark} - \newtheorem{note}[thm]{Note} - EndPreamble -End - - -Style Note* - CopyStyle Remark* - LatexName note* - LabelString "Note." - Preamble - \theoremstyle{remark} - \newtheorem*{note*}{Note} - EndPreamble -End - - -Style Notation - CopyStyle Remark - LatexName notation - LabelString "Notation \thetheorem." - Preamble - \theoremstyle{remark} - \newtheorem{notation}[thm]{Notation} - EndPreamble -End - - -Style Notation* - CopyStyle Remark* - LatexName notation* - LabelString "Notation." - Preamble - \theoremstyle{remark} - \newtheorem*{notation*}[thm]{Notation} - EndPreamble -End - - -Style Summary - CopyStyle Remark - LatexName summary - LabelString "Summary \thetheorem." - Preamble - \theoremstyle{remark} - \newtheorem{summary}[thm]{Summary} - EndPreamble -End - - -Style Acknowledgement - CopyStyle Remark - LatexName acknowledgement - LabelString "Acknowledgement \thetheorem." - Preamble - \theoremstyle{remark} - \newtheorem{acknowledgement}[thm]{Acknowledgement} - EndPreamble -End - - -Style Acknowledgement* - CopyStyle Remark* - LatexName acknowledgement* - LabelString "Acknowledgement." - Preamble - \theoremstyle{remark} - \newtheorem*{acknowledgement*}{Acknowledgement} - EndPreamble -End - - -Style Case - CopyStyle Remark - LatexName case - LabelString "Case \thetheorem." - Preamble - \theoremstyle{remark} - \newtheorem{case}{Case} %%Numbering of Cases not keyed to sections - EndPreamble -End - - -Style Conclusion - CopyStyle Remark - LatexName conclusion - LabelString "Conclusion \thetheorem." - Preamble - \theoremstyle{remark} - \newtheorem{conclusion}[thm]{Conclusion} - EndPreamble -End - - -Style Conclusion* - CopyStyle Remark* - LatexName conclusion* - LabelString "Conclusion." - Preamble - \theoremstyle{remark} - \newtheorem*{conclusion*}{Conclusion} - EndPreamble -End - - -Style Proof - Margin First_Dynamic - LatexType Environment - LatexName proof - NextNoIndent 1 - LabelSep xx - ParIndent MMM - ParSkip 0.4 - ItemSep 0.2 - TopSep 0.7 - BottomSep 0.7 - ParSep 0.3 - Align Block - AlignPossible Block, Left - LabelType Static - LabelString "Proof." - EndLabelType Box - Font - Shape Up - Size Normal - EndFont - LabelFont - Shape Italic - EndFont - # We don't want the preamble from Theorem - Preamble - EndPreamble -End - - diff --git a/lib/layouts/theorems-ams.module b/lib/layouts/theorems-ams.module index 8ab3621b2b..1cf6a76b1d 100644 --- a/lib/layouts/theorems-ams.module +++ b/lib/layouts/theorems-ams.module @@ -1,27 +1,95 @@ #\DeclareLyXModule{Theorems (AMS)} #DescriptionBegin -#Defines theorem environments and the proof environment for use with -#non-AMS classes, using the extended AMS machinery. The theorems are -#numbered consecutively throughout the document. +#Defines theorem environments and the proof environment using the extended +#AMS machinery. The theorems are numbered consecutively throughout the document. #DescriptionEnd -#Excludes: Theorems (AMS, By Section) | Theorems | Theorems (By Chapter) | Theorems (By Section) +#Excludes: Theorems -# Author: Richard Heck -# Adapted from amsdefs.inc and amsmaths.inc +# Original Author : David L. Johnson +# Probably broken by Jean-Marc Lasgouttes +# modified and modularized by Emmanuel GUREGHIAN +# Tinkered with Sep. '07 by Paul Rubin +# Modularized Jan 08 by Richard Heck Format 6 -Requires amsmath +Requires amsmath,amsthm + +Counter + Name theorem +End Preamble - \theoremstyle{plain} - \newtheorem{thm}{Theorem}[section] + \theoremstyle{plain} EndPreamble +#Get the order right +Style Theorem +End -Counter - Name theorem +Style Theorem* +End + +Style Corollary +End + +Style Corollary* +End + +Style Lemma +End + +Style Lemma* +End + +Style Proposition +End + +Style Proposition* +End + +Style Conjecture +End + +Style Conjecture* +End + +Style Definition +End + +Style Definition* +End + +Style Example +End + +Style Example* +End + +Style Problem +End + +Style Problem* End +Style Exercise +End + +Style Exercise* +End + +Style Remark +End + +Style Remark* +End + +Style Claim +End + +Style Claim* +End -Input theorems-ams.inc +Input theorems.inc +Input theorems-starred.inc +Input theorems-proof.inc diff --git a/lib/layouts/theorems-withinchap.module b/lib/layouts/theorems-chap.module similarity index 63% rename from lib/layouts/theorems-withinchap.module rename to lib/layouts/theorems-chap.module index e69eab7a03..f21cb4b2e1 100644 --- a/lib/layouts/theorems-withinchap.module +++ b/lib/layouts/theorems-chap.module @@ -1,9 +1,9 @@ -#\DeclareLyXModule{Theorems (By Chapter)} +#\DeclareLyXModule{Theorems (Order By Chapter)} #DescriptionBegin #Defines some theorem environments for use with non-AMS classes. The theorems are #numbered by chapter. #DescriptionEnd -#Excludes: Theorems (AMS, By Section) | Theorems (AMS) | Theorems | Theorems (By Section) +#Requires: Theorems | Theorems (AMS) # Author: Richard Heck # Adapted from amsmaths.inc @@ -15,4 +15,8 @@ Counter Within chapter End -Input theorems.inc +Style Theorem + Preamble + \newtheorem{thm}{Theorem}[chapter] + EndPreamble +End diff --git a/lib/layouts/theorems-proof.inc b/lib/layouts/theorems-proof.inc new file mode 100644 index 0000000000..6497fd6638 --- /dev/null +++ b/lib/layouts/theorems-proof.inc @@ -0,0 +1,39 @@ +# Author : David L. Johnson +# Probably broken by Jean-Marc Lasgouttes +# modified and modularized by Emmanuel GUREGHIAN +# This version has Theorems and other results numbered in one sequence, and all +# numbered environments (figures as well) containing the section number. +# (Themorem (1.1), Corollary (1.2) Theorem (1.3), etc. +# These are only the theorems styles environnements +# Tinkered with Sep. '07 by Paul Rubin +# Modularized Jan 08 by Richard Heck + +Format 6 + +Style Proof + Margin First_Dynamic + LatexType Environment + LatexName proof + NextNoIndent 1 + OptionalArgs 1 + LabelSep xx + ParIndent MMM + ParSkip 0.4 + ItemSep 0.2 + TopSep 0.7 + BottomSep 0.7 + ParSep 0.3 + Align Block + AlignPossible Block, Left + LabelType Static + LabelString "Proof." + EndLabelType Box + Font + Shape Up + Size Normal + EndFont + LabelFont + Shape Italic + EndFont +End + diff --git a/lib/layouts/theorems-sec.module b/lib/layouts/theorems-sec.module new file mode 100644 index 0000000000..b6461556fb --- /dev/null +++ b/lib/layouts/theorems-sec.module @@ -0,0 +1,21 @@ +#\DeclareLyXModule{Theorems (Order By Section)} +#DescriptionBegin +#Order theorems by section. +#DescriptionEnd +#Requires: Theorems | Theorems (AMS) + +# Author: Richard Heck +# Adapted from amsmaths.inc + +Format 6 + +Counter + Name theorem + Within section +End + +Style Theorem + Preamble + \newtheorem{thm}{Theorem}[section] + EndPreamble +End diff --git a/lib/layouts/theorems-starred.inc b/lib/layouts/theorems-starred.inc new file mode 100644 index 0000000000..67704f8975 --- /dev/null +++ b/lib/layouts/theorems-starred.inc @@ -0,0 +1,156 @@ +# Original Author : David L. Johnson +# Probably broken by Jean-Marc Lasgouttes +# modified and modularized by Emmanuel GUREGHIAN +# Tinkered with Sep. '07 by Paul Rubin +# Modularized Jan 08 by Richard Heck + +# The starred environnements defined are : +# - Theorem +# - Corollary +# - Lemma +# - Proposition +# - Conjecture +# - Definition +# - Example +# - Problem +# - Exercise +# - Remark +# - Claim +# - Proof + +Format 6 + +Style Theorem* + CopyStyle Theorem + LatexName thm* + LabelType Static + LabelString "Theorem." + Preamble + \theoremstyle{plain} + \newtheorem*{thm*}{Theorem} + EndPreamble +End + + +Style Corollary* + CopyStyle Theorem* + LatexName cor* + LabelString "Corollary." + Preamble + \theoremstyle{plain} + \newtheorem*{cor*}{Corollary} + EndPreamble +End + + +Style Lemma* + CopyStyle Theorem* + LatexName lem* + LabelString "Lemma." + Preamble + \theoremstyle{plain} + \newtheorem*{lem*}{Lemma} + EndPreamble +End + + +Style Proposition* + CopyStyle Theorem* + LatexName prop* + LabelString "Proposition." + Preamble + \theoremstyle{plain} + \newtheorem*{prop*}{Proposition} + EndPreamble +End + + +Style Conjecture* + CopyStyle Theorem* + LatexName conjecture* + LabelString "Conjecture." + Preamble + \theoremstyle{plain} + \newtheorem*{conjecture*}{Conjecture} + EndPreamble +End + + +Style Fact* + CopyStyle Theorem* + LatexName fact* + LabelString "Fact." + Preamble + \theoremstyle{plain} + \newtheorem*{fact*}{Fact} + EndPreamble +End + + +Style Definition* + CopyStyle Definition + LatexName defn* + LabelType Static + LabelString "Definition." + Preamble + \theoremstyle{definition} + \newtheorem*{defn*}{Definition} + EndPreamble +End + + +Style Example* + CopyStyle Definition* + LatexName example* + LabelString "Example." + Preamble + \theoremstyle{definition} + \newtheorem*{example*}{Example} + EndPreamble +End + + +Style Problem* + CopyStyle Definition* + LatexName problem* + LabelString "Problem." + Preamble + \theoremstyle{definition} + \newtheorem*{problem*}{Problem} + EndPreamble +End + + +Style Exercise* + CopyStyle Definition* + LatexName xca* + LabelString "Exercise." + Preamble + \theoremstyle{definition} + \newtheorem*{xca*}{Exercise} + EndPreamble +End + + +Style Remark* + CopyStyle Remark + LatexName rem* + LabelType Static + LabelString "Remark." + Preamble + \theoremstyle{remark} + \newtheorem*{rem*}{Remark} + EndPreamble +End + + +Style Claim* + CopyStyle Remark* + LatexName claim* + LabelString "Claim." + Preamble + \theoremstyle{remark} + \newtheorem*{claim*}{Claim} + EndPreamble +End + diff --git a/lib/layouts/theorems-std.module b/lib/layouts/theorems-std.module index 43529111a5..5188dddbb6 100644 --- a/lib/layouts/theorems-std.module +++ b/lib/layouts/theorems-std.module @@ -3,7 +3,7 @@ #Defines some theorem environments for use with non-AMS classes. The theorems are #numbered consecutively throughout the document. #DescriptionEnd -#Excludes: Theorems (AMS, By Section) | Theorems (AMS) | Theorems (By Chapter) | Theorems (By Section) +#Excludes: Theorems (AMS) # Author: Richard Heck # Adapted from amsmaths.inc @@ -15,4 +15,4 @@ Counter End Input theorems.inc - +Input theorems-proof.inc diff --git a/lib/layouts/theorems-withinsec.module b/lib/layouts/theorems-withinsec.module deleted file mode 100644 index f0c757c89d..0000000000 --- a/lib/layouts/theorems-withinsec.module +++ /dev/null @@ -1,18 +0,0 @@ -#\DeclareLyXModule{Theorems (By Section)} -#DescriptionBegin -#Defines some theorem environments for use with non-AMS classes. The theorems are -#numbered by section. -#DescriptionEnd -#Excludes: Theorems (AMS, By Section) | Theorems (AMS) | Theorems (By Chapter) | Theorems - -# Author: Richard Heck -# Adapted from amsmaths.inc - -Format 6 - -Counter - Name theorem - Within section -End - -Input theorems.inc diff --git a/lib/layouts/theorems.inc b/lib/layouts/theorems.inc index 32bb74cbf2..05b66dbc9d 100644 --- a/lib/layouts/theorems.inc +++ b/lib/layouts/theorems.inc @@ -1,5 +1,8 @@ -# Author: Richard Heck -# Adapted from amsmaths.inc +# Original Author : David L. Johnson +# Probably broken by Jean-Marc Lasgouttes +# modified and modularized by Emmanuel GUREGHIAN +# Tinkered with Sep. '07 by Paul Rubin +# Modularized Jan 08 by Richard Heck # The environnements defined are : # - Theorem @@ -9,19 +12,20 @@ # - Conjecture # - Definition # - Example +# - Problem # - Exercise # - Remark -# - Note # - Claim -# - Case -# - Conclusion -# - Fact +# - Proof + +Format 6 Style Theorem Margin First_Dynamic LatexType Environment LatexName thm NextNoIndent 1 + OptionalArgs 1 LabelSep xx ParIndent MMM ParSkip 0.4 @@ -33,7 +37,7 @@ Style Theorem AlignPossible Block, Left LabelType Counter LabelCounter theorem - LabelString "Theorem \arabic{theorem}." + LabelString "Theorem \thetheorem." Font Shape Italic Size Normal @@ -43,57 +47,75 @@ Style Theorem Series Bold EndFont Preamble + \theoremstyle{plain} \newtheorem{thm}{Theorem} EndPreamble End + Style Corollary CopyStyle Theorem + DependsOn Theorem LatexName cor LabelString "Corollary \thetheorem." Preamble + \theoremstyle{plain} \newtheorem{cor}[thm]{Corollary} EndPreamble End + Style Lemma CopyStyle Theorem + DependsOn Theorem LatexName lem LabelString "Lemma \thetheorem." Preamble + \theoremstyle{plain} \newtheorem{lem}[thm]{Lemma} EndPreamble End + Style Proposition CopyStyle Theorem + DependsOn Theorem LatexName prop LabelString "Proposition \thetheorem." Preamble + \theoremstyle{plain} \newtheorem{prop}[thm]{Proposition} EndPreamble End + Style Conjecture CopyStyle Theorem + DependsOn Theorem LatexName conjecture LabelString "Conjecture \thetheorem." Preamble + \theoremstyle{plain} \newtheorem{conjecture}[thm]{Conjecture} EndPreamble End + Style Fact CopyStyle Theorem + DependsOn Theorem LatexName fact LabelString "Fact \thetheorem." Preamble + \theoremstyle{plain} \newtheorem{fact}[thm]{Fact} EndPreamble End + Style Definition CopyStyle Theorem + DependsOn Theorem LatexName defn LabelString "Definition \thetheorem." Font @@ -104,6 +126,7 @@ Style Definition Series Bold EndFont Preamble + \theoremstyle{definition} \newtheorem{defn}[thm]{Definition} EndPreamble End @@ -114,23 +137,37 @@ Style Example LatexName example LabelString "Example \thetheorem." Preamble + \theoremstyle{definition} \newtheorem{example}[thm]{Example} EndPreamble End +Style Problem + CopyStyle Definition + LatexName problem + LabelString "Problem \thetheorem." + Preamble + \theoremstyle{definition} + \newtheorem{problem}[thm]{Problem} + EndPreamble +End + + Style Exercise CopyStyle Definition LatexName xca LabelString "Exercise \thetheorem." Preamble - \newtheorem{xca}{Exercise} + \theoremstyle{definition} + \newtheorem{xca}[thm]{Exercise} EndPreamble End Style Remark CopyStyle Theorem + DependsOn Theorem LatexName rem LabelString "Remark \thetheorem." Font @@ -142,6 +179,7 @@ Style Remark Shape Italic EndFont Preamble + \theoremstyle{remark} \newtheorem{rem}[thm]{Remark} EndPreamble End @@ -152,25 +190,9 @@ Style Claim LatexName claim LabelString "Claim \thetheorem." Preamble + \theoremstyle{remark} \newtheorem{claim}[thm]{Claim} EndPreamble End -Style Case - CopyStyle Remark - LatexName case - LabelString "Case \thetheorem." - Preamble - \newtheorem{case}[thm]{Case} - EndPreamble -End - -Style Conclusion - CopyStyle Remark - LatexName conclusion - LabelString "Conclusion \thetheorem." - Preamble - \newtheorem{conclusion}[thm]{Conclusion} - EndPreamble -End -- 2.39.5