\NeedsTeXFormat{LaTeX2e}[2019/10/01] \ProvidesClass{tpm2026}[2026/08/17 TPM proceedings paper class] %%% CONFERENCE INFORMATION \newcommand{\@conferenceordinal}{9\textsuperscript{th}} \newcommand{\@conferenceyear}{2026} \newcommand{\@conferencelocation}{Amsterdam, the Netherlands} % NOTE: not used \newcommand{\@conferencevolume}{245} \newcommand{\TPM@long}{% the \@conferenceordinal{} Workshop on Tractable Probabilistic Modeling at UAI } \newcommand{\TPM@short}{TPM \@conferenceyear} %%% BASE CLASS \LoadClass[twocolumn,10pt]{article}[2019/10/25] %% Paragraph-level typography \setlength{\parindent}{0em} % no indent at start of paragraphs \setlength{\parskip}{.5\baselineskip} % skip between paragraphs \frenchspacing % no old-style large space between sentences % NOTE: \abovedisplayskip and \belowdisplayshortskip were reduced % (by 3pt and 2pt respectively) in an earlier version of the style, % but this was not effective, actually, since at least 2008. % Modifying these skips reliably is tricky, so we do not do it here. % \sloppy % TODO: better educate authors on how to fix bad boxes %% Page-level typography \flushbottom %%% OPTIONS \RequirePackage{kvoptions}[2019/11/29] \SetupKeyvalOptions{ family=TPM, prefix=TPM@ } \DeclareBoolOption{accepted} % NOTE: shows authors/changes footer text \DeclareBoolOption{proceedings} % NOTE: shows authors/changes footer text \DeclareStringOption{startpage}[1] % NOTE: changes footer text \DeclareStringOption{mathfont}[cm] % NOTE: for math font selection \ProcessKeyvalOptions* %%% PACKAGES % TODO: Specify versions of packages. %% Utility \RequirePackage{xifthen} % TODO: add date \RequirePackage{adjustbox}[2019/01/04] \RequirePackage{environ}[2014/05/04] \NewEnviron{contributions}{\subsubsection*{Author Contributions}\BODY} \NewEnviron{acknowledgements}{\subsubsection*{Acknowledgements}\BODY} \NewEnviron{@uthors}{\centering\BODY} %% Font-size % NOTE: The TPM style (of the past) essentially used \small for footnotes. % We copy that behavior, but preserve \footnotesize as \smaller. \RequirePackage{letltxmacro}[2016/05/16] \LetLtxMacro{\smaller}{\footnotesize} \renewcommand{\footnotesize}{\small} %% Leading % NOTE: There were font size change commands aimed at decreasing the leading % in the earlier TPM style file. These haven't worked as intended since % 2008 at least. (Due to use of \def\@normalsize instead of % \def\normalsize.) The leading changes commented below closely % approximate the intent, if ever it is decided to honor the old-style % leading. \RequirePackage{leading}[2008/12/11] % \leading{11pt} % 10pt with 11pt baselineskip %% Page layout \RequirePackage{geometry}[2018/04/16] \geometry{ % A4 width and Letter height: prints without scaling on both a4paper, paperheight=11in, % mimic Morgan Kaufmann two column style textheight=9.25in, textwidth=6.75in, columnsep=0.25in, nohead, % foot kept for page numbers/notice footnotesep=9pt plus 4pt minus 2pt, % center vertically and horizontally % (was asymmetric in the past, outdated with electronic proceedings) centering } \savegeometry{tpmgeometry} \renewcommand{\footnoterule}{\kern-3pt \hrule width 5pc \kern 2.6pt} \RequirePackage[bottom]{footmisc}[2011/06/06] % bottom floats above footnote \RequirePackage{caption}[2019/10/18] % proper spacing before tables %% Fonts % NOTE: (either (fontenc–helvet with either mathptmx or times) % or (newtx packages)) and courier \ifthenelse{\equal{\TPM@mathfont}{newtx}}{ \RequirePackage[tighter]{newtxtext} % TODO: add options; version \RequirePackage[slantedGreek]{newtxmath} % TODO: add options; version }{ % cm or ptmx \RequirePackage[T1]{fontenc}[2018/08/11] \RequirePackage{textcomp}[2018/08/11] \ifthenelse{\equal{\TPM@mathfont}{ptmx}}{ % ptmx \RequirePackage{mathptmx}[2005/04/12] % NOTE: Greek has wrong size }{ % cm (or something unkown that we replace with cm) \RequirePackage{times} % NOTE: reverts to Computer Modern math } \RequirePackage[scaled]{helvet}[2005/04/12] % NOTE: may give harmless warnings } \RequirePackage{courier}[2005/04/12] %% Section styles \RequirePackage[overload]{textcase} \RequirePackage[bf,raggedright,small,pagestyles]{titlesec}[2019/10/16] \titleformat*{\section}{\raggedright\large\bfseries\MakeUppercase} \titleformat*{\subsection}{\raggedright\bfseries\MakeUppercase} \titlespacing{\section}{\z@}{*2.75}{*1.375} \titlespacing{\subsection}{\z@}{*2.75}{*1.375} \titlespacing{\subsubsection}{\z@}{*2.75}{*1.375} \titlespacing{\paragraph}{\z@}{*1.375}{1em} % TODO: Package to force initial caps for \subsubsection and \paragraph? % NOTE: We do not have pre-2021 \subsubsubsection and \subparagraph. % That many levels should not be used in a 10-page paper. %% Page styles \renewpagestyle{plain}{% % because the titling package has a hardcoded call to plain… \setfoot{}{\footnotesize\notice@text}{} } \newpagestyle{numbered}{% \setfoot{}{\thepage}{} } \pagestyle{numbered} %% Title, authors, (absence of) date \RequirePackage{titling}[2009/09/04] \setlength{\droptitle}{-2em} % undo titling package vskip of 2em \renewcommand{\maketitlehooka}{% \vbox to 2.375in\bgroup % ends in \maketitlehookd % TODO: make this a minimum height… (now it is fixed) } \pretitle{% \hrule height4pt \vskip .25in \centering \Large\bfseries } \posttitle{% \vskip .25in \hrule height1pt \vskip .25in } \renewcommand{\maketitlehookb}{\vskip 0.2in plus 1fil minus 0.1in} \preauthor{% \begin{center} } % % NOTE: We mimicked the original style using \person and template % % instructions. This original style has shortcomings % % (uses a lot of space for affiliation for one thing). % % Therefore it was decided to move to authblk footnote style. % % We leave this here for reference, for now. % \newcommand{\person}[2]{% % \begin{tabular}[t]{c} % \textbf{#1}\\ % #2 % \end{tabular} % } \postauthor{ \end{center} } \renewcommand{\maketitlehookc}{\vskip 0.3in plus 2fil minus 0.1in} \predate{} \postdate{} \renewcommand{\maketitlehookd}{% \egroup % starts in \maketitlehooka } \RequirePackage[noblocks]{authblk}[2001/02/27] \renewcommand{\Authfont}{\bfseries} \renewcommand\Affilfont{\leading{12pt}\normalfont} \setlength{\affilsep}{\baselineskip} \renewcommand{\Authsep}{\hspace{1em plus 1fil}} \renewcommand{\Authand}{\hspace{1em plus 1fil}} \renewcommand{\Authands}{\leading{18pt}\hspace{1em plus 1fil}} %% Abstract \renewenvironment{abstract}{ \begin{adjustbox}{minipage=\linewidth-0.5in,center} \centerline{\large\bfseries Abstract} \vspace{2\baselineskip} }{ \end{adjustbox} } %% Lists and spacing around them \RequirePackage[inline]{enumitem}[2019/06/20] % Set list spacing % TODO: make size-adaptive by using em and ex instead of pt? \setlist[1,2,3,4,5,6]{ labelsep=5pt, leftmargin=2em, topsep=4pt plus 1pt minus 2pt, partopsep=1pt plus 0.5pt minus 0.5pt, itemsep=2pt plus 1pt minus 0.5pt, parsep=2pt plus 1pt minus 0.5pt } \setlist[2,3,4,5,6]{ topsep=2pt plus 1pt minus 0.5pt, itemsep=1pt plus 0.5pt minus 0.5pt, parsep=1pt plus 0.5pt minus 0.5pt, } \setlist[3,4,5,6]{ leftmargin=1.5em, topsep=1pt plus 0.5pt minus 0.5pt, partopsep=0.5pt plus 0pt minus 0.5pt, parsep=0pt } \setlist[4,5,6]{leftmargin=1em} % TODO: eliminate, too deep? \setlist[5,6]{leftmargin=0.5em} % TODO: eliminate, too deep? \setlist[6]{leftmargin=0.5em} % TODO: eliminate, too deep? %% Typography (nicer, less badboxes) \RequirePackage{microtype}[2019/11/18] % TODO: set some options? %% Internal and external hyperlinks \RequirePackage[breaklinks]{hyperref}[2019/11/10] % TODO: set some more options? %%% ACT ON OPTIONS \RequirePackage{lastpage}[2015/03/29] \ifTPM@accepted % The paper has been accepted \ifx\TPM@startpage\@empty % No PMLR page numbers assigned yet \newcommand{\notice@text}{% %\textit{Accepted for \TPM@long} (\TPM@short). % NOTE: removed footers for accepted version, will add post-hoc } \pagestyle{empty} \else % PMLR page number assigned \newcommand{\notice@text}{% \textit{Proceedings of \TPM@long} (\TPM@short), PMLR \@conferencevolume:\TPM@startpage--\pageref*{LastPage}. } \setcounter{page}{\TPM@startpage} \pagestyle{numbered} \fi \else % This is a submission \newcommand{\notice@text}{% \textit{Submitted to \TPM@long} (\TPM@short). \textbf{To be used for reviewing only}. } \pagestyle{numbered} % NOTE: page numbers are useful when reviewing \fi %%% ODDS AND ENDS \AtBeginDocument{% \date{} % make sure no date is set \loadgeometry{tpmgeometry} % avoid some illegal preamble changes to layout % TODO: add further tripwires? \ifTPM@accepted \else % This is a submission: remove authors, contributions, acknowledgements \renewcommand{\@author}{} \RenewEnviron{contributions}{} \RenewEnviron{acknowledgements}{} \fi } \endinput