diff options
Diffstat (limited to 'eptcs.cls')
| -rw-r--r-- | eptcs.cls | 263 | 
1 files changed, 263 insertions, 0 deletions
diff --git a/eptcs.cls b/eptcs.cls new file mode 100644 index 0000000..ebda3e4 --- /dev/null +++ b/eptcs.cls @@ -0,0 +1,263 @@ +\NeedsTeXFormat{LaTeX2e}[1995/12/01]
 +\ProvidesClass{eptcs}[2010/11/26 v1.5]
 +
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +%%%%                             options                            %%%%
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +\newif\ifadraft
 +\newif\ifsubmission
 +\newif\ifpreliminary
 +\newif\ifcopyright
 +\newif\ifpublicdomain
 +\newif\ifcreativecommons
 +\newif\ifnoderivs
 +\newif\ifsharealike
 +\newif\ifnoncommercial
 +\adraftfalse
 +\submissionfalse
 +\preliminaryfalse
 +\copyrightfalse
 +\publicdomainfalse
 +\creativecommonsfalse
 +\noderivsfalse
 +\sharealikefalse
 +\noncommercialfalse
 +\DeclareOption{adraft}{\adrafttrue}
 +\DeclareOption{submission}{\submissiontrue}
 +\DeclareOption{preliminary}{\preliminarytrue}
 +\DeclareOption{copyright}{\copyrighttrue}
 +\DeclareOption{publicdomain}{\publicdomaintrue}
 +\DeclareOption{creativecommons}{\creativecommonstrue}
 +\DeclareOption{noderivs}{\noderivstrue}
 +\DeclareOption{noncommercial}{\noncommercialtrue}
 +\DeclareOption{sharealike}{\sharealiketrue}
 +\ProcessOptions\relax
 +
 +\LoadClass[letterpaper,11pt,twoside]{article}
 +
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +%%   On US letter paper the margins (left-top-right-bottom) are       %%
 +%%              2.795cm - 1.23cm - 2.795cm - 3.46cm                   %%
 +%%   Note: When \topmargin would be 0, the real top margin would be   %%
 +%%   (72-25-12=35pt) + 1pt (unused portion of head) = .5in = 1.27cm.  %%
 +%%   The bottom margin is   11in - 1in + 0.04cm - 623/72in = 3.46cm.  %%
 +%%   On the first page the bottom margin contains various footers.    %%
 +%%   When translating from US letter to A4 paper, without scaling, by %%
 +%%   leaving the centre of the paper invariant (as is possible when   %%
 +%%   printing the paper with acroread), the resulting A4 margins are  %%
 +%%                2.5cm - 2.11cm - 2.5cm - 4.34cm                     %%
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +
 +\textwidth              16cm             % A4 width is 21cm            %
 +\textheight             623.01pt         % 46 lines exactly = 21.98cm  %
 +\oddsidemargin          -0.04cm          % +1 inch = 2.5cm             %
 +\evensidemargin         -0.04cm          % +1 inch = 2.5cm             %
 +\topmargin              -0.04cm          % +1 inch = 2.5cm             %
 +\advance\topmargin-\headheight           % 12pt                        %
 +\advance\topmargin-\headsep              % 25pt                        %
 +\marginparwidth          45pt            % leaves 15pt from A4 edge    %
 +\advance\evensidemargin  .295cm          % centre w.r.t. letter paper  %
 +\advance\oddsidemargin   .295cm          % centre w.r.t. letter paper  %
 +
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +%%%%                  load eptcsdata when available                 %%%%
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +\IfFileExists{eptcsdata.tex}{\input{eptcsdata}}{}
 +
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +%%%%			Pagestyle and titlepage      		    %%%%
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +\pagestyle{myheadings}
 +\renewcommand\pagestyle[1]{}             % ignore further \pagestyles
 +
 +\renewcommand\maketitle{\par
 +  \begingroup
 +    \providecommand{\event}{}
 +    \ifadraft
 +      \providecommand{\publicationstatus}{\Large DRAFT\quad\today}
 +    \else\ifsubmission
 +      \providecommand{\publicationstatus}{Submitted to:\\
 +      \event}
 +    \else\ifpreliminary
 +      \providecommand{\publicationstatus}{Preliminary Report. Final version to appear in:\\
 +      \event}
 +    \else
 +      \providecommand{\publicationstatus}{To appear in EPTCS.}
 +    \fi\fi\fi
 +    \providecommand{\titlerunning}{Please define {\tt $\backslash$titlerunning}}
 +    \providecommand{\authorrunning}{Please define {\tt $\backslash$authorrunning}}
 +    \providecommand{\copyrightholders}{\authorrunning}
 +    \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
 +    \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
 +    \long\def\@makefntext##1{\parindent 1em\noindent
 +            \hb@xt@1.8em{%
 +                \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
 +    \newpage
 +    \global\@topnum\z@   % Prevents figures from going at top of page.
 +    \@maketitle
 +    \thispagestyle{empty}\@thanks
 +  \endgroup
 +  \setcounter{footnote}{0}%
 +  \label{FirstPage}
 +  \global\let\thanks\relax
 +  \global\let\maketitle\relax
 +  \global\let\@maketitle\relax
 +  \global\let\@thanks\@empty
 +  \global\let\@author\@empty
 +  \global\let\@date\@empty
 +  \global\let\@title\@empty
 +  \global\let\title\relax
 +  \global\let\author\relax
 +  \global\let\date\relax
 +  \global\let\and\relax
 +}
 +\def\@maketitle{%                       adapted from article.cls
 +  \newpage
 +\noindent
 +\raisebox{-22.8cm}[0pt][0pt]{\footnotesize
 +\begin{tabular}{@{}l}
 +\publicationstatus
 +\end{tabular}}
 +\hfill\vspace{-1em}
 +\raisebox{-22.8cm}[0pt][0pt]{\footnotesize
 +\makebox[0pt][r]{
 +\begin{tabular}{l@{}}
 +\ifpublicdomain
 +  This work is \href{http://creativecommons.org/publicdomain/zero/1.0/}
 +  {dedicated to the public domain}.
 +\else
 +  \ifcopyright
 +    \copyright~\copyrightholders\\
 +  \fi
 +  \ifcreativecommons
 +    This work is licensed under the
 +    \ifnoncommercial
 +      \href{http://creativecommons.org}{Creative Commons}\\
 +      \ifnoderivs
 +	\href{http://creativecommons.org/licenses/by-nc-nd/3.0/}
 +	{Attribution-Noncommercial-No Derivative Works} License.
 +      \else\ifsharealike
 +	\href{http://creativecommons.org/licenses/by-nc-sa/3.0/}
 +	{Attribution-Noncommercial-Share Alike} License.
 +      \else
 +	\href{http://creativecommons.org/licenses/by-nc/3.0/}
 +	{Attribution-Noncommercial} License.
 +      \fi\fi
 +    \else
 +      \ifnoderivs
 +        \href{http://creativecommons.org}{Creative Commons}\\
 +	\href{http://creativecommons.org/licenses/by-nd/3.0/}
 +	{Attribution-No Derivative Works} License.
 +      \else\ifsharealike
 +        \href{http://creativecommons.org}{Creative Commons}\\
 +	\href{http://creativecommons.org/licenses/by-sa/3.0/}
 +	{Attribution-Share Alike} License.
 +      \else
 +        \\\href{http://creativecommons.org}{Creative Commons}
 +	\href{http://creativecommons.org/licenses/by/3.0/}
 +	{Attribution} License.
 +      \fi\fi
 +    \fi
 +  \fi
 +\fi
 +\end{tabular}}}
 +  \null
 +  %\vskip 2em%				a bit of space removed (< 2em)
 +  \begin{center}%
 +  \let \footnote \thanks
 +    {\LARGE\bf \@title \par}%		\bf added
 +    \vskip 2em%				was: 1.5em
 +    {\large
 +      \lineskip .5em%
 +      \begin{tabular}[t]{c}%
 +        \@author
 +      \end{tabular}\par}%
 +    \vskip 1em%			       \date and extra space removed
 +  \end{center}%
 +  \par
 +  \markboth{\hfill\titlerunning}{\authorrunning\hfill}
 +  \vskip .5em}
 +
 +\AtBeginDocument{
 +  \providecommand{\firstpage}{1}
 +  \setcounter{firstpage}{\firstpage}
 +  \setcounter{page}{\firstpage}
 +  \@ifpackageloaded{array}% Contributed by Wolfgang Jeltsch
 +    {\newcommand{\IfArrayPackageLoaded}[2]{#1}}
 +    {\newcommand{\IfArrayPackageLoaded}[2]{#2}}}
 +\newcommand{\institute}[1]{\IfArrayPackageLoaded
 +    {\\{\scriptsize\begin{tabular}[t]{@{}>{\footnotesize}c@{}}#1\end{tabular}}}
 +    {\\{\scriptsize\begin{tabular}[t]{@{\footnotesize}c@{}}#1\end{tabular}}}}
 +\newcommand{\email}[1]{\\{\footnotesize\tt #1}}
 +
 +\renewenvironment{abstract}{\begin{list}{}%   header removed and noindent
 +			{\rightmargin\leftmargin
 +			\listparindent 1.5em
 +			\parsep 0pt plus 1pt}
 +			\small\item}{\end{list}
 +}
 +
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +\RequirePackage{hyperref} % add hyperlinks
 +\RequirePackage{mathptmx} % Pick Times Roman as a base font
 +
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +%%%%			Remember page numbers      		    %%%%
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +\newcounter{firstpage}
 +\setcounter{firstpage}{1}
 +\AtEndDocument{\clearpage
 +   \addtocounter{page}{-1}
 +   \immediate\write\@auxout{\string
 +   \newlabel{LastPage}{{}{\thepage}{}{page.\thepage}{}}}%
 +   \newwrite\pages
 +   \immediate\openout\pages=\jobname.pag
 +   \immediate\write\pages{\arabic{firstpage}-\arabic{page}}
 +   \addtocounter{page}{1}}
 +
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +%%%%			Less space in lists      		    %%%%
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +\def\@listi{\leftmargin\leftmargini
 +            \parsep 2.5\p@ \@plus1.5\p@ \@minus\p@
 +            \topsep 5\p@   \@plus2\p@ \@minus5\p@
 +            \itemsep2.5\p@ \@plus1.5\p@ \@minus\p@}
 +\let\@listI\@listi
 +\@listi
 +\def\@listii {\leftmargin\leftmarginii
 +              \labelwidth\leftmarginii
 +              \advance\labelwidth-\labelsep
 +              \topsep    1\p@ \@plus\p@ \@minus\p@
 +              \parsep    1\p@   \@plus\p@  \@minus\p@
 +              \itemsep   \parsep}
 +\def\@listiii{\leftmargin\leftmarginiii
 +              \labelwidth\leftmarginiii
 +              \advance\labelwidth-\labelsep
 +              \topsep    \z@
 +              \parsep    \z@
 +              \itemsep   \topsep}
 +
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +%%%%       References small and with less space between items       %%%%
 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 +\renewenvironment{thebibliography}[1]
 +     {\section*{\refname}\small%              small added
 +      \list{\@biblabel{\@arabic\c@enumiv}}%
 +           {\settowidth\labelwidth{\@biblabel{#1}}%
 +            \leftmargin\labelwidth
 +            \advance\leftmargin\labelsep
 +            \@openbib@code
 +            \usecounter{enumiv}%
 +            \let\p@enumiv\@empty
 +            \renewcommand\theenumiv{\@arabic\c@enumiv}}%
 +      \sloppy
 +      \clubpenalty4000
 +      \@clubpenalty \clubpenalty
 +      \widowpenalty4000%
 +      \sfcode`\.\@m
 +		\setlength{\parskip}{0pt}%
 +		\setlength{\itemsep}{3pt plus 2pt}% less space between items
 +     }
 +     {\def\@noitemerr
 +       {\@latex@warning{Empty `thebibliography' environment}}%
 +      \endlist}
  | 
