Updated version of sigplanconf.cls

original commit: 7b612090698a07aadff573a09a4de8ab861ab708
This commit is contained in:
Sam Tobin-Hochstadt 2010-11-16 12:35:10 -05:00
parent f52f97fe09
commit 98426520a8

View File

@ -20,11 +20,11 @@
\NeedsTeXFormat{LaTeX2e}[1995/12/01] \NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesClass{sigplanconf}[2009/04/29 v1.9 ACM SIGPLAN Proceedings] \ProvidesClass{sigplanconf}[2007/03/13 v1.5 ACM SIGPLAN Proceedings]
% The following few pages contain LaTeX programming extensions adapted % The following few pages contain LaTeX programming extensions adapted
% from the ZzTeX macro package. % from the ZzTeX macro package.
% Token Hackery % Token Hackery
% ----- ------- % ----- -------
@ -49,7 +49,7 @@
% Usage: \expandafter\@defof \meaning\macro\@mark % Usage: \expandafter\@defof \meaning\macro\@mark
\def \@defof #1:->#2\@mark{#2} \def \@defof #1:->#2\@mark{#2}
% Control Sequence Names % Control Sequence Names
% ------- -------- ----- % ------- -------- -----
@ -59,7 +59,7 @@
\def \@withname #1#2{% {\command}{\tokens} \def \@withname #1#2{% {\command}{\tokens}
\expandafter#1\csname \expandafter\@discardtok \string#2\endcsname} \expandafter#1\csname \expandafter\@discardtok \string#2\endcsname}
% Flags (Booleans) % Flags (Booleans)
% ----- ---------- % ----- ----------
@ -70,7 +70,7 @@
\def \@false {FL} \def \@false {FL}
\def \@setflag #1=#2{\edef #1{#2}}% \flag = boolean \def \@setflag #1=#2{\edef #1{#2}}% \flag = boolean
% IF and Predicates % IF and Predicates
% -- --- ---------- % -- --- ----------
@ -179,14 +179,14 @@
\else \else
\if #2\@true \else \@false \fi \if #2\@true \else \@false \fi
\fi} \fi}
% Arithmetic % Arithmetic
% ---------- % ----------
\def \@increment #1{\advance #1 by 1\relax}% {\count} \def \@increment #1{\advance #1 by 1\relax}% {\count}
\def \@decrement #1{\advance #1 by -1\relax}% {\count} \def \@decrement #1{\advance #1 by -1\relax}% {\count}
% Options % Options
% ------- % -------
@ -252,7 +252,7 @@
\DeclareOption{numberedpars}{\@numheaddepth = 4} \DeclareOption{numberedpars}{\@numheaddepth = 4}
%%%\DeclareOption{onecolumn}{\@setflag \@onecolumn = \@true} \DeclareOption{onecolumn}{\@setflag \@onecolumn = \@true}
\DeclareOption{preprint}{\@setflag \@preprint = \@true} \DeclareOption{preprint}{\@setflag \@preprint = \@true}
@ -290,7 +290,7 @@
\setcounter{page}{#1}} \setcounter{page}{#1}}
\AtEndDocument{\label{sigplanconf@finalpage}} \AtEndDocument{\label{sigplanconf@finalpage}}
% Utilities % Utilities
% --------- % ---------
@ -298,7 +298,7 @@
\newcommand{\setvspace}[2]{% \newcommand{\setvspace}[2]{%
#1 = #2 #1 = #2
\advance #1 by -1\parskip} \advance #1 by -1\parskip}
% Document Parameters % Document Parameters
% -------- ---------- % -------- ----------
@ -326,7 +326,7 @@
\setlength{\standardtextwidth}{42pc} \setlength{\standardtextwidth}{42pc}
\if \@onecolumn \if \@onecolumn
\setlength{\textwidth}{40.5pc} \setlength{\textwidth}{20pc}
\else \else
\setlength{\textwidth}{\standardtextwidth} \setlength{\textwidth}{\standardtextwidth}
\fi \fi
@ -409,7 +409,7 @@
% Miscellaneous: % Miscellaneous:
\errorcontextlines = 5 \errorcontextlines = 5
% Fonts % Fonts
% ----- % -----
@ -471,7 +471,7 @@
\relax \relax
\fi\fi \fi\fi
% Abstract % Abstract
% -------- % --------
@ -480,7 +480,7 @@
\section*{Abstract}% \section*{Abstract}%
\normalsize}{% \normalsize}{%
} }
% Bibliography % Bibliography
% ------------ % ------------
@ -510,13 +510,14 @@
\usepackage{natbib} \usepackage{natbib}
\setlength{\bibsep}{3pt plus .5pt minus .25pt} \setlength{\bibsep}{3pt plus .5pt minus .25pt}
\bibpunct{[}{]}{,}{A}{}{,} \bibpunct{(}{)}{;}{A}{}{,}
\let \ncite = \cite
\let \cite = \citep \let \cite = \citep
\fi \fi
\def \bibfont {\small} \def \bibfont {\small}
% Categories % Categories
% ---------- % ----------
@ -542,7 +543,7 @@
\if \@notp{\@emptyargp{#3}}#3---\fi \if \@notp{\@emptyargp{#3}}#3---\fi
\textrm{#4}% \textrm{#4}%
\fi}} \fi}}
% Copyright Notice % Copyright Notice
% --------- ------ % --------- ------
@ -550,7 +551,6 @@
\def \ftype@copyrightbox {8} \def \ftype@copyrightbox {8}
\def \@toappear {} \def \@toappear {}
\def \@permission {} \def \@permission {}
\def \@reprintprice {}
\def \@copyrightspace {% \def \@copyrightspace {%
@ -581,11 +581,7 @@
\vspace{2pt} \vspace{2pt}
\noindent \textsl{\@conferencename}\quad \@conferenceinfo \par \noindent \textsl{\@conferencename}\quad \@conferenceinfo \par
\noindent Copyright \copyright\ \@copyrightyear\ ACM \@copyrightdata \noindent Copyright \copyright\ \@copyrightyear\ ACM \@copyrightdata
\dots \@reprintprice\par} \dots \$5.00\par}
\newcommand{\reprintprice}[1]{%
\gdef \@reprintprice {#1}}
\reprintprice{\$10.00}
\newcommand{\permission}[1]{% \newcommand{\permission}[1]{%
\gdef \@permission {#1}} \gdef \@permission {#1}}
@ -650,7 +646,7 @@
\vspace{2pt} \vspace{2pt}
\noindent \textsl{\@conferencename}\quad \@conferenceinfo \par \noindent \textsl{\@conferencename}\quad \@conferenceinfo \par
ACM \@copyrightdata.}} ACM \@copyrightdata.}}
% Enunciations % Enunciations
% ------------ % ------------
@ -668,7 +664,7 @@
\if \@notp{\@emptyargp{#3}}\nut (#3).\fi]% \if \@notp{\@emptyargp{#3}}\nut (#3).\fi]%
\itshape\selectfont \itshape\selectfont
\ignorespaces} \ignorespaces}
% Figures % Figures
% ------- % -------
@ -693,7 +689,7 @@
\def \@setfigurenumber #1{% \def \@setfigurenumber #1{%
{\rmfamily \bfseries \selectfont #1}} {\rmfamily \bfseries \selectfont #1}}
% Hierarchy % Hierarchy
% --------- % ---------
@ -775,7 +771,7 @@
\newcommand{\keywords}{\paragraph*{Keywords}} \newcommand{\keywords}{\paragraph*{Keywords}}
\newcommand{\terms}{\paragraph*{General Terms}} \newcommand{\terms}{\paragraph*{General Terms}}
% Identification % Identification
% -------------- % --------------
@ -803,7 +799,7 @@
\newcommand{\proceedings}[1]{% \newcommand{\proceedings}[1]{%
\gdef \@proceedings {#1}} \gdef \@proceedings {#1}}
% Lists % Lists
% ----- % -----
@ -855,13 +851,13 @@
\labelwidth = \leftmarginiv \labelwidth = \leftmarginiv
\advance \labelwidth by -\labelsep \advance \labelwidth by -\labelsep
\listparindent = \parindent} \listparindent = \parindent}
% Mathematics % Mathematics
% ----------- % -----------
\def \theequation {\arabic{equation}} \def \theequation {\arabic{equation}}
% Miscellaneous % Miscellaneous
% ------------- % -------------
@ -877,7 +873,7 @@
\let \\ = \@centercr \let \\ = \@centercr
\leftskip = 0pt \leftskip = 0pt
\rightskip = 0pt plus 10pt} \rightskip = 0pt plus 10pt}
% Program Code % Program Code
% ------- ---- % ------- ----
@ -885,7 +881,7 @@
\newcommand{\mono}[1]{% \newcommand{\mono}[1]{%
{\@tempdima = \fontdimen2\font {\@tempdima = \fontdimen2\font
\texttt{\spaceskip = 1.1\@tempdima #1}}} \texttt{\spaceskip = 1.1\@tempdima #1}}}
% Running Heads and Feet % Running Heads and Feet
% ------- ----- --- ---- % ------- ----- --- ----
@ -924,14 +920,14 @@
\def \@formatyear {% \def \@formatyear {%
\number\year/\number\month/\number\day} \number\year/\number\month/\number\day}
% Special Characters % Special Characters
% ------- ---------- % ------- ----------
\DeclareRobustCommand{\euro}{% \DeclareRobustCommand{\euro}{%
\protect{\rlap{=}}{\sf \kern .1em C}} \protect{\rlap{=}}{\sf \kern .1em C}}
% Title Page % Title Page
% ----- ---- % ----- ----
@ -982,11 +978,7 @@
\begin{center} \begin{center}
\@settitlebanner \@settitlebanner
\let \thanks = \titlenote \let \thanks = \titlenote
{\leftskip = 0pt plus 0.25\linewidth \noindent \LARGE \bfseries \@titletext \par
\rightskip = 0pt plus 0.25 \linewidth
\parfillskip = 0pt
\spaceskip = .7em
\noindent \LARGE \bfseries \@titletext \par}
\vskip 6pt \vskip 6pt
\noindent \Large \@subtitletext \par \noindent \Large \@subtitletext \par
\vskip 12pt \vskip 12pt
@ -1069,7 +1061,7 @@
\@fnmark = {\P}\or \@fnmark = {\P}\or
\@fnmark = {\ast\ast}% \@fnmark = {\ast\ast}%
\fi \fi
\,$^{\the\@fnmark}$% % \,$^{\the\@fnmark}$%
\edef \reserved@a {\noexpand\@appendtotext{% \edef \reserved@a {\noexpand\@appendtotext{%
\noexpand\@titlefootnote{\the\@fnmark}}}% \noexpand\@titlefootnote{\the\@fnmark}}}%
\reserved@a{#1}} \reserved@a{#1}}
@ -1102,7 +1094,7 @@
\def \@placetitlenotes { \def \@placetitlenotes {
\the\@titlenotetext} \the\@titlenotetext}
% Utilities % Utilities
% --------- % ---------
@ -1134,7 +1126,7 @@
\@makefntext{% \@makefntext{%
\rule\z@\footnotesep\ignorespaces#2\@finalstrut\strutbox}% \rule\z@\footnotesep\ignorespaces#2\@finalstrut\strutbox}%
\color@endgroup}} \color@endgroup}}
% LaTeX Modifications % LaTeX Modifications
% ----- ------------- % ----- -------------
@ -1145,11 +1137,10 @@
\def \@seccntformata #1.#2\@mark{% \def \@seccntformata #1.#2\@mark{%
\if \@emptyargp{#2}.\fi} \if \@emptyargp{#2}.\fi}
% Revision History % Revision History
% -------- ------- % -------- -------
% SNC = Stephen Chong (chong@seas.harvard.edu)
% Date Person Ver. Change % Date Person Ver. Change
% ---- ------ ---- ------ % ---- ------ ---- ------
@ -1205,18 +1196,9 @@
% 2006.08.24 PCA 1.4 Fix bug in \maketitle case command. % 2006.08.24 PCA 1.4 Fix bug in \maketitle case command.
% 2007.03.13 PCA 1.5 The title banner only displays with the % 2007.03.13 PCA 1.5 The title banner only display with the
% 'preprint' option. % 'preprint' option.
% 2007.06.06 PCA 1.6 Use \bibfont in \thebibliography. % 2007.06.06 PCA 1.6 Use \bibfont in \thebibliography.
% Add 'natbib' option to load and configure % Add 'natbib' option to load and configure
% the natbib package. % the natbib package.
% 2007.11.20 PCA 1.7 Balance line lengths in centered article
% title (thanks to Norman Ramsey).
% 2009.01.26 PCA 1.8 Change natbib \bibpunct values.
% 2009.04.29 SNC 1.9 Added \reprintprice to allow the
% specification of the price of a reprint, and
% set it to default to \$10.00