mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-30 13:20:58 +00:00
8a947f63da
Design goal: Allow the use of layout "modules", which are to LaTeX packages as layout files are to LaTeX document classes. Thus, one could have a module that defined certain character styles, environments, commands, or what have you, and include it in various documents, each of which uses a different document class, without having to modify the layout files themselves. For example, a theorems.module could be used with article.layout to provide support for theorem-type environments, without having to modify article.layout itself, and the same module could be used with book.layout, etc. This patch adds the backend. The ModuleList class holds a list of the available modules, which are retrieved from lyxmodules.lst, itself generated by configure.py. There are two LFUNs available: modules-clear and module-add, which do the obvious thing; you can test by typing these into the minibuffer, along with the name of one of the available modules: URL (a CharStyle), Endnote (a Custom Inset), and---with the spaces---End To Foot (View>LaTeX and look at the user preamble), which are themselves in lib/layouts. There are some others, too, that allow theorems to be added to classes like article and book. The GUI will come next. Issues: (i) The configure.py script could be improved. It'd be nice, for example, if it tested for the presence of the LaTeX packages a particular module needs. But this would mean re-working the LaTeX script, and I don't know how to do that. Note that at present, the packages are ignored. This will change shortly. (ii) I've used std::string in LyXModule, following what seemed to be a precedent in TextClass. If some of these should be docstrings, please let me know, and I'll change them. (iii) There is at present no distinction between LaTeX and DocBook modules. Should there be? That is: Should there be modules that are available when the document class is a LaTeX class and others that are available only when it is DocBook? Or should there just be one set of modules? Each module can of course indicate for what it is suitable in its description. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@19893 a592a061-630c-0410-9148-cb99ea01b6c8
556 lines
11 KiB
Plaintext
556 lines
11 KiB
Plaintext
#\DeclareLyXModule[amsmath.sty]{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.}{Theorems (AMS)}
|
|
|
|
# Author: Richard Heck <rgheck@comcast.net>
|
|
# Adapted from amsdefs.inc and amsmaths.inc
|
|
|
|
# the environments defined are:
|
|
# - Proof
|
|
# - Theorem
|
|
# - Theorem*
|
|
# - Corollary
|
|
# - Corollary*
|
|
# - Lemma
|
|
# - Lemma*
|
|
# - Proposition
|
|
# - Proposition*
|
|
# - Conjecture
|
|
# - Conjecture*
|
|
# - Criterion
|
|
# - Algorithm
|
|
# - Axiom
|
|
# - Definition
|
|
# - Definition*
|
|
# - Example
|
|
# - Example*
|
|
# - Condition
|
|
# - Condition*
|
|
# - Problem
|
|
# - Problem*
|
|
# - Exercise
|
|
# - Remark
|
|
# - Remark*
|
|
# - Note
|
|
# - Note*
|
|
# - Notation
|
|
# - Notation*
|
|
# - Claim
|
|
# - Claim*
|
|
# - Summary
|
|
# - Acknowledgement
|
|
# - Acknowledgement*
|
|
# - Case
|
|
# - Conclusion
|
|
# - Conclusion*
|
|
# - Fact
|
|
# - Fact*
|
|
|
|
Format 5
|
|
Preamble
|
|
\usepackage{amsmath}
|
|
\theoremstyle{plain}
|
|
\newtheorem{thm}{Theorem}[section]
|
|
EndPreamble
|
|
|
|
|
|
Counter
|
|
Name theorem
|
|
End
|
|
|
|
|
|
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
|
|
|
|
|