summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/jmlr
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-10-18 23:22:22 +0000
committerKarl Berry <karl@freefriends.org>2013-10-18 23:22:22 +0000
commit4e3b1a66cb5bc31b99a07f4194dbab513ae0181b (patch)
tree24395799430a99075ce9525740aef8f651a52d4a /Master/texmf-dist/source/latex/jmlr
parenta862675d0cb1a492e213851056d56b30ee24e930 (diff)
jmlr (18oct13)
git-svn-id: svn://tug.org/texlive/trunk@31945 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/jmlr')
-rw-r--r--Master/texmf-dist/source/latex/jmlr/jmlr.dtx345
-rw-r--r--Master/texmf-dist/source/latex/jmlr/jmlr.ins4
2 files changed, 324 insertions, 25 deletions
diff --git a/Master/texmf-dist/source/latex/jmlr/jmlr.dtx b/Master/texmf-dist/source/latex/jmlr/jmlr.dtx
index 5bf541aef18..eb7336d4c16 100644
--- a/Master/texmf-dist/source/latex/jmlr/jmlr.dtx
+++ b/Master/texmf-dist/source/latex/jmlr/jmlr.dtx
@@ -1,13 +1,13 @@
%\iffalse
-% jmlr.dtx generated using makedtx version 0.94b (c) Nicola Talbot
+% jmlr.dtx generated using makedtx version 1.1 (c) Nicola Talbot
% Command line args:
% -src "jmlr.cls\Z=>jmlr.cls"
% -src "jmlrbook.cls\Z=>jmlrbook.cls"
% -doc "jmlr-manual.tex"
+% -section "chapter"
% -author "Nicola Talbot"
-% -codetitle "jmlr.cls Code"
% jmlr
-% Created on 2012/5/30 13:49
+% Created on 2013/10/17 14:36
%\fi
%\iffalse
%<*package>
@@ -30,7 +30,7 @@
%\fi
% \iffalse
% Doc-Source file to use with LaTeX2e
-% Copyright (C) 2012 Nicola Talbot, all rights reserved.
+% Copyright (C) 2013 Nicola Talbot, all rights reserved.
% \fi
% \iffalse
%<*driver>
@@ -49,8 +49,8 @@
\doxitem{Option}{option}{package options}
-\CheckSum{4533}
-\OnlyDescription
+\CheckSum{4698}
+
\newcommand*{\appopt}[1]{\texttt{-{}-#1}}
@@ -65,9 +65,9 @@
% \title{\LaTeXe\ Classes for the Journal of Machine
%Learning Research}
% \author{Nicola L. C. Talbot\\[10pt]
-%\url{http://theoval.cmp.uea.ac.uk/~nlct/}}
+%\url{http://www.dickimaw-books.com/}}
%
-% \date{2012-05-30 (version 1.17)}
+% \date{2013-10-17 (version 1.18)}
% \maketitle
%\tableofcontents
%
@@ -87,11 +87,11 @@
%\clsfmt{combine} and \clsfmt{hyperref} to work together but some
%packages (e.g.\ \sty{subfig} and \sty{pdfpages}) are likely to mess
%everything up and cause errors. This is why the guidelines to
-%authors are fairly stringent and why \clsfmt{jmlr} will give an
+%authors are fairly stringent and why the \clsfmt{jmlr} class will give an
%error message if certain packages are loaded.\footnote{Currently
%\clsfmt{jmlr} will check if \sty{subfig}, \sty{pdfpages},
%\sty{geometry}, \sty{psfig}, \sty{epsfig}, \sty{theorem},
-%\sty{tabularx} and \sty{theorem} are loaded and will throw an error.
+%\sty{tabularx}, \sty{amsthm} and \sty{ntheorem} are loaded and will throw an error.
%If other packages are found to be a problem, they will be added to
%the list.} The \clsfmt{jmlrbook} class works best with PDF\LaTeX\ so
%authors should ensure that their articles can compile with
@@ -139,7 +139,7 @@
%The \clsfmt{jmlr} class is based on the \cls{article} class and loads
%the following packages: \sty{amsmath}, \sty{amssymb},
%\sty{natbib}, \sty{url}, \sty{graphicx} and \sty{algorithm2e},
-%\sty{hyperref}, \sty{nameref} and \sty{xkeyval}.
+%\sty{hyperref}, \sty{nameref}, \sty{xcolor} and \sty{xkeyval}.
%Note that unlike the \sty{jmlr2e} and \sty{jmlrwcp2e} packages,
%this class file does not load the obsolete \sty{epsfig} package.
%
@@ -707,6 +707,65 @@
%\end{theorem}
%\end{verbatim}
%
+%You can define your own numbered theorem-like environment using:
+%\begin{definition}[\DescribeMacro{\newtheorem}]
+%\cs{newtheorem}\marg{name}\oarg{counter}\marg{title}\oarg{outer
+%counter}
+%\end{definition}
+%or you can define an unnumbered theorem-like environment using:
+%\begin{definition}[\DescribeMacro{\newtheorem*}]
+%\cs{newtheorem*}\marg{name}\marg{title}
+%\end{definition}
+%where \meta{name} is the name of the new environment and
+%\meta{title} is the title tag at the start of the environment. In
+%the case of the numbered theorems, \meta{counter} is a predefined
+%counter to use with this theorem. If omitted, a new counter called
+%\meta{name} will be defined. The final optional argument \meta{outer
+%counter} is the name of a parent counter which, when incremented, should
+%reset the theorem counter.
+%
+%Both \cs{newtheorem} and \cs{newtheorem*} set the new theorem's
+%style to the current defined style. The current style is set using
+%the following commands:
+%\begin{definition}[\DescribeMacro{\theorembodyfont}]
+%\cs{theorembodyfont}\marg{declarations}
+%\end{definition}
+%This sets the font declarations used in the body of the theorem.
+%This defaults to \cs{itshape}.
+%\begin{definition}[\DescribeMacro{\theoremheaderfont}]
+%\cs{theoremheaderfont}\marg{declarations}
+%\end{definition}
+%This sets the font declarations used for the theorem title.
+%This defaults to \cs{bfseries}.
+%\begin{definition}[\DescribeMacro{\theorempostheader}]
+%\cs{theorempostheader}\marg{text}
+%\end{definition}
+%This indicates what should occur at the end of the title. This
+%defaults to nothing.
+%\begin{definition}[\DescribeMacro{\theoremsep}]
+%\cs{theoremsep}\marg{text}
+%\end{definition}
+%This indicates what to put between the header and the body of the
+%environment. This defaults to nothing.
+%
+%For example, to define an unnumbered theorem-like environment called
+%\qt{note} with the title \qt{Note} followed by a colon and a new
+%line between the title and the body of the \texttt{note}
+%environment:
+%\begin{verbatim}
+% \theorembodyfont{\upshape}
+% \theoremheaderfont{\scshape}
+% \theorempostheader{:}
+% \theoremsep{\newline}
+% \newtheorem*{note}{Note}
+%\end{verbatim}
+%Now it can be used in the document environment:
+%\begin{verbatim}
+%\begin{note}
+%This is an numbered theorem-like environment.
+%\end{note}
+%\end{verbatim}
+%
%\section{Cross-Referencing}
%\label{sec:crossref}
%
@@ -1597,7 +1656,8 @@
%\item[\appopt{print}] Generate the grayscale print version (default).
%\item[\appopt{noprint}] Don't generate the grayscale print version.
%\item[\appopt{html}] Generate the HTML files and the individual article
-%PDFs (default).
+%PDFs (default). \emph{Caveat: TeX4HT no longer works with the
+%\clsfmt{jmlr} class.}
%\item[\appopt{nohtml}] Don't generate the HTML files and the individual
%article PDFs.
%\item[\appopt{logourl} \meta{url}] Make the logo on the HTML index page link
@@ -1632,17 +1692,18 @@
%\end{description}
%
%\StopEventually{\clearpage\phantomsection
-% \addcontentsline{toc}{section}{Index}\PrintIndex
+% \addcontentsline{toc}{chapter}{Index}\PrintIndex
%}
%
%
%
-%\section{jmlr.cls Code}
+%\chapter{The Code}
%\iffalse
% \begin{macrocode}
%<*jmlr.cls>
% \end{macrocode}
%\fi
+%\section{jmlr.cls Code}
% This class is based on the \sty{jmlr2e} package but was modified to make sure
% it works with \clsfmt{jmlrbook} which uses both \cls{combine} and
% \sty{hyperref}.
@@ -1650,7 +1711,7 @@
% Declare class and required TeX format:
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{jmlr}[2012/05/30 v1.17 (NLCT) Journal of Machine Learning Research]
+\ProvidesClass{jmlr}[2013/10/17 v1.18 (NLCT) Journal of Machine Learning Research]
% \end{macrocode}
%\changes{1.10}{2011-01-05}{hyperref now loaded by jmlr instead of
%jmlrbook}
@@ -1658,6 +1719,14 @@
% \begin{macrocode}
\RequirePackage{xkeyval}
% \end{macrocode}
+%\changes{1.18}{2013-10-17}{now requires calc package}
+% \begin{macrocode}
+\RequirePackage{calc}
+% \end{macrocode}
+%\changes{1.18}{2013-10-17}{now requires etoolbox package}
+% \begin{macrocode}
+\RequirePackage{etoolbox}
+% \end{macrocode}
% Some packages need to be loaded before \sty{hyperref} so provide a
% hook to do this:
%\begin{macro}{\jmlrprehyperref}
@@ -1687,6 +1756,18 @@
\PassOptionsToPackage{gray}{xcolor}}
% \end{macrocode}
%\end{macro}
+%\begin{option}{draft}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\DeclareOptionX{draft}{\setlength\overfullrule{5pt}}
+% \end{macrocode}
+%\end{option}
+%\begin{option}{final}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\DeclareOptionX{final}{\setlength\overfullrule{0pt}}
+% \end{macrocode}
+%\end{option}
%\begin{macro}{\iftablecaptiontop}
% Determine if the table captions should go at the top.
%\changes{1.07}{2010-06-17}{new}
@@ -1895,9 +1976,7 @@
% \begin{macrocode}
\@mparswitchtrue
% \end{macrocode}
-% \begin{macrocode}
-\def\ds@draft{\overfullrule 5pt}
-% \end{macrocode}
+%\changes{1.18}{2013-10-17}{removed \cs{ds@draft}}
% Use the plainnat bibliography style and set up the required
% punctuation.
% \begin{macrocode}
@@ -3098,6 +3177,15 @@ Keywords:} \ignorespaces}%
% \end{macrocode}
%\end{macro}
%
+%\begin{macro}{\booklinebreak}
+%\changes{1.18}{2013-10-17}{new}
+% Provided for book production editors to fine tune the book
+% line breaking. Does nothing in the standalone article.
+% \begin{macrocode}
+\newcommand{\booklinebreak}[1][]{}
+% \end{macrocode}
+%\end{macro}
+%
%\subsection{Proofs and Theorems}
% This code is taken from jmlr2e.sty
%\begin{macro}{\BlackBox}
@@ -3113,6 +3201,184 @@ Keywords:} \ignorespaces}%
Proof\ }}{\hfill\BlackBox\\[2mm]}
% \end{macrocode}
%\end{environment}
+%
+% Since \sty{theorem}, \sty{ntheorem} and \sty{amsthm} all cause
+% problems with this class, provide a simple alternative.
+%
+%\begin{macro}{\theorembodyfont}
+%\changes{1.18}{2013-10-17}{new}
+%\begin{definition}
+%\cs{theorembodyfont}\marg{font declarations}
+%\end{definition}
+% \begin{macrocode}
+\newcommand*{\theorembodyfont}[1]{%
+ \renewcommand*{\@theorembodyfont}{#1}%
+}
+\newcommand*{\@theorembodyfont}{\normalfont\itshape}%
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\theoremheaderfont}
+%\changes{1.18}{2013-10-17}{new}
+%\begin{definition}
+%\cs{theoremheaderfont}\marg{font declarations}
+%\end{definition}
+% \begin{macrocode}
+\newcommand*{\theoremheaderfont}[1]{%
+ \renewcommand*{\@theoremheaderfont}{#1}%
+}
+\newcommand*{\@theoremheaderfont}{\normalfont\bfseries }%
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\theoremsep}
+%\changes{1.18}{2013-10-17}{new}
+%\begin{definition}
+%\cs{theoremsep}\marg{separation code}
+%\end{definition}
+% \begin{macrocode}
+\newcommand*{\theoremsep}[1]{%
+ \renewcommand*{\@theoremsep}{#1}%
+}
+\newcommand*{\@theoremsep}{}%
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\theorempostheader}
+%\changes{1.18}{2013-10-17}{new}
+%\begin{definition}
+%\cs{theorempostheader}\marg{text}
+%\end{definition}
+% \begin{macrocode}
+\newcommand*{\theorempostheader}[1]{%
+ \renewcommand*{\@theorempostheader}{#1}%
+}
+\newcommand*{\@theorempostheader}{}%
+% \end{macrocode}
+%\end{macro}
+%
+%\begin{macro}{\newtheorem}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\let\jmlr@org@newtheorem\newtheorem
+\renewcommand*{\newtheorem}{\@ifstar\jmlr@snewtheorem\jmlr@newtheorem}
+% \end{macrocode}
+% Define starred version:
+%\begin{definition}
+%\cs{newtheorem*}\marg{env-name}\marg{title tag}
+%\end{definition}
+% \begin{macrocode}
+\newcommand*{\jmlr@snewtheorem}[2]{%
+ \cslet{jmlr@thm@#1@body@font}{\@theorembodyfont}%
+ \cslet{jmlr@thm@#1@header@font}{\@theoremheaderfont}%
+ \cslet{jmlr@thm@#1@sep}{\@theoremsep}%
+ \cslet{jmlr@thm@#1@postheader}{\@theorempostheader}%
+ \newenvironment{#1}%
+ {%
+ \trivlist
+ \item
+ [%
+ \hskip\labelsep{\csuse{jmlr@thm@#1@header@font}#2%
+ \csuse{jmlr@thm@#1@postheader}%
+ }%
+ ]%
+ \mbox{}\csuse{jmlr@thm@#1@sep}%
+ \csuse{jmlr@thm@#1@body@font}%
+ }%
+ {%
+ \endtrivlist
+ }%
+}
+% \end{macrocode}
+%\end{macro}
+% Unstarred version needs adjusting to take the style into account:
+%\begin{macro}{\@othm}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\newcommand{\jmlr@newtheorem}[1]{%
+ \cslet{jmlr@thm@#1@body@font}{\@theorembodyfont}%
+ \cslet{jmlr@thm@#1@header@font}{\@theoremheaderfont}%
+ \cslet{jmlr@thm@#1@sep}{\@theoremsep}%
+ \cslet{jmlr@thm@#1@postheader}{\@theorempostheader}%
+ \jmlr@org@newtheorem{#1}%
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\@xthm}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\renewcommand*{\@xthm}[2]{%
+ \def\@jmlr@currentthm{#1}%
+ \@begintheorem{#2}{\csname the#1\endcsname}%
+ \ignorespaces
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\@ythm}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\def\@ythm#1#2[#3]{%
+ \def\@jmlr@currentthm{#1}%
+ \@opargbegintheorem{#2}{\csname the#1\endcsname}{#3}%
+ \ignorespaces
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\@begintheorem}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\renewcommand*{\@begintheorem}[2]{%
+ \ifdef{\@jmlr@currentthm}%
+ {%
+ \letcs{\jmlr@this@theoremheader}{jmlr@thm@\@jmlr@currentthm @header@font}%
+ \letcs{\jmlr@this@theorembody}{jmlr@thm@\@jmlr@currentthm @body@font}%
+ \letcs{\jmlr@this@theoremsep}{jmlr@thm@\@jmlr@currentthm @sep}%
+ \letcs{\jmlr@this@theorempostheader}%
+ {jmlr@thm@\@jmlr@currentthm @postheader}%
+ }%
+ {%
+ \let\jmlr@this@theorembody\@theorembodyfont
+ \let\jmlr@this@theoremheader\@theoremheaderfont
+ \let\jmlr@this@theoremsep\@theoremsep
+ \let\jmlr@this@theorempostheader\@theorempostheader
+ }%
+ \trivlist
+ \item
+ [%
+ \hskip\labelsep{\jmlr@this@theoremheader #1\ #2%
+ \jmlr@this@theorempostheader}%
+ ]%
+ \mbox{}\jmlr@this@theoremsep
+ \jmlr@this@theorembody
+}
+% \end{macrocode}
+%\end{macro}
+%\begin{macro}{\@opargbegintheorem}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\renewcommand*{\@opargbegintheorem}[3]{%
+ \ifdef{\@jmlr@currentthm}%
+ {%
+ \letcs{\jmlr@this@theoremheader}{jmlr@thm@\@jmlr@currentthm @header@font}%
+ \letcs{\jmlr@this@theorembody}{jmlr@thm@\@jmlr@currentthm @body@font}%
+ \letcs{\jmlr@this@theoremsep}{jmlr@thm@\@jmlr@currentthm @sep}%
+ \letcs{\jmlr@this@theorempostheader}%
+ {jmlr@thm@\@jmlr@currentthm @postheader}%
+ }%
+ {%
+ \let\jmlr@this@theorembody\@theorembodyfont
+ \let\jmlr@this@theoremheader\@theoremheaderfont
+ \let\jmlr@this@theoremsep\@theoremsep
+ \let\jmlr@this@theorempostheader\@theorempostheader
+ }%
+ \trivlist
+ \item[\hskip\labelsep{\jmlr@this@theoremheader #1\ #2\ (#3)%
+ \jmlr@this@theorempostheader}]%
+ \mbox{}\jmlr@this@theoremsep
+ \jmlr@this@theorembody
+}
+% \end{macrocode}
+%\end{macro}
+%
%\begin{environment}{example}
% \begin{macrocode}
\newtheorem{example}{Example}
@@ -3899,6 +4165,12 @@ Keywords:} \ignorespaces}%
\@ifpackageloaded{theorem}{%
\ClassError{jmlr}{Package `theorem' detected.\MessageBreak
This can cause a conflict with other packages used by jmlr}{}}{}%
+ \@ifpackageloaded{ntheorem}{%
+ \ClassError{jmlr}{Package `ntheorem' detected.\MessageBreak
+ This can cause a conflict with other packages used by jmlr}{}}{}%
+ \@ifpackageloaded{amsthm}{%
+ \ClassError{jmlr}{Package `amsthm' detected.\MessageBreak
+ This package conflicts with the jmlr class}{}}{}%
\@ifpackageloaded{pdfpages}{Package `pdfpages' detected.\MessageBreak
This can cause a problem for jmlrbook.}{}%
\@ifpackageloaded{geometry}{Package `geometry' detected.\MessageBreak
@@ -3928,7 +4200,7 @@ Keywords:} \ignorespaces}%
% \begin{macrocode}
\DeclareRobustCommand*{\obsoletefontcs}[1]{%
\ClassWarning{jmlr}{Obsolete command
- \expandafter\string\csname#1\endcsname\space detected.}%
+ \expandafter\string\csname#1\endcsname\space detected}%
\csname #1 \endcsname
}
% \end{macrocode}
@@ -3998,7 +4270,7 @@ Keywords:} \ignorespaces}%
% \end{macrocode}
% Declare class:
% \begin{macrocode}
-\ProvidesClass{jmlrbook}[2012/05/30 v1.17 (NLCT) JMLR Book Style]
+\ProvidesClass{jmlrbook}[2013/10/17 v1.18 (NLCT) JMLR Book Style]
% \end{macrocode}
% Need \sty{xkeyval} package to have key=value class options
% \begin{macrocode}
@@ -4028,6 +4300,18 @@ Keywords:} \ignorespaces}%
\grayscalefalse
% \end{macrocode}
%\end{macro}
+%\begin{option}{draft}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\DeclareOptionX{draft}{\setlength\overfullrule{5pt}}
+% \end{macrocode}
+%\end{option}
+%\begin{option}{final}
+%\changes{1.18}{2013-10-17}{new}
+% \begin{macrocode}
+\DeclareOptionX{final}{\setlength\overfullrule{0pt}}
+% \end{macrocode}
+%\end{option}
%\begin{option}{color}
% \begin{macrocode}
\DeclareOptionX{color}{\grayscalefalse}
@@ -4605,6 +4889,15 @@ Keywords:} \ignorespaces}%
% \end{macrocode}
%\end{macro}
%
+%\begin{macro}{\booklinebreak}
+%\changes{1.18}{2013-10-17}{new}
+% Provided for book production editors to fine tune the book
+% line breaking.
+% \begin{macrocode}
+\renewcommand*{\booklinebreak}[1][4]{\linebreak[#1]}
+% \end{macrocode}
+%\end{macro}
+%
% Set article title
% \begin{macrocode}
\def\c@lbmaketitle{\jmlrmaketitle}
@@ -4876,7 +5169,7 @@ Keywords:} \ignorespaces}%
% Each author should be separated with \ics{Author}.
% \begin{macrocode}
\newenvironment{authorsignoff}{%
- \def\Author##1{\begin{tabular}{@{}l@{}}%
+ \def\Author##1{\begin{tabular}{@{}p{\linewidth}@{}}%
##1%
\end{tabular}%
\par\vskip\baselineskip\noindent\ignorespaces
@@ -5113,6 +5406,11 @@ Keywords:} \ignorespaces}%
\@setimportlabel
\gdef\@setimportlabel{\let\ref\Xref \let\pageref\Xpageref}%
\let\ReadBookmarks\relax
+% \end{macrocode}
+% Patch to work with \sty{auxhook} if loaded
+%\changes{1.18}{2013-10-17}{patched to work with auxhook}
+% \begin{macrocode}
+ \@ifundefined{@beginmainauxhook}{}{\@beginmainauxhook}%
}
% \end{macrocode}
%\end{macro}
@@ -5736,10 +6034,11 @@ not permitted outside `jmlrpapers' environment}{}%
%\changes{1.11}{2011/01/06}{removed penalty}
% \begin{macrocode}
\begingroup
- \parindent \z@ \rightskip \@pnumwidth
+ \parindent \z@
+ \rightskip \@pnumwidth
\parfillskip -\@pnumwidth
\leavevmode \raggedright
- #1%
+ \parbox{\linewidth-\@pnumwidth}{\raggedright#1\par}%
\par
\endgroup
\fi}
diff --git a/Master/texmf-dist/source/latex/jmlr/jmlr.ins b/Master/texmf-dist/source/latex/jmlr/jmlr.ins
index ee8ee3f83df..b1d8f99c732 100644
--- a/Master/texmf-dist/source/latex/jmlr/jmlr.ins
+++ b/Master/texmf-dist/source/latex/jmlr/jmlr.ins
@@ -1,10 +1,10 @@
-% jmlr.ins generated using makedtx version 0.94b 2012/5/30 13:49
+% jmlr.ins generated using makedtx version 1.1 2013/10/17 14:36
\input docstrip
\preamble
jmlr.dtx
- Copyright 2012 Nicola Talbot
+ Copyright 2013 Nicola Talbot
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3