summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/computational-complexity
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-07-28 23:04:33 +0000
committerKarl Berry <karl@freefriends.org>2011-07-28 23:04:33 +0000
commitaf14dce2ed8e2cd8157783358de054b25e3e07c3 (patch)
treea1f5531d4e306fe8fb8210a83d0fe90acf982a45 /Master/texmf-dist/source/latex/computational-complexity
parenta3177f6a8eb3a69943fa03301bd7579494b23e3e (diff)
computational-complexity 2.19 (28jul11)
git-svn-id: svn://tug.org/texlive/trunk@23259 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/computational-complexity')
-rw-r--r--Master/texmf-dist/source/latex/computational-complexity/cc.dtx1561
-rw-r--r--Master/texmf-dist/source/latex/computational-complexity/cc.ins1
2 files changed, 1190 insertions, 372 deletions
diff --git a/Master/texmf-dist/source/latex/computational-complexity/cc.dtx b/Master/texmf-dist/source/latex/computational-complexity/cc.dtx
index 0e40084c68c..1f613c04cd6 100644
--- a/Master/texmf-dist/source/latex/computational-complexity/cc.dtx
+++ b/Master/texmf-dist/source/latex/computational-complexity/cc.dtx
@@ -1,6 +1,12 @@
% \iffalse meta-comment
%
-% Copyright 2000-2008 computational complexity, Michael Nüsken
+% Copyright 2000-2011 computational complexity,
+% Michael Nüsken, <nuesken@bit.uni-bonn.de>.
+%
+% Current maintainer: Michael Nüsken, <nuesken@bit.uni-bonn.de>.
+%
+% In case of problems, please contact the current maintainer.
+% If you derive a variant or a bugfix, please also contact the author.
%
% This file is part of computational complexity macro package.
%
@@ -23,7 +29,7 @@
%
%<*chartab>
%\fi
-% \CheckSum{6340}
+% \CheckSum{7880}
%% \CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
@@ -745,9 +751,9 @@ ISBN: 0-201-43311-7
~
\meta{personal macros and packages}
~
- |%\ccpublish{}{}{}{}|
+ |%\ccsps{year=2011,volume=20,...}|
|\contact{|\meta{contact email address}|}|
- |\received{|\meta{received date}|}|
+ |\submitted{|\meta{submission date}|}|
|\title{|\meta{title}|}|
%%|%\titlehead{|\meta{running head title}|}|
|\author{|\meta{author list}|}|
@@ -772,7 +778,8 @@ ISBN: 0-201-43311-7
~
|\begin{acknowledge}|
\quad\meta{acknowledgments}
- |\end{acknowledge}|
+ |\end{acknowledge}|
+ |%\noacknowledge% must if none!|
~
|\bibliography{|\meta{bibliography files}|}|
~
@@ -788,21 +795,25 @@ ISBN: 0-201-43311-7
\email{faa@ford.somewhere.edu}\\
\homepage
{http://www.somewhere.edu/~faa/}
+
\currentaddress
Somewhere Sunny\\
SAMOA\\
\email{faa@sunny.samoa.gov}
+
\and
Second B. Author\\
Faculty of Computer Science\\
Anyplace College\\
Anyplace, CANADA Z9Z 1X1\\
\email{author@pearson.anyplace.edu}
+
\otheraddress
Private address of
\textsc{Second B. Author}:\\
Green Road\\
Notown, MOON\\
+
\and
Third C. van~Author\\
Electrical Engineering Division \\
@@ -899,12 +910,21 @@ D: \short\ref{rs-D},
%*% This is the beginning of the documentation!
\errorcontextlines9999
\documentclass[noccpublish%
-,multilingual,english,%
+,textarea=cc1,
+,multilingual,australian%
%*% Insert options here:
%,ccite%
%,noams%
]{cc}
+\newcommand{\emailmaintenance}{\email{ccmaintainer@computational-complexity.org}}
+\renewcommand{\emailmaintenance}{\email{nuesken@bit.uni-bonn.de}}
+\newcommand{\emailsubmit}{\email{submit@computational-complexity.org}}
+\newcommand{\emailtest}{\email{cctest@computational-complexity.org}}
+
+\newcommand\equal{\protect\equalb}%
+\newcommand\equalb{=}%
+
% do not use cccite but get it's file information!
{\let\ccorgProvidesPackage\ProvidesPackage
\def\ProvidesPackage#1[#2]{\ccorgProvidesPackage{#1}[#2]\endinput}%
@@ -945,7 +965,7 @@ D: \short\ref{rs-D},
\newcommand{\ccLINK}{%
\url{http://www.linkspringer.com/?genre=article&issn=1016-3328}%
\begingroup\urlstyle{tt}\Url}
-\newcommand{\cchomepage}{\url{http://www-math.upb.de/~aggathen/cc/}%
+\newcommand{\cchomepage}{\url{http://www.computational-complexity.org/}%
\begingroup\urlstyle{tt}\Url}
\newcommand{\ps}{PostScript\texttrademark}
\providecommand{\texttrademark}{}
@@ -1169,12 +1189,13 @@ D: \short\ref{rs-D},
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% paper data ...
-% \received{29 September 1999\\
+% \submitted{29 September 1999\\
% Revised 16 February 2000.\\
% Revised \today}
-\date{6 March 2000/29 August 2005/\today}
-\contact{nuesken@bit.uni-bonn.de}% or cc@upb.de
+\date{6 March 2000/% 29 August 2005/
+ 27 July 2011/\today}
+\contact{nuesken@bit.uni-bonn.de}%
\title{Preparing articles for\\\cc{}}%% ??? final versions ???
\subtitle{User's manual}
@@ -1186,7 +1207,7 @@ D: \short\ref{rs-D},
53113 Bonn,
Germany\\
\email{nuesken@bit.uni-bonn.de}\\
- \homepage{http://www.math.upb.de/~nuesken/}
+ \homepage{http://cosec.bit.uni-bonn.de/~nuesken/}
}
\begin{abstract}
@@ -1223,7 +1244,7 @@ D: \short\ref{rs-D},
}
\else%
\footnotetext[0]{This version includes the source code. The table of
- contents is on the last page.}
+ contents is on the last page(s).}
\fi%
@@ -1263,8 +1284,13 @@ the Editor-in-Chief.
\end{quotation}
Information about \cc{} can be found at the journal's homepage
\cchomepage{}. There you also find a pointer to the publisher's page
-for \cc{}: \ccLINK{}, which contains the current editorial board,
-information about subscription and prices, and more.
+for \cc{}:
+\begin{center}
+ \small
+ \ccLINK{},
+\end{center}
+which contains the current editorial board, information about
+subscription and prices, and more.
The following instructions only apply to final versions of
\emph{accepted} manu\-scripts for \cc{}. For a submission, you may
@@ -1346,15 +1372,14 @@ year = {about 300 BC},
\subsection{Testing your final file}
Once your source file is prepared like this, send it via email to
-\email{cctest@upb.de}. It will then automatically be processed in a
-defined setup: |latex|, |bibtex|, |latex|, |latex|, |dvips| are
-executed unless an error occurs. (Of course, |latex| calls
-\LaTeXe{}.) The log files and the resulting \ps{} file will be sent
-back to you. (This usually takes only a couple of minutes.) Verify
-whether everything is ok. If so, submit your \LaTeX{} file as the
-final version to \email{cc@upb.de}. Mail sent to
-\email{cctest@upb.de} is not read by anyone; only the software
-described above is automatically executed.
+\emailtest{}. It will then automatically be processed in a defined
+setup: |latex|, |bibtex|, |latex|, |latex|, |dvips| are executed
+unless an error occurs. (Of course, |latex| calls \LaTeXe{}.) The
+log files and the resulting \ps{} file will be sent back to you.
+(This usually takes only a couple of minutes.) Verify whether
+everything is ok. If so, submit your \LaTeX{} file as the final
+version to \emailsubmit{}. Mail sent to \emailtest{} is not read by
+anyone; only the software described above is automatically executed.
@@ -1395,32 +1420,33 @@ this.
\end{table}
Most \meta{personal macros and packages} can be freely used. If your
-file is processed successfully when sent to \email{cctest@upb.de},
-then your macros and the packages you used should be ok.
+file is processed successfully when sent to \emailtest{}, then your
+macros and the packages you used should be ok.
\SpecialUsageIndex{\contact}The \meta{contact email address} is the
email address of the contact author. It is required for \cc{} to
facilitate communication between the publisher and the authors.
-\SpecialUsageIndex{\received}The author received a message
-acknowledging receipt of the manuscript, with the \meta{received
- date}. \SpecialUsageIndex{\title}The \meta{title} should be broken
-into balanced lines by |\\| if necessary.
-\SpecialUsageIndex{\author}The \meta{author list} contains the names
-and addresses of the authors separated by
-\SpecialUsageIndex{\and}|\and|, each address consisting of a line with
-full author name and some address lines separated by |\\|. There
-should be no font or size changing commands. If an address line is
-very long and not nicely broken, |\newline| forces a break. Note the
-use of the tilde (|~|) in the name of the last author. It guarantees
-that |van~Author| is considered as her last name. Email and home page
-can be given as last line(s) of an address using the commands
+\SpecialUsageIndex{\received}\SpecialUsageIndex{\submitted}The author
+received a message acknowledging receipt of the manuscript, with the
+\meta{received date} or \meta{submission date}.
+\SpecialUsageIndex{\title}The \meta{title} should be broken into
+balanced lines by |\\| if necessary. \SpecialUsageIndex{\author}The
+\meta{author list} contains the names and addresses of the authors
+separated by \SpecialUsageIndex{\and}|\and|, each address consisting
+of a line with full author name and some address lines separated by
+|\\|. There should be no font or size changing commands. If an
+address line is very long and not nicely broken, |\newline| forces a
+break. Note the use of the tilde (|~|) in the name of the last
+author. It guarantees that |van~Author| is considered as her last
+name. Email and home page can be given as last line(s) of an address
+using the commands
\SpecialUsageIndex{\email}|\email{|\meta{email-address}|}| and
\SpecialUsageIndex{\homepage}|\homepage{|\meta{www-address}|}|. To
give a different current address, use
\SpecialUsageIndex{\currentaddress}|\currentaddress| to separate the
lines of the latter from the standard address. It produces a new
-address block en\-titled
-|Current address of \textsc{|\meta{present author name}|}:\\| . %
+address block en\-titled |Current address of \textsc{|\meta{present
+ author name}|}:\\| . %
The command \SpecialUsageIndex{\otheraddress}|\otheraddress| can be
used to specify another address block for the present author without
such a heading. An \meta{abstract}, \meta{keywords} and a
@@ -1501,7 +1527,7 @@ In rare occasions, you might prefer an unnumbered theorem:
Of course, we are not restricted to theorems:
\begin{texexample}
\begin{lemma}
- \label{lemma}
+ \label{res:lemma}
We can also have lemmas.
\begin{enumerate}
\item\label{lemma:1}
@@ -1540,7 +1566,7 @@ Note \pagebreak[3] that an example is always terminated by a lozenge
no) symbol. The other theorem-like environments can be continued in
this way:\nobreak
\begin{texexample}
-\begin{continued}{lemma}
+\begin{continued}{res:lemma}
This continues the lemma.
\end{continued}
\end{texexample}
@@ -1706,7 +1732,7 @@ must precede your own bibliography file!) Since this will be updated
only sporadically, the latest conference proceedings may be missing
here.
-\subsubsection{\dots{} without \Lpackage{natbib}}
+\subsubsection{\dots without \Lpackage{natbib}}
If the package \Lpackage{natbib} is not installed on your system for
some obscure reason, you can issue the option \Lclo{cccite} to switch
@@ -1801,7 +1827,7 @@ must not be used. (The same holds for its derivative
\item email address of contact author,
\item key words,
\item subject classification,
- \item received date.
+ \item submission or received date.
\end{itemize}
Please make sure you have filled them appropriately.
\item Manuscripts are in \emph{(American) English}. Authors are
@@ -1873,26 +1899,102 @@ must not be used. (The same holds for its derivative
\subsection{Commands for the journal editor and publishers}
\label{sec:editor}
-The journal editor and publishers will insert the publishing data.
-The declaration
-\begin{center}
- \SpecialUsageIndex{\ccpublish}%
- |\ccpublish{|\meta{year}|}{|\meta{volume}|}|%^^A
- |{|\meta{number}|}{|\meta{first page}|}|
-\end{center}
-will be inserted next to author and title information. Further, the
-commands \SpecialUsageIndex{\electronic}|\electronic| and
-\SpecialUsageIndex{\printed}|\printed| switches the ISSN to the
-electronic or printed version, respectively.
+The journal editor and publishers will insert the publishing data
+(right after the \cs{documentclass}).
+
+For Springer Pubishing Services there is a special macro \cs{ccsps} to
+handle the entire production flow. Its argument is a comma separated
+list of |key=value| pairs and |key| singletons. This list is
+interpreted by the package \Lpackage{xkeyval}. A singleton |key| in
+the list is interpreted as |key=|\meta{default}, and causes the key
+|key| to be set to its default value (provided it has one). In
+particular, for boolean keys this |key| always means |key=true|.
+\begin{verse}
+ \SpecialUsageIndex{\ccsps}%
+ |\ccsps{|\\
+ | issuestage,|\\
+ | year=|\meta{year}|,|\\
+ | volume=|\meta{volume}|,|\\
+ | issue=|\meta{issue}|,|\\
+ | firstpage=|\meta{firstpage}|,|\\
+ | |\dots\\
+ |}|
+\end{verse}
+There are a lot more options to be chosen:
+\begin{itemize}
+\item The key |submitted| sets the received date. Note, that this
+ setting overrides the \cs{received} date.
+\item The boolean key |revisionstage| turns on (or off) the revision
+ features. Initially set to |false|.
+ \begin{itemize}
+ \item The key |DOImsnr| sets the manuscript number. It can be set
+ to any value. This is the \emph{Article No.} occuring in the
+ helper strip. Default |??|.
+ \item The boolean keys |TYPESET|, |DISK|, |LE| and |CP| set certain
+ hooks in the help strip. Initially set to |false|.
+ \item The key |draftcopy| can be set to any value to be used as a
+ watermark. Default |Uncorrected proof|.
+ \item The boolean key |grid| turns on (or off) the alignment
+ grid. Initially set to |false|.
+ \end{itemize}
+\item The boolean key |issuestage| turns on (or off) the display of
+ publication details like volume, issue, pages, doi and
+ more. Initially set to |false|.
+ \begin{itemize}
+ \item The key |year| sets the publishing year. Default |\the\year|.
+ \item The key |volume| sets the volume. Default |??|.
+ \item The key |issue| sets the issue. Default |??|.
+ \item The key |firstpage| sets the number of the first page. Default
+ |1|.
+ \item The key |copyholder| sets the copyright holder. The default
+ is |Springer Basel AG| or |The Author(s)| for normal or open
+ access, respectively.
+ \item The key |doisuffix| sets the doi to
+ |10.1007/s00037-|\meta{year}|-|\meta{doisuffix}. Alternatively,
+ the key |doi| sets the entire doi. Initially set to
+ |10.1007/s00037-|\meta{year}|-????-?|.
+ \item The key |onlinedate| sets the online date. Default |??|.
+ \item Deprecated: The key |onlinefirstyear| is the same as the
+ publishing year, see |year|.
+ \item Deprecated: The key |coveryear| sets the (two digit) cover
+ year for use in the article identifier (above the DOI). Default
+ last two digits of |\the\year|.
+ \end{itemize}
+\item The boolean key |pdfpage| turns on (or off) all settings for
+ producing the online pdf. In particular, if it is off then the
+ helper strip, linenumbers and a draft watermark are displayed.
+ Initial settings is |false|.
+\item The boolean key |xlink| turns on (or off) settings for
+ hyperlinks. Initial settings is |false|.
+\end{itemize}
+
+For publication in \cc{} abstract, keywords and subjection
+classification are usually required. The commands \cs{noabstract},
+\cs{nokeywords} and \cs{nosubject} may be used to turn off errors
+raised by missing abstract, keywords and subject classification,
+respectively.
+\begin{sloppypar}
+ \scriptsize OUT-OF-DATE: Prior to mid 2011 the declaration
+ \begin{center}
+ \SpecialUsageIndex{\ccpublish}%
+ |\ccpublish{|\meta{year}|}{|\meta{volume}|}|%^^A
+ |{|\meta{number}|}{|\meta{first page}|}|
+ \end{center}
+ was inserted next to author and title information. Further, the
+ commands \SpecialUsageIndex{\electronic}|\electronic| and
+ \SpecialUsageIndex{\printed}|\printed| switches the ISSN to the
+ electronic or printed version, respectively.
+\end{sloppypar}
+
\subsection{Disclaimer}
\label{sec:disclaimer}
The macros are not guaranteed to be free of errors, and any bugs,
inconsistencies, and suggestions for further improvement or other
-comments should be reported to \email{cc@upb.de}.
+comments should be reported to \emailmaintenance{}.
\condbreak{1cm}
@@ -1918,16 +2020,42 @@ If there are any |\newtheorem| commands then turn them off and use the
\Lclass{cc} theorem environments described in \ref{sec:thm+proof}.
(Note that there is an environment \Lenv{namedtheorem} for
theorem-like environments with unforeseen names. You can also use
-this in a |\newenvironment| definition if necessary.) If there are
-definitions for proofs or qed signs then turn them off, too; the
-\Lclass{cc} class provides these things.
+this in a definition like
+\begin{verse}
+ |\newenvironment{bla}{\theorem}{\endtheorem}|\\
+ |\newenvironment{foo}{\namedtheorem{Foo}}{\endnamedtheorem}|
+\end{verse}
+if necessary.) If there are definitions for proofs or qed signs then
+turn them off, too; the \Lclass{cc} class provides these things.
+
+For publication in \cc{} you should next switch to author-year
+citations. To do so:
+\begin{itemize}
+\item remove the option |nonatbib|,
+\item add your |.bib|-file in
+ \begin{verse}
+ |\begin{filecontents*}{\jobname.bib}| \\
+ | |\dots\\
+ |\end{filecontents*}|
+ \end{verse}
+ before |\documentclass|,
+\item throw away your handwritten environment \Lenv{thebibliography}
+ if any and the command |\bibliographystyle| if present, and replace
+ it or your |\bibliography| command with |\bibliography{|\meta{name
+ of your |.bib|-file}|}|.
+\item Then run |latex|, |bibtex| and |latex| twice and
+\item adjust the text at the citation points: In particular, replace
+ all |\cite| commands with either |\citet| for textual, |\citep| for
+ parenthetical or |\citealt| for use inside parentheses. (Well,
+ |\cite| is usually equivalent to |\citet|. However, changing all
+ shows that it's done.)
+\end{itemize}
-Optional: For better readability you are asked to switch to the new
-citation scheme. To do so: add your |.bib|-file, throw away your
-handwritten environment \Lenv{thebibliography} and the command
-|\bibliographystyle| if present, and replace it with
-|\bibliography{|\meta{name of your |.bib|-file}|}|. Then run |latex|
-twice and adjust the text at the citation points.
+Finally, you may want to switch to more intelligent |\ref|, see
+\ref{sec:label+ref}. To do so just remove the option |noprefixes| and
+adapt text at your |\ref| commands, usually by removing words like
+Theorem, Section before them and parentheses around equation
+references.
\section{Make your document portable}
@@ -1936,9 +2064,9 @@ twice and adjust the text at the citation points.
In order to make your \Lclass{cc} source file portable to persons who
did not yet install the \Lclass{cc} class, include the file
|cc-cls-inline.tex|. This file can be found on the journal's homepage
-\url{http://www-math.upb.de/~aggathen/cc/}. Please do not forget to
-remove the following changes prior to sending your file to \cc{}, it
-will have no effect there. You have two options:
+\url{http://www.computational-complexity.org/}. Please do not forget
+to remove the following changes prior to sending your file to \cc{},
+it will have no effect there. You have two options:
\begin{enumerate}
\item Simply include the entire file |cc-cls-inline.tex| in your file
just before the |\documentclass| command. This has the drawback
@@ -1959,7 +2087,6 @@ will have no effect there. You have two options:
\item
\label{macro:documentclass}
\DescribeMacro{\documentclass}|\documentclass[|\meta{options}|]{cc}|
-
Possible \meta{options} are:
\begin{itemize}
\item any option from the \Lclass{article} document class.
@@ -1970,9 +2097,9 @@ Possible \meta{options} are:
\Lclo{notitlepage}, \Lclo{onecolumn}, \Lclo{twocolumn},
\Lclo{leqno}, \Lclo{fleqn}, \Lclo{openbib}, though not all of them
might produce nice results.) Note that all the \Lclo{*paper}
- options invoke the option \Lclo{nocctextarea}, you need to add
- \Lclo{cctextarea} after the \Lclo{*paper} option to get the same
- text area as in \cc{} then.
+ options invoke the option \Lclo{textarea\protect\equal none}, you need to add
+ \Lclo{textarea\equal cc} (or similar, see below) after the \Lclo{*paper}
+ option to get the same text area as in \cc{} then.
\item any option from the \AMS{} packages (if they are not disabled by
\Lclo{noams}). (\Lclo{intlimits}, \Lclo{nointlimits},
\Lclo{sumlimits}, \Lclo{nosumlimits}, \Lclo{namelimits},
@@ -1993,13 +2120,29 @@ Further, the following \meta{options} are available. They are mainly
intended to deactivate certain standard features of the class, in
cases where these cause trouble.
\begin{itemize}
-\item \Lclo{ams} (default): use the \AMS{} packages
- \Lpackage{amsmath}, \Lpackage{amsfonts}, \Lpackage{amssymb}.
+\item \Lclo{ams} (default): use the \AMS{} packages \Lpackage{amsmath}
+ (which includes \Lpackage{amstext}, \Lpackage{amsgen},
+ \Lpackage{amsbsy}, \Lpackage{amsopn}), \Lpackage{amsfonts},
+ \Lpackage{amssymb}.
\item \Lclo{noams}: do not use the \AMS{} packages.
\item \Lclo{cclayout}, \Lclo{nocclayout} turn the \cc{} layout on or
off.
-\item \Lclo{cctextarea}, \Lclo{nocctextarea} turn the \cc{} text area
- on or off. They are only effective with \Lclo{cclayout}.
+\item \Lclo{textarea\equal cc} (default with \Lclo{ccpublish}) always
+ takes the newest cc text area from the following:
+ \begin{itemize}
+ \item \Lclo{textarea\equal cc2} (119mm $\times$ 45.5pc) picks the cc
+ text area (after July 2011),
+ \item \Lclo{textarea\equal cc1} (141mm $\times$ 200mm) picks the cc
+ text area (before July 2011),
+ \end{itemize}
+ For downward compatibility the option \Lclo{cctextarea} equaling
+ \Lclo{textarea\equal cc} and \Lclo{nocctextarea} equaling
+ \Lclo{textarea\equal none} still work. All these options have no
+ effect with \Lclo{nocclayout}.
+\item \Lclo{textarea\equal full} makes the text area as large as
+ possible (with $\frac12$in margin to all sides).
+\item \Lclo{textarea\equal none} takes whatever is there. This is
+ same as \Lclo{nocctextarea}.
\item \Lclo{noothermargins}, \Lclo{classicalmargins},
\Lclo{printmargins}, \Lclo{balancedmargins}: Choose margin mode.
\Lclo{noothermargins} leaves the margins alone,
@@ -2028,14 +2171,17 @@ cases where these cause trouble.
\item \Lclo{onecolumnbibliography} (default),
\Lclo{twocolumnbibliography}: With these options you can choose one
or two columns for the bibliography.
+\item \Lclo{twocolumnendtitle} (default), \Lclo{onecolumnendtitle}:
+ With these options you can choose one or two columns for the
+ bibliography.
\item \Lclo{cctheorems} (default): theorem like environments are
defined as described.
\item \Lclo{nocctheorems}: theorem like environments are \emph{not}
defined at all.
\item \Lclo{prefixes} (default): references to theorems, equations,
- and so on, come with prefixes, e.g.\
- \SpecialUsageIndex{\ref}|\ref{lemma}| produces `\ref{lemma}' rather
- than only `\bare\ref{lemma}',
+ and so on, come with prefixes, e.g.\
+ \SpecialUsageIndex{\ref}|\ref{res:lemma}| produces `\ref{res:lemma}'
+ rather than only `\bare\ref{res:lemma}',
\item \Lclo{noprefixes}: references behave as in standard \LaTeXe{},
\item \Lclo{bare} (default): \SpecialUsageIndex{\label}|\label| produces two
labels instead of one, a long form for
@@ -2047,7 +2193,7 @@ cases where these cause trouble.
\item \Lclo{theoremitemprefixes} (default): references to subtopics of
a theorem (or lemma ...) consist of the theorem reference and the
item reference, for example, |\ref{lemma:2}| produces
- `\ref{lemma:2}'. In fact, between \ref{lemma} and the following
+ `\ref{lemma:2}'. In fact, between \ref{res:lemma} and the following
theorem or equation (\ref{myfirst} in our case) you would have
obtained `\short\ref{lemma:2}'. This short form can be forced by
\SpecialUsageIndex{\short\string\ref}|\short\ref{lemma:2}|. You can
@@ -2091,10 +2237,12 @@ support.
Preamble command to specify the email address of the contact author.
This is required for publications in \cc{}.
-\item \DescribeMacro{\received}|\received{|\meta{received date}|}|
+\item \DescribeMacro{\received}|\received{|\meta{submission date}|}|
+ \DescribeMacro{\submitted}|\submitted{|\meta{submission date}|}|
- Preamble command to declare the received date of the manuscript.
- Use the format \texttt{8 August 2008}.
+ Preamble command to declare the submission or received date of the
+ manuscript. (Both variants do exactly the same!) Use the format
+ \texttt{27 July 2011}.
\item \DescribeMacro{\author}|\author{|\meta{author list}|}|
@@ -2143,7 +2291,8 @@ support.
\item \DescribeMacro{\date}|\date{|\meta{date}|}|
Preamble command, default is |\today|. This date is \emph{not} used
- when the article is published in \cc{}.
+ when the article is published in \cc{}, but it is put in the header
+ when using the option \Lclo{noccpublish}.
\item \DescribeEnv{abstract}|\begin{abstract}| \meta{text}
|\end{abstract}|
@@ -2166,7 +2315,8 @@ support.
\meta{acknowledgments} |\end{acknowledge}|
Environment for acknowledgments. Funding information can also be
- included here.
+ included here. If there are no acknowledgements you \emph{must} put
+ \cs{noacknowledge} instead.
\item \DescribeMacro{\bibliography}|\bibliography{|\meta{list of
bibliography files}|}|
@@ -2353,14 +2503,19 @@ bibliography entry.
\pagebreak[3]
-\item \DescribeMacro{\ccpublish}|\ccpublish{|\meta{year}|}|%
- |{|\meta{volume}|}{|\meta{number}|}{|\meta{first page}|}|
-
- Preamble command to define \meta{year}, \meta{volume},
- \meta{number}, and \meta{first page} of the final publication
- \emph{by the editor}. Not intended for use by anybody else. Note
- that this forces the document class options \Lclo{autotitle} and
- \Lclo{ccpublish}.
+\item \DescribeMacro{\ccsps}|\ccsps{|\meta{keyvaluelist}|}|
+
+ Preamble command to define publishing service information. See
+ \ref{sec:editor} for details.
+
+%%% \item \DescribeMacro{\ccpublish}|\ccpublish{|\meta{year}|}|%
+%%% |{|\meta{volume}|}{|\meta{number}|}{|\meta{first page}|}|
+%%%
+%%% Deprecated preamble command to define \meta{year},
+%%% \meta{volume}, \meta{number}, and \meta{first page} of the final
+%%% publication \emph{by the editor}. Not intended for use by
+%%% anybody else. Note that this forces the document class options
+%%% \Lclo{autotitle} and \Lclo{ccpublish}.
\item \DescribeMacro{\electronic}|\electronic|,
\DescribeMacro{\printed}|\printed|
@@ -2652,6 +2807,20 @@ multilingual,english]{cc}
% setrefrange in ccalgo, Michael N{\"{u}}sken, Bonn}
% \changes{v2.14}{2010/10/14}{Advanced version to 2.15, added
% cc4svjour, Michael N{\"{u}}sken, Bonn}
+% \changes{v2.15}{2010/10/21}{Advanced version to 2.15b, added ccref
+% built from moved code, Michael N{\"{u}}sken, Bonn}
+% \changes{v2.16}{2011/07/05}{Advanced version to 2.16, added more
+% new cctextarea options, changed default. Michael N{\"{u}}sken, Bonn}
+% \changes{v2.17b}{2011/07/06}{Advanced version to 2.17b, removed a
+% bug. Michael N{\"{u}}sken, Bonn}
+% \changes{v2.17c}{2011/07/13}{Advanced version to 2.17c, removed a
+% bug. Michael N{\"{u}}sken, Bonn}
+% \changes{v2.18}{2011/07/15}{Advanced version to 2.17c, removed a
+% bug. Michael N{\"{u}}sken, Bonn}
+% \changes{v2.19}{2011/07/28}{Advanced version to 2.19, many
+% modifications for publication service (search sps), removed some
+% comments. It is plan to advance to 3.0 soon. Michael
+% N{\"{u}}sken, Bonn}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\providecommand\ignorespacesafterend{\@ignoretrue}
@@ -2660,7 +2829,7 @@ multilingual,english]{cc}
\ifclass\expandafter\ProvidesClass\else\expandafter\ProvidesPackage\fi
{\ifclass cc\else cc-cls\fi}
[% CC MAIN DATE AND VERSION ON NEXT LINE
-2010/10/14 v2.15
+2011/07/28 v2.19
computational complexity
\ifclass document class\else package\fi]
% \end{macrocode}
@@ -2762,6 +2931,8 @@ computational complexity
\DeclareOption{manualbibliography}{\@manualbibliographytrue}
\DeclareOption{twocolumnbibliography}{\@twocolumnbibliographytrue}
\DeclareOption{onecolumnbibliography}{\@twocolumnbibliographyfalse}
+\DeclareOption{twocolumnendtitle}{\@twocolumnendtitletrue}
+\DeclareOption{onecolumnendtitle}{\@twocolumnendtitlefalse}
% \end{macrocode}
% With \Lenv{natbib} you can choose whether you want multiple
% citations unsorted, sorted or compressed.
@@ -2770,6 +2941,8 @@ computational complexity
\def\@natbibsort{}}
\DeclareOption{sort}{%
\def\@natbibsort{\PassOptionsToPackage{sort}{natbib}}}
+\DeclareOption{compress}{%
+ \def\@natbibsort{\PassOptionsToPackage{compress}{natbib}}}
\DeclareOption{sort&compress}{%
\def\@natbibsort{\PassOptionsToPackage{sort&compress}{natbib}}}
% \end{macrocode}
@@ -2809,8 +2982,8 @@ computational complexity
\PassOptionsToPackage{notheoremitemprefixes}{ccthm}}
% \end{macrocode}
% \cc{} requires received date, author, title, abstract, keywords,
-% and subject classification. With \Lclo{noccpublish} these things
-% are optional.
+% subject classification and acknowledgements. With
+% \Lclo{noccpublish} these things are optional.
% \begin{macrocode}
\DeclareOption{ccpublish}{\@ccpublishtrue}
\DeclareOption{noccpublish}{\@ccpublishfalse}
@@ -2821,12 +2994,19 @@ computational complexity
% version and with all options \Lclo{*paper}.
% \changes{v2.01}{2001/02/22}{Added options cctextarea/nocctextarea.
% Michael N{\"{u}}sken, Paderborn}
+% \changes{v2.16}{2011/07/05}{Added options cctextarea=2/cctextarea=1.
+% Michael N{\"{u}}sken, Bonn}
%
% \Lclo{classicalmargins} are as with the old \file{cc.sty}.
% \Lclo{printmargins} are as in the printed version, while
% \Lclo{balancedmargins} uses equal |\oddsidemargin| and
% |\evensidemargin|.
% \begin{macrocode}
+\DeclareOption{textarea=full}{\@textareaversion\m@ne}
+\DeclareOption{textarea=none}{\@textareaversion\z@}
+\DeclareOption{textarea=cc1}{\@textareaversion\@ne}
+\DeclareOption{textarea=cc2}{\@textareaversion\tw@}
+\DeclareOption{textarea=cc}{\@cctextareatrue}
\DeclareOption{cctextarea}{\@cctextareatrue}
\DeclareOption{nocctextarea}{\@cctextareafalse}
\DeclareOption{noothermargins}{\@marginmode\m@ne}
@@ -2875,7 +3055,7 @@ computational complexity
OT1,nolatin1,nobabel,%
localnumbering,bare,%
leqno,ams,ccpublish,cclayout,autotitle,ccsectioning,%
- onecolumnbibliography,natbib,sort&compress,%
+ onecolumnbibliography,twocolumnendtitle,natbib,sort&compress,%
cctheorems,theoremitemprefixes,noseparateequationcounting,%
ccalgorithms}
\else
@@ -2883,7 +3063,7 @@ computational complexity
OT1,nolatin1,nobabel,%
localnumbering,bare,%
leqno,ams,noccpublish,nocclayout,noautotitle,ccsectioning,%
- onecolumnbibliography,natbib,sort&compress,%
+ onecolumnbibliography,twocolumnendtitle,natbib,sort&compress,%
cctheorems,theoremitemprefixes,noseparateequationcounting,%
ccalgorithms}
\fi
@@ -2951,8 +3131,7 @@ computational complexity
\if@Tone
\RequirePackage[T1]{fontenc}
\fi
-%%german.sty is not allowed. Use global options:
-%%multilingual,german.
+% german.sty is not allowed. Use global options: multilingual,german.
\@pass@ptions\@pkgextension{}{german}
\global\expandafter\let\csname ver@german.\@pkgextension\endcsname\@empty
\if@babel
@@ -2981,19 +3160,12 @@ computational complexity
\expandafter\noexpand\csname the#3\endcsname%
.\noexpand#1{#2}}}}%
}
-%% \def\numberwithin#1#2{\@ifundefined{c@#1}{\@nocounterr{#1}}{%
-%% \@ifundefined{c@#2}{\@nocnterr{#2}}{%
-%% \@addtoreset{#1}{#2}%
-%% \toks@\expandafter\expandafter\expandafter{\csname the#1\endcsname}%
-%% \expandafter\xdef\csname the#1\endcsname
-%% {\expandafter\noexpand\csname the#2\endcsname
-%% .\the\toks@}}}}
\let\@ifempty\cc@ifempty
\let\@ifnotempty\cc@ifnotempty
\let\bigstar\bullet
\let\lozenge\circ
-\def\square{{\fboxsep.3em{\vbox{\hbox{\fbox{}}\vskip0pt}}}}
-\let\text\mbox% This is a poor man's version!
+\def\square{{\fboxsep.3em{\vbox{\hbox{\fbox{}}\vskip0pt}}}}%
+\let\text\mbox
\fi
% \end{macrocode}
% \begin{macro}{\email}
@@ -3043,15 +3215,16 @@ computational complexity
% \end{macrocode}
% \begin{macro}{\ps@cc}
% A variant of the page style \texttt{cc} is defined. Use
-% |\newcommand{\cctitlehead}{|\meta{title text}|}| to specify the
+% |\renewcommand{\cctitlehead}{|\meta{title text}|}| to specify the
% text for the running heads, and
-% |\newcommand{\ccauthorhead}{|\meta{author(s)}|}| to specify the
+% |\renewcommand{\ccauthorhead}{|\meta{author(s)}|}| to specify the
% authors for the running heads.
% \begin{macrocode}
\newskip\headerindent \headerindent=10mm
\newdimen\headrulewidth \headrulewidth.4pt
\def\cctitlehead{}
\def\ccauthorhead{}
+\let\ps@ccfirst\ps@empty
\def\ps@cc{\let\@mkboth\markboth
\def\@oddhead{\vbox{\hbox to\textwidth{\reset@font\strut
\null
@@ -3194,7 +3367,7 @@ computational complexity
% \end{macrocode}
%
% \begin{environment}{thebibliography}
-% We redefine this envrionment in order to reflect the citation
+% We redefine this environment in order to reflect the citation
% scheme given by \Lpackage{cccite} and to allow also the
% alternative style using numbers.
% \changes{v0.90}{1999/11/11}{Added \cs{condbreak\{8ex\}}. Michael
@@ -3280,49 +3453,14 @@ computational complexity
%
% \subsection{Referencing}
%
-% \begin{macro}{\defprefix}
-% \LaTeX{} already defined the features for nice references, although
-% they were not really used. The package \Lpackage{relabel} provides
-% some macros to use these features. Especially, a macro
-% |\defprefix| is defined which allows to define a prefix for the
-% label of a counter:
-% |\defprefix{|\meta{counter}|}|\meta{definition}.
-% \changes{v2.01}{2000/09/15}{Internationalized prefixes.
-% Michael N{\"{u}}sken, Paderborn}
-% \changes{v2.01}{2000/11/28}{Added \cs{chaptername}.
-% Michael N{\"{u}}sken, Paderborn}
+% All this stuff has been moved to a seperate file: \Lpackage{ccref}.
+% \changes{v2.15}{2010/10/21}{Moved this from the main part into a
+% seperate file.}
+%
% \begin{macrocode}
-\RequirePackage{relabel}[1998/09/07 v1.01]
-\let\nref\ref
-% \end{macrocode}
-% \end{macro}
-% We define prefixes for the standard counters.
-% \begin{macrocode}
-\babel\def\partname{Part}[german=Teil,french=\protect\@Fpt partie]
-\defprefix{part}{\partname~}
-\babel\def\chaptername{Chapter}[german=Kapitel,french=Chapitre]
-\defprefix{chapter}{\chaptername~}
-\babel\def\sectionname{Section}[german=Abschnitt,french=Section]
-\defprefix{section}{\sectionname~}
-\babel\def\subsectionname{Section}[german=Abschnitt,french=Section]
-\defprefix{subsection}{\subsectionname~}
-\babel\def\subsubsectionname{Section}[german=Abschnitt,french=Section]
-\defprefix{subsubsection}{\subsubsectionname~}
-\let\ccorg@appendix\appendix
-\babel\def\appendixname{Appendix}[german=Anhang,french=Annexe]
-\def\appendix{%
- \defprefix{section}{\appendixname~}%
- \defprefix{subsection}{\appendixname~}%
- \defprefix{subsubsection}{\appendixname~}%
- \ccorg@appendix}
-\defprefix{equation}#1{(#1)}
-\babel\def\figurename{Figure}[german=Figur,french={\scshape Figure}]
-\defprefix{figure}{\figurename~}
-\babel\def\tablename{Table}[german=Tafel,french={\scshape Table}]
-\defprefix{table}{\tablename~}
-\numberallwithin{section}
-\AtBeginDocument{\@adjustnumbering}
+\RequirePackage{ccref}
% \end{macrocode}
+%
% \subsection{Theorems, Proofs and Algorithms}
%
% All these things are imported.
@@ -3334,16 +3472,54 @@ computational complexity
\if@ccalgo
\RequirePackage{ccalgo}
\fi
+\let\orig@newtheorem\newtheorem
+\def\newtheorem{%
+ \ClassWarning{cc}{You should not use newtheorem.\MessageBreak
+ See Section 3.1 of the documentation.}%
+ \orig@newtheorem}
% \end{macrocode}
%
% \subsection{Other}
%
% \begin{environment}{acknowledge}
% This environment simply constitues of an unnumbered section.
+% To complicate things Springer adds a paragraph when the article
+% is made available for free. If an article has no
+% acknowledgements put the command \cs{noacknowledge} at the very
+% position.
+% \changes{v2.18}{2011/07/26}{Added \cs{noacknowledge} with support
+% for an extra open access message. Added acknowledgements to
+% toc. MNuesken, Bonn}
% \begin{macrocode}
\babel\def\ccacknowledgementsname{Acknowledgements}[%
german=Danksagung,french=Remerciements]
-\newenvironment{acknowledge}{\section*{\ccacknowledgementsname}}{}
+\newif\if@ccack \@ccacktrue% usually acknowledgements are not required
+\AtEndDocument{%
+ \if@ccack\else
+ \ClassError{cc}{Missing acknowledgements}
+ {You must use either\MessageBreak
+ \protect\begin{acknowledge} ... \protect\end{acknowledge}\MessageBreak
+ or \protect\noacknowledge.}%
+ \fi
+}
+\newenvironment{acknowledge}{%
+ \section*{\ccacknowledgementsname}%
+ \addcontentsline{toc}{section}{\ccacknowledgementsname}%
+}{%
+ \noacknowledge
+}
+\newcommand{\noacknowledge}{%
+ \ifKV@ccsps@openaccess\if@ccack\else%
+ \noindent{\small\@octxt\par}%
+ \fi\fi%
+ \global\@ccacktrue
+}%
+\def\@octxt{}%
+\def\openchoicetext#1{\gdef\@octxt{\paragraph{Open Access.} #1}}%
+\openchoicetext{This article is distributed under the terms of the
+ Creative Commons Attribution Noncommercial License which permits any
+ noncommercial use, distribution, and reproduction in any medium,
+ provided the original author(s) and source are credited.}%
% \end{macrocode}
% \end{environment}
%
@@ -3419,13 +3595,19 @@ computational complexity
\newif\if@natbib \@natbibtrue
\newif\if@manualbibliography \@manualbibliographyfalse
\newif\if@twocolumnbibliography \@twocolumnbibliographyfalse
+\newif\if@twocolumnendtitle \@twocolumnendtitletrue
\newif\if@cctheorems \@cctheoremstrue
\newif\if@standardtheorems \@standardtheoremstrue
\newif\if@ccnosepeqncnt \@ccnosepeqncnttrue
\newif\if@ccalgo \@ccalgotrue
\newif\if@theoremitemprefixes \@theoremitemprefixestrue
\newif\if@ccpublish \@ccpublishfalse
-\newif\if@cctextarea \@cctextareatrue
+%\newif\if@cctextarea \@cctextareatrue
+\newcount\@textareaversion
+\expandafter\def\csname if@cctextarea\endcsname{\ifnum\@textareaversion>0}
+\def\@cctextareafalse{\@textareaversion\z@}
+\def\@cctextareatrue{\@textareaversion\tw@}
+\@cctextareatrue
\newcount\@marginmode \@marginmode\tw@
% \end{macrocode}
%
@@ -3600,29 +3782,8 @@ computational complexity
\long\def\cc@ifnotempty#1{\cc@ifempty{#1}{}}
% \end{macrocode}
% \begin{macro}{\babel}
-% This shall simplify the addition of multilanguage support. A
-% macro |#1| that shall hold a name is assigned a version in
-% english |#2|, german |#3|, french |#4|, italian |#5|, and spanish
-% |#6|. The english version is the default. Each non-empty
-% version is added to the |\captions|\meta{language} of that
-% language.
-% Admittedly, this technique is limited. So we replace it\dots
% \changes{v2.03}{2005/08/29}{Replaced \cs{babel}\cs{def} with a more
% flexible construction.}
-% \begin{macrocode}
-%%% \def\oldbabel\def#1#2#3#4#5#6{\def#1{#2}%
-%%% \cc@ifnotempty{#2}{\addto\captionsenglish{\def#1{#2}}}%
-%%% \cc@ifnotempty{#3}{%
-%%% \addto\captionsgerman{\def#1{#3}}%
-%%% \addto\captionsngerman{\def#1{#3}}%
-%%% }%
-%%% \cc@ifnotempty{#4}{\addto\captionsfrench{\def#1{#4}}}%
-%%% \cc@ifnotempty{#5}{\addto\captionsitalian{\def#1{#5}}}%
-%%% \cc@ifnotempty{#6}{\addto\captionsspanish{\def#1{#6}}}%
-%%% }
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\newbabel}
% This shall simplify the addition of multilanguage support. A
% macro |#1| that shall hold a name is assigned a version in
% english |#2|. Further, that definition is added to
@@ -3640,12 +3801,7 @@ computational complexity
}
\def\b@beladdlang#1=#2=#3\@@@#4{%
\cc@ifnotempty{#2}{%
- %%% \@ifundefined{captions#1}{%
- %%% \ClassWarning{cc}{Language `#1' undefined, ignoring
- %%% translation \string#4=#2.}%
- %%% }{%
\expandafter\addto\csname captions#1\endcsname{\def#4{#2}}%
- %%% }%
}%
}
% \end{macrocode}
@@ -3716,6 +3872,8 @@ computational complexity
% email address of the contact author.
% \begin{macrocode}
%<*cclayout>
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{cclayout}[2011/07/27 v2.18 cclayout. MNuesken]
\let\@contact\relax
\newcommand{\contact}[1]{\gdef\@contact{#1}}
\AtBeginDocument{\if@ccpublish
@@ -3726,6 +3884,7 @@ computational complexity
\fi}
% \end{macrocode}
% \end{macro}
+% \begin{macro}{\submitted}
% \begin{macro}{\received}
% The macro |\received| stores its argument, the received date.
% \begin{macrocode}
@@ -3733,12 +3892,14 @@ computational complexity
\newcommand{\received}[1]{\gdef\@received{#1}}
\AtBeginDocument{\if@ccpublish
\@ifundefined{@received}{%
- \ClassWarningNoLine{cc}{Missing received date.\MessageBreak
+ \ClassWarningNoLine{cc}{Missing submission/received date.\MessageBreak
Use \protect\received\space in the preamble.}{}%
}{}%
\fi}
+\def\submitted{\received}
% \end{macrocode}
% \end{macro}
+% \end{macro}
% \begin{macro}{\titlehead}
% The following macros supplement the traditional |\author|,
% |\title| and |\date| declarations. First, |\titlehead| can be
@@ -3845,8 +4006,8 @@ computational complexity
\topsep 2\p@ \@plus2\p@ \@minus1\p@
\parsep 1\p@
\itemsep \parsep}%
-%%% \let\origcclist\list
-%%% \def\list{\ifnum\@listdepth>0\relax\@toodeep\fi\origcclist}%
+% \let\origcclist\list
+% \def\list{\ifnum\@listdepth>0\relax\@toodeep\fi\origcclist}%
\let\@listii\@toodeep
\let\@listiii\@toodeep
\let\@listiv\@toodeep
@@ -3897,6 +4058,36 @@ computational complexity
% \end{macrocode}
% \end{macro}
% \end{macro}
+%
+%
+% \changes{v2.18}{2011/07/26}{Simplify maketitle handling. Michael
+% Nüsken, Bonn}
+% Make sure that macros with first, last and number of pages are
+% available right after |\begin{document}|. This will be used for
+% \cs{maketitle} and possibly more.
+% \begin{macrocode}
+\AtBeginDocument{\addtocounter{section}{-1}\refstepcounter{section}}%
+\AtEndDocument{\hrule height0pt\label{ccenddocument}}%
+\def\@ccunknown{??}
+\def\@ccfirst{1}%
+\let\@cclast\@ccunknown%
+\let\@ccnumberofpages\@ccunknown%
+\AtBeginDocument{%
+ \@ifundefined{r@ccenddocument}{}{%
+ \@tempcnta\@ne
+ \advance\@tempcnta-\@ccfirst
+ \xdef\@cclast{\csname r@ccenddocument\endcsname}%
+ \ifx\@secondoffive\@@@@undefined% hyperref launches this!
+ \xdef\@cclast{\expandafter\@secondoftwo\@cclast{}{}{}{}{}}%
+ \else
+ \xdef\@cclast{\expandafter\@secondoffive\@cclast{}{}{}{}{}}%
+ \fi%
+ \advance\@tempcnta\@cclast%
+ \xdef\@ccnumberofpages{\the\@tempcnta}%
+ }%
+}
+% \end{macrocode}
+%
% \begin{macro}{\ccpublish}
% The macro |\ccpublish| sets all data for an article to be published
% in \cc{}.
@@ -3907,10 +4098,21 @@ computational complexity
% |ccenddocument | to avoid a problem with \lpackage{hyperref}.
% (\lpackage{hyperref} has also problems with |!| as part of label
% names.)}
+% \changes{v2.18}{2011/07/26}{Moved label generation, see
+% above. Michael Nüsken, Bonn}
% \begin{macrocode}
\def\@cctxt{}
\newif\if@cchead
-\newcommand{\ccpublish}[4]{%
+\newcommand{\noccpublish}[1]{%
+ \global\@ccpublishfalse
+ \global\@abstractoptionaltrue% Abstract optional
+ \global\@keywordsoptionaltrue% Keywords optional
+ \global\@subjectoptionaltrue% Subject class. optional
+ \global\@ccheadfalse
+ \gdef\@cctxt{#1}%
+ %\global\@twosidefalse
+ }
+\newcommand{\ccpublish}[4]{% Deprecated since 2011/07/25
\global\@ccpublishtrue
\global\@abstractoptionalfalse% Abstract required
\global\@keywordsoptionalfalse% Keywords required
@@ -3918,25 +4120,319 @@ computational complexity
\global\@ccheadtrue
\gdef\@ccyear{#1}%
\gdef\@ccvolume{#2}%
- \gdef\@ccnumber{#3}%
+ \gdef\@ccissue{#3}%
\gdef\@ccfirst{#4}%
\gdef\@cctxt{cc \textbf{#2} (#1)}%
\global\@autotitletrue
\AtBeginDocument{\addtocounter{section}{-1}\refstepcounter{section}}%
- \AtEndDocument{\label{ccenddocument}}%
- }
-\newcommand{\noccpublish}[1]{%
- \global\@ccpublishfalse
- \global\@abstractoptionaltrue% Abstract required
- \global\@keywordsoptionaltrue% Keywords required
- \global\@subjectoptionaltrue% Subject class. required
- \global\@ccheadfalse
- \gdef\@cctxt{#1}%
- %%\global\@twosidefalse
}
% \end{macrocode}
% \end{macro}
%
+% \subsection{Springer publishing services adjustments}
+% \begin{macro}{\ccsps}
+% \changes{v2.18}{2011/07/27}{New macro \cs{ccsps} for Springer
+% publishing services. Michael Nüsken, Bonn}
+% The macro \cs{ccsps} collects all the settings needed in the
+% publishing process. See \ref{sec:editor} for details on its
+% use.
+%
+% We use the package \Lpackage{xkeyval} to parse the input.
+% \begin{macrocode}
+\RequirePackage{xkeyval}[2008/08/13]
+% \end{macrocode}
+%
+% These tiny helpers will allow to produce any fixed length output.
+% \begin{macrocode}
+\def\cc@fixlencountdown#1{%
+ \@tfor\@x:=#1\do{\advance\@tempcnta\m@ne}}
+\def\cc@fixelendef#1#2#3#4{%
+ \@tempcnta#1%
+ \edef\@tempa{#4}\expandafter\cc@fixlencountdown\expandafter{\@tempa}%
+ \gdef#3{}\relax
+ \@whilenum\@tempcnta>\z@\do{%
+ \expandafter\gdef\expandafter#3\expandafter{#3#2}%
+ \advance\@tempcnta\m@ne}%
+ \expandafter\gdef\expandafter#3\expandafter{#3#4}%
+}
+\def\cc@fixelen#1#2#3{%
+ \@tempcnta#1
+ \edef\@tempa{#3}\expandafter\cc@fixlencountdown\expandafter{\@tempa}%
+ \@whilenum\@tempcnta>\z@\do{%
+ #2%
+ \advance\@tempcnta\m@ne}%
+ \edef\@tempa{\noexpand\cc@fixelena#3\noexpand\@@@}\@tempa%
+}
+\def\cc@fixelena#1\@@@{%
+ \@tfor\@x:=#1\do{%
+ \advance\@tempcnta\@ne
+ \ifnum\@tempcnta>\z@\@x\fi
+ }%
+}
+% \end{macrocode}
+%
+% Now we start defining all the options.
+%
+% |journal=|\meta{journalname} will set the journalname for use in
+% the running title, default |cc|.
+% |journalnumber=|\meta{journalnumber} sets the journalnumber for use
+% in the doi, default |37|. The key |sps| is here for internal
+% detection only.
+% \begin{macrocode}
+\define@boolkey{ccsps}{sps}[true]{}%
+\define@key{ccsps}{journal}[cc]{\gdef\@journalname{#1}}%
+\define@key{ccsps}{journalnumber}[37]{\gdef\@journalnumber{#1}}%
+% \end{macrocode}
+%
+% Set the submission date. This overrides
+% |\received{|\meta{date}|}|.
+% \begin{macrocode}
+\define@key{ccsps}{submitted}[??dd Month yyyy??]{%
+ \gdef\@received{#1}%
+ \gdef\received##1{\ClassWarning{cc}
+ {Received/submitted date (##1) override!\MessageBreak
+ Using \@received.}}}
+% \end{macrocode}
+%
+% \subsubsection{Revision stage}
+%
+% \begin{macrocode}
+\define@boolkey{ccsps}{revisionstage}[true]{%
+ %%% \ifKV@ccsps@revisionstage\let\revisionstage=Y\else\let\revisionstage=N\fi
+}
+% \end{macrocode}
+%
+% The manuscript number occurs in the helper strip.
+% \begin{macrocode}
+% Four things to hook or not
+\define@key{ccsps}{DOImsnr}[??]{% manuscript number
+ \gdef\@DOImsnr{#1}}
+% \end{macrocode}
+% The options |TYPESET|, |DISK|, |LE|, |CP| just add checkmarks in
+% the helper strip.
+% \begin{macrocode}
+\define@boolkey{ccsps}{TYPESET}[true]{%
+ \ifKV@ccsps@TYPESET\let\TYPESET=Y\else\let\TYPESET=N\fi}
+\define@boolkey{ccsps}{DISK}[true]{%
+ \ifKV@ccsps@DISK\let\DISK=Y\else\let\DISK=N\fi}
+\define@boolkey{ccsps}{LE}[true]{%
+ \ifKV@ccsps@LE\let\LE=Y\else\let\LE=N\fi}
+\define@boolkey{ccsps}{CP}[true]{%
+ \ifKV@ccsps@CP\let\CP=Y\else\let\CP=N\fi}
+% \end{macrocode}
+% This option sets the text for the watermark.
+% \begin{macrocode}
+\define@key{ccsps}{draftcopy}[Uncorrected proof]{% watermark text
+ \gdef\cc@watermarktext{#1}}
+% \end{macrocode}
+% This option turns the helper strip on or off, but it is triggered by
+% pdfpage.
+% \begin{macrocode}
+\define@boolkey{ccsps}{helperstrip}[true]{}%
+% \end{macrocode}
+% For typesetting alignment checks a grid may be added.
+% \begin{macrocode}
+\define@boolkey{ccsps}{grid}[true]{}
+% \end{macrocode}
+%
+% \subsubsection{Issue stage}
+%
+% \begin{macrocode}
+\define@boolkey{ccsps}{issuestage}[true]{%
+ %%% \ifKV@ccsps@issuestage\let\issuestage=Y\else\let\issuestage=N\fi
+}
+% \end{macrocode}
+%
+% Some article are delivered via Open Access.
+% \begin{macrocode}
+% Shall the article be open access?
+\define@boolkey{ccsps}{openaccess}[true]{%
+ %%% \ifKV@ccsps@openaccess\let\stageaccess=Y\else\let\stageaccess=N\fi
+}
+\define@boolkey{ccsps}{stageaccess}[true]{% Deprecated.
+ \setkeys{ccsps}{openaccess=#1}}
+% \end{macrocode}
+%
+% Publishing information is collected by the following options.
+% \begin{macrocode}
+\define@key{ccsps}{year}[????]{\gdef\@ccyear{#1}}
+\define@key{ccsps}{volume}[??]{\gdef\@ccvolume{#1}}
+\define@key{ccsps}{issue}[??]{\gdef\@ccissue{#1}}%
+%%% \@tempcnta\tw@\@tfor\@x:=#1\do{\advance\@tempcnta\m@ne}%
+%%% \ifcase\@tempcnta\gdef\@ccissue{#1}
+%%% \or\gdef\@ccissue{0#1}%
+%%% \or\gdef\@ccissue{00}%
+%%% \fi}
+\define@key{ccsps}{firstpage}[1]{%
+ \gdef\@ccfirst{#1}%
+ %\cc@fixelendef40\@ccfirstiv{#1}%
+ \@tempcnta4\@tfor\@x:=#1\do{\advance\@tempcnta\m@ne}%
+ \ifcase\@tempcnta\gdef\@ccfirstiv{#1}%
+ \or\gdef\@ccfirstiv{0#1}%
+ \or\gdef\@ccfirstiv{00#1}%
+ \or\gdef\@ccfirstiv{000#1}%
+ \else\ClassError{cc}{First page number too big.}{%
+ The number of the first page cannot be larger than 9999.
+ }\fi
+}
+\define@key{ccsps}{copyholder}[\default@copyholder]{\gdef\@copyholdername{#1}}
+\def\default@copyholder{%
+ \ifKV@ccsps@openaccess The Author(s)
+ \else Springer Basel AG\fi}
+\define@key{ccsps}{doisuffix}[????-?]{%
+ % Is the doi always 10.1007/s00037-threedigityear-suffix?
+ \cc@fixelendef50\@doiinfo{\@journalnumber}%
+ \xdef\@doiinfo{%
+ 10.1007/s\@doiinfo-%
+ \noexpand\cc@fixelen30{\noexpand\@ccyear}-%
+ #1}}
+\define@key{ccsps}{doi}{\gdef\@doiinfo{#1}}
+\define@key{ccsps}{onlinedate}[??dd Month yyyy??]{\gdef\@onlinedate{#1}}
+% Are the following really necessary or are they derived?
+\define@key{ccsps}{onlinefirstyear}[\the\year]{\gdef\@ccyear{#1}}
+\define@key{ccsps}{coveryear}[\@ccyear]{\gdef\@coveryear{#1}}
+% Is the coveryear always the last two digits of the year?
+% \end{macrocode}
+%
+% For online publication use the option |pdfpage| and |xlink|. The
+% latter makes hyperlinks blue and so forth.
+% \begin{macrocode}
+\define@boolkey{ccsps}{pdfpage}[true]{%
+ % \ifKV@ccsps@pdfpage\@pdfpagetrue\else\@pdfpagefalse\fi%
+}
+\define@boolkey{ccsps}{xlink}[true]{}
+% \end{macrocode}
+%
+% Finally put each key to its default value.
+% \begin{macrocode}
+\setkeys{ccsps}{
+ sps=false,
+ journal={cc}, journalnumber=37,
+ grid=false,
+ TYPESET=false,
+ DISK=false,
+ LE=false,
+ CP=false,
+ DOImsnr,
+ openaccess=false,
+ revisionstage=false,
+ helperstrip=false,
+ issuestage=false,
+ copyholder,
+ year,volume,issue,firstpage,
+ onlinefirstyear,coveryear,doisuffix,onlinedate,
+ draftcopy
+}
+% \end{macrocode}
+%
+% \subsubsection{Choose publisher features}
+% This is the macro for springer publishing services. Note that it
+% should be called only once, best right after |\documentclass|.
+% \begin{macrocode}
+\newcommand{\ccsps}[1]{%
+ \if@cctextarea\else\ClassError{cc}{Wrong textarea chosen}
+ {Remove any textarea or noccpublish option from documentclass.}\fi
+ \global\@ccpublishtrue
+ \global\@abstractoptionalfalse% Abstract required
+ \global\@keywordsoptionalfalse% Keywords required
+ \global\@subjectoptionalfalse% Subject class. required
+ \global\@ccackfalse% Acknowledgements required
+ \global\@ccheadtrue
+ \global\@autotitletrue
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%% Now scan the key, key=value list:
+ \setkeys{ccsps}{sps,#1}
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %\gdef\@cctxt{cc \textbf{\@ccvolume}(\@ccissue)}% MN2011/07/27: Shouldn't it be this?
+ \gdef\@cctxt{cc \textbf{\@ccvolume} (\@ccyear)}%
+ %%% \global\@twosidefalse
+ %%% MN2011/07/26 Note that the following makes it necessary that
+ %%% \ccsps is used only once!
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%% During revisionstage line numbers, a helper strip and a
+ %%% watermark shall be added.
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \RequirePackage[mathlines]{lineno}[2005/11/02]
+ \ifKV@ccsps@pdfpage
+ \setkeys{ccsps}{helperstrip=false}%
+ %%% This case should turn off draftcopy but cannot do this
+ %%% since draftcopy is badly written.
+ %%% Consequently, this makes a double use of ccsps impossible.
+ \nolinenumbers
+ \else
+ \setkeys{ccsps}{helperstrip=true}%
+ \RequirePackage[conditional,draft]{draftcopy}
+ \draftcopyPageTransform{155 75 translate 65 rotate}
+ \draftcopyName{\cc@watermarktext}{75}
+ %%% Scaling by a factor 75 is fine for a text like "Uncorrected proof".
+ \linenumbers
+ \fi
+ %%% With the option xlink the final pdf shall have bookmarks and
+ %%% blue links. Otherwise there are no bookmarks and black links.
+ \RequirePackage[dvips,
+ bookmarks=\ifKV@ccsps@xlink true\else false\fi,
+ breaklinks=true,
+ colorlinks=\ifKV@ccsps@xlink true\else false\fi,
+ linkcolor=\ifKV@ccsps@xlink blue\else black\fi,
+ unicode]{hyperref}%
+ %%% \RequirePackage{xcolor}%
+ \RequirePackage{breakurl}%
+ \def\l@title##1{\@dottedtocline{-1}{0pt}{0pt}{{\large\textbf{##1}}}}%
+ \let\l@title\l@part
+ %%%
+ %\ExecuteOptions{nonatbib}
+ %\usepackage[comma,square]{modnatbib}%
+ %%% The package natbib was modified only marginally. On the one
+ %%% hand, spacing after superscripted references was modified, which
+ %%% is irrelevant to \cc{}. On the other hand the references were
+ %%% also added to the table of contents. This is superfluous since
+ %%% \Lclass{cc} redefines \Lenv{thebibliography} and adds that entry
+ %%% there. Further punctuation was modified but that is set by
+ %%% \Lclass{cc} anyways.
+ %%%
+ %\usepackage{hypernat}%
+ %%% The package \Lpackage{hypernat} would at most be needed if cc
+ %%% articles would combine natbib options number and
+ %%% sort&compress. However, number is deprecated and sort&compress
+ %%% is not used in the journal versions.
+ %%%
+ \ifKV@ccsps@xlink%
+ \def\@urlcolor{blue}
+ \def\@citecolor{blue}
+ \def\externalref##1##2{\hyperimage{##1}{##2}}%
+ \def\DOIexternalref##1##2{\hyperimage{##1}{##2}}%%%%
+ \InputIfFileExists{bookmarkgreeks.tex}{}{}%
+ \else
+ \def\@urlcolor{black}%
+ \def\@citecolor{black}
+ \def\externalref##1##2{##2}%
+ \def\DOIexternalref##1##2{##2}%
+ \fi%
+ %%% The option grid produces a grid to check or align the page and
+ %%% column boundarys.
+ \ifKV@ccsps@grid
+ \overfullrule=6pt
+ \let\twidth\textwidth
+ \let\theight\textheight
+%%% \let\orgGd@draw\Gd@draw
+%%% \def\Gd@draw##1{%
+%%% \newGd@draw{##1}%
+%%% \orgGd@draw{##1}%
+ %%% define Gd@draw (and rename later)
+ %%% \renewcommand{\twidth}{119mm}%
+ %%% \renewcommand{\theight}{45.5pc}% 19.46cm
+ \else\overfullrule=0pt\fi
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %%% JS_info (MN2011/07/27: What's this?)
+ \InputIfFileExists{JS_info.tex}{}{}%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% The following code is based on \Lpackage{ccspsmacros} and
+% \Lpackage{modlineno} as used by Springer. Actually, the only
+% significant modification to \Lpackage{modlineno} seems to be that
+% its option \Lclo{pagewise} is disabled; but it's easy not to use it.
% \begin{macro}{\printed}
% \begin{macro}{\electronic}
% The printed and the electronic version of \cc{} have different
@@ -3953,7 +4449,7 @@ computational complexity
% \end{macro}
% All environments and macros from this section can only be used in
% the preamble.
-% \changes{v2.01}{2000/07/12}{Some things shall work until \cs{maketitle}!}
+% \changes{v2.01}{2000/07/12}{Some things shall work until \cs{maketitle}.}
% \begin{macrocode}
% \@onlypreamble\author
% \@onlypreamble\title
@@ -3965,6 +4461,7 @@ computational complexity
% \@onlypreamble\authorhead
% \@onlypreamble\received
\@onlypreamble\ccpublish
+\@onlypreamble\ccsps
\@onlypreamble\electronic
\@onlypreamble\printed
% \end{macrocode}
@@ -4198,7 +4695,10 @@ computational complexity
% The environment \Lenv{@ffiliation} is used for each address
% block. It produces a minipage whose lines are set like verse
% lines: if a line is too long it continues indented.
+% \changes{v2.18}{2011/07/27}{Added onecolumn layout for
+% affiliations. Michael N{\"{u}}sken, Bonn}
% \begin{macrocode}
+\if@twocolumnendtitle
\newenvironment{@ffiliation}
{%
\minipage[t]{.48\hsize}
@@ -4207,6 +4707,19 @@ computational complexity
\def\\{\unskip\par}%
}
{\strut\par\medskip\endminipage}
+\else
+\def\affilpre{\par}
+\def\affilpost{\par}
+\def\affilsep{\par}
+\newenvironment{@ffiliation}
+ {%
+ \minipage[t]{\hsize}\footnotesize
+ \dimen@\hsize \advance\dimen@ -1.5em
+ \everypar{\parshape 2 \z@ \hsize 1.5em \dimen@}%
+ \def\\{\unskip\par}%
+ }
+ {\endminipage\bigskip}
+\fi
% \end{macrocode}
% \end{environment}
%
@@ -4226,8 +4739,16 @@ computational complexity
% \changes{v2.13}{2010/06/22}{Disabled the file control, instead with
% ccpublish the compilation will abort with a FATAL ERROR. Michael
% N{\"{u}}sken, Bonn}
+% \changes{v2.17b}{2011/07/13}{Repaired case handling. Michael
+% N{\"{u}}sken, Bonn}
+% \changes{v2.18}{2011/07/26}{Adapted to Springer's ccspsmacros,
+% added modified papersize. Michael N{\"{u}}sken, Bonn}
% \begin{macrocode}
-\if@cctextarea
+\@abstrwidth0.85\textwidth
+\ifcase\@textareaversion
+% version 0: nocctextarea
+%
+\or% version 1, used until June 2011
\textwidth=141mm
\@abstrwidth=120mm
\textheight=200mm
@@ -4237,33 +4758,65 @@ computational complexity
\marginparwidth=25mm
\headheight=1.25\headheight
\ifnum\@marginmode<\z@\@marginmode\z@\fi
-\else
-\@abstrwidth0.85\textwidth
+%
+\or% version 2, used since July 2011
+\special{papersize=155mm,235mm}% Springer's papersize
+\paperwidth=155mm
+\paperheight=235mm
+\topmargin=-9.6mm%% MN2011/07/25 this is from ccspsmacros but should
+ %% be rethought!!! Use \voffset, \hoffset instead...
+\textheight=45.5pc
+\textwidth=119mm
+\@abstrwidth=\textwidth
+\oddsidemargin=-7.6mm% should be 18mm, will be calculated acc.to \@marginmode
+\evensidemargin=-7.6mm% should be 18mm, will be calculated acc.to \@marginmode
+\marginparwidth=10mm% will be adapted below
+\headheight=1.25\headheight
+\ifnum\@marginmode<\z@\@marginmode\tw@\fi% use balanced margins
+%
+\else% version negative or larger than max: emptypage
+\newdimen\allsidemargin \allsidemargin=.5in
+%% LARGE width
+\textwidth=\paperwidth
+\advance\textwidth-2\allsidemargin% margin left/right
+\marginparsep=1pt
+%% LARGE height
+\topmargin-1in
+\advance\topmargin\allsidemargin
+\textheight=\paperheight
+\advance\textheight-\allsidemargin
+\advance\textheight-\headheight
+\advance\textheight-\headsep
+\advance\textheight-\footskip
+%%% \advance\textheight-\headheight% assuming as much space for foot as head.
+\advance\textheight-\allsidemargin
+\@marginmode\tw@
+\sloppy
\fi
-%%% \if@ccpublish
-%%% \expandafter\xdef\csname ver@fullpage.sty\endcsname{9999}%
-%%% \expandafter\xdef\csname ver@a4wide.sty\endcsname{9999}%
-%%% \ClassWarning{cc}{The packages fullpage, a4wide are ignored
-%%% when publishing in the journal \cc.}{}%
-%%% \fi
+\newdimen\cc@topmargin \cc@topmargin\topmargin
+\newdimen\cc@textwidth \cc@textwidth\textwidth
+\newdimen\cc@textheight \cc@textheight\textheight
\AtBeginDocument{%
- \if@ccpublish\@tempswafalse
- \ifdim\topmargin=0mm\relax\else\@tempswatrue\fi
- \ifdim\textwidth=141mm\relax\else\@tempswatrue\fi
- \ifdim\textheight=200mm\relax\else\@tempswatrue\fi
- \if@tempswa
- \ClassError{cc}{FATAL ERROR! For publishing in cc the page and text
- dimension must not be manipulated. Remove any packages that
- modify the text or page dimensions. In particular: remove the
- packages^^J
- fullpage.sty,^^J
- a4wide.sty,^^J
- geometry.sty,^^J
- vmargin.sty,^^J
- typearea.sty}{}%
- \endinput
- \fi
- \fi
+ {\if@ccpublish
+ \@tempswafalse
+ \ifnum\@textareaversion>0
+ \ifdim\topmargin=\cc@topmargin\relax\else\@tempswatrue\fi
+ \ifdim\textwidth=\cc@textwidth\relax\else\@tempswatrue\fi
+ \ifdim\textheight=\cc@textheight\relax\else\@tempswatrue\fi
+ \fi
+ \if@tempswa
+ \ClassError{cc}{FATAL ERROR! For publishing in cc the page and text
+ dimension must not be manipulated. Remove any packages that
+ modify the text or page dimensions. In particular: remove the
+ packages^^J
+ fullpage.sty,^^J
+ a4wide.sty,^^J
+ geometry.sty,^^J
+ vmargin.sty,^^J
+ typearea.sty}{}%
+ \aftergroup\endinput
+ \fi
+ \fi}%
}
% \end{macrocode}
% We fit the margins so that 1~in + |\oddsidemargin| + |\textwidth| +
@@ -4300,14 +4853,14 @@ computational complexity
% fall off the paper.
% \begin{macrocode}
\AtEndOfClass{%
-\marginparwidth1in
-\advance\marginparwidth-5mm
-\advance\marginparwidth-2\marginparsep
-\ifdim\evensidemargin<\oddsidemargin
-\advance\marginparwidth\evensidemargin
-\else
-\advance\marginparwidth\oddsidemargin
-\fi
+ \marginparwidth1in
+ \advance\marginparwidth-5mm
+ \advance\marginparwidth-2\marginparsep
+ \ifdim\evensidemargin<\oddsidemargin
+ \advance\marginparwidth\evensidemargin
+ \else
+ \advance\marginparwidth\oddsidemargin
+ \fi
}
% \end{macrocode}
% In this document, we have marginmode
@@ -4321,7 +4874,9 @@ computational complexity
% following values:
% \begin{center}
% \makeatletter
-% \def\themm#1{\dimen@5.6233568#1\relax\divide\dimen@ by 16
+% \def\themm#1{\dimen@5.6233568#1\relax
+% \ifnum\dimen@<0-\dimen@-\dimen@\fi
+% \divide\dimen@ by 16
% \expandafter\@themmchk\the\dimen@0000\@@@
% \edef\@tempa{\noexpand\th@mm\the\dimen@}\@tempa}
% \def\@themmchk#1.#2#3#4#5#6\@@@{\if#5p\else\if#5t\else\ifnum#5>4
@@ -4347,6 +4902,15 @@ computational complexity
% |\headsep| & \themm\headsep\\
% |\textheight| & \themm\textheight\\
% |\footskip| & \themm\footskip\\
+% remainder &
+% \dimen@\paperheight
+% \advance\dimen@-1in
+% \advance\dimen@-\topmargin
+% \advance\dimen@-\headheight
+% \advance\dimen@-\headsep
+% \advance\dimen@-\textheight
+% \advance\dimen@-\footskip
+% \themm\dimen@
% \end{tabular}
% \end{center}
%
@@ -4362,7 +4926,23 @@ computational complexity
\newskip\headerindent \headerindent=10mm
\newdimen\headrulewidth \headrulewidth.4pt
\def\ps@cc{\let\@mkboth\markboth
- \def\@oddhead{\vbox{\hbox to\textwidth{\reset@font\strut
+ \let\@oddfoot\@empty
+ \let\@evenfoot\@empty
+ \let\@oddhead\@empty
+ \let\@evenhead\@empty
+ \if@ccpublish
+ \ps@ccfirst
+ \def\@oddfoot{%
+ \ifKV@ccsps@helperstrip%
+ \begin{picture}(0,0)%
+ \put(340,3){{\stripbox}}%
+ \end{picture}%
+ \fi
+ }%
+ \let\@evenfoot\@oddfoot
+ \fi
+ \expandafter\def\expandafter\@oddhead\expandafter{\@oddhead
+ \vbox{\hbox to\textwidth{\reset@font\strut
{\small\@cctxt}%
\hfil
{\small
@@ -4382,8 +4962,8 @@ computational complexity
\vskip\z@
}%
}%
- \def\@oddfoot{}
- \def\@evenhead{\vbox{\hbox to\textwidth{\reset@font\strut
+ \expandafter\def\expandafter\@evenhead\expandafter{\@evenhead
+ \vbox{\hbox to\textwidth{\reset@font\strut
\hbox to\headerindent{\thepage\hfil}%
{\small\@authorhead}%
\hfil
@@ -4397,10 +4977,71 @@ computational complexity
\vskip\z@
}%
}%
- \let\@evenfoot\@oddfoot
}
% \end{macrocode}
% \end{macro}
+%
+% For some publishing features graphics and colors are used.
+% \begin{macrocode}
+\RequirePackage{graphicx}
+\RequirePackage{xcolor}%
+\IfFileExists{Birkh_logo_2010_sps.eps}{%
+ \def\birklogo{\bgroup\includegraphics{Birkh_logo_2010_sps.eps}\egroup}
+}{%
+ \def\birklogo{{\ixpt Birkh{\"{a}}user}}
+}
+\IfFileExists{dummy_sps.eps}{%
+ \def\spslogo{\bgroup\includegraphics{dummy_sps.eps}\egroup}
+}{%
+ \def\spslogo{{\ixpt Springer Publishing}}
+}
+%\definecolor{tint}{gray}{0.7}
+% \end{macrocode}
+%
+% \begin{macro}{\ps@ccfirst}
+% The page style \texttt{ccfirst} is provided for typesetting the
+% first page during the publishing process.
+% \begin{macrocode}
+\def\ps@ccfirst{%
+ \def\@oddfoot{%
+ \if@ccpublish
+ \ifKV@ccsps@revisionstage%
+ \begin{picture}(0,0)%
+ \put(0,15){{\smash{\raisebox{-2.25pt}{\spslogo}}}}%
+ \end{picture}%
+ \fi%
+ \ifKV@ccsps@sps
+ \begin{picture}(0,0)%
+ \put(289.5,15){{\birklogo}}%
+ \end{picture}%
+ \fi
+ \ifKV@ccsps@helperstrip%
+ \begin{picture}(0,0)%
+ \put(340,3){{\stripbox}}%
+ \end{picture}%
+ \fi
+ \fi}%
+ \let\@evenfoot\@oddfoot
+ \def\@oddhead{%
+ \ifKV@ccsps@grid
+ \hbox to\z@{\vbox to\z@{%
+ \hsize\twidth
+ \vskip\headsep
+ \fboxrule=.25pt
+ \fboxsep=-.25pt
+ \textcolor{lightgray}{%
+ \fbox{\vbox to\theight{\hbox to\twidth{\hss}\vss}}%
+ }%
+ }%
+ \hss
+ }%
+ \fi
+ \hss
+ }%
+ \let\@evenhead\@oddhead
+}
+% \end{macrocode}
+% \end{macro}
% Select \cc's page style at the end of the class.
% \begin{macrocode}
\AtEndOfClass{\pagestyle{cc}}
@@ -4417,15 +5058,49 @@ computational complexity
% after those inserted by \protect\Lpackage{natbib}) in order to
% handle citations correctly. This is done via \cs{@onlypreamble}
% that disables the first token of its argument and executes the
-% rest.}
+% rest; this disabling and execution happen after executing all
+% \cs{AtBeginDocument} commands in \cs{begin}\texttt{\{document\}}.}
% \begin{macrocode}
\AtEndOfClass{%
\AtBeginDocument{\@onlypreamble{\author{\if@autotitle\maketitle\fi}}}
%\AtBeginDocument{\if@autotitle\maketitle\fi}
\AtEndDocument{\if@autotitle\makeendtitle\fi}
- }
+}
% \end{macrocode}
-%
+%
+% \begin{macro}{\stripbox}
+% The macro \cs{stripbox} produces a box with information for the
+% publishing service. This is put in the foot of every page during
+% the revisionstage, see \cs{ccsps}.
+% \begin{macrocode}
+\def\stripbox{\kern -11.7cm%
+ {}{%
+ \raisebox{.8mm}{%
+ \tiny
+ \fboxsep1mm\framebox{%
+ Journal: {\bf \@journalname}\enspace
+ Article No.: {\bf \@DOImsnr}\enspace
+ \fboxsep.2mm\fbox{%
+ \ifx Y\TYPESET{$\checkmark$}\else{\phantom{$\checkmark$}}\fi
+ }~TYPESET\enspace
+ \fbox{%
+ \ifx Y\DISK{$\checkmark$}\else{\phantom{$\checkmark$}}\fi
+ }~DISK\enspace
+ \fbox{%
+ \ifx Y\LE{$\checkmark$}\else{\phantom{$\checkmark$}}\fi
+ }~LE\enspace
+ \fbox{%
+ \ifx Y\CP{$\checkmark$}\else{\phantom{$\checkmark$}}\fi
+ }~CP\enspace
+ Disp.: \textbf{\the\year/\the\month/\the\day}\enspace
+ Pages: \textbf{\@ccnumberofpages}
+ }%
+ }%
+ }%
+} %%
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\maketitle}
% |\maketitle| generates the first page. It also produces errors
% or warnings if abstract, keywords, or subject are missing.
@@ -4437,21 +5112,116 @@ computational complexity
% \changes{v2.08}{2008/04/25}{Bug repair: Added \cs{protect} to
% \cs{ClassWarningNoLine} calls in \cs{maketitle}, Michael
% N{\"{u}}sken, Bonn}
+% \changes{v2.17}{2011/07/07}{Adapted \maketitle to new textarea and
+% modified firstpage headline \cs{maketitle}, Michael N{\"{u}}sken,
+% Bonn}
+% \changes{v2.17c}{2011/07/15}{Moved \cs{thispagestyle} to an earlier
+% point so it always applies to the first page (even when the
+% abstract is very long), Michael N{\"{u}}sken, Bonn}
+% \changes{v2.18}{2011/07/25}{Adapted \maketitle to Springer's
+% version, Michael N{\"{u}}sken, Bonn}
% \begin{macrocode}
-\def\fourdigits#1{\ifnum#1<10\relax000#1\else
- \ifnum#1<100\relax00#1\else
- \ifnum#1<1000\relax0#1\else
- #1\fi\fi\fi}
-\def\twodigits#1{\ifnum#1<10\relax0#1\else
- \ifnum#1<100\relax#1\else
- #1\fi\fi}
\def\vertrulea{\rule[-7.583pt]{0pt}{7.583pt}}
\def\vertruleb{\rule{2.25pt}{10.2pt}}
\newtoks\cite@hook
+\newcommand{\maketitleheadA}{% version before 2011 (Birkhäuser)
+ \hbox to\textwidth{%
+ \vbox to\z@{\vss
+ \baselineskip=12pt%
+ \halign{\ixpt##\hfil\cr
+ comput. complex.~\textbf{\@ccvolume}~(\@ccyear),
+ \thepage\ -- \@cclast\cr
+ \issn/\expandafter\@gobbletwo\@ccyear%
+ %% use + instead --?
+ /\cc@fixelen20\@ccissue\relax
+ \cc@fixelen40\@ccfirst\relax
+ --\@ccnumberofpages\
+ \$ 1.50+0.20/0\cr}}\hss
+ \vbox to\z@{\vss
+ \offinterlineskip%
+ \halign{##&##\hfil\cr
+ \vertrulea&\ixpt
+ \copyright{} Birkh{\"{a}}user Verlag, Basel \@ccyear\cr
+ \noalign{\hrule}
+ \vertruleb\hskip1mm&%
+ \vbox to\z@{\vbox to\z@{\vss
+ \hbox{\xptsfbx computational complexity}}\vss}%
+ \cr}}}\vskip47.333pt
+}
+\newcommand{\maketitleheadB}{% version since 2011 (Springer)
+ \hbox to\textwidth{%
+ \vbox to\z@{\vss
+ \baselineskip=12pt%
+ \halign{\ixpt##\hfil\cr
+ comput. complex.~\textbf{\@ccvolume}~(\@ccyear),
+ \thepage\ -- \@cclast\cr
+ \issn/\expandafter\@gobbletwo\@ccyear%
+ %% use + instead --?
+ /\cc@fixelen20\@ccissue\relax
+ \cc@fixelen40\@ccfirst\relax
+ --\@ccnumberofpages\
+ \$ 1.50+0.20/0\cr}}\hss
+ \vbox to\z@{\vss
+ \offinterlineskip%
+ \halign{##&##\hfil\cr
+ \vertrulea&\ixpt
+ \copyright{} Birkh{\"{a}}user Verlag, Basel \@ccyear\cr
+ \noalign{\hrule}
+ \vertruleb\hskip1mm&%
+ \vbox to\z@{\vbox to\z@{\vss
+ \hbox{\xptsfbx computational complexity}}\vss}%
+ \cr}}}\vskip47.333pt
+}
+\newcommand{\maketitleheadSPS}{% version since 2011 (Springer)
+ \hbox to\textwidth{%
+ \vbox to\z@{\vss
+ \baselineskip=12pt%
+ \halign{%
+ \ixpt##\hfil\cr
+ comput. complex.%
+ \ifKV@ccsps@issuestage%
+ ~\textbf{\@ccvolume}~(\@ccyear),~\@ccfirst\ -- \@cclast
+%%% {% No coloring on this pageref.
+%%% \def\Hy@colorlink##1{\begingroup\color{black}}%
+%%% \def\Hy@endcolorlink{\endgroup}%
+%%% \pageref{ccenddocument}%
+%%% %%% \def\Hy@colorlink##1{\begingroup\color{##1}}%
+%%% %%% \def\Hy@endcolorlink{\endgroup}%
+%%% }%
+ \fi\cr
+ \ifKV@ccsps@openaccess
+ \copyright{} \@copyholdername\ \@ccyear.
+ This article is published\cr with open access
+ at Springerlink.com\cr
+ \else\copyright{} \@copyholdername\ \@ccyear\cr\fi
+ \ifKV@ccsps@issuestage
+ {\printed@issn/\cc@fixelen20\@coveryear/%
+ \cc@fixelen20\@ccissue%
+ \cc@fixelen50\@ccfirst%
+ -% MN2011/07/27: use + instead?
+ \@ccnumberofpages}\cr
+ {{\it published online}\ \@onlinedate}\cr
+ \else\relax\fi
+ DOI \@doiinfo\cr}
+ }\hss
+ \vbox to\z@{\vss
+ \offinterlineskip%
+ \halign{##&##\hfil\cr
+ \vertrulea&\ixpt\cr
+ %%\copyright{} Birkh{\"{a}}user Verlag, Basel \@ccyear\cr
+ \noalign{\hrule}
+ \vertruleb\hskip1mm&%
+ \vbox to\z@{\vbox to\z@{\vss
+ \hbox{\xptsfbx computational complexity}}\vss}%
+ \cr}}}\vskip47.333pt
+}
+\def\l@title#1#2{}% Usually ignore title entries.
+\def\@@today{\today}% for comparison
\renewcommand{\maketitle}{%
\global\@topnum\z@ % Prevents figures from going at top of page.
\cite@hook{}%
\if@cchead
+ \ifnum\@textareaversion=\tw@\vspace*{15pt}\fi
\vbox to\z@{\vss
\@ifundefined{r@ccenddocument}{\@tempcnta\z@}{%
\@tempcnta\@ne
@@ -4465,30 +5235,17 @@ computational complexity
\advance\@tempcnta\@tempa%
}%
\setcounter{page}{\@ccfirst}%
- \hbox to\textwidth{%
- \vbox to\z@{\vss
- \baselineskip=12pt%
- \halign{\ixpt##\hfil\cr
- comput. complex.~\textbf{\@ccvolume}~(\@ccyear),
- \thepage\ -- \pageref{ccenddocument}\cr
- \issn/\expandafter\@gobbletwo\@ccyear%
- %% use + instead --?
- /\twodigits{\@ccnumber}\fourdigits{\thepage}--\the\@tempcnta\
- \$ 1.50+0.20/0\cr}}\hss
- \vbox to\z@{\vss
- \offinterlineskip%
- \halign{##&##\hfil\cr
- \vertrulea&\ixpt
- \copyright{} Birkh{\"{a}}user Verlag, Basel \@ccyear\cr
- \noalign{\hrule}
- \vertruleb\hskip1mm&%
- \vbox to\z@{\vbox to\z@{\vss
- \hbox{\xptsfbx computational complexity}}\vss}%
- \cr}}}\vskip47.333pt}
+ \ifcase\@textareaversion\maketitleheadA
+ \or\maketitleheadA
+ \or\maketitleheadSPS
+ \else\maketitleheadA
+ \fi
+ }%
\fi
\hrule\@height\z@
\vskip2.2ex% 4.0mm
\relax
+ \thispagestyle{ccfirst}
\begin{center}
\if@ccpublish
\renewcommand{\footnote}[1]{\protect\ClassWarningNoLine{cc}{%
@@ -4511,11 +5268,13 @@ computational complexity
\Large\bfseries
\def\\{\penalty-\@M}%
\expandafter\MakeUppercase\expandafter{\@title}%
+ \addcontentsline{toc}{title}{\@title}%
\par
}%
\@ifundefined{@subtitle}{}{{%
\large\itshape
\@subtitle
+ %%\if!\@subtitle!\relax\else\addcontentsline{toc}{subtitle}{\@subtitle}\fi%
\par
}}
\@ifundefined{@version}{}{{%
@@ -4531,8 +5290,8 @@ computational complexity
\extractnamesfr@m@author
\par
}%
- \if@ccpublish
- \ifx\@date\today\else
+ \ifKV@ccsps@sps%\if@ccpublish
+ \ifx\@date\@@today\else
\ClassWarningNoLine{cc}{Date ignored! (\@date)}%
\fi
\else{%
@@ -4550,7 +5309,8 @@ computational complexity
\protect\begin{abstract} ... \protect\end{abstract}.}%
\fi
\else
- \@tempa\leavevmode\unvbox\@abstract\par
+ \addcontentsline{toc}{section}{\ccabstractname}%
+ \@tempa\leavevmode\unvbox\@abstract\par
\fi
}{%
\ifvoid\@abstract\else
@@ -4561,6 +5321,7 @@ computational complexity
\@abstr{\ccabstractname}
\the\@abstract@toks
\end@abstr
+ \addcontentsline{toc}{section}{\ccabstractname}%
\@tempa\leavevmode\unvbox\@abstract\par
}
\ifvoid\@keywords
@@ -4588,7 +5349,6 @@ computational complexity
\@thanks
\ifx\@tempa\relax\vskip3ex\fi
\end{center}
- \thispagestyle{empty}
\setcounter{footnote}{0}%
\global\let\maketitle\relax
\global\let\thanks\@gobble
@@ -4885,6 +5645,63 @@ computational complexity
%</relabel>
% \end{macrocode}
%
+% \GetFileInfo{ccref.sty}
+% \CodelinePrefix{r}
+%
+% \section{Source of \filename (\fileprefix)}
+%
+% This file (\file{\filename}) has version number \fileversion, last
+% revised \filedate.
+% \changes{v2.15}{2010/10/21}{Moved this from the main part into a
+% seperate file.}
+% \begin{macrocode}
+%<*ccref>
+% \end{macrocode}
+% \begin{macro}{\defprefix}
+% \LaTeX{} already defined the features for nice references, although
+% they were not really used. The package \Lpackage{relabel} provides
+% some macros to use these features. Especially, a macro
+% |\defprefix| is defined which allows to define a prefix for the
+% label of a counter:
+% |\defprefix{|\meta{counter}|}|\meta{definition}.
+% \changes{v2.01}{2000/09/15}{Internationalized prefixes.
+% Michael N{\"{u}}sken, Paderborn}
+% \changes{v2.01}{2000/11/28}{Added \cs{chaptername}.
+% Michael N{\"{u}}sken, Paderborn}
+% \begin{macrocode}
+\RequirePackage{relabel}[1998/09/07 v1.01]
+\let\nref\ref
+% \end{macrocode}
+% \end{macro}
+% We define prefixes for the standard counters.
+% \begin{macrocode}
+\babel\def\partname{Part}[german=Teil,french=\protect\@Fpt partie]
+\defprefix{part}{\partname~}
+\babel\def\chaptername{Chapter}[german=Kapitel,french=Chapitre]
+\defprefix{chapter}{\chaptername~}
+\babel\def\sectionname{Section}[german=Abschnitt,french=Section]
+\defprefix{section}{\sectionname~}
+\babel\def\subsectionname{Section}[german=Abschnitt,french=Section]
+\defprefix{subsection}{\subsectionname~}
+\babel\def\subsubsectionname{Section}[german=Abschnitt,french=Section]
+\defprefix{subsubsection}{\subsubsectionname~}
+\let\ccorg@appendix\appendix
+\babel\def\appendixname{Appendix}[german=Anhang,french=Annexe]
+\def\appendix{%
+ \defprefix{section}{\appendixname~}%
+ \defprefix{subsection}{\appendixname~}%
+ \defprefix{subsubsection}{\appendixname~}%
+ \ccorg@appendix}
+\defprefix{equation}#1{(#1)}
+\babel\def\figurename{Figure}[german=Figur,french={\scshape Figure}]
+\defprefix{figure}{\figurename~}
+\babel\def\tablename{Table}[german=Tafel,french={\scshape Table}]
+\defprefix{table}{\tablename~}
+\numberallwithin{section}
+\AtBeginDocument{\@adjustnumbering}
+%</ccref>
+% \end{macrocode}
+%
% \GetFileInfo{thcc.sty}
% \CodelinePrefix{t}
%
@@ -4893,6 +5710,11 @@ computational complexity
% This file (\file{\filename}) has version number \fileversion, last
% revised \filedate.
% \changes{v0.91}{2000/02/29}{Advanced version to official 2.00}
+% \changes{v2.15b}{2010/10/21}{Pretending that amsthm is loaded makes
+% hyperref do strange things. Logic adapted.}
+% \changes{v2.15b}{2010/10/26}{Pretending that amsthm is loaded makes
+% hyperref do strange things. Loading amsthm causes strange
+% errors. Logic adapted so that either way no harm is done.}
% \begin{macrocode}
%<*thcc>
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
@@ -4903,10 +5725,26 @@ computational complexity
% We require Frank Mittelbach's \Lpackage{theorem} package.
% \begin{macrocode}
\RequirePackage{theorem}[1995/11/23]
-\expandafter\xdef\csname ver@amsthm.sty\endcsname
-{2000/02/29 Forbidden by cc.cls/thcc.sty. Not loaded!}
-\expandafter\xdef\csname ver@apthm.sty\endcsname
-{2000/02/29 Forbidden by cc.cls/thcc.sty. Not loaded!}
+% \end{macrocode}
+% The following is actually a really dirty trick. On the one hand
+% side we pretend that \Lpackage{amsthm} is loaded by defining
+% \cs{ver@amsthm.sty}, which is checked when reading a new package by
+% the LaTeX internal command \cs{@ifl@aded}. On the other hand side,
+% we tell \Lpackage{hyperref} that it is not loaded by manipulating
+% the LaTeX internal command \cs{@ifpackageloaded} used there. (If
+% further problems occur we may really run into trouble with this
+% technique.)
+% \begin{macrocode}
+\def\cc@forbiddenpackage{2010/10/26 Forbidden by cc.cls/thcc.sty. Not loaded!}
+\expandafter\global\expandafter\let\csname ver@amsthm.sty\endcsname\cc@forbiddenpackage
+\expandafter\global\expandafter\let\csname ver@apthm.sty\endcsname\cc@forbiddenpackage
+\let\orig@ifpackageloaded\@ifpackageloaded
+\def\@ifpackageloaded#1{%
+ \expandafter\ifx\csname ver@#1.\@pkgextension\endcsname\cc@forbiddenpackage
+ \expandafter\@secondoftwo% consider it as not loaded
+ \else
+ \gdef\cc@reserved{\orig@ifpackageloaded{#1}}\expandafter\cc@reserved%
+ \fi}
% \end{macrocode}
% The macro |\shortcite| might have been provided by the package
% \Lpackage{cccite} or predecessors of it. If not we let it be equal
@@ -5076,15 +5914,15 @@ computational complexity
\def\theenumi{\@roman\c@enumi}%
\def\labelenumi{(\theenumi)}%
\defprefix{enumi}##1{%
- %%\Iflabelchanged{#1}{\uselabel{#1}}%
+ %\Iflabelchanged{#1}{\uselabel{#1}}%
\protect\protect\protect\@@conduselabel
{{\protect\csname the#1\endcsname}}%
{\@thm@bare@currentlabel}{\@thm@currentlabel}%
(##1)}%
- %%\def\theenumii{\@alph\c@enumii}%
- %%\def\labelenumii{(\theenumii)}%
+ %\def\theenumii{\@alph\c@enumii}%
+ %\def\labelenumii{(\theenumii)}%
\defprefix{enumii}##1{%
- %%\Iflabelchanged{#1}{\uselabel{#1}}%
+ %\Iflabelchanged{#1}{\uselabel{#1}}%
\protect\protect\protect\@@conduselabel
{{\protect\csname the#1\endcsname}}%
{\@thm@bare@currentlabel}{\@thm@currentlabel}%
@@ -5092,15 +5930,15 @@ computational complexity
\def\theenumiii{\@arabic\c@enumiii}%
\def\labelenumiii{(\theenumiii)}%
\defprefix{enumiii}##1{%
- %%\Iflabelchanged{#1}{\uselabel{#1}}%
+ %\Iflabelchanged{#1}{\uselabel{#1}}%
\protect\protect\protect\@@conduselabel
{{\protect\csname the#1\endcsname}}%
{\@thm@bare@currentlabel}{\@thm@currentlabel}%
(\theenumi.\theenumii.##1)}%
- %%\def\theenumiv{\@Alph\c@enumiv}%
- %%\def\labelenumiv{\theenumiv.}%
+ %\def\theenumiv{\@Alph\c@enumiv}%
+ %\def\labelenumiv{\theenumiv.}%
\defprefix{enumiv}##1{%
- %%\Iflabelchanged{#1}{\uselabel{#1}}%
+ %\Iflabelchanged{#1}{\uselabel{#1}}%
\protect\protect\protect\@@conduselabel
{{\protect\csname the#1\endcsname}}%
{\@thm@bare@currentlabel}{\@thm@currentlabel}%
@@ -5111,14 +5949,14 @@ computational complexity
\def\theenumi{\@roman\c@enumi}%
\def\labelenumi{(\theenumi)}%
\defprefix{enumi}##1{(##1)}%
- %%\def\theenumii{\@alph\c@enumii}%
- %%\def\labelenumii{(\theenumii)}%
+ %\def\theenumii{\@alph\c@enumii}%
+ %\def\labelenumii{(\theenumii)}%
\defprefix{enumii}##1{(\theenumi.##1)}%
\def\theenumiii{\@arabic\c@enumiii}%
\def\labelenumiii{(\theenumiii)}%
\defprefix{enumiii}##1{(\theenumi.\theenumii.##1)}%
- %%\def\theenumiv{\@Alph\c@enumiv}%
- %%\def\labelenumiv{\theenumiv.}%
+ %\def\theenumiv{\@Alph\c@enumiv}%
+ %\def\labelenumiv{\theenumiv.}%
\defprefix{enumiv}##1{(\theenumi.\theenumii.\theenumiii##1)}
}
\fi
@@ -5235,7 +6073,7 @@ computational complexity
\newtheorem{thesis*}[namedth@@r@m*]{\Thesis}%
\babel\def\Warning{Warning}[german=Warnung,french=Alerte]
\newtheorem{warning*}[namedth@@r@m*]{\Warning}%
-%%\newtheorem{example*}[namedth@@r@m*]{Example}%
+%\newtheorem{example*}[namedth@@r@m*]{Example}%
\babel\def\Example{Example}[german=Beispiel,french=Exemple]
\newenvironment{example*}[1][]{%
\cc@ifempty{#1}
@@ -5675,7 +6513,7 @@ computational complexity
% This macro restores the parshape of the current list.
% \begin{macrocode}
\def\list@parshape{%
- %%\typeout{parshape 1 \the\@totalleftmargin+\the\linewidth}%
+ %\typeout{parshape 1 \the\@totalleftmargin+\the\linewidth}%
\parshape \@ne \@totalleftmargin \linewidth}
% \end{macrocode}
% Reinitializing the list means to readjust the left margin while
@@ -5683,8 +6521,8 @@ computational complexity
% \begin{macrocode}
\newdimen\reinit@list@last
\def\reinit@list#1{%
-%%% \dimen@i#1\relax
-%%% \typeout{Reinit: old \the\reinit@list@last, new \the\dimen@i}%%% DEBUG
+% \dimen@i#1\relax
+% \typeout{Reinit: old \the\reinit@list@last, new \the\dimen@i}%%% DEBUG
\advance\itemindent\reinit@list@last
\advance\@totalleftmargin-\reinit@list@last
\advance\linewidth\reinit@list@last
@@ -5694,7 +6532,7 @@ computational complexity
\advance\itemindent-\reinit@list@last
\advance\@totalleftmargin\reinit@list@last
\advance\linewidth-\reinit@list@last
- %%\typeout{\the\@totalleftmargin + \the\linewidth}%
+ %\typeout{\the\@totalleftmargin + \the\linewidth}%
\list@parshape}
% \end{macrocode}
% Often reinitialization is needed with respect to the label's
@@ -5867,7 +6705,6 @@ computational complexity
% \begin{macrocode}
\newcommand{\algonumerate@postprocess}[1]{%
\expandafter\count@\value{algonumerate}%
- %%{\tracingall\nonstopmode\showbox\@tempboxa}%
% \end{macrocode}
% We insert a \cs{medskip} if a (positively) numbered item follows an
% automatic or explicit text item.
@@ -5909,7 +6746,7 @@ computational complexity
% paragraph formatting as desired.
% \begin{macrocode}
\newcommand{\algonumerate@labelexplicit}[1]{% For algorithm i/o
-%%% \typeout{item explicit [#1]}%
+% \typeout{item explicit [#1]}%
\algonumerate@makelabelexplicit{#1}%
% \end{macrocode}
%
@@ -5929,7 +6766,7 @@ computational complexity
\global}%
}
\newcommand{\algonumerate@labelempty}[1]{% For algorithm i/o
-%%% \typeout{item empty [#1]}%
+% \typeout{item empty [#1]}%
\algonumerate@makelabelempty{}%
\global\let\algonumerate@global\global
\gdef\global{\algonumerate@global\let\global\algonumerate@global
@@ -5937,7 +6774,7 @@ computational complexity
\global}%
}
\newcommand{\algonumerate@labelautomatic}[1]{% For algorithm steps
-%%% \typeout{item automatic [#1]}%
+% \typeout{item automatic [#1]}%
\algonumerate@makelabelautomatic{#1}%
\global\let\algonumerate@global\global
\gdef\global{\algonumerate@global\let\global\algonumerate@global
@@ -5949,14 +6786,14 @@ computational complexity
\global}%
}
\newcommand{\algonumerate@labelnumber}[1]{% For algorithm steps
-%%% \typeout{item numbered [#1]}%
+% \typeout{item numbered [#1]}%
\algonumerate@makelabelnumber{#1}%
\global\let\algonumerate@global\global
\gdef\global{\algonumerate@global\let\global\algonumerate@global
\algonumerate@postprocess{}%
\global}%
}
-%%%
+%
\newdimen\algonumerate@maxindent
% \end{macrocode}
% We add a mechanism to find and store the length of the longest
@@ -6072,11 +6909,11 @@ computational complexity
\let\@tempa\relax
\protected@edef\@tempa{%
\csname r@\the\algorithmmasterkey-#1\endcsname}%
- %%\show\@tempa
+ %\show\@tempa
\let\@tempc\relax
\protected@edef\@tempc{%
\csname r@\the\algorithmmasterkey-#2\endcsname}%
- %%\show\@tempc
+ %\show\@tempc
\ifx\@tempa\@tempc\global\@trivialrangetrue
\else\global\@trivialrangefalse\fi
}%
@@ -6189,9 +7026,9 @@ computational complexity
\@newlistfalse
\vskip\topskip
\par
- %%\meta@indent\leftmargin
- %%\advance\meta@indent\algo@labelsep
- %%\advance\meta@indent\steplabelwidth
+ %\meta@indent\leftmargin
+ %\advance\meta@indent\algo@labelsep
+ %\advance\meta@indent\steplabelwidth
\meta@indent\@totalleftmargin
\advance\labelsep-\meta@indent
\advance\@totalleftmargin-\meta@indent
@@ -7705,24 +8542,25 @@ computational complexity
% \cs{jobname}. Michael N{\"{u}}sken, Bonn}
% \begin{macrocode}
%<*cctemplate>
+%%% Template (2011/07/27) for an article using cc
\begin{filecontents*}{\jobname.bib}
%% Insert your bibliography file here
\end{filecontents*}
\begin{filecontents}{\jobname.bbl}
- %% Insert your bbl file here (please also add your bib file above!)
+ %% Insert your bbl file here if you do not have a bibliography file
\end{filecontents}
+
\documentclass{cc}
+%%\ccsps{}
%%% personal macros and packages
%%% end of personal macros and packages
-
-%%\ccpublish{}{}{}{}
\contact{}% Insert contact email address here.
-\received{}% Insert the date on which you made the original
+\submitted{}% Insert the date on which you made the original
% submission of your paper to computational complexity,
- % in the format \received{8 August 2008}.
+ % in the format \submitted{8 August 2008}.
\title{}% Insert title here. (Use \\ to split lines.)
%%\titlehead{}% If necessary insert running head title here.
\author{}% Insert author list here. (Each author must be given
@@ -7758,6 +8596,8 @@ computational complexity
\begin{acknowledge}
%% Insert your acknowledgments here.
\end{acknowledge}
+%% \noacknowledge% This command must be here if there are no
+ % acknowledgements.
\bibliography{journals,\jobname}% Put your bibliography into the above
% filecontents environment!
@@ -7932,14 +8772,14 @@ computational complexity
\PassOptionsToPackage{bare}{relabel}
\RequirePackage{thcc}
\gdef\theorem@headerfont{\bfseries}
-%% \def\th@cc{%
-%% \normalfont\itshape
-%% \def\@begintheorem##1##2{\item
-%% [\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%
-%% \def\@opargbegintheorem##1##2##3{\item
-%% [\hskip\labelsep \theorem@headerfont ##1\ ##2\ %
-%% \normalfont({\activate@shortcite{}##3}).]}%
-%% }
+% \def\th@cc{%
+% \normalfont\itshape
+% \def\@begintheorem##1##2{\item
+% [\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%
+% \def\@opargbegintheorem##1##2##3{\item
+% [\hskip\labelsep \theorem@headerfont ##1\ ##2\ %
+% \normalfont({\activate@shortcite{}##3}).]}%
+% }
\@longarticletrue
\RequirePackage{ccthm}
\babel\def\ccacknowledgementsname{Acknowledgements}[%
@@ -7963,7 +8803,7 @@ computational complexity
% It allows to use the document class \Lclass{svjour3} or derivatives
% of it for a file that has been written with the document class
% \Lclass{cc}. To do this add a |\usepackage{cc4svjour}| after it.
-% \changes{v2.14}{2010/10/14}{Derived from \Lpackage{cc4amsart.sty}.}
+% \changes{v2.14}{2010/10/14}{Derived from \lpackage{cc4amsart}\texttt{.sty}.}
% \begin{macrocode}
%<*cc4svjour>
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
@@ -7977,16 +8817,16 @@ computational complexity
\PassOptionsToPackage{bare}{relabel}
\RequirePackage{thcc}
\gdef\theorem@headerfont{\bfseries}
-%% \def\th@cc{%
-%% \normalfont\itshape
-%% \def\@begintheorem##1##2{\item
-%% [\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%
-%% \def\@opargbegintheorem##1##2##3{\item
-%% [\hskip\labelsep \theorem@headerfont ##1\ ##2\ %
-%% \normalfont({\activate@shortcite{}##3}).]}%
-%% }
-%%
-%%% Deactivate svjour3's theorem definitions:
+% \def\th@cc{%
+% \normalfont\itshape
+% \def\@begintheorem##1##2{\item
+% [\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%
+% \def\@opargbegintheorem##1##2##3{\item
+% [\hskip\labelsep \theorem@headerfont ##1\ ##2\ %
+% \normalfont({\activate@shortcite{}##3}).]}%
+% }
+%
+%% Deactivate svjour3's theorem definitions:
\let\claim\relax \let\endclaim\relax
\let\conjecture\relax \let\endconjecture\relax
\let\corollary\relax \let\endcorollary\relax
@@ -8010,26 +8850,6 @@ computational complexity
\let\thesis\relax \let\endthesis\relax
\let\warning\relax \let\endwarning\relax
\let\example\relax \let\endexample\relax
-%%% \makeatletter
-%%% \def\gund@f#1{%
-%%% \expandafter\global\expandafter\let\csname #1\endcsname\@undefined
-%%% \expandafter\global\expandafter\let\csname end#1\endcsname\@undefined
-%%% }
-%%% \makeatother
-%%% \gund@f{claim}
-%%% \gund@f{conjecture}
-%%% \gund@f{corollary}
-%%% \gund@f{definition}
-%%% \gund@f{example}
-%%% \gund@f{exercise}
-%%% \gund@f{fact}
-%%% \gund@f{lemma}
-%%% \gund@f{note}
-%%% \gund@f{problem}
-%%% \gund@f{proposition}
-%%% \gund@f{question}
-%%% \gund@f{remark}
-%%% \gund@f{theorem}
\@longarticletrue
\RequirePackage{ccthm}
\babel\def\ccacknowledgementsname{Acknowledgements}[%
@@ -8088,6 +8908,7 @@ computational complexity
\let\thesis\relax \let\endthesis\relax
\let\warning\relax \let\endwarning\relax
\let\example\relax \let\endexample\relax
+\let\proof\relax \let\endproof\relax
% Load our definitions
\RequirePackage{amsmath}[1997/03/20 v1.2d]
% amsmath contains amstext, amsgen, amsbsy, amsopn
@@ -8097,7 +8918,8 @@ computational complexity
\@longarticletrue
\RequirePackage{ccreltx}% deactivate amsthm.sty and reactive LaTeX's
% definitions.
-\RequirePackage{ccthm}
+\RequirePackage{ccref}
+\RequirePackage{ccthm,ccproof}
\theoremheaderfont{\upshape\bfseries}
\RequirePackage{ccalgo}
% Load our citation scheme but keep llncs environment thebibliography.
@@ -8119,7 +8941,6 @@ computational complexity
\pagebreak[3]%
\vskip 0pt plus -#1%
\relax}
-%%%
%</cc4llncs>
% \end{macrocode}
%
@@ -8161,7 +8982,7 @@ computational complexity
\RequirePackage{ccaux}
\RequirePackage{ccreltx}% deactivate amsthm.sty and reactive LaTeX's
% definitions.
-%% \PassOptionsToPackage{bare}{relabel}
+% \PassOptionsToPackage{bare}{relabel}
\RequirePackage{ccthm}
\RequirePackage{relabel}
\RequirePackage{cc2cite}
@@ -8207,14 +9028,14 @@ computational complexity
\PassOptionsToPackage{bare}{relabel}
\RequirePackage{thcc}
\gdef\theorem@headerfont{\bfseries}
-%% \def\th@cc{%
-%% \normalfont\itshape
-%% \def\@begintheorem##1##2{\item
-%% [\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%
-%% \def\@opargbegintheorem##1##2##3{\item
-%% [\hskip\labelsep \theorem@headerfont ##1\ ##2\ %
-%% \normalfont({\activate@shortcite{}##3}).]}%
-%% }
+% \def\th@cc{%
+% \normalfont\itshape
+% \def\@begintheorem##1##2{\item
+% [\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%
+% \def\@opargbegintheorem##1##2##3{\item
+% [\hskip\labelsep \theorem@headerfont ##1\ ##2\ %
+% \normalfont({\activate@shortcite{}##3}).]}%
+% }
\@longarticletrue
\let\proof\relax\let\endproof\relax
\RequirePackage{ccthm}
@@ -8277,15 +9098,15 @@ computational complexity
% definitions.
\PassOptionsToPackage{bare}{relabel}
\RequirePackage{thcc}
-%%% \gdef\theorem@headerfont{\bfseries}
-%%% %% \def\th@cc{%
-%%% %% \normalfont\itshape
-%%% %% \def\@begintheorem##1##2{\item
-%%% %% [\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%
-%%% %% \def\@opargbegintheorem##1##2##3{\item
-%%% %% [\hskip\labelsep \theorem@headerfont ##1\ ##2\ %
-%%% %% \normalfont({\activate@shortcite{}##3}).]}%
-%%% %% }
+% \gdef\theorem@headerfont{\bfseries}
+% \def\th@cc{%
+% \normalfont\itshape
+% \def\@begintheorem##1##2{\item
+% [\hskip\labelsep \theorem@headerfont ##1\ ##2.]}%
+% \def\@opargbegintheorem##1##2##3{\item
+% [\hskip\labelsep \theorem@headerfont ##1\ ##2\ %
+% \normalfont({\activate@shortcite{}##3}).]}%
+% }
\@longarticletrue
\let\claim\relax
\let\fact\relax
@@ -8326,8 +9147,8 @@ computational complexity
\RequirePackage{amssymb}[1996/11/03 v2.2b]
\numberallwithin{section}
\AtBeginDocument{\@adjustnumbering}
-%%% \RequirePackage{cc2cite}
-%%% \RequirePackage{url}
+% \RequirePackage{cc2cite}
+% \RequirePackage{url}
%</cc4elsart>
% \end{macrocode}
%
@@ -10486,13 +11307,10 @@ STRINGS { mode s t }
FUNCTION {output.nonnull}
{ 's :=
-%%%% "output.nonnull" top$
-%%%% output.state top$
output.state mid.sentence =
{ ", " * write$ }
{ output.state after.block =
{ add.period$ write$
-%%%% { ", " * write$
newline$
"\newblock " write$
}
@@ -11234,7 +12052,6 @@ FUNCTION {inproceedings}
}
{ address output.nonnull
format.date output
-%%%% new.sentence
organization output
publisher output
}
diff --git a/Master/texmf-dist/source/latex/computational-complexity/cc.ins b/Master/texmf-dist/source/latex/computational-complexity/cc.ins
index 659b6f05efa..21f8810ce81 100644
--- a/Master/texmf-dist/source/latex/computational-complexity/cc.ins
+++ b/Master/texmf-dist/source/latex/computational-complexity/cc.ins
@@ -56,6 +56,7 @@ See cc.dtx for license information.
\file{cc-cls.sty}{\from{cc.dtx}{ccsty,chartab}}
\file{cclayout.sty}{\from{cc.dtx}{cclayout,chartab}}
\file{ccreltx.sty}{\from{cc.dtx}{ccreltx,chartab}}
+ \file{ccref.sty}{\from{cc.dtx}{ccref,chartab}}
\file{ccthm.sty}{\from{cc.dtx}{ccthm,chartab}}
\file{ccproof.sty}{\from{cc.dtx}{ccproof,chartab}}
\file{ccalgo.sty}{\from{cc.dtx}{ccalgo,chartab}}